Comment puis-je forcer Windows à effectuer une nouvelle analyse des réseaux sans fil disponibles à partir de la ligne de commande?
(Par exemple, je recherche l'équivalent en ligne de commande de l'appui sur F5 sur l'interface graphique.)
Comment puis-je forcer Windows à effectuer une nouvelle analyse des réseaux sans fil disponibles à partir de la ligne de commande?
(Par exemple, je recherche l'équivalent en ligne de commande de l'appui sur F5 sur l'interface graphique.)
Réponses:
Je cherche la même chose depuis un moment maintenant, malheureusement, rien ne semble pouvoir être trouvé dans l'utilitaire netsh. La meilleure solution que j'ai pu trouver était de désactiver puis de réactiver l'interface via les commandes netsh. Il y a un petit délai (1-2 secondes) après l'activation de l'interface où aucune liste de réseaux n'est répertoriée, mais cela ne devrait pas être trop difficile à éviter.
J'utilise les commandes suivantes:
Tout d'abord utiliser la commande
netsh wlan show networks
Si le wlan est activé, vous recevrez un message comme celui-ci
Donc, vous voyez, dans ce cas, le nom de l' interface est
WiFi
Maintenant, vous pouvez procéder comme expliqué ci-dessus, par exemple pour désactiver la carte wlan:Etc. :)
la source
Les réseaux ne sont mis à jour que lorsqu'une analyse est effectuée par votre carte WiFi . La
NETSH
commande ne demande pas d'analyse. il affiche uniquement les résultats mis en cache de la dernière analyse.L'ouverture de la liste de réseaux Windows à partir de la barre des tâches met à jour les résultats, car l'outil réseau de la barre des tâches demande une analyse à son ouverture.
(Adapté / mis à jour à partir de la source .)
Apparenté, relié, connexe:
WiFiAdapter
ClasseWlanScan
fonctionla source
J'ai écrit un petit programme (~ 2 Ko)
WlanScan.exe
pour le faire.Voici le base64 (version 32 bits):
Vous pouvez l'enregistrer dans un fichier de PowerShell comme ceci (enregistrez d'
WlanScan.txt
abord le Base64 ):Voici le code source:
la source
Set-Content -Path "WlanScan.exe" $([Convert]::FromBase64String($(Get-Content -Path "WlanScan.txt"))) -Encoding Byte
. A partir de l' extérieur PowerShell, vous pouvez également utiliser des tuyaux pour appeler PowerShell si c'est plus facile:powershell -command "$b = [Convert]::FromBase64String([Console]::In.ReadToEnd()); $s = [Console]::OpenStandardOutput(); try { $s.Write($b, 0, $b.Length); } finally { $s.Close(); }" < WlanScan.txt > WLANScan.exe
. Je vais l'ajouter à la réponse.Pour étendre cette réponse , voici un script de traitement par lots à automatiser:
assurez-vous de l'exécuter en tant qu'administrateur .
la source