Compartilhar via


Função RxCreateSrvOpen (fcb.h)

RxCreateSrvOpen aloca, inicializa e insere uma nova estrutura 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.

Retornar valor

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

Comentários

A rotina RxCreateSrvOpen normalmente não é chamada por drivers de minidiretório 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. Normalmente, esse IRP é recebido pelo RDBSS em resposta a um aplicativo no modo de usuário que solicita uma operação de criação de arquivo em um compartilhamento de rede. Também é possível que outro driver de kernel emita esse 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 paginado ao criar o novo SRV_OPEN estrutura de dados. Se o FCB associado não for um arquivo de paginação, RxCreateSrvOpen alocará memória de pool paginado ao criar o novo SRV_OPEN estrutura de dados.

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

Requisitos

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

Confira 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