BluetoothFindNextDevice 函数用于继续从设备搜索中获取下一个蓝牙设备的信息。该函数需要先使用 BluetoothFindFirstDevice 函数获取设备搜索句柄。以下是该函数的声明:
BOOL BluetoothFindNextDevice(
  HBLUETOOTH_DEVICE_FIND hFind,
  BLUETOOTH_DEVICE_INFO   *pbtdi
);

参数说明:
  •  hFind: 先前通过 BluetoothFindFirstDevice 函数获取的设备搜索句柄。

  •  pbtdi: 指向 BLUETOOTH_DEVICE_INFO 结构的指针,用于接收找到的下一个蓝牙设备的信息。如果不需要设备信息,可以设置为 NULL。


返回值:
  •  如果成功,返回 TRUE。

  •  如果失败,返回 FALSE。可以使用 GetLastError 函数获取错误信息。


以下是一个简单的示例代码,演示如何使用 BluetoothFindNextDevice 函数:
#include <BluetoothAPIs.h>
#include <stdio.h>

int main()
{
    // 示例中省略了蓝牙无线电的获取步骤

    BLUETOOTH_DEVICE_INFO btdi = { sizeof(BLUETOOTH_DEVICE_INFO), 0 };

    // 使用 BluetoothFindFirstDevice 获取设备搜索句柄
    HBLUETOOTH_DEVICE_FIND hFind = BluetoothFindFirstDevice(&btdi, &btdi);

    if (hFind != NULL)
    {
        // 处理找到的第一个设备信息
        printf("Found Bluetooth Device: %s\n", btdi.szName);

        // 继续获取下一个设备信息
        while (BluetoothFindNextDevice(hFind, &btdi))
        {
            printf("Found Bluetooth Device: %s\n", btdi.szName);
        }

        // 关闭设备搜索句柄
        BluetoothFindDeviceClose(hFind);
    }
    else
    {
        printf("No Bluetooth devices found.\n");
    }

    return 0;
}

请注意,使用此函数进行设备搜索需要管理员权限。确保在调用任何蓝牙 API 函数之前,您的应用程序已经获取了适当的权限。


转载请注明出处:http://www.zyzy.cn/article/detail/24065/Win32 API/Bluetoothapis.h/BluetoothFindNextDevice