WSAQUERYSETW 結構 (winsock2.h)
WSAQUERYSET 結構提供指定服務的相關信息,包括服務類別標識碼、服務名稱、適用的命名空間標識碼和通訊協定資訊,以及服務接聽的一組傳輸位址。
語法
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;
成員
dwSize
類型: DWORD
WSAQUERYSET 結構的大小,以位元組為單位。 由於 WSAQUERYSET 結構的大小在更新版本的 Windows 上已變更,所以此成員會作為版本控制機制。
lpszServiceInstanceName
類型: LPTSTR
包含服務名稱的選擇性 NULL 終止字串指標。 未定義字串內使用通配符的語意,但可由特定命名空間提供者支援。
lpServiceClassId
類型: LPGUID
對應至服務類別的 GUID。 必須設定這個成員。
lpVersion
類型: LPWSAVERSION
命名空間提供者選擇性所需版本號碼的指標。 此成員提供版本比較語意 (,也就是所要求的版本必須完全相符,或版本不得小於) 提供的值。
lpszComment
類型: LPTSTR
查詢會忽略這個成員。
dwNameSpace
類型: DWORD
命名空間標識碼,決定要查詢哪些命名空間提供者。 傳遞特定命名空間標識碼只會產生支援所查詢指定命名空間的命名空間提供者。 指定 NS_ALL 會導致查詢所有已安裝和作用中的命名空間提供者。
dwNameSpace 成員的選項會列在 Winsock2.h 包含檔案中。 Windows Vista 和更新版本包含數個新的命名空間提供者。 您可以安裝其他命名空間提供者,因此只有下列可能的值才可供使用。 可能有許多其他值。
lpNSProviderId
類型: LPGUID
特定命名空間提供者選擇性 GUID 的指標,可在多個命名空間提供者登錄於單一命名空間下,例如 NS_DNS。 傳遞特定命名空間提供者的 GUID 將只會查詢指定的命名空間提供者。 您可以呼叫 WSAEnumNameSpaceProviders 和 WSAEnumNameSpaceProvidersEx 函式來擷取命名空間提供者的 GUID。
lpszContext
類型: LPTSTR
階層命名空間中查詢的選擇性起點指標。
dwNumberOfProtocols
類型: DWORD
通訊協議條件約束陣列的大小,以位元組為單位。 這個成員可以是零。
lpafpProtocols
類型: LPAFPROTOCOLS
AFPROTOCOLS 結構的選擇性陣列指標。 只會傳回使用這些通訊協議的服務。
lpszQueryString
類型: LPTSTR
選擇性 NULL 終止查詢字串的指標。 某些命名空間,例如 Whois++,支援擴充的類似 SQL 的查詢,這些查詢包含在簡單的文字字串中。 此參數是用來指定該字串。
dwNumberOfCsAddrs
類型: DWORD
查詢會忽略這個成員。
lpcsaBuffer
類型: LPCSADDR_INFO
查詢會忽略這個成員。
dwOutputFlags
類型: DWORD
查詢會忽略這個成員。
lpBlob
類型: LPBLOB
用來查詢或設定提供者特定命名空間信息的選擇性數據指標。 此資訊的格式專屬於命名空間提供者。
備註
WSAQUERYSET 結構是 Windows 95 和更新版本上可用原始命名空間提供者第 1 版架構的一部分。 Windows Vista 和更新版本提供較新版本的命名空間架構。
在大部分情況下,只對特定傳輸通訊協定感興趣的應用程式應該依位址系列和通訊協定來限制其查詢,而不是依命名空間限制。 這可讓需要尋找 TCP/IP 服務的應用程式,例如,讓所有可用的命名空間處理其查詢,例如本機主機檔案、DNS 和 NIS。
注意
winsock2.h 標頭會將 WSAQUERYSET 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
標頭 | winsock2.h |