Compartilhar via


Função RxCreateSrvOpen (fcb.h)

RxCreateSrvOpen aloca, inicializa e insere uma nova estrutura de SRV_OPEN nas estruturas de dados na memória usadas pelo RDBSS. Se uma nova estrutura precisar ser alocada, ela terá espaço para uma estrutura FOBX.

Sintaxe

PSRV_OPEN RxCreateSrvOpen(
  [in]      IN PV_NET_ROOT VNetRoot,
  [in, out] IN OUT PFCB    Fcb
);

Parâmetros

[in] VNetRoot

Um ponteiro para a estrutura V_NET_ROOT.

[in, out] Fcb

Um ponteiro para a estrutura fcb associada.

Valor de retorno

RxCreateSrvOpen retorna um ponteiro para uma estrutura de dados SRV_OPEN recém-criada com êxito ou um ponteiro de NULL sobre falha.

Observações

A rotina de RxCreateSrvOpen normalmente não é chamada por drivers de minidiretor de rede diretamente. O RDBSS chama essa rotina internamente quando um pacote de solicitação de E/S é recebido para IRP_MJ_CREATE e um SRV_OPEN precisa ser criado. Esse IRP normalmente é recebido pelo RDBSS em resposta a um aplicativo no modo de usuário solicitando uma operação de criação de arquivo em um compartilhamento de rede. Também é possível que outro driver de kernel emita tal IRP.

Antes de chamar RxCreateSrvOpen, um bloqueio na estrutura FCB associada deve ser adquirido no modo exclusivo.

RxCreateSrvOpen tentará usar o SRV_CALL alocado como parte da estrutura fcb associada se estiver disponível. Se o SRV_CALL alocado com o FCB não estiver disponível, RxCreateSrvOpen alocará uma nova estrutura de SRV_CALL.

Se o FCB associado for um arquivo de paginação, RxCreateSrvOpen alocará memória de pool não paged ao criar a nova estrutura de dados SRV_OPEN. Se o FCB associado não for um arquivo de paginação, RxCreateSrvOpen alocará memória de pool de páginas ao criar a nova estrutura de dados SRV_OPEN.

No momento, o Windows não permite ter um arquivo de paginação em um computador remoto.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho fcb.h (inclua Mrxfcb.h, Fcb.h)
IRQL <= APC_LEVEL

Consulte também

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

a estrutura fcb

a estrutura SRV_OPEN

a estrutura V_NET_ROOT