C# 32英尺.Net连接到蓝牙扬声器

C# 32英尺.Net连接到蓝牙扬声器,c#,bluetooth,32feet,C#,Bluetooth,32feet,因此,我正在尝试通过脚本连接蓝牙扬声器。我正在使用32feet.net,我已经成功地找到了该设备,但当我尝试配对并连接到它时,它不工作 这是im用于与设备配对的代码,此代码总是失败不确定原因: private static void connected(BluetoothDeviceInfo[] dev) { // dev[foundIndex]; bool paired=false; paired = BluetoothSecurity.Pai

因此,我正在尝试通过脚本连接蓝牙扬声器。我正在使用32feet.net,我已经成功地找到了该设备,但当我尝试配对并连接到它时,它不工作

这是im用于与设备配对的代码,此代码总是失败不确定原因:

 private static void connected(BluetoothDeviceInfo[] dev)
   {
      // dev[foundIndex];
       bool paired=false;

       paired = BluetoothSecurity.PairRequest(dev[foundIndex].DeviceAddress, "1166");

       if (paired)
           Console.WriteLine("Passed, Device is connected.");
       else
           Console.WriteLine("Failed....");
   }
下面是连接到设备后调用的代码:bc是我的蓝牙客户端变量

 bc.BeginConnect(devInfo[foundIndex].DeviceAddress, BluetoothService.SerialPort, new AsyncCallback(Connect), devInfo[foundIndex]);

private static void Connect(IAsyncResult result)
    {
        if (result.IsCompleted)
        {
            Console.Write("Connected... ");
        }

    }

任何帮助都将不胜感激。我是32feet.net的新手,所以我对这方面不太了解,我试着通过在线代码来达到我的目的

试试
BluetoothDeviceInfo.SetServiceState
。这将要求Windows连接到设备上的音频服务——希望这能完成这项工作

有时,我们不希望应用程序本身向远程服务发送数据或从远程服务发送数据,而是希望本地操作系统这样做。这种情况适用于带HID的键盘/鼠标/etc、带DUN/NAP/PAN/etc的网络、耳机/免提装置等

然后


在这种情况下,简单的答案是使用BluetoothDeviceInfo.SetServiceState。这相当于手动选中蓝牙控制面板中设备对话框“服务”选项卡上的相应复选框


此外,在这些安全简单配对的日子里,只有当所有对等设备都将使用旧式PIN码身份验证时,才可以使用
PairRequest
,否则将实例化
BluetoothWin32Authentication
,然后进行连接(此处通过
SetServiceState
间接连接)并在身份验证回调中处理身份验证。

BluetoothDeviceInfo.SetServiceState(BluetoothService.Handsfree,true);因此,在调用find(devInfo)之后,我在我的项目中添加了这行代码。但是由于没有对象,这一行无法编译。我遗漏了什么吗?好吧,现在当我运行我的脚本时,它会提示用户点击屏幕上的一个徽章(我使用windows 8.1)是否有任何方法可以绕过此操作,只需不点击就可以连接?为了帮助其他人,是设置ServiceStart&BluetoothWin32Authentication来完成这项工作,还是需要其他魔法?TaSo我没有使用SetServiceStart,只是使用BluetoothWin32Authentication。我关注了你也评论过的这个链接,它帮助我看到了我犯错误的地方。