为什么不';具有不同COM端口分配的多个bluetooth SPP设备是否唯一?

为什么不';具有不同COM端口分配的多个bluetooth SPP设备是否唯一?,bluetooth,com,stack,virtual,Bluetooth,Com,Stack,Virtual,设置如下:我有两个蓝牙设备与一台PC配对。它们都是SPP,用于单独的虚拟COM端口。一个设备被分配COM9,另一个被分配COM11。如果我打开COM9端口,它会“看到”来自COM11配对设备的数据,即使我没有打开COM11端口 看起来好像来自配对设备的任何数据,无论它与哪个COM端口配对,都将在打开的任何COM端口上接收。我本以为只有在打开COM9虚拟端口等的情况下,才会收到来自与COM9配对的设备的数据 有人能告诉我为什么配对端口的行为不是唯一的吗?有没有办法强制它们是唯一的?通常我看到分配给

设置如下:我有两个蓝牙设备与一台PC配对。它们都是SPP,用于单独的虚拟COM端口。一个设备被分配COM9,另一个被分配COM11。如果我打开COM9端口,它会“看到”来自COM11配对设备的数据,即使我没有打开COM11端口

看起来好像来自配对设备的任何数据,无论它与哪个COM端口配对,都将在打开的任何COM端口上接收。我本以为只有在打开COM9虚拟端口等的情况下,才会收到来自与COM9配对的设备的数据


有人能告诉我为什么配对端口的行为不是唯一的吗?有没有办法强制它们是唯一的?

通常我看到分配给单个设备的两个com端口(传入和传出),您确定您所关心的com 9和11不是同一设备的传入和传出端口?

我在Windows 7和Windows 8上观察到类似的行为。我已经配对了两个SPP蓝牙设备。因此,Windows创建了四个虚拟COM端口:每个设备一个传入端口和一个传出端口。 然后我打开了两个传入端口。然而,我无法同时连接两个设备。第一个连接到任何传入端口,第二个无法连接,只要第一个已连接。
Windows似乎只能在任何传入的虚拟COM端口上接受一个传入连接。

PC/Bluetooth Dongle是否仅使用标准的Microsoft Bluetooth堆栈,还是使用Widcomm/Broadcom、BlueSOleil等?甚至我遇到了与上述相同的问题。到目前为止有解决方案吗?你是对的,每个设备都分配了一个传入和传出COM端口。一个设备分配COM8传出、COM9传入,另一个设备分配COM10传出和COM11传入。。。由于我们的设备启动数据传输,因此我们只使用传入端口分配。此外,这也适用于标准的Microsoft Bluetooth堆栈。。。。所有其他堆栈均已移除或未安装。当我们在PC上打开一个端口进行通信时,我们会指定要与哪个端口(大概是哪个设备)进行通信。。。。然而,当我们操作分配给未打开端口的设备时,它会在打开的端口上做出响应。我感觉,出于某种原因,Microsoft Bluetooth堆栈没有为每个已定义的虚拟COM端口维护单独的队列。。。有什么想法吗?