BluetoothとWSASetService
Bluetoothでは、WSASetService関数を使用して、Bluetooth名前空間 (NS_BTH) 内のサービスインスタンスをレジストリから登録または削除します。 この操作によって返されるハンドルは、サービスを削除するためにのみ使用できます。
Bluetoothには、WSASetService関数を使用してサービスを提供する2つの手段があります。
- アプリケーションでは、WSAQUERYSET構造体の標準メンバーから構築された単純なBluetooth SDPサービスレコードをアドバタイズするシステムを使用できます。
- アプリケーションでは、BTH_SET_SERVICE構造体をWSAQUERYSET構造体のlpBlobメンバーに渡すことによって、独自のBluetooth SDPレコードをアドバタイズするシステムを使用できます。 これは、より複雑なアプローチです。
Note
WSASetServiceによってアドバタイズされたSDPレコードは、それらを発行したプロセスが終了した後は保持されません。
BluetoothでのWSASetServiceの使用には、次の要件があります。
- lpqsRegInfoパラメーターは、登録するWSAQUERYSET構造体のアドレスです。
- essOperationパラメーターは、次の表に示す操作のいずれかを含む列挙体です。
Value | 説明 |
---|---|
RNRSERVICE_REGISTER | Bluetooth SDPプロトコルを使用してクエリを実行するリモート無線へのサービスのアドバタイズを開始します。 |
RNRSERVICE_DEREGISTER | 無効です。 エラーを返します。 |
RNRSERVICE_DELETE | サービスの提供を停止します。 |
Note
WSALookupServiceBeginまたはWSALookupServiceNextの呼び出し中に検出されたサービスハンドルは、RNRSERVICE_DELETE操作と互換性がありません。
- Dwcontrolflagsパラメーターは予約されており、0である必要があります。
詳細とBluetoothソケットオプションの一覧については、 「bluetooth and socket options」 を参照してください。
関連トピック