使用C#将文本和数据发送/接收到蓝牙(Com端口)

时间:2011-06-06 10:31:32

标签: c# bluetooth

我正在创建一个程序,可以将测试或数据发送到蓝牙设备。为此,我想使用蓝牙软件提供的虚拟串口。

Q值。有没有办法将网络流发送到虚拟串口,如LAN中的套接字编程?

Q值。如何通过蓝牙接收数据?它是否以网络流的形式出现?

Q值。哪种是通过蓝牙发送和接收数据的快速方法?

因为我不仅向设备发送文本,还发送图像和其他类型的数据。

2 个答案:

答案 0 :(得分:1)

1)不确定蓝牙虚拟端口,但我怀疑你可以使用readFile / writeFile(或'Ex'异步版本)到CreateFile()返回的句柄,就像'普通'串行一样港口。如果是这样,你可以处理句柄,(抱歉!),就像在客户端套接字connect()或服务器监听器accept()中引发的套接字句柄一样。因此,您应该能够使用专用线程,I / O完成例程或IO完成端口与虚拟端口进行通信。

之前我做过类似的事情,但使用Delphi和'真正的'串行端口和客户端网络连接。我使用了IO完成例程,其中'IOhandler'类被转移到'hEvent'字段中的完成例程。串行端口和客户端套接字类是IOhandler后代,因此相同的IO完成例程代码适用于两者。它工作正常,(最终:)。我不知道为什么它在C#中不能正常工作。

2)同样,关于蓝牙虚拟端口。鉴于许多蓝牙实现可以将这些虚拟COM端口作为接口提供,那么传输肯定是一个“八位字节流”,就像TCP或“真正的”COM端口一样。

3)在Windows上?我怀疑IO完成端口。可能并不重要,因为与Windows可以处理的相比,蓝牙带宽并不是那么好。

RGDS, 马丁

答案 1 :(得分:0)

这可能会对你有所帮助 mCore™ .NET SMS Library