Bagikan melalui


Fungsi RpcNsProfileEltInqBeginW (rpcnsi.h)

Fungsi RpcNsProfileEltInqBegin membuat konteks pertanyaan untuk melihat elemen di profil.

Catatan Fungsi ini tidak didukung pada Windows Vista dan sistem operasi yang lebih baru.
 

Sintaks

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

Parameter

ProfileNameSyntax

Sintaks ProfileName.

Untuk menggunakan sintaks yang ditentukan dalam entri nilai registri HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax, berikan nilai RPC_C_NS_SYNTAX_DEFAULT.

ProfileName

Arahkan ke nama profil yang akan ditampilkan.

InquiryType

Jenis pertanyaan yang akan dilakukan pada profil. Tabel berikut ini mencantumkan jenis pertanyaan yang valid.

Jenis pertanyaan Makna
RPC_C_PROFILE_DEFAULT_ELT
Mencari profil untuk elemen profil default, jika ada. Parameter IfId, VersOption, dan MemberName diabaikan.
RPC_C_PROFILE_ALL_ELTS
Mengembalikan setiap elemen dari profil. Parameter IfId, VersOption, dan MemberName diabaikan.
RPC_C_PROFILE_MATCH_BY_IF
Mencari profil untuk elemen yang berisi identifikasi antarmuka yang ditentukan oleh IfId dan VersOption. Parameter MemberName diabaikan.
RPC_C_PROFILE_MATCH_BY_MBR
Mencari profil untuk elemen yang berisi MemberName. Parameter IfId dan VersOption diabaikan.
RPC_C_PROFILE_MATCH_BY_BOTH
Mencari profil untuk elemen yang berisi identifikasi antarmuka dan anggota yang diidentifikasi oleh parameter IfId, VersOption, dan MemberName .

IfId

Arahkan ke identifikasi antarmuka elemen profil yang akan dikembalikan oleh fungsi RpcNsProfileEltInqNext .

Parameter IfId hanya digunakan saat menentukan nilai RPC_C_PROFILE_MATCH_BY_IF atau RPC_C_PROFILE_MATCH_BY_BOTH untuk parameter InquiryType . Jika tidak, IfId diabaikan dan nilai null dapat ditentukan.

VersOption

Menentukan bagaimana fungsi RpcNsProfileEltInqNext menggunakan parameter IfId . Parameter ini hanya digunakan saat menentukan nilai RPC_C_PROFILE_MATCH_BY_IF atau RPC_C_PROFILE_MATCH_BY_BOTH untuk InquiryType. Jika tidak, parameter ini diabaikan dan nilai 0 dapat ditentukan.

Tabel berikut ini menjelaskan nilai yang valid untuk VersOption.

Nilai Makna
RPC_C_VERS_ALL
Mengembalikan elemen profil yang menawarkan antarmuka UUID yang ditentukan, terlepas dari nomor versinya. Untuk nilai ini, tentukan 0 untuk versi utama dan minor di IfId.
RPC_C_VERS_COMPATIBLE
Mengembalikan elemen profil yang menawarkan versi utama yang sama dari antarmuka UUID yang ditentukan dan versi minor yang lebih besar dari atau sama dengan versi minor antarmuka UUID yang ditentukan.
RPC_C_VERS_EXACT
Mengembalikan elemen profil yang menawarkan versi UUID antarmuka yang ditentukan.
RPC_C_VERS_MAJOR_ONLY
Mengembalikan elemen profil yang menawarkan versi utama yang sama dari antarmuka UUID yang ditentukan (mengabaikan versi minor). Untuk nilai ini, tentukan 0 untuk versi minor di IfId.
RPC_C_VERS_UPTO
Mengembalikan elemen profil yang menawarkan versi antarmuka UUID yang ditentukan kurang dari atau sama dengan versi utama dan minor yang ditentukan. (Misalnya, jika IfId berisi V2.0 dan profil berisi elemen dengan V1.3, V2.0, dan V2.1, fungsi RpcNsProfileEltInqNext mengembalikan elemen dengan V1.3 dan V2.0.)

MemberNameSyntax

Sintaks MemberName, dan parameter pengembalian MemberName dalam fungsi RpcNsProfileEltInqNext .

Untuk menggunakan sintaks yang ditentukan dalam entri nilai registri HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax, berikan nilai RPC_C_NS_SYNTAX_DEFAULT.

MemberName

Arahkan ke nama anggota yang dicari fungsi RpcNsProfileEltInqNext di elemen profil. Parameter MemberName hanya digunakan saat menentukan nilai RPC_C_PROFILE_MATCH_BY_MBR atau RPC_C_PROFILE_MATCH_BY_BOTH untuk InquiryType. Jika tidak, MemberName diabaikan dan nilai null dapat ditentukan.

InquiryContext

Mengembalikan penunjuk ke handel layanan nama untuk digunakan dengan fungsi RpcNsProfileEltInqNext dan RpcNsProfileEltInqDone .

Nilai kembali

Nilai Makna
RPC_S_OK
Panggilan berhasil.
RPC_S_INVALID_VERS_OPTION
Opsi versi tidak valid.
RPC_S_INVALID_NAME_SYNTAX
Sintaks nama tidak valid.
RPC_S_UNSUPPORTED_NAME_SYNTAX
Sintaks nama tidak didukung.
RPC_S_INCOMPLETE_NAME
Nama tidak lengkap.
RPC_S_ENTRY_NOT_FOUND
Entri layanan-nama tidak ditemukan.
RPC_S_NAME_SERVICE_UNAVAILABLE
Layanan nama tidak tersedia.
 
Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Fungsi RpcNsProfileEltInqBegin membuat konteks pertanyaan untuk melihat elemen di profil.

Menggunakan parameter InquiryType , aplikasi menentukan elemen profil mana yang akan dikembalikan dari panggilan ke RpcNsProfileEltInqNext:

  • Elemen default
  • Semua elemen
  • Elemen dengan identifikasi antarmuka yang ditentukan
  • Elemen dengan nama anggota yang ditentukan
  • Elemen dengan identifikasi antarmuka dan nama anggota yang ditentukan
Sebelum memanggil RpcNsProfileEltInqNext, aplikasi harus terlebih dahulu memanggil RpcNsProfileEltInqBegin untuk membuat konteks pertanyaan.

Setelah selesai melihat elemen profil, aplikasi memanggil fungsi RpcNsProfileEltInqDone untuk menghapus konteks pertanyaan.

Catatan Direktori Aktif Windows 2000 mendukung fungsi ini. Versi Windows NT yang lebih lama mendukung penggunaan fungsi ini hanya dengan Layanan Direktori Sel (CDS).
 

Catatan

Header rpcnsi.h mendefinisikan RpcNsProfileEltInqBegin sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header rpcnsi.h (termasuk Rpc.h)
Pustaka Rpcns4.lib
DLL Rpcns4.dll

Lihat juga

RpcIfInqId

RpcNsProfileEltInqDone

RpcNsProfileEltInqNext