当其他应用程序需要访问蓝牙连接(Bluetopia)时,禁用BTExplorer
本文关键字:Bluetopia BTExplorer 禁用 连接 应用程序 其他 访问 | 更新日期: 2023-09-27 18:08:03
我正在为摩托罗拉MC55设备开发一个c#设备应用程序(使用Bluetopia)。此应用程序设置蓝牙查询和配对过程(通过Enterprise Mobility Developer Kit),并写下虚拟串行端口 #:
public void DoConnection(IRemoteBTDevice rd)
{
RemoteDevice remoteDevice = new RemoteDevice(rd.DeviceName, rd.Id.Replace(":", ""), "");
this.bluetooth.RemoteDevices.Add(remoteDevice);
this.bluetooth.RemoteDevices.Refresh();
if (!remoteDevice.IsPaired)
{
remoteDevice.Pair(rd.Pin);
}
//TODO Note serial port # (get it by means of remoteDevice.LocalComPort)
//Works smoothly, but a second process has to do this (requirement).
remoteDevice.OpenPort();
}
但是一旦第二个进程(例如另一个c#设备应用程序)打开该串行端口,BTExplorer就启动了。如何抑制这种现象?
this.comX = new SerialPort(this.BluetoothPortName);
this.comX.Open();
我只是使用另一个程序集:http://32feet.codeplex.com/。它在摩托罗拉ES400(微软堆栈)上运行顺畅。在看到这个:http://32feet.codeplex.com/wikipage?title=Stonestreet%20One%20Bluetopia之后,我使用了相同的代码,但它还不能在MC55上无故障地工作。
谢谢你的支持,罗杰·胡贝尔
据我所知,它是BTExplorer.exe,实际上提供/控制虚拟COM端口服务,所以它需要在使用虚拟COM端口时运行…
一定要让我知道你在使用我的32英尺时在MC55上看到了什么问题。NET蓝牙支持。正如我在32英尺处提到的。我在一台M3移动设备上测试了蓝牙,它有一个最新版本的蓝牙堆栈。也许斯通街一号在你的版本之间改变了什么……(如果蓝牙启动完全失败,那么我在3.3版本中有更多的日志记录-我离发布也不远了)。
当然,如果第二个c#程序需要使用虚拟COM端口,那么32英尺。NET没有帮助——如上所述,仍然需要BTExplorer。但是,如果您可以更改该程序使用蓝牙客户端等而不是COM端口…(当然记得"一次一个蓝牙"的限制)。
艾伦