Windows Bluetooth автопарки или отключить аутентификацию - PullRequest
1 голос
/ 09 августа 2011

Мне нужны окна для автоматического сопряжения с устройствами Bluetooth.Я не хочу, чтобы пользователь нажимал что-либо на стороне окна.Сервер будет физически расположен там, куда пользователь не сможет добраться.С парой на стороне пользователя все в порядке.Windows просто нужно принимать любые запросы, которые поступают без ввода данных пользователем.

Как я могу это сделать?Реестр взломать?Заменить длл?A Аппаратное изменение (автоматический перевод ключей или что-то в этом роде)?

Есть ли какой-нибудь SDK, который даст мне инструменты, которые позаботятся об этом?

В настоящее время я использую bluecove на компьютере с Windows поверх Microsoftстек.Я попробовал стек Widcomm также безуспешно.

Основным протоколом, который устройства будут использовать для подключения, является RFCOMM.

РЕДАКТИРОВАТЬ: используя приведенный ниже принятый ответ, я придумал этот код, который автоматически связывает

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using InTheHand.Net.Bluetooth;
using System.Threading;

namespace BT
{
    class BluetoothAutoSSP
    {
        public static void Main()
        {
            BluetoothAutoSSP c = new BluetoothAutoSSP();

            EventHandler<BluetoothWin32AuthenticationEventArgs> handler = new         EventHandler<BluetoothWin32AuthenticationEventArgs>(c.handleRequests);
            BluetoothWin32Authentication authenticator = new BluetoothWin32Authentication(handler);

            while (true)
            {
                Thread.Sleep(10);
            }    
        }

        public void handleRequests(Object thing, BluetoothWin32AuthenticationEventArgs args)
        {
            args.Confirm = true;
        }


    }
}

1 Ответ

3 голосов
/ 10 августа 2011

Для стека Microsoft Bluetooth: для поддержки как традиционного сопряжения Bluetooth, так и безопасного простого соединения v2.1 используйте функцию BluetoothRegisterForAuthenticationEx, и в своей функции обратного вызова ответьте на вызов BluetoothSendAuthenticationResponseEx.

Подробнеена BluetoothWin32Authentication 32feet.NET docs , который описывает способ обработки этого в библиотеке 32feet.NET Bluetooth для .NET, my doc Bluetooth в Windows 7 и MSDN, например BluetoothRegisterForAuthenticationEx и т. Д.

Кстати, Widcomm не имеет программный способ реагирования на спаривание (у него есть способ инициировать спаривание).BlueSoleil действительно имеет API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...