Управление беспроводными сетевыми подключениями с помощью C # и Compact Framework - PullRequest
3 голосов
/ 19 января 2009

Заголовок как бы подводит итог - мне нужно иметь возможность программно подключаться к известной точке доступа (SSID и учетные данные будут загружаться во время инициализации устройства). Я понимаю, что и Compact Framework SDK, и OpenNETCF SDK предлагают некоторые вспомогательные методы, но я не могу найти хорошее руководство по их использованию.

1 Ответ

3 голосов
/ 19 января 2009

OpenNETCF Smart Device Framework , вероятно, самый простой механизм для этого. Возможности беспроводной связи заключаются в том, что OEM-радио (независимо от того, было ли это устройство или нет) может выбрать любое количество способов рекламы интерфейса. Может быть, как простое устройство NDIS с запатентованными элементами управления (реальная проблема с интерфейсом) или на другом конце, используя Wireless Zero Config (WZC) . SDF пытается обработать любой сценарий, предоставляя все больше возможностей в зависимости от того, что рекламируется аппаратным интерфейсом.

Итак, если вы хотите добавить предпочитаемую сеть, используя интерфейс с поддержкой WZC (на самом деле единственный способ подключения - это сеть в списке предпочтений), и эта сетевая работа открыта (не WEP, WPA и т. Д.) Это довольно простая задача. На самом деле WPA и даже TKIP довольно просты. Вы просто звоните AddPreferredNetwork . Поэтому вы должны вызвать NetworkInterface.GetAllNetworkInterfaces , затем выполнить итерацию результата (или фильтра с помощью LINQ), чтобы получить адаптер с типом WirelessZeroConfigNetworkInterface (да, длинное имя), а затем вызвать AddPreferredNetwork для этого с вашим SSID и любая добавленная информация, например материал ключа.

Конечно, вы можете делать все это и без SDF - объем работы, требуемый через P / Invoke, намного выше. Но все это все «задокументировано» в той или иной форме. Большая часть того, что мы сделали, была «трансляцией» сетевого диалога в Windows CE, который является полным источником для поставки в Platform Builder.

...