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 值,識別要擷取其路徑的資料夾。 只有真實資料夾有效。 如果指定了虛擬資料夾,則此函式會失敗。 您可以結合資料夾的 CSIDL 與 CSIDL_FLAG_CREATE,強制使用 SHGetFolderPathAndSubDir 來建立資料夾。
[in] hToken
類型:HANDLE
代表特定使用者的 存取令牌。 若是 Windows 2000 之前的系統,請將此值設定為 NULL。 對於較新的系統,hToken 通常不一定設定為 NULL。 針對可以有多個使用者但被視為屬於單一使用者的資料夾,您可能需要將值指派給 hToken。 此類型最常用的資料夾是 My Documents。
[in] dwFlags
類型:DWORD
指定要傳回的路徑是資料夾的實際路徑還是預設路徑。 這個值用於與 CSIDL 相關聯的資料夾, 值可由用戶移動或重新命名。
SHGFP_TYPE_CURRENT
傳回資料夾的目前路徑。
SHGFP_TYPE_DEFAULT
傳回資料夾的預設路徑。
[in] pszSubDir
類型:LPCTSTR
要附加至資料夾路徑之子路徑的指標。 這是長度MAX_PATH的 null結束字串
[out] pszPath
類型:LPTSTR
當此函式傳回時,這個值會指向目錄路徑和附加的子路徑。 這是長度MAX_PATH的 null結束字串
傳回值
類型:HRESULT
如果函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
言論
注意
shlobj_core.h 標頭會根據 UNICODE 預處理器常數的定義,將 SHGetFolderPathAndSubDir 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | shlobj_core.h (包括 Shlobj.h, Shlobj_core.h) |
連結庫 | Shell32.lib |
DLL | Shell32.dll 版 (5.60 版或更新版本) |