SHCreateDirectoryEx函式功能: MFC中,該函式創建一個檔案系統的目錄。與CreateDirectory不同的如果路徑中有資料夾不存在,這些資料夾會被創建。 有了這個函式,就不用在創建多層資料夾時使用遞歸和CreateDirectory來實現了。
基本介紹
函式原型,參數,返回值,C++包含檔案,舉例,
函式原型
int SHCreateDirectoryEx(
HWND hwnd,
LPCTSTR pszPath,
SECURITY_ATTRIBUTES *psa
);
參數
注意:
這個函式創建一個檔案系統資料夾的完全限定路徑是由pszPath。 如果一個或多箇中間資料夾不存在,則自動創建。SHCreateDirectoryEx還驗證資料夾是否是可見的。 如果他們是不可見的,情形以下之一:
- 如果HWND被設定為 NULL,沒有用戶界面顯示和函式返回ERROR_CANCELLED。
pszPath 一個以null結尾的字元串指針指定目錄的完全限定路徑。 這個字元串的最大長度是248個字元,包括終止null字元。
psa 指向SECURITY_ATTRIBUTES結構體,可以置為NULL。
返回值
ERROR_BAD_PATHNAME | pszPath 參數為相對路徑。 |
ERROR_FILENAME_EXCED_RANGE | pszPath 參數太長。 |
ERROR_PATH_NOT_FOUND | 創建時系統找不到指定路徑,可能路徑中包含非法入口。(如Z:\,但不存在Z盤。) |
ERROR_FILE_EXISTS | 檔案已經存在。 |
ERROR_ALREADY_EXISTS | 路徑已經存在。 |
ERROR_CANCELLED | 用戶取消了操作。 |
返回 ERROR_SUCCESS 表示創建成功。
C++包含檔案
舉例
SHCreateDirectoryEx(NULL,_T("C:\\Users\\Administrator\\Desktop\\Coi\\ttt\\y\\z"),NULL);