我正在尝试从C++代码搜索并连接到广告低功耗蓝牙设备。
我想要一段代码来使用笔记本电脑的无线芯片来发现并连接到BLE设备,而不管它们的GATT服务如何。
我希望可以使用GATT属性(服务,特征,描述符,通知)。

以编程方式

我有Windows API的BluetoothLEAdvertisementWatcher Class文档。

我尝试制作this example,但效果不佳。

我也尝试过this example,但是没有成功。

手动地

我确定使用Windows 10操作中心,并使用手动配对连接设备(因为Windows可以看到并连接我的设备)。

然后我可以直接使用Windows.Devices.Bluetooth.GenericAttributeProfile Namespace

有没有一种方法可以自动实现?

最佳答案

您好Raphaël,欢迎来到stackoverflow。当您说“没有好的结果”或“但是没有成功”时,您应该详细说明原因(编译错误,运行时错误...)。

我使用了这段代码:
Getting BLE Beacons in C++ Windows 10 Desktop Application

它可以在Win10下编译,因此您发布的第三个链接(https://github.com/urish/win-ble-cpp)也应该如此,因为如果您在此处查看包含内容,则该链接非常相​​似。请注意,这不是常规的win32项目:在Visual Studio中,您必须创建一个新的“Windows” /“Universal” C++项目,否则它们将无法编译。

另外,如果您可以使用第3方库,则可以只使用QtBluetooth,最新版本支持Windows10。然后您可以轻松地从aregular win32项目中访问BLE功能。

10-08 06:04
查看更多