WSALookupServiceBeginW

WSALookupServiceBegin 関数は、WSAQUERYSET 構造体に格納された情報によって制約されたクライアント問い合わせを開始する。(Unicode)

WSALookupServiceBeginW lpqsRestrictions, dwControlFlags, lphLookup

lpqsRestrictions : [var] 検索条件へのポインタ。詳細は備考を参照。
dwControlFlags : [int] 検索の深さを制御するフラグの集合。dwControlFlags 引数に指定可能な値は Winsock2.h ヘッダファイルに定義されており、以下のオプションを組み合わせて指定できる。
lphLookup : [intptr] 結果セットの取得を開始するために WSALookupServiceNext 呼び出し時に使用するハンドル。

(プラグイン / モジュール : ws2_32.dll)

解説

WSALookupServiceBegin 関数は、WSAQUERYSET
構造体に格納された情報によって制約されたクライアント問い合わせを開始する。(Unicode)

[戻り値]
操作が成功した場合の戻り値はゼロ。そうでない場合は SOCKET_ERROR が返され、WSAGetLastError
を呼び出すことで特定のエラー番号を取得できる。
このドキュメントは省略されている。

[備考]
lpqsRestrictions 引数は WSAQUERYSET 構造体を含むバッファを指す。WSALookupServiceBegin
を呼び出す前に、少なくとも WSAQUERYSET の dwSize
メンバにはバッファ長を設定しておかなければならない。アプリケーションは WSAQUERYSET
の他のメンバを指定することで検索を絞り込める。多くの場合、特定のトランスポートプロトコルにのみ関心があるアプリケーションは
dwNameSpace で名前空間を指定するのではなく、dwNumberOfProtocols と lpafpProtocols
を使ってアドレスファミリとプロトコルで検索を絞るべきである。サポートされているネットワークトランスポートプロトコルの情報は
EnumProtocols、WSAEnumProtocols、WSCEnumProtocols、WSCEnumProtocols32
関数で取得できる。検索を単一の名前空間に限定することも可能で、たとえば DNS からのみ結果を得たい場合は dwNameSpace を
NS_DNS に設定する。Bluetooth デバイス検出であれば dwNameSpace を NS_BTH
に設定する。lpNSProviderId メンバにプロバイダの GUID
を指定することで、検索を特定のネームスペースプロバイダに限定することもできる。ローカルコンピュータのネームスペースプロバイダ情報は
WSAEnumNameSpaceProviders、WSAEnumNameSpaceProvidersEx、WSCEnumNameSpaceProviders32、WSCEnumNameSpaceProvidersEx32
関数で取得できる。呼び出しで LUP_CONTAINERS
を指定する場合、他の制限値は指定しない方がよい。指定した場合、コンテナ上でその制限をサポートできるかはネームサービスプロバイダの判断に委ねられる。サポートできなければエラーを返すべきである。他の方法でコンテナを見つけられるプロバイダもある。たとえばコンテナはすべて既知の型または既知の型集合であって、その検索用の制限クエリが作れる場合がある。どのような方法でコンテナを見つけられるとしても、LUP_CONTAINERS
と LUP_NOCONTAINERS が優先される。したがって、コンテナを含むクエリ制限を指定した状態で LUP_NOCONTAINERS
を指定するとコンテナ項目は返されない。同様に、どのようなクエリ制限があっても LUP_CONTAINERS
が指定されているとコンテナのみが返される。名前空間がコンテナをサポートしていない状態で LUP_CONTAINERS
が指定された場合、WSANO_DATA を返すべきである。別のコンテナ内のコンテナを取得する推奨方法は次の呼び出しである。
このドキュメントは省略されている。

情報

プラグイン / モジュールws2_32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の ws2_32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_ws2_32_gen2.hs