Struktur WSAQUERYSETW (winsock2.h)
Struktur WSAQUERYSET menyediakan informasi yang relevan tentang layanan tertentu, termasuk ID kelas layanan, nama layanan, pengidentifikasi namespace layanan dan informasi protokol yang berlaku, serta sekumpulan alamat transportasi tempat layanan mendengarkan.
Sintaks
typedef struct _WSAQuerySetW {
DWORD dwSize;
LPWSTR lpszServiceInstanceName;
LPGUID lpServiceClassId;
LPWSAVERSION lpVersion;
LPWSTR lpszComment;
DWORD dwNameSpace;
LPGUID lpNSProviderId;
LPWSTR lpszContext;
DWORD dwNumberOfProtocols;
LPAFPROTOCOLS lpafpProtocols;
LPWSTR lpszQueryString;
DWORD dwNumberOfCsAddrs;
LPCSADDR_INFO lpcsaBuffer;
DWORD dwOutputFlags;
LPBLOB lpBlob;
} WSAQUERYSETW, *PWSAQUERYSETW, *LPWSAQUERYSETW;
Anggota
dwSize
Jenis: DWORD
Ukuran, dalam byte, dari struktur WSAQUERYSET . Anggota ini digunakan sebagai mekanisme penerapan versi karena ukuran struktur WSAQUERYSET telah berubah pada versi Windows yang lebih baru.
lpszServiceInstanceName
Jenis: LPTSTR
Penunjuk ke string opsional yang dihentikan NULL yang berisi nama layanan. Semantik untuk menggunakan kartubebas dalam string tidak ditentukan, tetapi dapat didukung oleh penyedia namespace layanan tertentu.
lpServiceClassId
Jenis: LPGUID
GUID yang sesuai dengan kelas layanan. Anggota ini harus ditetapkan.
lpVersion
Jenis: LPWSAVERSION
Penunjuk ke nomor versi opsional yang diinginkan dari penyedia namespace layanan. Anggota ini menyediakan semantik perbandingan versi (yaitu, versi yang diminta harus sama persis, atau versi tidak boleh kurang dari nilai yang disediakan).
lpszComment
Jenis: LPTSTR
Anggota ini diabaikan untuk kueri.
dwNameSpace
Jenis: DWORD
Pengidentifikasi namespace yang menentukan penyedia namespace layanan mana yang dikueri. Meneruskan pengidentifikasi namespace tertentu hanya akan menghasilkan penyedia namespace yang mendukung namespace yang ditentukan yang sedang dikueri. Menentukan NS_ALL akan mengakibatkan semua penyedia namespace layanan yang terinstal dan aktif sedang dikueri.
Opsi untuk anggota dwNameSpace tercantum dalam file sertakan Winsock2.h . Beberapa penyedia namespace layanan baru disertakan dengan Windows Vista dan yang lebih baru. Penyedia namespace layanan lain dapat diinstal, sehingga nilai yang mungkin berikut ini hanyalah yang umumnya tersedia. Banyak nilai lain yang dimungkinkan.
lpNSProviderId
Jenis: LPGUID
Penunjuk ke GUID opsional dari penyedia namespace layanan tertentu untuk dikueri dalam kasus di mana beberapa penyedia namespace terdaftar di bawah namespace layanan tunggal seperti NS_DNS. Meneruskan GUID untuk penyedia namespace layanan tertentu hanya akan mengakibatkan penyedia namespace yang ditentukan yang dikueri. Fungsi WSAEnumNameSpaceProviders dan WSAEnumNameSpaceProvidersEx dapat dipanggil untuk mengambil GUID untuk penyedia namespace layanan.
lpszContext
Jenis: LPTSTR
Penunjuk ke titik awal kueri opsional dalam namespace hierarkis.
dwNumberOfProtocols
Jenis: DWORD
Ukuran, dalam byte, dari array batasan protokol. Anggota ini bisa nol.
lpafpProtocols
Jenis: LPAFPROTOCOLS
Penunjuk ke array opsional struktur AFPROTOCOLS . Hanya layanan yang menggunakan protokol ini yang akan dikembalikan.
lpszQueryString
Jenis: LPTSTR
Penunjuk ke string kueri opsional yang dihentikan NULL. Beberapa namespace, seperti Whois++, mendukung kueri seperti SQL yang diperkaya yang terkandung dalam string teks sederhana. Parameter ini digunakan untuk menentukan string tersebut.
dwNumberOfCsAddrs
Jenis: DWORD
Anggota ini diabaikan untuk kueri.
lpcsaBuffer
Jenis: LPCSADDR_INFO
Anggota ini diabaikan untuk kueri.
dwOutputFlags
Jenis: DWORD
Anggota ini diabaikan untuk kueri.
lpBlob
Jenis: LPBLOB
Penunjuk opsional ke data yang digunakan untuk mengkueri atau mengatur informasi namespace khusus penyedia. Format informasi ini khusus untuk penyedia namespace layanan.
Keterangan
Struktur WSAQUERYSET digunakan sebagai bagian dari arsitektur penyedia namespace asli versi 1 yang tersedia di Windows 95 dan yang lebih baru. Arsitektur namespace layanan versi 2 yang lebih baru tersedia di Windows Vista dan yang lebih baru.
Dalam kebanyakan kasus, aplikasi yang hanya tertarik pada protokol transportasi tertentu harus membatasi kueri mereka berdasarkan keluarga alamat dan protokol daripada dengan namespace layanan. Ini akan memungkinkan aplikasi yang perlu menemukan layanan TCP/IP, misalnya, agar kuerinya diproses oleh semua namespace yang tersedia seperti file host lokal, DNS, dan NIS.
Catatan
Header winsock2.h mendefinisikan WSAQUERYSET sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor 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] |
Header | winsock2.h |
Lihat juga
Bluetooth dan WSAQUERYSET untuk Pertanyaan Perangkat
Bluetooth dan WSAQUERYSET untuk Pertanyaan Layanan