RxCreateNetRoot 関数 (fcb.h)
RxCreateNetRoot は、NET_ROOT構造体を割り当てて初期化し、関連付けられているデバイス オブジェクトのネット名テーブルに名前を挿入します。
構文
PNET_ROOT RxCreateNetRoot(
[in] IN PSRV_CALL SrvCall,
[in] IN PUNICODE_STRING Name,
[in] IN ULONG NetRootFlags,
[in, optional] IN PRX_CONNECTION_ID RxConnectionId
);
パラメーター
[in] SrvCall
関連付けられているSRV_CALL構造体へのポインター。
[in] Name
名前テーブルに挿入する名前へのポインター。
[in] NetRootFlags
NET_ROOT構造体の状態を示すために使用されるNET_ROOTの Flags メンバーを設定する値。
[in, optional] RxConnectionId
プレフィックス名テーブルに挿入する名前に関連付ける接続 ID へのポインター。 このパラメーターには NULL を 指定できます。この場合、プレフィックス名テーブルに挿入された名前に接続 ID は関連付けされません。
戻り値
RxCreateNetRoot は、成功した場合は新しく作成されたNET_ROOTデータ構造へのポインター、または失敗した場合は NULL ポインターを返します。
注釈
RxCreateNetRoot ルーチンは、通常、ネットワーク ミニ リダイレクター ドライバーによって直接呼び出されません。 RDBSS は、IRP_MJ_CREATEの I/O 要求パケットを受信し、NET_ROOTを作成する必要がある場合に、このルーチンを内部的に呼び出します。 通常、この IRP は、ネットワーク共有でファイル作成操作を要求するユーザー モード アプリケーションに応答して、RDBSS によって受信されます。 また、別のカーネル ドライバーがこのような IRP を発行することもできます。
RxCreateNetRoot を呼び出す前に、SrvCall パラメーターのデバイス オブジェクト メンバーに関連付けられている名前テーブルのロックを排他モードで取得する必要があります。
NET_ROOT フラグは、ネットワーク ミニ リダイレクターに表示されるグループと、ネットワーク ミニ リダイレクターに表示されないグループの 2 つに分割されます。 表示される値は、NET_ROOTの Flags メンバーの下位 16 ビットです。 このルーチンは、設定されているフラグをチェックしたり、テストしたりしません。
成功すると、SRV_CALL構造体の参照カウントがインクリメントされます。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | fcb.h (Rxcontx.h、Mrxfcb.h、Prefix.h、Struchdr.h、Fcb.h を含む) |
IRQL | <= APC_LEVEL |