SHCreateDirectoryExA 函式 (shlobj_core.h)
[此函式可透過 Windows XP Service Pack 2 (SP2) 和 Windows Server 2003 取得。 它可能會在後續版本的 Windows 中改變或無法使用。]
建立具有選擇性安全性屬性的新文件系統資料夾。
語法
int SHCreateDirectoryExA(
[in, optional] HWND hwnd,
[in] LPCSTR pszPath,
[in, optional] const SECURITY_ATTRIBUTES *psa
);
參數
[in, optional] hwnd
類型:HWND
父視窗的句柄。 如果未顯示任何使用者介面,此參數可以設定為 NULL。
[in] pszPath
類型:LPCTSTR
指定目錄完整路徑之 Null 終止字串的指標。 此字串長度上限為 248 個字元,包括終止的 Null 字元。
[in, optional] psa
類型:const SECURITY_ATTRIBUTES*
具有目錄安全性屬性之 SECURITY_ATTRIBUTES 結構的指標。 如果不需要設定安全性屬性,請將此參數設定為 NULL。
傳回值
類型:int
如果成功,則傳回 ERROR_SUCCESS。 如果作業失敗,可以傳回其他錯誤碼,包括此處所列的錯誤碼。 如需未特別欄出的值,請參閱 系統錯誤碼。
傳回碼 | 描述 |
---|---|
|
pszPath 參數已設定為相對路徑。 |
|
pszPath 所指向的路徑太長。 |
|
系統找不到 pszPath |
|
目錄存在。 |
|
目錄存在。 |
|
使用者已取消作業。 |
言論
此函式會建立文件系統資料夾,其完整路徑是由 pszPath 提供。 如果一或多個中繼資料夾不存在,也會建立它們。 SHCreateDirectoryEx 也會驗證檔案是否可見。 如果看不到它們,請預期下列其中一項:
- 如果 hwnd 設定為有效的視窗句柄,就會顯示消息框,警告用戶他們可能無法存取檔案。 如果使用者選擇不繼續,函式會傳回 ERROR_CANCELLED。
- 如果 hwnd 設為 NULL,則不會顯示任何使用者介面,且函式會傳回 ERROR_CANCELLED。
注意
shlobj_core.h 標頭會根據 UNICODE 預處理器常數的定義,將 SHCreateDirectoryEx 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | shlobj_core.h (包括 Shlobj.h, Shlobj_core.h) |
連結庫 | Shell32.lib |
DLL | Shell32.dll 版 (5.0 版或更新版本) |