Rotina MRxDevFcbXXXControlFile
A rotina MRxDevFcbXXXControlFile é chamada pelo RDBSS para passar uma solicitação de controle FCB do dispositivo (uma solicitação IOCTL ou FSCTL) para o minidiretório de rede.
Sintaxe
PMRX_CALLDOWN MRxDevFcbXXXControlFile;
NTSTATUS MRxDevFcbXXXControlFile(
_Inout_ PRX_CONTEXT RxContext
)
{ ... }
Parâmetros
RxContext [in, out]
Um ponteiro para a estrutura RX_CONTEXT. Esse parâmetro contém o IRP que está solicitando a operação.
Retornar valor
MRxDevFcbXXControlFile retorna STATUS_SUCCESS com êxito ou um valor NTSTATUS apropriado, como um dos seguintes:
Código de retorno | Descrição |
---|---|
STATUS_ACCESS_DENIED | Foi feita uma solicitação para parar ou iniciar o minidiretório de rede, mas o chamador não tinha a segurança adequada para essa operação. |
STATUS_INVALID_DEVICE_REQUEST | Uma solicitação de dispositivo inválida foi enviada para o minidiretório de rede. |
STATUS_REDIRECTOR_HAS_OPEN_HANDLES | Essa foi uma solicitação para interromper o minidiretório de rede, mas o redirecionador tem identificadores abertos que impedem que ele pare no momento. |
STATUS_REDIRECTOR_NOT_STARTED | Essa foi uma solicitação para interromper o minidiretório de rede, mas o redirecionador não foi iniciado. |
STATUS_REDIRECTOR_STARTED | Essa foi uma solicitação para iniciar o minidiretório de rede, mas o redirecionador já foi iniciado. |
Comentários
MRxDevFcbXXXControlFile manipula solicitações IOCTL e FSCTL relacionadas ao FCB do dispositivo que são enviadas para o minidiretório de rede.
Antes de chamar MRxDevFcbXXXControlFile, o RDBSS modifica o seguinte membro na estrutura RX_CONTEXT apontada pelo parâmetro RxContext :
MajorFunction é definido como a função principal do IRP
Se essa fosse uma solicitação IRP_MJ_FILE_SYSTEM_CONTROL, o RDBSS modificará os seguintes membros na estrutura RX_CONTEXT apontada pelo parâmetro RxContext :
LowIoContext.ParamsFor.FsCtl.MinorFunction é definido como o código de função secundária para o código FSCTL
LowIoContext.ParamsFor.FsCtl.FsControlCode é definido como o código FSCTL para o IRP
Se essa for uma solicitação IRP_MJ_DEVICE_CONTROL ou IRP_MJ_INTERNAL_DEVICE_CONTROL, o RDBSS modificará o seguinte membro na estrutura RX_CONTEXT apontada pelo parâmetro RxContext :
LowIoContext.ParamsFor.FsCtl.FsControlCode é definido como o código de controle do IRP.
Se MRxDevFcbXXXControlFile retornar STATUS_SUCCESS, a rotina foi bem-sucedida. Qualquer outro valor retornado indica que ocorreu um erro.
Requisitos
Plataforma de destino |
Área de Trabalho |
parâmetro |
Mrx.h (inclua Mrx.h) |