Управление сетевым подключением из приложения WPF
У меня есть программа WPF (не Windows Store), написанная для.NET 4.0 на C#, которая была перенесена на планшеты Surface Pro. Мне нужно добавить функциональность для управления сетевыми подключениями непосредственно из приложения аналогично диалоговому окну Networks операционной системы:
NETWORKS
Режим полета ВКЛ / ВЫКЛ
WI-FI
нордический
Belkin23 подключен
64er23b
Кинни
Открывать одно и то же окно внутри приложения нельзя, оно не соответствует стилю приложения, и пользователям тоже не нравится эта идея. Мне нужен способ:
- получить информацию о доступных сетях и их статусе (Ethernet, Wifi и 3G/4G)
- установить или разорвать соединение с сетью
- отменить текущую попытку подключения
- захватывать связанные события (или, если это невозможно, использовать опрос для периодического получения статуса)
Эта функция должна работать с пользователем без прав администратора, который запускает программу.
В общем то, что мне нужно, это:
- библиотека высокого уровня.NET, способная на эти подвиги ИЛИ
- низкоуровневые функции Win API, которые я мог бы использовать с PInvoke ИЛИ
- Запросы WMI, которые могут достичь этого ИЛИ
- все остальное, что работает (и не зависит от поставщиков оборудования)