Logiciel pour changer de connexion internet (ethernet/wifi)
Fermébrucine Messages postés 17606 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 9 novembre 2024 - 11 mars 2023 à 11:12
- Logiciel pour changer de connexion internet (ethernet/wifi)
- Changer dns - Guide
- Ethernet n'a pas de configuration ip valide - Guide
- Gmail connexion - Guide
- Changer wifi chromecast - Guide
- Money logiciel - Télécharger - Comptabilité & Facturation
2 réponses
Modifié le 10 mars 2023 à 16:22
Bonjour,
A ma connaissance... Non. C'est quoi ton PC ?
10 mars 2023 à 16:57
Merci pour la réponse, je m'en doutais un peu.
Si ça intéresse, on m'a proposé une solution sur un autre forum :
Créer 2 fichiers .bat
Ethernet privilégié :
netsh interface ipv4 set interface "Ethernet" metric=1
netsh interface ipv4 set interface "Wifi" metric=2
Wifi privilégié :
netsh interface ipv4 set interface "Ethernet" metric=2
netsh interface ipv4 set interface "Wifi" metric=1
Et faire un raccourcis dans la barre des tâches.
10 mars 2023 à 21:16
"On" est un pronom personnel indéfini.
Comme je suis fainéant, tant qu'à faire, je veux faire ça en un seul clic et donc un seul batch.
On a peut-être des soucis, je n'ai pas testé, si on a plusieurs adaptateurs Wifi, on va faire à la ligne de commandes:
netsh interface show interface
Ce qui m'intéresse est le nombre de lignes et le nom des adaptateurs:
État admin État Type Nom de l’interface
-------------------------------------------------------------------------
Activé Connecté Dédié VMware Network Adapter VMnet1
Activé Connecté Dédié VMware Network Adapter VMnet8
Activé Connecté Dédié Ethernet
Activé Déconnecté Dédié Wi-Fi
Dans le cas qui m'intéresse, je dois sauter la première ligne (vierge), celle de titres, celle de pointillés, les 2 suivantes:
skip=5
Les termes que je dois rechercher sont "Connecté", "Déconnecté", le nom des adaptateurs "Ethernet" et "Wi-Fi", la position de ces termes respectivement dans la deuxième et quatrième colonne:
tokens=2,4
Je vais me faire planter parce que les variables ont des accents (CHCP 65001).
Ce qui nous donne:
@echo off
CHCP 65001>NUL
setlocal enableextensions
setlocal EnableDelayedExpansion
FOR /F "skip=5 tokens=2,4 delims= " %%a IN ('netsh interface show interface') DO (
SET STATUT=%%a & SET NATURE=%%b
SET STATUT=!STATUT:~0,-1!
IF "!STATUT!"=="Connecté" (
IF "!NATURE!"=="Ethernet" (
netsh interface set interface name="!NATURE!" admin=DISABLED
) ELSE netsh interface ipv4 set interface "Ethernet" metric=1 & netsh interface ipv4 set interface "Wi-Fi" metric=2
)
IF "!STATUT!"=="Déconnecté" (
IF "!NATURE!"=="Ethernet" (
netsh interface set interface name="!NATURE!" admin=ENABLED
) ELSE netsh interface ipv4 set interface "Ethernet" metric=2 & netsh interface ipv4 set interface "Wi-Fi" metric=1
)
)
10 mars 2023 à 23:12
Super bon boulot !
A voir en usage !
11 mars 2023 à 11:12
Je n'en ai pas l'utilisation personnelle, il est exceptionnel que je sois connecté autrement qu'en Ethernet, et je ne suis de toute façon pas un radin du clic.
Mais j'ai bien sûr testé, et ça ne peut que fonctionner sauf s'il y a plusieurs cartes Ethernet ou un deuxième adaptateur Wifi (virtuel ou copie résultant d'une installation matérielle foireuse) et encore: il suffira en vérifiant la liste des interfaces de choisir dans la syntaxe FOR la ligne concernée.
Mais tu as raison de pinailler: aucune commande netsh ne fonctionne si l'adaptateur Wifi est désactivé, c'est donc un artefact qui bascule la connexion Ethernet vers Wifi que si cette dernière reste active en permanence; si je veux contourner ce phénomène, je dois identifier le numéro d'adaptateur Wifi par:
wmic nic get name, index
Le résultat comme suit, dans mon cas de figure le numéro pertinent est 2:
Index Name
0 Microsoft Kernel Debug Network Adapter
1 Realtek PCIe GbE Family Controller
2 Realtek RTL8723BE 802.11 bgn Wi-Fi Adapter
3 Bluetooth Device (Personal Area Network)
4 Microsoft Wi-Fi Direct Virtual Adapter
5 Microsoft Wi-Fi Direct Virtual Adapter
6 WAN Miniport (SSTP)
7 WAN Miniport (IKEv2)
8 WAN Miniport (L2TP)
9 WAN Miniport (PPTP)
10 WAN Miniport (PPPOE)
11 WAN Miniport (IP)
12 WAN Miniport (IPv6)
13 WAN Miniport (Network Monitor)
14 VMware Virtual Ethernet Adapter for VMnet1
15 VMware Virtual Ethernet Adapter for VMnet8
16 RAS Async Adapter
Je vais donc devoir, si l'adaptateur Wifi est désactivé faire 3 opérations: l'activer, le connecter et l'identifier.
Sur ce dernier point, Wifi activé, soit je me rends dans l'icône réseau de la barre des tâches et me souviens parmi tous les Wifi du voisinage lequel est le mien soit, Wifi connecté, je saisis:
netsh wlan show interface | findstr /i "SSID"
En assumant que le retour est FAI_XY123, ce qui suit fonctionne maintenant dans tous les cas de figure:
@echo off
CHCP 65001>NUL
setlocal enableextensions
setlocal EnableDelayedExpansion
FOR /F "skip=5 tokens=2,4 delims= " %%a IN ('netsh interface show interface') DO (
SET STATUT=%%a & SET NATURE=%%b
SET STATUT=!STATUT:~0,-1!
IF "!STATUT!"=="Connecté" (
IF "!NATURE!"=="Ethernet" (
netsh interface set interface name="!NATURE!" admin=DISABLED
) ELSE wmic path win32_networkadapter where index=2 call disable
)
IF "!STATUT!"=="Déconnecté" (
IF "!NATURE!"=="Ethernet" (
netsh interface set interface name="!NATURE!" admin=ENABLED
) ELSE wmic path win32_networkadapter where index=2 call enable & netsh interface ipv4 set interface "Wi-Fi" metric=1 & netsh wlan connect name ="FAI_XY123"
)
)
10 mars 2023 à 16:45
Bonjour,
Si je veux basculer de ma connexion Ethernet active à ma connexion Wifi, je clique sur l'icône réseau dans la barre des tâches, puis sur mon identifiant Wifi: si la connexion Wifi est paramétrée sur "se connecter automatiquement": 2 clics.
Supposons que je fasse un nouveau raccourci sur le bureau vers la cible C:\Windows\System32\ncpa.cpl: un clic pour l'ouvrir, un deuxième pour cliquer à droite sur la connexion choisie, un troisième pour activer.
Si j'y crée un raccourci des 2 items qui m'intéressent, le PC va me jeter et me proposer de faire ce raccourci sur le bureau, j'obéis: il ne me reste plus que 2 clics pour chacun des raccourcis.
On peut envisager un batch qui contrôlera si chacune des connexions est active pour la désactiver et activer l'autre, on va se gâcher la vie à l'écrire pour pas grand-chose...