IOCTL_BTH_GET_DEVICE_INFO IOCTL (bthioctl.h)
IOCTL_BTH_GET_DEVICE_INFO要求は、以前に検出された、Bluetooth 対応のすべてのキャッシュされたリモート 無線に関する情報を返します。
メジャー コード
[入力バッファー]
AssociatedIrp.SystemBuffer メンバーは、BTH_DEVICE_INFO_LIST構造体のバッファーを指します。
入力バッファーの長さ
BTH_DEVICE_INFO_LIST構造体の長さ
出力バッファー
AssociatedIrp.SystemBuffer メンバーは、BTH_DEVICE_INFO_LIST構造体を保持するバッファーを指します。 BTH_DEVICE_INFO_LIST構造体の numOfDevices メンバーには、情報があるデバイスの数と 、BTH_DEVICE_INFO 構造体の配列が含まれます。デバイスごとに 1 つの配列エントリ。
出力バッファーの長さ
渡された出力バッファーのサイズが の正しい倍数sizeof(BTH_DEVICE_INFO)
を正確にsizeof(BTH_DEVICE_INFO_LIST)
加算していない場合、要求は STATUS_INVALID_BUFFER_SIZEで失敗します。
ステータス ブロック
要求が成功した場合、STATUS_BLOCK構造体の Information メンバーは、デバイスの配列に関する情報を保持するバッファーのサイズ (バイト単位) に設定されます。 BTH_DEVICE_INFO_LIST構造体には最初のBTH_DEVICE_INFO構造体のストレージが含まれているため、デバイスが返されない場合、 Information メンバーは最初の構造体のサイズに設定されます。
Status メンバーは、次の表のいずれかの値に設定されます。
ステータス値 | 説明 |
---|---|
STATUS_SUCCESS | IOCTL が正常に完了しました。 |
STATUS_INVALID_PARAMETER | 渡された入力バッファーは NULL でした。 |
STATUS_INVALID_BUFFER_SIZE | 出力バッファーのサイズが正しくありません。 |
注釈
IOCTL_BTH_GET_DEVICE_INFO IOCTL は、以前に検出されたすべてのリモート 無線に関する情報を提供します。
BTH_DEVICE_INFO_LIST 構造体の numOfDevices メンバーは、IOCTL によって返されるBTH_DEVICE_INFO構造体の合計数を返します。 呼び出し元のドライバーが numOfDevices メンバーの値よりも小さいバッファーを渡す場合は、使用可能な構造体の一部のみが返されます。 Bluetooth ドライバーの開発者は、最初に小さなバッファーを使用して IOCTL_BTH_GET_DEVICE_INFO を呼び出し (例: sizeof(BTH_DEVICE_INFO_LIST)
)、返された numOfDevices メンバーを使用して、後続の呼び出しのバッファーのサイズを正しく設定する必要があります。
BTH_DEVICE_INFO_LIST構造体には、最初のBTH_DEVICE_INFO構造体のストレージが含まれます。 次の数式を使用して、IOCTL_BTH_GET_DEVICE_INFOの呼び出しに適したバッファー サイズを計算します。
Buffer=sizeof(BTH_DEVICE_INFO_LIST)+(NumOfDevices-1)*sizeof(BTH_DEVICE_INFO)
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | バージョン:Windows Vista 以降の_Supported。 |
Header | bthioctl.h (Bthioctl.h を含む) |
IRQL | <= PASSIVE_LEVEL |