Função ZwDeleteFile (ntifs.h)
A rotina ZwDeleteFile exclui o arquivo especificado.
Sintaxe
NTSYSAPI NTSTATUS ZwDeleteFile(
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
Parâmetros
[in] ObjectAttributes
Um ponteiro para uma estrutura OBJECT_ATTRIBUTES que contém os atributos fornecidos pelo chamador a serem usados para o objeto de arquivo. Esses atributos incluem o ObjectName e o SECURITY_DESCRIPTOR, por exemplo. Esse parâmetro é inicializado chamando a macro InitializeObjectAttributes .
Retornar valor
ZwDeleteFile retorna STATUS_SUCCESS ou um erro apropriado status que representa o status de conclusão final da operação. Possíveis códigos de status de erro incluem o seguinte:
Código de retorno | Descrição |
---|---|
STATUS_INSUFFICIENT_RESOURCES | Não foi possível alocar um buffer temporário exigido por essa função. |
STATUS_INVALID_PARAMETER | O parâmetro ObjectAttributes especificado era um ponteiro NULL, não um ponteiro válido para uma estrutura OBJECT_ATTRIBUTES ou alguns dos membros da estrutura ObjectAttributes especificados eram inválidos. |
STATUS_OBJECT_NAME_INVALID | O parâmetro ObjectAttributes continha um ObjectName na estrutura OBJECT_ATTRIBUTES inválido porque uma cadeia de caracteres vazia foi encontrada após o caractere OBJECT_NAME_PATH_SEPARATOR. |
STATUS_OBJECT_NAME_NOT_FOUND | O parâmetro ObjectAttributes continha um membro ObjectName na estrutura OBJECT_ATTRIBUTES que não pôde ser encontrada. |
STATUS_OBJECT_PATH_NOT_FOUND | O parâmetro ObjectAttributes continha um membro ObjectName na estrutura OBJECT_ATTRIBUTES com um caminho de objeto que não pôde ser encontrado. |
STATUS_OBJECT_PATH_SYNTAX_BAD | O parâmetro ObjectAttributes não continha um membro RootDirectory , mas o membro ObjectName na estrutura OBJECT_ATTRIBUTES era uma cadeia de caracteres vazia ou não continha um caractere OBJECT_NAME_PATH_SEPARATOR. Isso indica uma sintaxe incorreta para o caminho do objeto. |
Comentários
ZwDeleteFile exclui o objeto de arquivo especificado.
A função ZwDeleteFile é chamada depois que a macro InitializeAttributes é usada para definir atributos na estrutura OBJECT_ATTRIBUTES para o objeto de arquivo a ser excluído.
Há duas maneiras alternativas de especificar o nome do arquivo a ser excluído com ZwDeleteFile:
- Como um nome de caminho totalmente qualificado, fornecido no membro ObjectName do ObjectAttributes de entrada
- Como pathname relativo ao arquivo de diretório representado pelo identificador no membro RootDirectory do ObjectAttributes de entrada
Os chamadores de ZwDeleteFile devem estar em execução em IRQL = PASSIVE_LEVEL e com APCs de kernel especiais habilitadas.
Se a chamada para a função ZwDeleteFile ocorrer no modo de usuário, você deverá usar o nome "NtDeleteFile " em vez de "ZwDeleteFile".
Para chamadas de drivers de modo kernel, as versões NtXxx e ZwXxx de uma rotina do Windows Native System Services podem se comportar de forma diferente na maneira como lidam e interpretam parâmetros de entrada. Para obter mais informações sobre a relação entre as versões NtXxx e ZwXxx de uma rotina, consulte Using Nt and Zw Versions of the Native System Services Routines.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP |
Plataforma de Destino | Universal |
Cabeçalho | ntifs.h (inclua Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (consulte a seção Comentários) |
Regras de conformidade da DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de