SHGetFolderPathAndSubDirW 関数 (shlobj_core.h)
フォルダーのパスを取得し、ユーザー指定のサブフォルダー パスを追加します。
構文
HRESULT SHGetFolderPathAndSubDirW(
[in] HWND hwnd,
[in] int csidl,
[in] HANDLE hToken,
[in] DWORD dwFlags,
[in] LPCWSTR pszSubDir,
[out] LPWSTR pszPath
);
パラメーター
[in] hwnd
型: HWND
引っ込み思案。
[in] csidl
型: int
CSIDL パスを取得するフォルダーを識別する値です。 実際のフォルダーのみが有効です。 仮想フォルダーが指定されている場合、この関数は失敗します。 SHGetFolderPathAndSubDir を使用してフォルダーの作成を強制するには、フォルダーの CSIDL とCSIDL_FLAG_CREATEを組み合わせることができます。
[in] hToken
型: HANDLE
特定のユーザーを表す アクセス トークン。 Windows 2000 より前のシステムでは、この値を NULLに設定します。 以降のシステムでは、hToken
[in] dwFlags
型: DWORD
返されるパスがフォルダーの実際のパスか、既定のパスかを指定します。 この値は、CSIDL 値に関連付けられているフォルダーがユーザーによって移動または名前変更される場合に使用されます。
SHGFP_TYPE_CURRENT
フォルダーの現在のパスを返します。
SHGFP_TYPE_DEFAULT
フォルダーの既定のパスを返します。
[in] pszSubDir
型: LPCTSTR
フォルダーのパスに追加するサブパスへのポインター。 これは、長さMAX_PATHの null終了文字列です。 新しいディレクトリを作成しない場合、これは既存のサブディレクトリであるか、関数からエラーが返されます。 サブパスを追加しない場合、この値は NULL
[out] pszPath
型: LPTSTR
この関数が戻るときに、この値はディレクトリ パスと追加されたサブパスを指します。 これは、長さMAX_PATHの null終了文字列です。 関数がエラー コードを返す場合、この文字列は空です。
戻り値
型: HRESULT
この関数が成功すると、S_OKが返されます。 それ以外の場合は、HRESULT エラー コードが返されます。
備考
手記
shlobj_core.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHGetFolderPathAndSubDir を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | shlobj_core.h (Shlobj.h、Shlobj_core.h を含む) |
ライブラリ | Shell32.lib |
DLL | Shell32.dll (バージョン 5.60 以降) |
関連項目
SHGetFolderPath を