无线掉线后自动切换ssid

2016年9月18日 0 条评论 2.26k 次阅读 0 人点赞

最近wifi老掉线,笔记本玩游戏很烦,由于赶着继续玩,也没去看为什么掉线,切换到另外一个wifi就可以了,所以写了一个自动切换的批处理,后来没玩的时候也掉,但是没解决这个问题,可以尝试tested中的那行命令

@echo off
:::::::::::::::::::::
::此脚本用于检测当前是否能上网
::如掉线,则切换成另外一个ssid,一直循环
::所切换的ssid需已经在电脑上连接成功过
::只检测存在一个网络连接的情况
::by [email protected] 2016-09-17 win7
:::::::::::::::::::::
:://设定所切换的2个ssid
set "ssid1=Sevenfal"
set "ssid2=1401"
title wifi断线检测切换

>>C:\wlan.log echo //检测开始 当前时间 %date%%time% //

:check
rem 获取当前网关
for /f "tokens=14 delims=: " %%i in ('ipconfig ^|find/i "默认网关"') do set "gateway1=%%i"
ping -n 2 -w 500 %gateway1% >null || goto :qiehuan
goto :check
if "%tested%" neq "1" (goto :check) else (goto :tested)

:qiehuan
rem 获取当前连接
for /f "tokens=2 delims=: " %%a in ('netsh wlan show inter ^|find/i "SSID                   :"') do set "ssid_=%%a"
>>C:\wlan.log echo %date%%time%
>>C:\wlan.log echo %ssid_% 掉线了
if "%ssid_%"=="%ssid1%" (
	netsh wlan connect name=%ssid2% ssid=%ssid2%
) else (
	netsh wlan connect name=%ssid1% ssid=%ssid1%
)
ping 127.1 >nul
goto :check

:tested
>>C:\wlan.log echo 尝试刷新wlan
>>C:\wlan.log netsh wlan refresh hostednetwork data=key
>>C:\wlan.log echo 继续检测
goto :check

Sevenfal

这个人太懒什么东西都没留下

文章评论(0)