Bluetooth 드라이버 스택은 프로필 드라이버에 다음과 같은 정보를 수집하는 여러 IOCTL을 제공합니다.
로컬 Bluetooth 라디오 및 시스템입니다.
원격 Bluetooth 디바이스.
PnP(플러그 앤 플레이) 관리자가 프로필 드라이버를 로드하게 한 디바이스입니다.
To gather information about the local Bluetooth radio and system, a profile driver uses IOCTL_BTH_GET_LOCAL_INFO. After the IOCTL returns, its AssociatedIrp.SystemBuffer member contains a pointer to a BTH_LOCAL_RADIO_INFO structure that contains information about the local Bluetooth radio and system, including flags that indicate whether the local radio can be discovered and connected to. The returned BTH_LOCAL_RADIO_INFO structure contains a BTH_DEVICE_INFO structure, which contains system-specific information, and a BTH_RADIO_INFO structure, which contains local radio-specific information.
To gather information about a specific remote Bluetooth device, a profile driver uses IOCTL_BTH_GET_RADIO_INFO. After the IOCTL returns, its AssociatedIrp.SystemBuffer member contains a pointer to a BTH_RADIO_INFO structure that provides information about the specific remote radio, including whether the remote radio can be discovered and connected to.
To gather information about all remote radios that have been discovered, a profile driver uses IOCTL_BTH_GET_DEVICE_INFO. After the IOCTL returns, its AssociatedIrp.SystemBuffer member contains a pointer to a BTH_DEVICE_INFO_LIST structure that contains an array of BTH_DEVICE_INFO structures. BTH_DEVICE_INFO_LIST 구조에는 검색된 각 원격 라디오에 대해 하나의 배열 항목이 포함됩니다. The user-mode BluetoothGetDeviceInfo API uses this functionality to return information about all remote radios.
To gather information about the remote device that caused the PnP Manager to load it, a profile driver uses IOCTL_INTERNAL_BTHENUM_GET_DEVINFO. After the IOCTL returns, its AssociatedIrp.SystemBuffer member contains a pointer to a BTH_DEVICE_INFO structure that contains information about the remote device, including its Bluetooth device address, device state, and its class-of-device (CoD) settings.
A profile driver uses IOCTL_INTERNAL_BTHENUM_GET_ENUMINFO to obtain information about the underlying device and service that caused the PnP manager to load the profile driver. After the IOCTL returns, its AssociatedIrp.SystemBuffer member contains a pointer to a BTH_ENUMERATOR_INFO structure that contains vendor-provided information about the device, including the port number, device flags, vendor ID, and product ID.
Bluetooth IOCTL 및 BRB 사용에 대한 자세한 내용은 BRB 빌드 및 보내기를 참조하세요.