Compartilhar via


Função RxCreateNetRoot (fcb.h)

RxCreateNetRoot aloca e inicializa uma estrutura NET_ROOT e insere o nome na tabela de nome da rede no objeto de dispositivo associado.

Sintaxe

PNET_ROOT RxCreateNetRoot(
  [in]           IN PSRV_CALL         SrvCall,
  [in]           IN PUNICODE_STRING   Name,
  [in]           IN ULONG             NetRootFlags,
  [in, optional] IN PRX_CONNECTION_ID RxConnectionId
);

Parâmetros

[in] SrvCall

Um ponteiro para a estrutura de SRV_CALL associada.

[in] Name

Um ponteiro para o nome a ser inserido na tabela de nomes.

[in] NetRootFlags

O valor para definir o Flags membro do NET_ROOT que é usado para indicar o estado da estrutura NET_ROOT.

[in, optional] RxConnectionId

Um ponteiro para a ID de conexão a ser associada ao nome a ser inserido na tabela de nomes de prefixo. Esse parâmetro pode ser NULL, caso em que nenhuma ID de conexão será associada ao nome inserido na tabela de nomes de prefixo.

Valor de retorno

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

Observações

A rotina RxCreateNetRoot normalmente não é chamada diretamente por drivers de minidiretor de rede. O RDBSS chama essa rotina internamente quando um pacote de solicitação de E/S é recebido para IRP_MJ_CREATE e um NET_ROOT 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 RxCreateNetRoot, um bloqueio na tabela de nomes associada ao membro do objeto do dispositivo do parâmetro SrvCall deve ser adquirido no modo exclusivo.

Os sinalizadores NET_ROOT são divididos em dois grupos, aqueles visíveis para minidiretórios de rede e aqueles invisíveis para minidiretórios de rede. Os visíveis são os 16 bits inferiores do Flags membro do NET_ROOT. Essa rotina não verifica nem testa quais sinalizadores estão sendo definidos.

Com êxito, a contagem de referência para a estrutura de SRV_CALL é incrementada.

Requisitos

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

Consulte também

RxCreateNetFcb

RxCreateNetFobx

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

a estrutura NET_ROOT

a estrutura SRV_CALL