rpcNsBindingImportBeginA 函式 (rpcnsi.h)

RpcNsBindingImportBegin函式會針對提供指定介面和物件的伺服器,建立匯入用戶端相容系結控制碼的匯入內容。

注意 Windows Vista 和更新版本的作業系統不支援此函式。
 

語法

RPC_STATUS RpcNsBindingImportBeginA(
  unsigned long EntryNameSyntax,
  RPC_CSTR      EntryName,
  RPC_IF_HANDLE IfSpec,
  UUID          *ObjUuid,
  RPC_NS_HANDLE *ImportContext
);

參數

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 時,才會從專案傳回相容的系結控制碼。

ObjUuid 具有 Null 指標值或 nil UUID 時,傳回的系結控制碼會包含相容伺服器所匯出的其中一個物件 UUID。 如果伺服器未匯出任何物件 UUID,傳回的相容系結控制碼會包含 nil 物件 UUID。

ImportContext

傳回用於 RpcNsBindingImportNextRpcNsBindingImportDone 函式的名稱服務控制碼。

傳回值

意義
RPC_S_OK
呼叫成功。
RPC_S_INVALID_NAME_SYNTAX
名稱語法無效。
RPC_S_NAME_SERVICE_UNAVAILABLE
名稱超過長度上限。
RPC_S_UNSUPPORTED_NAME_SYNTAX
不支援名稱語法。
RPC_S_INCOMPLETE_NAME
名稱不完整。
RPC_S_ENTRY_NOT_FOUND
找不到 name-service 專案。
RPC_S_NAME_SERVICE_UNAVAILABLE
無法使用名稱服務。
RPC_S_INVALID_OBJECT
不正確物件。
 
注意 如需有效錯誤碼的清單,請參閱 RPC 傳回值
 

備註

呼叫 RpcNsBindingImportNext 函式之前,用戶端應用程式必須先呼叫 RpcNsBindingImportBegin 來建立匯入內容。 此函式的參數會控制 RpcNsBindingImportNext 函式的作業。

完成匯入系結控制碼時,用戶端應用程式會呼叫 RpcNsBindingImportDone 函式來刪除匯入內容。

注意

rpcnsi.h 標頭會根據 UNICODE 預處理器常數的定義,將 RpcNsBindingImportBegin 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 rpcnsi.h (包含 Rpc.h)
程式庫 Rpcns4.lib
Dll Rpcns4.dll

另請參閱

RpcNsBindingImportDone

RpcNsBindingImportNext