RxPrefixTableLookupName 、SRV_CALL、NET_ROOT、およびV_NET_ROOT名をカタログ化するために使用されるプレフィックス テーブル内の名前を検索し、基になるポインターを名前を含む構造体に変換します。
構文
PVOID RxPrefixTableLookupName(
[in] IN PRX_PREFIX_TABLE ThisTable,
[in] IN PUNICODE_STRING CanonicalName,
[out] OUT PUNICODE_STRING RemainingName,
IN PRX_CONNECTION_ID ConnectionId
);
パラメーター
[in] ThisTable
参照するRX_PREFIX_TABLE構造体へのポインター。
[in] CanonicalName
検索する Unicode 文字列名へのポインター。
[out] RemainingName
一致しなかった名前の部分の Unicode 文字列名へのポインター。
ConnectionId
使用するRX_CONNECTION_IDへのポインターを表す省略可能なパラメーター。
戻り値
RxPrefixTableLookupName は、一致が見つかった場合に見つかったノードへのポインターを返します。 一致するものが見つからない場合、RxPrefixTableLookupName は、NULL ポインターを返します。
備考
このルーチンは、名前を要求したり、NET_ROOTまたはV_NET_ROOT構造体の作成パスを形成したりする MUP からの呼び出しに応答して RDBSS によって内部的に使用されます。 RxPrefixTableLookupName ルーチンは、テーブルにアクセスする前に適切なロックが取得され、作業が完了したときにロックが解放されている限り、ネットワーク ミニ リダイレクターでも使用できます。 ドライバーによる通常の使用は次のようになります。
- RxpAcquirePrefixTableLockShared 呼び出して、共有ロックを取得します。
- RxPrefixTableLookupName 呼び出して名前を検索します。
- RxpReleasePrefixTableLock 呼び出して、共有ロックを解放します。
チェック されたビルドでは、RxPrefixTableLookupName は、CanonicalName 文字列の長さが 0 より大きくない場合にシステムを ASSERT します。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | prefix.h (Prefix.h を含む) |
IRQL | <= APC_LEVEL |
関連項目
RxpAcquirePrefixTableLockExclusive の
RxpAcquirePrefixTableLockShared の
RxpReleasePrefixTableLock の