código de controle FSCTL_REQUEST_OPLOCK_LEVEL_1
O código de controle FSCTL_REQUEST_OPLOCK_LEVEL_1 solicita um bloqueio oportunista de nível 1 (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_1, 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_1.
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_1.
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_OPLOCK_LEVEL_1. 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