BluetoothAuthenticateDeviceEx 関数 (bluetoothapis.h)
BluetoothAuthenticateDeviceEx 関数は、リモート Bluetooth デバイスに認証要求を送信します。 さらに、この関数を使用すると、認証されるデバイスの関数呼び出しに帯域外データを渡すことができます。
構文
DWORD BluetoothAuthenticateDeviceEx(
[in, optional] HWND hwndParentIn,
[in, optional] HANDLE hRadioIn,
[in, out] BLUETOOTH_DEVICE_INFO *pbtdiInout,
[in, optional] PBLUETOOTH_OOB_DATA_INFO pbtOobData,
[in] AUTHENTICATION_REQUIREMENTS authenticationRequirement
);
パラメーター
[in, optional] hwndParentIn
認証ウィザードの親となるウィンドウ。 NULL の場合、ウィザードはデスクトップから親になります。
[in, optional] hRadioIn
有効なローカル 無線ハンドルまたは NULL。 NULL の場合、すべての無線が試行されます。 いずれかの無線が成功した場合、呼び出しは成功します。
[in, out] pbtdiInout
認証されるデバイスを記述する BLUETOOTH_DEVICE_INFO 構造体へのポインター。
[in, optional] pbtOobData
この API 呼び出しで提供されるデバイス固有の帯域外データへのポインター。 NULL の場合は、認証プロセスを続行するための UI が表示されます。 NULL でない場合、UI は表示されません。
[in] authenticationRequirement
認証 に 必要な保護を指定するBLUETOOTH_AUTHENTICATION_REQUIREMENTS値。
戻り値
正常に完了するとERROR_SUCCESSを返します。エラーが発生すると、次のエラー コードが返されます。
リターン コード | 説明 |
---|---|
|
ユーザーが操作を中止しました。 |
|
pbdti で指定されたデバイス構造が無効です。 |
|
pbtdi 内のデバイスは既に認証済みとしてマークされています。 |
注釈
pbtdilInOut で指定されるBLUETOOTH_DEVICE_INFO構造体には、認証するデバイスのアドレスが含まれている必要があります。 pbtOobData の値が NULL でない場合は、指定された帯域外データを使用してリモート デバイスを認証しようとします。
他のすべての種類の認証では、呼び出し元は BluetoothRegisterForAuthenticationEx を使用して認証コールバックを登録し、 BluetoothSendAuthenticationResponseEx を使用して関連する認証方法に応答する必要があります。
例
次のコード例では、デバイスが見つかり、 BluetoothAuthenticateDeviceEx を使用して認証要求が送信されます。
PBLUETOOTH_DEVICE_INFO pDeviceInfo;
HRESULT status;
HANDLE hEvent = NULL;
HRESULT WINAPI AuthenticateService(){
status = BluetoothAuthenticateDeviceEx( NULL,
NULL,
pDeviceInfo,
NULL,
MITMProtectionNotRequired );
if ( ERROR_INVALID_PARAMETER == status ) {
// goto Cleanup;
// ...
// Take cleanup action here,
// ...
}
//
// Wait for the Authentication callback to return before trying to unregister the handle
// Use an infinite timeout since the handle to the function that sets the event is being
// deleted
//
if ( WAIT_FAILED == WaitForSingleObject(hEvent, INFINITE) ) {
status = GetLastError();
// goto Cleanup;
// ...
// Take cleanup action here,
// ...
}
return status;
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | WINDOWS XP と SP2 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | サポートなし |
対象プラットフォーム | Windows |
ヘッダー | bluetoothapis.h (Bthsdpdef.h、BluetoothAPIs.h を含む) |
Library | Bthprops.lib |
[DLL] | bthprops.cpl |