Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La rutina
Sintaxis
NTSYSAPI NTSTATUS ZwOpenDirectoryObject(
[out] PHANDLE DirectoryHandle,
[in] ACCESS_MASK DesiredAccess,
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
Parámetros
[out] DirectoryHandle
Identificador del objeto de directorio recién abierto.
[in] DesiredAccess
Estructura ACCESS_MASK que especifica los tipos de acceso solicitados que se solicitan para este objeto de directorio. Un autor de llamada puede especificar una o una combinación de lo siguiente.
| Marcas de DesiredAccess | Significado |
|---|---|
| DIRECTORY_QUERY | Consulta del acceso al objeto de directorio |
| DIRECTORY_TRAVERSE | Acceso de búsqueda de nombres al objeto de directorio |
| DIRECTORY_CREATE_OBJECT | Acceso de creación de nombres al objeto de directorio |
| DIRECTORY_CREATE_SUBDIRECTORY | Acceso de creación de subdirectorios al objeto de directorio |
| DIRECTORY_ALL_ACCESS | Todos los derechos anteriores más STANDARD_RIGHTS_REQUIRED. |
Estos tipos de acceso solicitados se comparan con la lista de control de acceso discrecional del objeto (DACL) para determinar qué accesos se conceden o deniegan.
[in] ObjectAttributes
Atributos especificados para el objeto de directorio proporcionado por el autor de la llamada. Este parámetro se inicializa llamando a la macro InitializeObjectAttributes.
Valor devuelto
ZwOpenDirectoryObject devuelve STATUS_SUCCESS o un estado de error adecuado. Los códigos de estado de error más comunes son los siguientes:
| Código devuelto | Descripción |
|---|---|
|
No se pudo asignar un búfer temporal requerido por esta rutina. |
|
El parámetro |
|
El parámetro ObjectAttributes contenía un campo ObjectName en la estructura OBJECT_ATTRIBUTES que no era válida porque se encontró una cadena vacía después del carácter OBJECT_NAME_PATH_SEPARATOR. |
|
El parámetro |
|
El parámetro ObjectAttributes contenía un campo ObjectName en la estructura OBJECT_ATTRIBUTES con una ruta de acceso de objeto que no se encontró. |
|
El parámetro ObjectAttributes no contenía un campo RootDirectory, pero el campo ObjectName de la estructura OBJECT_ATTRIBUTES era una cadena vacía o no contenía un carácter OBJECT_NAME_PATH_SEPARATOR. Esto indica una sintaxis incorrecta para la ruta de acceso del objeto. |
La rutina
Observaciones
ZwOpenDirectoryObject abre un objeto de directorio existente y devuelve un identificador al objeto .
Se llama a la rutina
Se crea un objeto de directorio mediante la rutina de
Para obtener más información sobre la seguridad y el control de acceso, consulte modelo de seguridad de Windows para desarrolladores de controladores y la documentación sobre estos temas en Windows SDK.
Requisitos
| Requisito | Valor |
|---|---|
| cliente mínimo admitido | Windows XP |
| de la plataforma de destino de |
Universal |
| encabezado de |
ntifs.h (include Ntdef.h, Ntifs.h, Fltkernel.h) |
| biblioteca de |
NtosKrnl.lib |
| DLL de |
NtosKrnl.exe |
| irQL | PASSIVE_LEVEL |
| reglas de cumplimiento de DDI | HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm) |
Consulte también
usar versiones Nt y Zw de las rutinas de servicios del sistema nativo