Condividi tramite


Funzione NtOpenDirectoryObject

[Questa funzione può essere modificata o non disponibile in futuro.]

Apre un oggetto directory esistente.

Sintassi

NTSTATUS WINAPI NtOpenDirectoryObject(
  _Out_ PHANDLE            DirectoryHandle,
  _In_  ACCESS_MASK        DesiredAccess,
  _In_  POBJECT_ATTRIBUTES ObjectAttributes
);

Parametri

DirectoryHandle [out]

Handle per l'oggetto directory appena aperto.

DesiredAccess [in]

ACCESS_MASK che specifica l'accesso richiesto all'oggetto directory. Questo parametro può essere uno o più dei valori seguenti.

Valore Significato
DIRECTORY_QUERY
0x0001
Eseguire query sull'accesso all'oggetto directory.
DIRECTORY_TRAVERSE
0x0002
Accesso alla ricerca dei nomi all'oggetto directory.
DIRECTORY_CREATE_OBJECT
0x0004
Accesso alla creazione dei nomi all'oggetto directory.
DIRECTORY_CREATE_SUBDIRECTORY
0x0008
Accesso alla creazione di sottodirectory all'oggetto directory.
DIRECTORY_ALL_ACCESS
STANDARD_RIGHTS_REQUIRED | 0xf
Tutti i diritti precedenti e STANDARD_RIGHTS_REQUIRED.

 

ObjectAttributes [in]

Attributi per l'oggetto directory. Per inizializzare la struttura OBJECT_ATTRIBUTES , usare la macro InitializeObjectAttributes . Per altre informazioni, vedere la documentazione per questi elementi nella documentazione per WDK.

Valore restituito

La funzione restituisce STATUS_SUCCESS o uno stato di errore. I codici di stato possibili includono quanto segue.

Codice restituito Descrizione
STATUS_INSUFFICIENT_RESOURCES
Impossibile allocare un buffer temporaneo richiesto da questa funzione.
STATUS_INVALID_PARAMETER
Il parametro ObjectAttributes specificato è un puntatore NULL , non un puntatore valido a una struttura OBJECT_ATTRIBUTES o alcuni dei membri specificati nella struttura OBJECT_ATTRIBUTES non sono validi.
STATUS_OBJECT_NAME_INVALID
Il parametro ObjectAttributes contiene un membro ObjectName nella struttura OBJECT_ATTRIBUTES non valida perché è stata trovata una stringa vuota dopo il carattere OBJECT_NAME_PATH_SEPARATOR .
STATUS_OBJECT_NAME_NOT_FOUND
Il parametro ObjectAttributes contiene un membro ObjectName nella struttura OBJECT_ATTRIBUTES che non è stato trovato.
STATUS_OBJECT_PATH_NOT_FOUND
Il parametro ObjectAttributes contiene un membro ObjectName nella struttura OBJECT_ATTRIBUTES con un percorso oggetto che non è stato trovato.
STATUS_OBJECT_PATH_SYNTAX_BAD
Il parametro ObjectAttributes non contiene un membro RootDirectory , ma il membro ObjectName nella struttura OBJECT_ATTRIBUTES è una stringa vuota o non contiene un carattere OBJECT_NAME_PATH_SEPARATOR . Questo indica una sintassi errata per il percorso dell'oggetto.

 

Commenti

Questa funzione non ha alcun file di libreria di importazione o intestazione associato; è necessario chiamarla usando le funzioni LoadLibrary e GetProcAddress .

Requisiti

Requisito Valore
DLL
Ntdll.dll

Vedi anche

NtQueryDirectoryObject