SHGetSpecialFolderPath

機能
特殊フォルダのパスを取得する
Declare Function SHGetSpecialFolderPath Lib "shell32.dll" _
Alias "SHGetSpecialFolderPathA" _
(ByVal hwndOwner As Long, ByVal lpszPath As String, _
ByVal nFolder As Long, ByVal fCreate As Long) As Long
Declare Function SHGetSpecialFolderPath Lib "shell32.dll" _
Alias "SHGetSpecialFolderPathA" _
(ByVal hwndOwner As Integer, ByVal lpszPath As String, _
ByVal nFolder As Integer, ByVal fCreate As Integer) As Integer
引数
hwndOwner
ダイアログボックスの親ウィンドウのハンドル
lpszPath
(戻り値)パス名を受け取るバッファ
nFolder
フォルダの位置を指定する定数
fCreate
指定するフォルダが存在しない場合

1のとき   作成する
0のとき   作成しない
サンプル
ダウンロード(SHGetSpecialFolderPath.lzh 2.08KB)

nFolderの定数

CSIDL_ALTSTARTUP = &H1D                スタートアッププログラムグループ内の
                                        特定ユーザー向けのスタートアップディレクトリ
CSIDL_APPDATA = &H1A                   アプリケーション定義データ用共通ディレクトリ
CSIDL_BITBUCKET = &HA                  ごみ箱
CSIDL_COMMON_ALTSTARTUP = &H1E         スタートアッププログラムグループ内の
                                        全ユーザー向けのスタートアップディレクトリ
CSIDL_COMMON_DESKTOPDIRECTORY = &H19   全ユーザ向けデスクトップディレクトリ
CSIDL_COMMON_FAVORITES = &H1F          同、お気に入り
CSIDL_COMMON_PROGRAMS = &H17           同、スタートメニューに表示される
                                        プログラムグループのディレクトリ
CSIDL_COMMON_STARTMENU = &H16          同、スタートメニューに表示される
                                        プログラムとフォルダを含むのディレクトリ
CSIDL_COMMON_STARTUP = &H18            同、スタートアップフォルダに含まれる
                                        プログラムを含むのディレクトリ
CSIDL_CONTROLS = &H3                   コントロールパネル
CSIDL_DESKTOP = &H0                    デスクトップ
CSIDL_DESKTOPDIRECTORY = &H10          Windows\デスクトップ
CSIDL_DRIVES = &H11                    マイコンピュータ
CSIDL_FAVORITIES = &H6                 Favorities
CSIDL_FONTS = &H14                     Windows\Font
CSIDL_HISTORY = &H22                   インターネット履歴ディレクトリ
CSIDL_INTERNET = &H1                   インターネットフォルダ
CSIDL_INTERNET_CACHE = &H20            インターネットキャッシュのディレクトリ
CSIDL_NETHOOD = &H13                   NetHoodディレクトリ
CSIDL_NETWORK = &H12                   NETWORKフォルダ
CSIDL_PERSONAL = &H5                   My Document
CSIDL_PRINTERS = &H4                   プリンタフォルダ
CSIDL_PRINTERHOOD = &H1B               プリンタディレクトリ
CSIDL_PROGRAMS = &H2                   \windows\プログラム
CSIDL_RECENT = &H8                     Recent
CSIDL_SENDTO = &H9                     SendTo
CSIDL_STARTMENU = &HB                  スタートメニュー
CSIDL_STARTUP = &H7                    スタートアップ
CSIDL_TEMPLATES = &H15                 Windows\ShellNew