在没有虚拟COM端口的情况下打开与蓝牙设备的套接字连接

时间:2014-04-22 21:27:03

标签: windows bluetooth spp 32feet

我使用32feet蓝牙库连接到支持串行端口配置文件(SPP)的设备。我尝试这样连接:

 using (BluetoothClient client = new BluetoothClient())
 {
            var address = new BluetoothAddress(0xecfe7e11c3af);
            BluetoothEndPoint endPoint = new BluetoothEndPoint(address, BluetoothService.SerialPort);
            client.Connect(endPoint);
            var stream = client.GetStream();
            System.Threading.Thread.Sleep(10000);
 }

在调用Connect方法之前,一切都很棒。此时,Windows会使用

的气泡警报中断程序流
  

"蓝牙设备正在尝试连接 - 单击以允许此"

此时,用户将通过最终安装驱动程序的向导,并在设备管理器中显示蓝牙虚拟COM端口。我不希望这种情况发生 - 我想简单地访问流并直接与设备通信而无需窗口干预。这可能吗?如何告诉Windows不要离开我的公司?

我尝试连接蓝牙4.0设备。我过去使用2.0设备完成了类似的操作,Windows在这种情况下不会干涉。

1 个答案:

答案 0 :(得分:0)

查看http://SimpleBluetooth4Win.SourceForge.net

这是一个小型的包装库,它使用可以帮助你的Windows蓝牙网络API。

https://msdn.microsoft.com/en-us/library/windows/desktop/aa362932%28v=vs.85%29.aspx

特别是如果您的蓝牙USB加密狗或蓝牙设备已被相应的驱动程序正确识别且远程蓝牙设备已与PC配对,则无需安装显示在设备中的蓝牙虚拟COM端口管理员,但您只需使用写入或读取调用直接访问流以与配对设备进行通信。