Função IoReplaceFileObjectName (ntifs.h)
A rotina IoReplaceFileObjectName substitui o nome de um objeto de arquivo.
Sintaxe
NTSTATUS IoReplaceFileObjectName(
[in] PFILE_OBJECT FileObject,
[in] PWSTR NewFileName,
[in] USHORT FileNameLength
);
Parâmetros
[in] FileObject
Ponteiro para o objeto de arquivo cujo nome de arquivo está sendo substituído.
[in] NewFileName
Ponteiro para o buffer de cadeia de caracteres para o novo nome do objeto de arquivo.
[in] FileNameLength
Comprimento, em bytes, do novo nome do objeto de arquivo.
Retornar valor
Retorna STATUS_SUCCESS ou um dos seguintes valores NTSTATUS, caso contrário:
Código de retorno | Descrição |
---|---|
STATUS_INVALID_PARAMETER | O objeto de arquivo fornecido não tem um nome para substituir. |
STATUS_INSUFFICIENT_RESOURCES | Memória inadequada está disponível para alocar um buffer para concluir essa operação. |
Comentários
Os drivers devem usar IoReplaceFileObjectName para substituir com segurança o nome em um objeto de arquivo. Isso permite que o gerenciador de E/S controle o tempo de vida do buffer associado ao objeto de arquivo. Substituir um nome de objeto de arquivo diretamente sem usar IoReplaceFileObjectName pode entrar em conflito com outros usos do nome e deve ser evitado quando possível.
Essa rotina deve ser usada para substituir o nome do objeto de arquivo em vez de fazer isso manualmente para permitir que o kernel gerencie o tempo de vida do nome corretamente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 |
Plataforma de Destino | Universal |
Cabeçalho | ntifs.h (inclua Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |