UDP трансляция в Windows Phone 7 - PullRequest
       1

UDP трансляция в Windows Phone 7

0 голосов
/ 16 декабря 2011

Я работаю в приложении Windows Phone 7, которое должно обнаруживать устройства, подключенные к определенному порту или сети.У меня есть настольное приложение, которое реализовано на C ++ и использует широковещательную передачу UDP.Я прочитал несколько статей и знаю, что Windows Phone 7 не поддерживает UDP-вещание.Я пробовал многоадресную передачу UDP в WP7, но из-за того, что приложение для настольных компьютеров реализовано в широковещательной передаче UDP, я не могу этого сделать.Помоги мне, ребята ...........

Ответы [ 2 ]

0 голосов
/ 26 декабря 2011

Вы можете отправить широковещательный пакет с помощью только метода SendToAsync, используя ограниченный широковещательный IP-адрес, а не локальный широковещательный IP-адрес (например, 255.255.255.255). Это означает, что если ваше сетевое устройство находится в диапазоне IP-адресов 192.168.0.x, вам следует снимать пакет до 192.168.0.255 . (этот IP-адрес может отличаться в зависимости от настройки маски сети)

Однако это работает.

Кроме того, ответная реакция также разрешена, но ТОЛЬКО ДЛЯ 5 СЕКУНД. Ваш хост получил UDP-пакет от устройства Windows Phone 7.1, хост должен ответить обратно на порт, с которого пришел UDP-пакет, в течение 5 секунд. Если Windows Phone не закроет порт, и он должен исчезнуть.

Это очень хитрый, странный и непонятный (как это слово) способ. но это работает, насколько я знаю.

0 голосов
/ 16 декабря 2011

Вы можете использовать socket.ConnectAsync с e.Buffer , содержащим сообщение, которое вы хотите передать. В этом случае сообщение будет отправлено автоматически при установлении соединения. Подробнее об этом трюке вы можете прочитать здесь

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