编辑:在不使用任务计划程序的情况下找到修复程序。
@echo off
:loop
set addresses=192.168.1.1
for %%a in (%addresses%) do ping %%a -n 1 > nul || netsh wlan add profile filename=C:\User\path\to\wireless\xml\profile.xml user=all
timeout /t 5
goto :loop
它每5秒重复一次
我已经到了一半,但已经陷入困境。我已经有一个批处理文件,可以在手动运行时将笔记本电脑连接回网络,但希望它在没有检测到互联网时运行。所以我继续将它绑定到任务计划程序,其中Trigger是“Microsoft-Windows-NetworkProfile / Operational”,ID为10001(这是断开连接ID),但没有运气。
我认为它只会在手动断开互联网时触发,而不是当无线网卡自身断电时。关于我能做什么的任何想法?
操作系统:Windows 8.1
无线接口:电缆问题AC600双频无线加密狗(不允许自动连接到SSID并因不明原因而不断丢失连接)
答案 0 :(得分:2)
找到解决方案!
@echo off
:loop
set addresses=192.168.1.1
for %%a in (%addresses%) do ping %%a -n 1 > nul || netsh wlan add profile filename=C:\User\path\to\wireless\xml\profile.xml user=all
timeout /t 5
goto :loop
这样做是ping地址一次(在这种情况下是一个内部地址,所以我不会从站点获得DDoS威胁),如果它回复错误,它将加载一个wifi配置文件。 要首先获取个人资料,您需要输入
netsh wlan show profiles
查看您拥有的配置文件(它仅加载当前正在使用的无线网卡的配置文件)。看到配置文件的名称后,您可以通过键入
下载配置文件netsh wlan export profile name=[profile name]
我相信它会保存到桌面,您可以在此处更改此注释顶部列出的代码,以匹配xml文件的文件路径以满足您的需求。
干杯!
答案 1 :(得分:0)
定期执行ping并检查结果的批处理脚本怎么样?
ping some.host > pinged.txt
find "some string which occurs if the network went down" pinged.txt
如果%errorlevel%为0且找不到字符串且连接断开。