デバイス照会のBluetoothと WSALookupServiceBegin
このトピックでは、WSALookupServiceBegin 関数を使用して、表示されるデバイスとゴースト化されたデバイスの両方の照会を実行する方法について説明します。 詳細については、「Bluetooth デバイスとサービスのの検出」を参照してください。
WSALookupServiceBegin 関数は、最初のパラメーターである lpqsRestrictions WSAQUERYSET 構造体を使用して検索条件を定義します。 Bluetoothでは、WSALookupServiceBegin 関数と WSAQUERYSET 使用するための具体的なガイドラインを示します。
次の表は、デバイスのクエリを実行するときに lpqsRestrictions パラメーターに渡される WSAQUERYSET 構造体に適用される制限の一覧です。
WSAQUERYSET メンバー | 拘束 |
---|---|
dwSize を する | sizeof(WSAQUERYSET) に設定します。 |
lpBlob を する | このメンバーには、BLOB 構造体への省略可能なポインターが含まれています。 このメンバーを指定した場合、LUP_FLUSHCACHE の有効なデバイス照会パラメーターは次のようになります。
|
dwNameSpace を する | NS_BTHに設定します。 |
その他のメンバー | WSAQUERYSET 構造体の他のメンバーは無視されます。 |
次の表に示すフラグは、クエリ結果を制御するために dwControlFlags パラメーターで使用されます。 LUP_CONTAINERS フラグと LUP_FLUSHCACHE フラグは、WSALookupServiceBegin 関数によって使用されます。残りのフラグは、WSALookupServiceNext 関数の呼び出しで使用されます。
旗 | 結果 |
---|---|
LUP_CONTAINERS | クエリの目的が、サービスの一覧ではなく、Bluetooth デバイスの一覧を取得することを指定します。 このフラグは設定する必要があります。 |
LUP_FLUSHCACHE | ローカル デバイスの照会をトリガーするか、以前のクエリからキャッシュされた結果を返します。 |
LUP_RETURN_TYPE | WSAQUERYSET 構造体のメンバー lpServiceClassId 内のBluetooth COD (デバイス ビットのクラス) を直接返します。 COD は、GUID の Data1 メンバーにマップされます。 |
LUP_RES_SERVICE | ローカル Bluetooth アドレスの情報を返します。 このフラグは、LUP_RETURN_ADDR も指定されている場合にのみ有効です。 |
LUP_RETURN_NAME | WSALookupServiceNext 関数の呼び出しごとに、WSAQUERYSET 構造体の lpszServiceInstanceName メンバー内のデバイスの表示名を返します。 このフラグは、LUP_RETURN_BLOB フラグを指定するときに、BTH_DEVICE_INFO 構造体のメンバー 名を取得するためにも指定する必要があります。 |
LUP_RETURN_ADDR | WSALookupServiceNext 関数の呼び出しごとに、WSAQUERYSET 構造体の lpcsaBuffer メンバー内のピアの 48 ビット アドレスを含む SOCKADDR_BTH 構造体を返します。 SOCKADDR_BTH 構造体内の他のメンバーは空になります。 |
LUP_RETURN_BLOB | WSALookupServiceNextへの後続の呼び出しのたびに、BTH_DEVICE_INFO 構造体返します。 |
LUP_FLUSHPREVIOUS | 次に使用可能なデバイスをスキップし、その後のデバイスを返します。 |
関連トピック