Função NtUnlockFile (ntifs.h)
A rotina NtUnlockFile desbloqueia um bloqueio de intervalo de bytes em um arquivo.
Sintaxe
__kernel_entry NTSYSCALLAPI NTSTATUS NtUnlockFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] PLARGE_INTEGER ByteOffset,
[in] PLARGE_INTEGER Length,
[in] ULONG Key
);
Parâmetros
[in] FileHandle
Um identificador para o objeto de arquivo que representa o arquivo cujo intervalo de bytes deve ser desbloqueado.
[out] IoStatusBlock
Um ponteiro para uma estrutura IO_STATUS_BLOCK que contém o status final.
[in] ByteOffset
Um ponteiro para uma variável que especifica o deslocamento de bytes inicial para o intervalo de bytes a ser desbloqueado.
[in] Length
Um ponteiro para uma variável que especifica o comprimento, em bytes, do intervalo de bytes a ser desbloqueado.
[in] Key
O valor atribuído pelo chamador usado para descrever grupos de bloqueios relacionados. Esse valor deve ser definido como zero.
Retornar valor
A rotina NtUnlockFile retorna STATUS_SUCCESS com êxito ou um valor NTSTATUS apropriado. Os valores NTSTATUS possíveis incluem:
Código de retorno | Descrição |
---|---|
STATUS_RANGE_NOT_LOCKED | O intervalo de bytes especificado não está bloqueado. |
Comentários
A rotina NtUnlockFile usa um intervalo de bytes conforme especificado pelos argumentos ByteOffset e Length . Esse intervalo deve ser idêntico a um intervalo de bytes no arquivo que foi bloqueado anteriormente com uma única chamada para a rotina NtUnlockFile . Não é possível desbloquear dois intervalos adjacentes bloqueados anteriormente com uma única chamada para NtUnlockFile. Também não é possível desbloquear parte de um intervalo que foi bloqueado anteriormente com uma única chamada para a rotina NtUnlockFile .
Os chamadores de NtUnlockFile devem estar em execução em IRQL = PASSIVE_LEVEL e com APCs de kernel especiais habilitadas**.
Observação
Se a chamada para a função NtUnlockFile ocorrer no modo kernel, você deverá usar o nome "ZwUnlockFile" em vez de "NtUnlockFile".
Para chamadas de drivers no modo kernel, as versões NtXxx e ZwXxx de uma rotina dos Serviços do Sistema Nativo do Windows 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 Usando versões Nt e Zw das rotinas dos Serviços de Sistema Nativo.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 |
Plataforma de Destino | Universal |
Cabeçalho | ntifs.h (inclua Ntifs.h, FltKernel.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (consulte a seção Comentários) |
Regras de conformidade de DDI | HwStorPortProhibitedDIs, PowerIrpDDis |
Confira também
Usando versões Nt e Zw das rotinas dos Serviços de Sistema Nativo
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