Bonsoir,
Je n'arrive pas à trouver une méthode permettant d'activer ou de désactiver la connexion internet.
J'ai cherché partout mais je ne trouve absolument rien... Si seulement vous pouviez m'aider..
Application en UWP sous W10
Merci
Version imprimable
Bonsoir,
Je n'arrive pas à trouver une méthode permettant d'activer ou de désactiver la connexion internet.
J'ai cherché partout mais je ne trouve absolument rien... Si seulement vous pouviez m'aider..
Application en UWP sous W10
Merci
:mouarf: Pas simple...
La methode classique consiste a faire une requete WMI pour desactiver les Cartes Reseau. Le probleme c'est que WMI n'est pas disponible avec UWP.
Sous Windows 10 (Anniversary Update (1607)), il existe une nouvelle fonctionnalite que je n'ai pas teste et qui est fournie par le Windows Desktop Extension SDK : FullTrustProcessLauncher Class. A priori ca permet de lancer un process externe avec plus de permissions.
Donc un scenario a envisager serait de creer une application C# classique a cote de ton application UWP, et de la lancer depuis ton application UWP en utilisant le FullTrustProcessLauncher... Cette application se chargera de lancer la requete WMI suivante, et de desactiver la/les cartes reseau :
source : HOW-TO: Disable/Enable Network Connections Programmatically under VistaCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var query = new SelectQuery("Win32_NetworkAdapter", "NetConnectionStatus=2"); var search = new ManagementObjectSearcher(query); foreach(ManagementObject result in search.Get()) { NetworkAdapter adapter = new NetworkAdapter(result); // Ici tu dois ajouter le code pour trouver la carte que tu veux desactiver. Il faut checker les proprieties AdapterType et Description. // Pour l'exemple on choisit les adapters de type LAN, a toi d'adapter: if (adapter.AdapterType.Equals("Ethernet 802.3")) { adapter.Disable(); } }
A noter, tu peux generer un wrapper C# pour l'API Win32_NetworkAdapter en utilisant la CMD suivante :
Code:mgmtclassgen Win32_NetworkAdapter /L CS -p NetworkAdapter.cs