Compartir a través de


Función RxCreateNetRoot (fcb.h)

RxCreateNetRoot asigna e inicializa una estructura de NET_ROOT e inserta el nombre en la tabla net name en el objeto de dispositivo asociado.

Sintaxis

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

Puntero a la estructura de SRV_CALL asociada.

[in] Name

Puntero al nombre que se va a insertar en la tabla de nombres.

[in] NetRootFlags

Valor para establecer el miembro Flags del NET_ROOT que se usa para indicar el estado de la estructura NET_ROOT.

[in, optional] RxConnectionId

Puntero al identificador de conexión que se va a asociar con el nombre que se va a insertar en la tabla de nombres de prefijo. Este parámetro puede ser NULL en cuyo caso no se asociará ningún identificador de conexión con el nombre insertado en la tabla de nombres de prefijo.

Valor devuelto

RxCreateNetRoot devuelve un puntero a una estructura de datos NET_ROOT recién creada si se ejecuta correctamente o un puntero NULL en caso de error.

Comentarios

Normalmente, los controladores de minidirector de red no llaman a la rutina RxCreateNetRoot . RDBSS llama a esta rutina internamente cuando se recibe un paquete de solicitud de E/S para IRP_MJ_CREATE y es necesario crear un NET_ROOT. RdBSS recibe normalmente este IRP en respuesta a una aplicación en modo de usuario que solicita una operación de creación de archivos en un recurso compartido de red. También es posible que otro controlador de kernel emita este tipo de IRP.

Antes de llamar a RxCreateNetRoot, se debe adquirir un bloqueo en la tabla de nombres asociada al miembro del objeto de dispositivo del parámetro SrvCall en modo exclusivo.

Las marcas de NET_ROOT se dividen en dos grupos, los visibles para los miniireccionadores de red y los invisibles para los miniireccionadores de red. Los visibles son los 16 bits inferiores del miembro Flags del NET_ROOT. Esta rutina no comprueba ni prueba qué marcas se establecen.

Si se ejecuta correctamente, se incrementa el recuento de referencias de la estructura SRV_CALL.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado fcb.h (incluya Rxcontx.h, Mrxfcb.h, Prefix.h, Struchdr.h, Fcb.h)
IRQL <= APC_LEVEL

Consulte también

RxCreateNetFcb

RxCreateNetFobx

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

Estructura de NET_ROOT

Estructura de SRV_CALL