2015-12-25 4 views
1

Я пишу приложение на C#, чтобы подключиться к чипу прорыва Bluetooth.Com-порт, назначенный определенному устройству Bluetooth?

С моей точки зрения Windows назначает COM-порт устройству; поэтому я могу подключиться к нему. Хотя, я не понимаю, как получить имя устройства, связанного с определенным портом.

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

Целью здесь является включение устройства, и если устройство сопряжено; он будет автоматически подключаться. Если я не ошибаюсь; когда вы соединяете Bluetooth-устройство, он получает назначение на COM-порт; так что должно быть возможно получить имя устройства/имя BT, допросив COM-порт? Таким образом, я могу сканировать все порты; проверить, какой порт назначен этому имени устройства, и автоматически открыть соединение.

Это правильно или есть другой способ достичь того, чего я хочу достичь?

ответ

0

До сих пор я не нашел быстрого способа сделать это и API из Windows или .NET, который позволит вам делать такую ​​легкую вещь, например получить информацию о COM-порту. Либо nobobody работает с Bluetooth по серийному номеру, либо это должно быть настолько ужасно, что даже Microsoft не хотела прилагать усилия для предоставления этой информации.

Помимо очень запутанных способов получить информацию, бушующую из реестра, запрашивать интроспекцию на разных уровнях; Я нашел это добавление в названии 32feet для .NET; которые позволяют фактически делать то, что я пытался достичь.

Код довольно прост; и созданный объект имеет информацию о дружественном имени, используемом на экране периферийных устройств Bluetooth, и может также вернуть порт, привязанный к этому устройству, после его подключения.

Довольно неожиданно, что я должен использовать внешнее решение, в то время как я ожидал, что он каким-то образом будет представлен через стандартный API в Windows. Хотя это работает, проблема решена!

Если я нахожу другой способ сделать то же самое, и это не требует дополнительных накладных расходов, чем то, что вам действительно нужно, я отправлю его здесь.

Смежные вопросы