Функция SHCreateDirectoryExA (shlobj_core.h)
[Эта функция доступна через Windows XP с пакетом обновления 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 также проверяет, видимы ли файлы. Если они не видны, ожидается одно из следующих вариантов:
- Если для задан допустимый дескриптор окна, появится сообщение, предупреждающее пользователя о том, что он или она не сможет получить доступ к файлам. Если пользователь не будет продолжать работу, функция возвращает ERROR_CANCELLED.
- Если для задано значение NULL, пользовательский интерфейс не отображается, а функция возвращает ERROR_CANCELLED.
Заметка
Заголовок shlobj_core.h определяет SHCreateDirectoryEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный, Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | shlobj_core.h (include Shlobj.h, Shlobj_core.h) |
библиотеки |
Shell32.lib |
DLL | Shell32.dll (версия 5.0 или более поздняя версия) |