Однажды искал возможность подключиться из своей программы к WI-Fi сети, для кого-то может это и не проблема, а для меня это оказалось большим камнем на дороге.
Разделим наш проект на две части, условно, просто для того что бы лучше разобраться.
Для начала создадим проект в Visual Studio на языке C# — WindowsFormsApplication и назовём его так как нам больше всего нравится, я назвал «Wifi».
Часть первая: Поиск доступных сетей
Итак, закидываем на форму два котрола:
- ListView — назовём listNet, и добавим в него 4 колонки, просто для наглядности.
- Button — назовём btnRefresh
...
...
WlanClient client = new WlanClient();
foreach (WlanClient.WlanInterface wlanIface in client.Interfaces)
{
Wlan.WlanAvailableNetwork[] wlanBssEntries = wlanIface.GetAvailableNetworkList( 0 );
//очищаем листвью, что бы не дублировать найденные сети при повторном нажатии
istNet.Items.Clear();
foreach (Wlan.WlanAvailableNetwork network in wlanBssEntries)
{
// создаём экземпляр элемента листвью
ListViewItem listItemWiFi = new ListViewItem();
// назначаем ему имя нашей первой найденной сети, в конце убираем нулевые символы - Trim((char)0)
listItemWiFi.Text = System.Text.ASCIIEncoding.ASCII.GetString(network.dot11Ssid.SSID).Trim((char)0);
// узнаём дополнительную информацию о сети и так же добавляем её в листвью, но уже в наш только что созданный итэм.
listItemWiFi.SubItems.Add(network.wlanSignalQuality.ToString() + "%"); // качество связи в процентах
listItemWiFi.SubItems.Add(network.dot11DefaultAuthAlgorithm.ToString().Trim((char)0)); // тип безопасности
listItemWiFi.SubItems.Add(network.dot11DefaultCipherAlgorithm.ToString().Trim((char)0)); // тип шифрования
Read more: Habrahabr.ru
QR: