Windows mobile 如何在运行Windows Mobile的Pocket PC上使用蓝牙SPP?

Windows mobile 如何在运行Windows Mobile的Pocket PC上使用蓝牙SPP?,windows-mobile,bluetooth,Windows Mobile,Bluetooth,我的客户需要一个Pocket PC应用程序,通过蓝牙远程配置工业传感器。传感器配备了一个小型蓝牙SPP模块。应用程序应在运行Windows Mobile的Pocket PC上运行。由于我熟悉桌面上的.NET应用程序开发,但不熟悉移动设备上的.NET应用程序开发,因此我想就如何开始这项工作征求一些建议 我看过《微软移动开发手册》一书,书中说设备制造商可以使用他们选择的蓝牙协议栈(听起来很糟糕)。还提到了32英尺的图书馆。但我仍然不清楚是否有一种方法可以编写一个使用蓝牙串行端口配置文件(SPP)的独

我的客户需要一个Pocket PC应用程序,通过蓝牙远程配置工业传感器。传感器配备了一个小型蓝牙SPP模块。应用程序应在运行Windows Mobile的Pocket PC上运行。由于我熟悉桌面上的.NET应用程序开发,但不熟悉移动设备上的.NET应用程序开发,因此我想就如何开始这项工作征求一些建议


我看过《微软移动开发手册》一书,书中说设备制造商可以使用他们选择的蓝牙协议栈(听起来很糟糕)。还提到了32英尺的图书馆。但我仍然不清楚是否有一种方法可以编写一个使用蓝牙串行端口配置文件(SPP)的独立于设备的应用程序。有什么想法吗?

微软和Widcomm BT协议栈之间的区别(当然WinMobile上没有其他协议)主要在于设备发现和配对API。 看见 如果您的客户端使用单一类型的PPC,只需使用已安装的堆栈即可。如果必须从任何WinMobile设备执行此操作,则必须检测安装的设备并同时支持这两种设备

一旦PPC与另一个设备配对,使用连接的“::COMn”文件名调用::CreateFile(),::WriteFile()命令和ReadFile()应答


请注意,BT连接随时可能丢失,因此您应该处理好这一点。

我是32feet.NET库的维护者,并添加了对Widcomm的支持


该库提供了对远程计算机上带有套接字/流API的RFCOMM/SPP服务的简单访问,而不管它是本地设备上的MSFT还是Widcomm堆栈。请参阅

上的“通用蓝牙连接”部分。非常感谢,我将尝试一下您的库。听起来这可能会节省我很多时间:-)谢谢你的有用提示。我将使用BT连接作为RS232的替代品,而连接随时可能丢失这一事实确实是我必须考虑的。如果有任何工业安全问题,我不建议从有线切换到BT。干杯:)阿兰-你说得对,从有线切换到无线时总是存在安全风险。但我知道BT提供了一些机制,如“不可发现模式”、加密和身份验证,这些机制应该足以保护系统免受无意入侵。我担心的是可靠性。物理电线可以定期检查和测试,无线连接器是按需制造的,因此无法确保下次正常使用。这是一个值得关注的问题。在我的情况下,BT接口仅用于服务(即每隔一段时间配置/检查一次传感器)。它可以方便地替换物理上难以访问的设备的电缆连接。