WCHBLEDLL能不能用于QT

最近用WCHBLEDLL库在qt creator中开发上位机蓝牙接收程序,Desktop QT5.12.1 MSVC2017 64bit, 但是我发现编译通过后不能运行,想请教一下这个库能否这样使用,如果你们测过可以的话,能否提供Qt下使用的例子,谢谢

用我们编译好的EXE程序能运行嘛?WCHBLEDLL只能在windows 8.1以上系统运行,并且系统中要有BLE控制器。


MFC下是可以使用的,win10 x64的PC, 蓝牙5.0。Qt creator下编译也没有问题,只是不能正常运行,不知是否需要添加额外的运行库,我把测试工程发tech@wch.cn邮箱了,麻烦抽空看看,谢谢



不好意思,我忘了,代码是加密的。

就是一个简单的Qt小程序,导入了你们的库,然后在mainWindow()里面加了一句 WCHBLEInit();   运行后就在这个函数调用处出错了。lib, dll用的都是64位的



问题可能是WCHBLEGetMtu()这个函数导致的,麻烦看看里面字符串使用是否有问题,谢谢



好的,我们这边看一下,邮件联系。


WCHBLEDLL.dll 同一台电脑有使用时间限制嘛?之前能连接上,现在总是打开设备函数WCHBLEOpenDevice报错,打开失败。编译好的软件换一台电脑又可以连接上正常通讯了。有人知道怎么回事儿嘛?


没有限制的。看打开失败前,能扫描到设备嘛?能扫描到设备一般都能打开的,有的时候蓝牙设备会自动连接到系统里,要把这个连接在蓝牙设置中删除了。


你好,这个问题是如何解决的,我也碰到了同样的问题,QT能编译但是不能运行,调用第一个函数就报错了:

WCHBLEInit(),麻烦各位大佬指点一下,dll文件已经拷贝到exe文件目录下了。



icon_rar.gifWCHBLELIB_V120.zip

用这个试试。


非常感谢ZYW,上班第一天立马就回复,并且问题得以解决了。这个版本的运行没有问题,我再用用其他方法。非常感谢ZYW的回复。


WCHBLEOpenDevice

打开设备卡死是什么情况,用在QT上会出问题吗,搜索设备能出来,蓝牙打开也没问题,

BLE_S3 =  WCHBLEOpenDevice(data1,funtion_test);




@10楼,我使用你的这个库,初始化和获取mtu还有扫描都是正常的,但是用WCHBLEWriteCharacteristic发送数据时直接崩溃了,使用的是qt5+mingw 32bit


用手机APP操作一下这个蓝牙设备,看这个Characteristic是否可以写入,或者是无应答写(WCHBLEReadCharacteristic第4个参数决定)。


使用WCHBLEDLL获取的Characteristic只有2字节用作识别,刚好遇到一个BLE所有Characteristic的UUID前4字节都一样的,结果获取到的Characteristic都一样,有办法解决这个问题吗?


目前ble库只支持2字节的UUID,完整UUID的方式还没有支持,可能操作不起来。


只有登录才能回复,可以选择微信账号登录