如何接受Windows 7桌面上的传入蓝牙连接(使用c ++或c#程序)

Tim*_*Tim 17 c# c++ windows connection bluetooth

我正在Android上编写BT应用程序以连接到实验室设备/硬件.目前我租借了一台设备.然而,当我为它开发时,我不可能总是有一个(通勤,出城等)因此我正在为它创建一个模拟器,并将在我的Windows桌面上运行该模拟器,以便我的Android客户端代码可以与它建立联系.

android代码是用.NET/xamarin构建的,可以很好地连接到真实设备.

我对桌面上的C++或C#感到满意.

我发现这个代码http://www.codeproject.com/Articles/252882/Bluetooth-Server-Programming-on-Windows在线创建和接受BT连接.对于我想做的事情来说,它看起来是一个非常好的开始 - 它构建了一个模仿真实设备的状态机/模拟器. 但是我无法将我的Android设备连接到它.

注 - 连接是串行端口连接.(来自Android设备的UUI是"众所周知的"串口连接("00001101-0000-1000-8000-00805F9B34FB")

我不知道如何配置Windows 7桌面和蓝牙服务,以允许此服务器/模拟器程序接受连接.

我已将设备配对,但无法连接.

如何在Win7桌面上运行的C++或C#代码中接受传入的蓝牙串行连接?

Pra*_*hal 2

如果您想要执行低级操作,例如通过 C# 应用程序通过蓝牙建立连接,那么您将需要通过其 API 访问蓝牙堆栈。如果您的设备正在运行 Microsoft 蓝牙堆栈,那么您可以查看 32feet.net 的 Microsoft 蓝牙 API 托管包装器。如果您有 Widcomm 堆栈,那么您必须找到 Widcomm 的 API。要访问微软蓝牙堆栈,您可以使用BthUtil.dll
BthUtil.dll 是一个非托管 dll,它是 Microsoft 蓝牙堆栈的一部分。它通常用于诸如通过名为 BthSetMode 的函数打开或关闭蓝牙无线电之类的任务
(有关文档,请参阅 MSDN - http://msdn2.microsoft.com/EN-US/library/aa456007.aspx

您可以检查以下链接:-

http://www.youtube.com/watch?v=Jn05CU3mxzo

另外,请检查32feet.Net
32​​feet.Net 的简要说明

32feet.NET 是一个共享源项目,旨在使蓝牙、红外 (IrDA) 等个人区域网络技术可以通过 .NET 代码轻松访问。
支持桌面、移动或嵌入式系统。
32feet.NET 可免费用于商业或非商业用途。
如果您使用二进制文件,则可以按原样使用该库,如果您对源代码进行修改,则需要包含 32feet.NET License.txt 文档并确保文件头未被修改/删除。该项目目前由以下库组成: - 蓝牙 IrDA 对象交换 蓝牙支持需要具有 Microsoft、Widcomm、BlueSoleil 或 Stonestreet One Bluetopia 蓝牙堆栈的设备。需要 .NET Compact Framework v3.5 或更高版本以及 Windows CE.NET 4.2 或更高版本,或者适用于桌面 Windows XP、Vista、7 和 8 的 .NET Framework v3.5。

链接
http://32feet.codeplex.com/

32feet.Net 的功能链接
http://32feet.codeplex.com/wikipage?title=Feature%20support%20table&referringTitle=Documentation