Macro FsRtlFastLock (ntifs.h)
A macro FsRtlFastLock é usada por sistemas de arquivos e drivers de filtro para solicitar um bloqueio de intervalo de bytes para um fluxo de arquivos.
Sintaxe
BOOLEAN
FsRtlFastLock( A1, /* FileLock */
A2, /* FileObject */
A3, /* FileOffset */
A4, /* Length */
A5, /* ProcessId */
A6, /* Key */
A7, /* FailImmediately */
A8, /* ExclusiveLock */
A9, /* Iosb */
A10, /* Context */
A11 /* AlreadySynchronized */ )
Parâmetros
A1
[in] FileLock: ponteiro para a estrutura de FILE_LOCK do arquivo. Essa estrutura deve ter sido inicializada por uma chamada anterior para FsRtlAllocateFileLock ou FsRtlInitializeFileLock.
A2
[in] FileObject: ponteiro para o FILE_OBJECT do arquivo aberto. O objeto de arquivo deve ter sido criado com GENERIC_READ ou GENERIC_WRITE acesso ao arquivo (ou ambos).
A3
[in] FileOffset: ponteiro para uma variável que especifica o deslocamento de bytes inicial dentro do arquivo do intervalo a ser bloqueado.
A4
[in] Length: ponteiro para uma variável que especifica o comprimento em bytes do intervalo a ser bloqueado.
A5
[in]
A6
[in] Key: a chave a ser atribuída ao bloqueio de intervalo de bytes.
A7
[in] FailImmediately: valor booliano que especifica se a solicitação de bloqueio deve falhar se o bloqueio não puder ser concedido imediatamente. Se o chamador puder ser colocado em um estado de espera até que a solicitação seja concedida, defina FailImmediately como FALSE. Se não puder, defina FailImmediately como TRUE.
A8
[in] ExclusiveLock: Defina como TRUE se um bloqueio exclusivo for solicitado, FALSE se um bloqueio compartilhado for solicitado.
A9
[out] de Iosb: ponteiro para uma estrutura de IO_STATUS_BLOCK alocada pelo chamador que recebe informações de status sobre a solicitação de bloqueio.
A10
[in] Context: ponteiro opcional para um contexto a ser usado ao liberar o bloqueio de intervalo de bytes.
A11
[in] Já Sincronizado: esse parâmetro é obsoleto, mas é mantido para compatibilidade com drivers herdados.
Valor de retorno
Nenhum
Observações
A macro FsRtlFastLock faz com que o chamador adquira um bloqueio de intervalo de bytes em uma região do arquivo especificado.
FsRtlFastLock retorna TRUE para indicar que a estrutura de IO_STATUS_BLOCK apontada pelo Iosb recebeu informações de status sobre a operação de bloqueio; caso contrário, retornará FALSE.
Para examinar o conteúdo da estrutura à qual o Iosb aponta, use a macro NT_STATUS.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino |
Área de trabalho |
cabeçalho | ntifs.h (inclua Ntifs.h) |
IRQL | <= APC_LEVEL |