RpcNsBindingLookupBeginA 函式 (rpcnsi.h)
RpcNsBindingLookupBegin 函式會建立介面和物件的查閱內容。
語法
RPC_STATUS RpcNsBindingLookupBeginA(
unsigned long EntryNameSyntax,
RPC_CSTR EntryName,
RPC_IF_HANDLE IfSpec,
UUID *ObjUuid,
unsigned long BindingMaxCount,
RPC_NS_HANDLE *LookupContext
);
參數
EntryNameSyntax
EntryName 參數的語法。
若要使用登錄值專案 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax中指定的語法,請提供 RPC_C_NS_SYNTAX_DEFAULT的值。
EntryName
開始搜尋相容系結的項目名稱指標。
若要使用登錄值專案中指定的項目名稱 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultEntry,請提供 Null 指標或空字串。 在此情況下, 會忽略 EntryNameSyntax 參數,而運行時間連結庫會使用預設語法。
IfSpec
存根產生的結構,指出要查閱的介面。 如果介面規格尚未匯出,或對呼叫端沒有考慮,請指定此參數的 Null 值。 在此情況下,傳回的系結只保證為相容且支持的通訊協定序列,以及包含指定的物件 UUID。 連絡的伺服器可能不支援所需的介面。
ObjUuid
選擇性物件的指標 UUID。
針對非零 UUID,只有在伺服器匯出指定的物件 UUID 時,才會從專案傳回相容的系結句柄。
針對此參數的 Null 指標值或 nil UUID,傳回的系結句柄包含相容伺服器導出的其中一個物件 UUID。 如果伺服器未匯出任何物件 UUID,則傳回的相容系結句柄包含 nil 物件 UUID。
BindingMaxCount
要從 RpcNsBindingLookupNext 函式在 BindingVec 參數中傳回的係結數目上限。
指定零的值,以使用預設的RPC_C_BINDING_MAX_COUNT_DEFAULT計數。
LookupContext
傳回名稱服務句柄的指標,以搭配 RpcNsBindingLookupNext 和 RpcNsBindingLookupDone 函式使用。
傳回值
值 | 意義 |
---|---|
|
呼叫成功。 |
|
名稱語法無效。 |
|
不支援名稱語法。 |
|
名稱不完整。 |
|
找不到名稱服務專案。 |
|
名稱服務無法使用。 |
|
無效的物件。 |
備註
RpcNsBindingLookupBegin 函式會建立查閱內容,以尋找用戶端相容的系結句柄給提供指定介面和對象的伺服器。
呼叫 RpcNsBindingLookupNext 之前,用戶端應用程式必須先呼叫 RpcNsBindingLookupBegin 來建立查閱內容。 此函式的參數會控制 RpcNsBindingLookupNext 函式的作業。
使用 Windows 2000 時,RPC 環境會使用 Active Directory 作為其名稱服務資料庫,以及運行時間環境執行搜尋的順序如下:
- 在本機快取中搜尋。
- 如果在本機快取中找不到專案,請搜尋該計算機的 Active Directory。
- 如果在本機計算機上找不到專案,請將廣播要求傳送至網域中所有其他 Active Directory 服務。
請注意,如果專案存在於 Active Directory 中,但沒有與專案相關聯的信息,運行時間環境將不會發出此廣播要求。
注意
rpcnsi.h 標頭會根據 UNICODE 預處理器常數的定義,將 RpcNsBindingLookupBegin 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | rpcnsi.h (包含 Rpc.h) |
程式庫 | Rpcns4.lib |
Dll | Rpcns4.dll |