共用方式為


RpcNsProfileEltInqBeginA 函式 (rpcnsi.h)

RpcNsProfileEltInqBegin 函式會建立查詢內容,以檢視配置檔中的元素。

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

語法

RPC_STATUS RpcNsProfileEltInqBeginA(
  unsigned long ProfileNameSyntax,
  RPC_CSTR      ProfileName,
  unsigned long InquiryType,
  RPC_IF_ID     *IfId,
  unsigned long VersOption,
  unsigned long MemberNameSyntax,
  RPC_CSTR      MemberName,
  RPC_NS_HANDLE *InquiryContext
);

參數

ProfileNameSyntax

ProfileName 的語法。

若要使用登錄值專案 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax中指定的語法,請提供值 RPC_C_NS_SYNTAX_DEFAULT。

ProfileName

要檢視之配置檔名稱的指標。

InquiryType

要對配置檔執行的查詢類型。 下表列出有效的查詢類型。

查詢類型 意義
RPC_C_PROFILE_DEFAULT_ELT
如果有的話,搜尋配置檔中的預設配置文件專案。 IfIdVersOptionMemberName 參數會被忽略。
RPC_C_PROFILE_ALL_ELTS
從配置檔傳回每個專案。 IfIdVersOptionMemberName 參數會被忽略。
RPC_C_PROFILE_MATCH_BY_IF
在配置檔中搜尋包含 IfIdVersOption 所指定介面識別的專案。 會忽略 MemberName 參數。
RPC_C_PROFILE_MATCH_BY_MBR
在配置檔中搜尋包含 MemberName 的專案。 IfIdVersOption 參數會被忽略。
RPC_C_PROFILE_MATCH_BY_BOTH
在配置檔中搜尋包含 IfIdVersOptionMemberName 參數所識別介面識別和成員的專案。

IfId

RpcNsProfileEltInqNext 函式所傳回之配置檔專案的介面識別指標。

只有在為 InquiryType 參數指定RPC_C_PROFILE_MATCH_BY_IF或RPC_C_PROFILE_MATCH_BY_BOTH值時,才會使用 IfId 參數。 否則會忽略 IfId ,而且可以指定 Null 值。

VersOption

指定 RpcNsProfileEltInqNext 函式如何使用 IfId 參數。 只有在為 InquiryType 指定 RPC_C_PROFILE_MATCH_BY_IF 或 RPC_C_PROFILE_MATCH_BY_BOTH 的值時,才會使用此參數。 否則會忽略此參數,而且可以指定 0 值。

下表描述 VersOption 的有效值。

意義
RPC_C_VERS_ALL
傳回提供指定介面 UUID 的設定檔專案,不論版本號碼為何。 針對此值,針對 IfId 中的主要和次要版本指定 0。
RPC_C_VERS_COMPATIBLE
傳回配置檔專案,提供相同主要版本的指定介面 UUID,以及大於或等於指定介面 UUID 次要版本的次要版本。
RPC_C_VERS_EXACT
傳回提供指定介面 UUID 之指定版本的設定檔專案。
RPC_C_VERS_MAJOR_ONLY
傳回提供指定介面 UUID 之相同主要版本的設定檔元素, (忽略次要版本) 。 針對此值,針對 IfId 中的次要版本指定 0。
RPC_C_VERS_UPTO
傳回配置檔專案,提供小於或等於指定主要和次要版本的指定介面 UUID 版本。 (例如,如果 IfId 包含 V2.0 和配置檔包含具有 V1.3、V2.0 和 V2.1 的元素, RpcNsProfileEltInqNext 函式會傳回 V1.3 和 V2.0.)

MemberNameSyntax

MemberName 的語法,以及 RpcNsProfileEltInqNext 函式中的傳回參數 MemberName

若要使用登錄值專案 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax中指定的語法,請提供值 RPC_C_NS_SYNTAX_DEFAULT。

MemberName

RpcNsProfileEltInqNext 函式在配置檔元素中尋找之成員名稱的指標。 只有在為 InquiryType 指定 RPC_C_PROFILE_MATCH_BY_MBR 或 RPC_C_PROFILE_MATCH_BY_BOTH 的值時,才會使用 MemberName 參數。 否則, 會忽略 MemberName ,而且可以指定 Null 值。

InquiryContext

傳回名稱服務句柄的指標,以便與 RpcNsProfileEltInqNextRpcNsProfileEltInqDone 函式搭配使用。

傳回值

意義
RPC_S_OK
呼叫成功。
RPC_S_INVALID_VERS_OPTION
版本選項無效。
RPC_S_INVALID_NAME_SYNTAX
名稱語法無效。
RPC_S_UNSUPPORTED_NAME_SYNTAX
不支援名稱語法。
RPC_S_INCOMPLETE_NAME
名稱不完整。
RPC_S_ENTRY_NOT_FOUND
找不到 name-service 專案。
RPC_S_NAME_SERVICE_UNAVAILABLE
無法使用名稱服務。
 
注意 如需有效錯誤碼的清單,請參閱 RPC 傳回值
 

備註

RpcNsProfileEltInqBegin 函式會建立查詢內容,以檢視配置檔中的元素。

使用 InquiryType 參數,應用程式會指定要從 RpcNsProfileEltInqNext 呼叫傳回下列哪一個設定檔元素:

  • 默認專案
  • 所有項目
  • 具有指定介面識別的專案
  • 具有指定成員名稱的專案
  • 具有指定介面識別和成員名稱的專案
呼叫 RpcNsProfileEltInqNext 之前,應用程式必須先呼叫 RpcNsProfileEltInqBegin 來建立查詢內容。

完成檢視配置檔元素時,應用程式會呼叫 RpcNsProfileEltInqDone 函式來刪除查詢內容。

注意 Windows 2000 Active Directory 支援此函式。 舊版 Windows NT 僅支援搭配使用此函式與 Cell Directory Service (CDS) 。
 

注意

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

規格需求

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

另請參閱

RpcIfInqId

RpcNsProfileEltInqDone

RpcNsProfileEltInqNext