Title: Windowsの特殊フォルダのパスを返すマクロ

1 はじめに

WSHを使って、Windowsの特殊フォルダのパスを返すマクロです。

引数に指定できる文字列は以下になります。

AllUsersDesktop
AllUsersStartMenu
AllUsersPrograms
AllUsersStartup
Desktop
デスクトップ
Favorites
お気に入り
Fonts
MyDocuments
マイドキュメント
NetHood
PrintHood
Programs
Recent
SendTo
StartMenu
Startup
Templates

2 使い方

execmacro文を使用し、他のマクロからこのマクロを呼び出し、戻り値を "getresultex(-1);"で、取得してください。 正常なら、指定されたパスを、エラーの場合は、""を返します。 複数の引数を指定された場合は、各パスを "\n" でつなげた文字列を返します。

マクロフォルダに、「SpecialFolders.mac」がある場合の例です。

execmacro "SpecialFolders.mac", "デスクトップ", "お気に入り";
$Folders = getresultex(-1);

呼び出すマクロと同じ場所に、「SpecialFolders.mac」がある場合は、

execmacro currentmacrodirectory + "\\SpecialFolders.mac", "デスクトップ", "お気に入り";

とした方が、確実です。

このマクロを、マクロの実行ダイアログから単独で実行しても、何も実行しません。 (引数がセットされていないので、エラーで終了します。)

3 注意事項や制限事項など

WSHの"SpecialFolders"オブジェクトにある"Itemsメソッドを、秀丸エディタのCOM機能を使って呼び出しているだけです。 execmacro文経由で再利用しやすいように、ラップしているだけなので、 WHSがわかるなら、直接記述したほうが、いいかもしれません。

4 その他

5 連絡先

6 変更履歴

2013/11/02 Version 1.0.0