Partilhar via


código de controle FSCTL_REQUEST_BATCH_OPLOCK

O código de controle FSCTL_REQUEST_BATCH_OPLOCK solicita um bloqueio oportunista em lote (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_BATCH_OPLOCK, 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_BATCH_OPLOCK.

  • 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_BATCH_OPLOCK.

  • OpenCount: número de identificadores de usuário para o arquivo.

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_BATCH_OPLOCK. 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_FILTER_OPLOCK

FSCTL_REQUEST_OPLOCK_LEVEL_1

FSCTL_REQUEST_OPLOCK_LEVEL_2

FsRtlOplockFsctrl

IRP_MJ_FILE_SYSTEM_CONTROL