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_PARAMETERS para IRP_MJ_FILE_SYSTEM_CONTROL
FSCTL_OPBATCH_ACK_CLOSE_PENDING