Функция NtOpenDirectoryObject
[Эта функция может быть изменена или недоступна в будущем.]
Открывает существующий объект каталога.
Синтаксис
NTSTATUS WINAPI NtOpenDirectoryObject(
_Out_ PHANDLE DirectoryHandle,
_In_ ACCESS_MASK DesiredAccess,
_In_ POBJECT_ATTRIBUTES ObjectAttributes
);
Параметры
-
DirectoryHandle [out]
-
Дескриптор для вновь открытого объекта каталога.
-
DesiredAccess [in]
-
ACCESS_MASK, указывающий запрошенный доступ к объекту каталога. Этот параметр может быть одним или несколькими из следующих значений.
Значение Значение - DIRECTORY_QUERY
- 0x0001
Запрос доступа к объекту каталога. - DIRECTORY_TRAVERSE
- 0x0002
Доступ подстановки имени к объекту каталога. - DIRECTORY_CREATE_OBJECT
- 0x0004
Доступ создания имен к объекту каталога. - DIRECTORY_CREATE_SUBDIRECTORY
- 0x0008
Доступ создания подкаталогов к объекту каталога. - DIRECTORY_ALL_ACCESS
- STANDARD_RIGHTS_REQUIRED | 0xF
Все предыдущие права плюс STANDARD_RIGHTS_REQUIRED. -
ObjectAttributes [in]
-
Атрибуты объекта каталога. Чтобы инициализировать структуру OBJECT_ATTRIBUTES , используйте макрос InitializeObjectAttributes . Дополнительные сведения см. в документации по этим элементам в документации по WDK.
Возвращаемое значение
Функция возвращает STATUS_SUCCESS или состояние ошибки. Возможные коды состояния включают следующие.
Код возврата | Описание |
---|---|
|
Не удалось выделить временный буфер, необходимый для этой функции. |
|
Указанный параметр ObjectAttributes был пустым указателем, а не допустимым указателем на структуру OBJECT_ATTRIBUTES или некоторые элементы, указанные в структуре OBJECT_ATTRIBUTES , были недопустимыми. |
|
Параметр ObjectAttributes содержал элемент ObjectName в структуре OBJECT_ATTRIBUTES , который был недопустим, так как после символа OBJECT_NAME_PATH_SEPARATOR была найдена пустая строка. |
|
Параметр ObjectAttributes содержал элемент ObjectName в структуре OBJECT_ATTRIBUTES , который не удалось найти. |
|
Параметр ObjectAttributes содержал элемент ObjectName в структуре OBJECT_ATTRIBUTES с не удалось найти путь к объекту. |
|
Параметр ObjectAttributes не содержал элемента RootDirectory , но элемент ObjectName в структуре OBJECT_ATTRIBUTES был пустой строкой или не содержал символа OBJECT_NAME_PATH_SEPARATOR . Это указывает на неправильный синтаксис пути к объекту. |
Комментарии
У этой функции нет связанной библиотеки импорта или файла заголовков; его необходимо вызвать с помощью функций LoadLibrary и GetProcAddress .
Требования
Требование | Значение |
---|---|
DLL |
|
См. также раздел