Ativar o Wi-Fi via linha de comando

4

Eu tenho um arquivo / script em lote que se desconecta da rede Wi-Fi atual, conecta-se a uma rede Wi-Fi específica, define um endereço IP estático e funciona no Windows 7, mas não no Windows 10, se o Wi-Fi for "ativado" fora". Como faço para "ligar" o Wi-Fi através da linha de comando (ou arquivo em lote / script, já que normalmente posso descobrir a sintaxe de um do outro)?

Se isso ajudar, o painel de controle - > Rede e Internet - > Conexões de rede, o Wi-Fi está ativado, mas tem um X vermelho e netsh wlan connect name=%ltName% não funciona (onde o ltName está definido para o nome correto do perfil Wi-Fi e é uma rede conhecida). Além disso, o botão deslizante Configurações, Wi-Fi, na parte superior da página, é desativado.

Além disso, o script é executado como Administrador e executando o Windows 10 Pro versão 1607.

Script:

:: disconnect from the current network
netsh wlan disconnect

set ltName=insertNameHere

:: now connect to the wifi
netsh wlan connect name=%ltName%
netsh interface ip set address "Wi-Fi" static xxx.xxx.xxx.xxx 255.255.255.0

::pause
    
por Chad 06.03.2018 / 23:17

1 resposta

3

Tanto quanto eu sei e consegui encontrar depois de pesquisar bastante, não há como fazer isso diretamente. Desligar o Wi-Fi é algo semelhante ao modo avião, e não há como desligar o modo avião com os comandos. Um hack extremamente feio seria escrever um script que simula as teclas digitadas para executar a tarefa. Em vbscript , isso seria parecido com (testado, você pode precisar alterar os tempos limite)

set shell = CreateObject("WScript.Shell")
shell.run"ms-settings:network-wifi"
WScript.Sleep 2500
shell.SendKeys" "
WScript.Sleep 1500
shell.SendKeys"%{F4}"

Depois, você pode chamar o script como

cscript toggle-wifi.vbs

Você também pode trabalhar com ms-availablenetworks: , o que leva menos tempo para abrir

    
por 07.03.2018 / 07:28