共用方式為


前置詞資料表管理

RDBSS 會定義資料結構,以便使用前置詞資料表來目錄SRV_CALL、NET_ROOT和V_NET_ROOT名稱。

RDBSS 中名稱管理的目前實作會使用具有下列元件的資料表:

  • 插入名稱的佇列

  • 版本戳記

  • 控制資料表存取的資料表鎖定資源

  • 值,指出名稱相符專案是否不區分大小寫

  • 此前置詞資料表的雜湊值專案貯體

資料表鎖定資源會以一般方式使用:共用查閱作業,專屬於變更作業。

版本戳記會隨著每個變更而變更。 佇列的原因是前置詞資料表封裝允許一次列舉多個呼叫端。 插入名稱和版本戳記的佇列可同時列舉多個呼叫端。 佇列可作為檔案名的更快速查閱,但前置詞資料表絕對是NET_ROOT結構的正確方法。

RDBSS 會在內部使用這些前置詞資料表管理常式,以回應 MUP 的呼叫來宣告名稱或形成NET_ROOT結構的建立路徑。 只要在存取資料表之前取得適當的鎖定,而且在工作完成時釋放鎖定,這些 RDBSS 前置詞資料表管理常式也可以由網路迷你重新導向器使用。 驅動程式的一般用法如下所示:

  • 呼叫 RxAcquirePrefixTableLockShared來取得共用鎖定。

  • 呼叫 RxPrefixTableLookupName來查閱名稱。

  • 呼叫 RxReleasePrefixTableLock以釋放共用鎖定。

請注意,某些常式只會在 Windows XP 和舊版 Windows 上實作。 RxPrefixTableLookupName 是所有 Windows 版本上實作的唯一前置詞資料表管理常式

RDBSS 前置詞資料表管理常式包括下列各項:

常式傳回的值 描述

RxpAcquirePrefixTableLockExclusive

此常式會取得前置詞資料表的獨佔鎖定,用來編錄SRV_CALL和NET_ROOT名稱。

此常式僅適用于 Windows XP 和 Windows 2000。 此常式是由 RDBSS 內部使用,不應由網路迷你重新導向器使用。

RxpAcquirePrefixTableLockShared

此常式會在前置詞資料表上取得共用鎖定,以用於目錄SRV_CALL和NET_ROOT名稱。

此常式僅適用于 Windows XP 和 Windows 2000。 此常式是由 RDBSS 內部使用,不應由網路迷你重新導向器使用。

RxPrefixTableLookupName

常式會在前置詞資料表中查閱名稱,以用於目錄SRV_CALL和NET_ROOT名稱,並從基礎指標轉換成包含結構。

RxpReleasePrefixTableLock

此常式會在前置詞資料表上釋放鎖定,以用於目錄SRV_CALL和NET_ROOT名稱。

此常式僅適用于 Windows XP 和 Windows 2000。 此常式是由 RDBSS 內部使用,不應由網路迷你重新導向器使用。

從 Windows Server 2003 開始,上表中提及的常式除了 RxPrefixTableLookupName以外,會由宏取代。下列宏的定義是呼叫具有較少參數的前置詞資料表常式。

巨集 描述

RxAcquirePrefixTableLockExclusive (TABLEWAIT)

此宏會以獨佔模式取得變更作業的前置詞資料表鎖定。

RxAcquirePrefixTableLockShared (TABLEWAIT)

此宏會在共用模式中取得查閱作業的前置詞資料表鎖定。

RxIsPrefixTableLockAcquired (TABLE)

此宏指出是否以獨佔或共用模式取得前置詞資料表鎖定。

RxIsPrefixTableLockExclusive (TABLE)

這個宏會指出前置詞資料表鎖定是否以獨佔模式取得。

RxReleasePrefixTableLock (TABLE)

此宏會釋放前置詞資料表鎖定。