Condividi tramite


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 utilizzare per l'oggetto file. Questi attributi includono il 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 di errore 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 era un puntatore NULL, non un puntatore valido a una struttura di OBJECT_ATTRIBUTES oppure alcuni dei membri della struttura ObjectAttributes specificati non sono validi.
STATUS_OBJECT_NAME_INVALID Il parametro ObjectAttributes contiene un 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. Indica una sintassi errata per il percorso dell'oggetto.

Osservazioni

ZwDeleteFile elimina l'oggetto file specificato.

La funzione ZwDeleteFile viene chiamata dopo che la macro InitializeAttributes viene utilizzata 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:

  • Come nome percorso completo, fornito nel membro ObjectName dell'input ObjectAttributes
  • Come pathname relativo al file di directory rappresentato dall'handle nel membro RootDirectory del 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 viene eseguita in modalità utente, è necessario usare il nome "NtDeleteFile " anziché "ZwDeleteFile".

Per le chiamate da driver in modalità kernel, le NtXxx e ZwXxx versioni 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 Using Nt and Zw Versions of the Native System Services Routines.

Fabbisogno

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)

Vedere anche

InitializeObjectAttributes

OBJECT_ATTRIBUTES