Funzione ZwDeleteFile (ntifs.h)
La routine ZwDeleteFile elimina il file specificato.
Sintassi
NTSYSAPI NTSTATUS ZwDeleteFile(
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
Parametri
[in] ObjectAttributes
Puntatore a una struttura OBJECT_ATTRIBUTES che contiene gli attributi forniti dal chiamante da usare per l'oggetto file. Questi attributi includono ObjectName e il SECURITY_DESCRIPTOR, ad esempio. Questo parametro viene inizializzato chiamando la macro InitializeObjectAttributes .
Valore restituito
ZwDeleteFile restituisce STATUS_SUCCESS o uno stato di errore appropriato che rappresenta lo stato di completamento finale dell'operazione. I codici di stato degli errori 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 della struttura ObjectAttributes specificati non sono validi. |
STATUS_OBJECT_NAME_INVALID | Il parametro ObjectAttributes contiene un OggettoName 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
ZwDeleteFile elimina l'oggetto file specificato.
La funzione ZwDeleteFile viene chiamata dopo l'eliminazione della macro InitializeAttributes per impostare gli attributi nella struttura OBJECT_ATTRIBUTES per l'oggetto file da eliminare.
Esistono due modi alternativi per specificare il nome del file da eliminare con ZwDeleteFile:
- Nome percorso completo fornito nel membro ObjectName dell'oggetto ObjectAttributes
- Come pathname relativo al file di directory rappresentato dall'handle nel membro RootDirectorydell'oggetto ObjectAttributes di input
I chiamanti di ZwDeleteFile devono essere in esecuzione in IRQL = PASSIVE_LEVEL e con API kernel speciali abilitate.
Se la chiamata alla funzione ZwDeleteFile si verifica in modalità utente, è consigliabile usare il nome "NtDeleteFile" anziché "ZwDeleteFile".
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 |
---|---|
Client minimo supportato | Windows XP |
Piattaforma di destinazione | Universale |
Intestazione | ntifs.h (include Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (vedere la sezione Osservazioni) |
Regole di conformità DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |