Platform: All
Viersion: Buddy API 3.7/Windows & 1.6/Macintosh
シンタックス
Result = baSysFolder(フォルダの種類)
引数
フォルダの種類 パスを取得したいフォルダの種類を文字列で指定します。指定できる文字列は、下表のとおりです(なお、後述の注釈参照)。
文字列 |
Windows |
Macintosh |
windows |
Windowsフォルダ |
− |
system |
Systemフォルダ |
システム(System)フォルダ |
prefs |
Windowsフォルダ |
Preferencesフォルダ |
system16 |
Systemフォルダ(16ビットファイル) |
− |
system32 |
Systemフォルダ(32ビットファイル) |
− |
temp |
Tempフォルダ(テンポラリファイルの格納場所) |
起動ディスク内のTemporary Itemsフォルダ |
current |
DOSカレントディレクトリ |
− |
desktop |
デスクトップフォルダ |
Desktop(デスクトップ)フォルダ |
common desktop |
全ユーザー(All Users)のデスクトップフォルダ |
− |
groups |
[スタート]メニューのプログラムグループフォルダ |
− |
start menu |
[スタート]メニューフォルダ |
− |
common start menu |
全ユーザー(All Users)の[スタート]メニューフォルダ |
− |
boot |
− |
起動ディスクのボリューム名 |
apple |
− |
アップルメニューフォルダ |
control panels |
− |
コントロールパネルフォルダ |
extensions |
− |
機能拡張フォルダ |
personal |
マイドキュメント(My Documents)フォルダ |
ユーザの書類(Documents)フォルダ |
favorites |
お気に入り(Favorites)フォルダ |
ユーザのFavoritesフォルダ |
startup |
スタートアッププログラムグループフォルダ |
起動項目フォルダ |
common startup |
全ユーザー(All Users)のスタートアッププログラムグループフォルダ |
− |
recent |
最近使ったファイル(Recent)フォルダ |
− |
sendto |
SendToフォルダ |
− |
network |
Network Neighborhood(NetHood)フォルダ |
− |
fonts |
Fontsフォルダ |
システム(System)のライブラリ(Library)のFontsフォルダ |
shellnew |
新規ドキュメント用のTemplateasフォルダ |
− |
program files |
Program Filesフォルダ |
− |
common files |
Program Files内のCommon Filesフォルダ |
− |
apps |
− |
アプリケーション(Applications)フォルダ |
trash |
− |
ゴミ箱(Trashフォルダ) |
戻り値
指定された種類のフオルダの完全パスを、文字列で返します。引数が無効だったり、フォルダが存在しない場合には、空文字列""が返されます。
例文
つぎのステートメントは、オペレーティングシステムのシステム(System)フォルダの完全パスを変数sSystemPathに格納したうえで、その値の文字列を[メッセージ]ウィンドウに表示します。
sSystemPath = baSysFolder("system")
put sSystemPath
-- Macintoshの場合(Mac OS X.3.5)
-- "Macintosh HD:System:"
-- Windowsの場合(Windows XP SP2)
-- "C:\WINDOWS\System32\"
注釈
返される完全パスの文字列は、末尾にパスデリミタ(Macintoshは":"、Windowsは"\")がつきます。
なお、上記の表に列挙した以外のフォルダについて、パスを取得することも可能です。ただし、環境によって取得可能なフォルダは異なることがありますので、ご注意ください。
Windowsでは、引数に番号を文字列として渡すことができます[*1]。たとえば、以下のステートメントは、Cookiesフォルダのパスを[メッセージウィンドウ]に表示します。
put baSysFolder( "33" )
-- "C:\Documents and Settings\<ユーザー名>\Cookies\
引数として与える番号は、Windows Platform SDKの<ShlObj.h>プログラミングヘッダファイル内に、リストされています。番号の文字列を指定すると、その値はSHGetSpecialFolderLocation APIの呼出しに直接渡されます。
Macintoshでは、4文字のコードを用いて、フォルダを調べることができます。たとえば、以下のステートメントは、Application Supportフォルダのパスを[メッセージ]ウィンドウに表示します。
put baSysFolder("asup")
-- "Macintosh HD:Library:Application Support:"
4文字のコードについては、Apple Computerで公開されている<Folders.h>プログラミングヘッダファイルから、リストを取得することができます[*2]。
[*1] 番号とフォルダを簡単に確認するには、つぎのムービースクリプトを作成し、引数に最大値となる任意の整数を指定して呼出してみればよいでしょう。[メッセージ]ウィンドウに、番号と対応するフォルダのパスが表示されます。
-- ムービースクリプト
on xGetFolders(n)
repeat with i = 0 to n
put [i, baSysFolder(string(i))]
end repeat
end
|
[*2] <Folders.h>ファイルから、上記の表に掲載されていないフォルダの4文字コードを例示すると、たとえば次表のようなものがあります。
4文字コード |
Macintosh |
rdoc |
アップルメニューの最近使った書類フォルダ |
rapp |
アップルメニューの最近使ったアプリケーションフォルダ |
appr |
アピアランスフォルダ |
shdf |
システム終了項目フォルダ |
usrs |
全ユーザを格納するユーザ(Users)フォルダ |
cusr |
カレントユーザ(ユーザ名)フォルダ |
sdat |
全ユーザの共有(Shared)フォルダ |
|