指定给特定蓝牙设备的Com端口
本文关键字:端口 Com | 更新日期: 2023-09-27 18:28:05
我正在用C#编写一个应用程序,以连接到蓝牙突破芯片。
据我所知,Windows为设备分配了一个COM端口;这样我就可以连接到它。虽然,我不知道如何检索与特定端口关联的设备的名称。
在我检索所有COM的那一刻,由于我知道哪个端口适用于BT设备,我用一个按钮手动打开连接。
这里的目标是打开设备,以及设备是否配对;它将自动连接。除非我弄错了;当你配对蓝牙设备时,它会被分配到COM端口;所以应该可以检索设备名称/BT名称,询问COM端口?通过这种方式,我可以扫描所有端口;检查哪个端口分配给该设备名称,然后自动打开连接。
这是正确的,还是有不同的方式来实现我想要实现的目标?
到目前为止,我还没有找到快速的方法,也没有Windows或.NET的API可以让你做这么简单的事情,比如获取COM端口的信息。要么nobobody可以串行使用蓝牙,要么它太可怕了,甚至微软都不想让你获取这些信息。
除了非常复杂的获取信息的方式外,从注册表查询到不同层面的反思都在肆虐;我发现了这个名为32英尺的.NET插件;这让我能够真正实现我想要实现的目标。
代码非常简单;创建的对象具有蓝牙外围设备屏幕中使用的友好名称的信息,并且能够在连接后返回绑定到该设备的端口。
令人惊讶的是,我不得不使用一个外部解决方案,而我预计它将以某种方式通过Windows中的标准API公开。虽然它有效,但问题解决了!
如果我找到了一种不同的方法来做同样的事情,并且这不需要比你真正需要的更多的开销,我会把它发布在这里。