Bluetooth -> Winapi/32 футов. Два соединения с ПК на одно устройство с использованием Spp

Можно ли установить два (или более) соединения между ПК и другим устройством? Когда я пытаюсь это сделать, я получаю исключение: 10048 -> ex.Message = "Был сделан запрос на подключение к уже подключенному сокету xxxxxxxxxxxx:0000110100001000800000805f9b34fb". Если нет, есть ли какое-то решение? Я использовал библиотеку 32 футов, чтобы написать приложение.

3 ответа

Я только что подключил 4 устройства (spp) одновременно и периодически передавал данные.

так что это определенно возможно.

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

было бы очень интересно, если бы кто-то еще попробовал это.

Это ограничение RFCOMM, а не ограничение нижних уровней стека Bluetooth. См. Обходной путь, описанный в документации 32feet.NET https://32feet.codeplex.com/wikipage?title=General%20Bluetooth%20Data%20Connections

  • Заметки

[1] Одно соединение RFCOMM является ограничением протокола. TCP/IP имеет номера портов на концах источника и назначения и, следовательно, может поддерживать несколько соединений, RFCOMM имеет только номер удаленного канала, поэтому может поддерживать только одно соединение.

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

Я думаю, это невозможно. Может существовать одна связь между ведущим и ведомым. Мастер может быть одновременно подключен к 7 активным рабам.

И, скорее всего, другое устройство, которое вы используете, может поддерживать только одно соединение. В вашем случае можно подключить до 7 устройств к вашему компьютеру.

Другие вопросы по тегам