Partilhar via


código de controle FSCTL_REQUEST_OPLOCK_LEVEL_2

O código de controle FSCTL_REQUEST_OPLOCK_LEVEL_2 solicita um bloqueio oportunista de nível 2 (oplock) em um arquivo.

Para processar esse código de controle, um minifiltro chama FltOplockFsctrl com os parâmetros a seguir. Um sistema de arquivos ou driver de filtro herdado chama FsRtlOplockFsctrl.

Para obter mais informações sobre bloqueio oportunista e sobre o código de controle FSCTL_REQUEST_OPLOCK_LEVEL_2, consulte a documentação do SDK do Microsoft Windows.

Parâmetros

  • Oplock: ponteiro de objeto oplock oplock para o arquivo.

  • CallbackData: somente FltOplockFsctrl . Estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA) para uma solicitação FSCTL IRP_MJ_FILE_SYSTEM_CONTROL. O parâmetro FsControlCode para a operação deve ser FSCTL_REQUEST_OPLOCK_LEVEL_2.

  • Irp: somente FsRtlOplockFsctrl . IRP para uma solicitação FSCTL IRP_MJ_FILE_SYSTEM_CONTROL. O parâmetro FsControlCode para a operação deve ser FSCTL_REQUEST_OPLOCK_LEVEL_2.

  • OpenCount: especifica o estado de bloqueio do arquivo. Defina esse parâmetro como um valor ULONG diferente de zero se houver bloqueios de intervalo de bytes no arquivo ou zero caso contrário.

Bloco de status

FltOplockFsctrl retornará FLT_PREOP_PENDING para essa operação se o oplock tiver sido concedido. Caso contrário, ele retornará FLT_PREOP_COMPLETE.

FsRtlOplockFsctrl retorna um dos seguintes valores NTSTATUS para esta operação:

Código Significado
STATUS_PENDING O oplock foi concedido. Este é um código de êxito.
STATUS_CANCELLED O IRP foi cancelado antes da conclusão da operação de FSCTL_REQUEST_OPLOCK_LEVEL_2. Este é um código de erro.
STATUS_OPLOCK_NOT_GRANTED Não foi possível conceder o oplock. Este é um código de erro.

Requisitos

Tipo de Requisito Requisito
parâmetro Ntifs.h (inclua Ntifs.h ou Fltkernel.h)

Confira também

FLT_CALLBACK_DATA

FLT_PARAMETERS

FLT_PARAMETERS para IRP_MJ_FILE_SYSTEM_CONTROL

FltOplockFsctrl

FSCTL_OPBATCH_ACK_CLOSE_PENDING

FSCTL_OPLOCK_BREAK_ACK_NO_2

FSCTL_OPLOCK_BREAK_ACKNOWLEDGE

FSCTL_OPLOCK_BREAK_NOTIFY

FSCTL_REQUEST_BATCH_OPLOCK

FSCTL_REQUEST_FILTER_OPLOCK

FSCTL_REQUEST_OPLOCK_LEVEL_1

FsRtlOplockFsctrl

IRP_MJ_FILE_SYSTEM_CONTROL