如果您可以改用 .NET:-/ 我可以推荐我们的库32feet.NET。对于显式配对,有 BluetoothSecurity.PairDevice。我们还可以为您创建虚拟端口,例如:
BluetoothClient cli = new BluetoothClient();
BluetoothDeviceInfo[] list = cli.DiscoverDevices();
BluetoothDeviceInfo selected = GetUserToSelectOne(list);
BluetoothSecurity.PairDevice(selected, pin);
// Ask Win32 to create a virtual serial port
selected.SetServiceState(BluetoothService.SerialPort);
但是我真的不喜欢虚拟串行端口,所以我总是建议人们使用我们的 BluetoothClient 类使用普通套接字连接,如果需要,它会自动处理配对请求。
在 Win32 上,我们支持来自 Microsoft、Widcomm/Broadcom 和 BlueSoleil 的堆栈。在 Widcomm 上还没有对 SetServiceState 的支持,并且他们的 API 不支持响应配对请求。BlueSoleil 应该支持两者。
一个简短的用户指南在 32feet.NET — 用户指南,所有的类文档都可以在主站点http://32feet.net上找到,Widcomm 文档目前只在我们的代码库中。