Funzione ZwCreateDirectoryObject (wdm.h)
La routine ZwCreateDirectoryObject crea o apre un oggetto object-directory.
Sintassi
NTSYSAPI NTSTATUS ZwCreateDirectoryObject(
[out] PHANDLE DirectoryHandle,
[in] ACCESS_MASK DesiredAccess,
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
Parametri
[out] DirectoryHandle
Puntatore a una variabile HANDLE che riceve un handle nella directory dell'oggetto.
[in] DesiredAccess
Specifica un valore ACCESS_MASK che determina l'accesso richiesto all'oggetto. Oltre ai diritti di accesso definiti per tutti i tipi di oggetti (vedere ACCESS_MASK), il chiamante può specificare uno o più dei diritti di accesso seguenti, specifici per le directory degli oggetti:
flag ACCESS_MASK | Tipo di accesso |
---|---|
DIRECTORY_QUERY | Query |
DIRECTORY_TRAVERSE | Ricerca nome |
DIRECTORY_CREATE_OBJECT | Creazione di nomi |
DIRECTORY_CREATE_SUBDIRECTORY | Creazione di sottodirectory |
DIRECTORY_ALL_ACCESS | Tutti i tipi precedenti |
[in] ObjectAttributes
Puntatore a una struttura OBJECT_ATTRIBUTES contenente gli attributi dell'oggetto, che è necessario aver già inizializzato chiamando InitializeObjectAttributes.
Valore restituito
ZwCreateDirectoryObject restituisce un valore NTSTATUS. I valori restituiti possibili includono:
Commenti
Una volta che l'handle puntato da DirectoryHandle non è più in uso, il driver deve chiamare ZwClose per chiuderlo.
Se il chiamante non è in esecuzione in un contesto di thread di sistema, è necessario assicurarsi che gli handle creati siano handle privati. In caso contrario, l'handle può essere accessibile dal processo nel cui contesto è in esecuzione il driver. Per altre informazioni, vedere Handle degli oggetti.
Il sistema usa le directory degli oggetti per organizzare altri tipi di oggetti, ad esempio oggetti dispositivo. Per altre informazioni, vedere Directory oggetti.
Il sistema non usa oggetti directory per rappresentare le directory del file system, rappresentate invece come oggetti file.
Se la chiamata a questa funzione si verifica in modalità utente, è necessario usare il nome "NtCreateDirectoryObject" anziché "ZwCreateDirectoryObject".
Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Uso di nt e zw versioni delle routine di Servizi di sistema nativo.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
Vedi anche
Uso di nt e zw versioni delle routine di Servizi di sistema nativo