Windows 10 2018年4月更新后批处理脚本无法退出循环求助
解决Windows笔记本网络驱动器映射在WiFi连接前启动失败的问题
我之前被Windows自带的驱动器映射坑惨了——每次开机它都在WiFi还没连上的时候就急着尝试连接,十有八九失败。折腾了一阵后写了这个批处理脚本,至今稳定运行快3年了,完全解决了这个问题,分享给大家:
@echo off net use * /del /yes net use /persistent:no :Loop for /L %%A in (1,1,50) do ( ping DiskStation | find /i "bytes=" && goto Connected ping LocalHost -n 3 > nul ECHO %%A ) rundll32 user32.dll,MessageBeep -1 goto Finish :Connected # 在这里添加你的网络驱动器映射命令,比如: # net use Z: \\DiskStation\YourSharedFolder /user:YourUsername YourPassword
脚本功能拆解:
@echo off:关掉命令行的命令回显,让运行窗口更清爽net use * /del /yes:清理所有已有的网络驱动器映射,避免残留的无效连接干扰新的映射net use /persistent:no:设置不保存持久映射,防止系统自动在开机时尝试连接(我们自己用脚本控制时机)- 循环重试逻辑:
- 最多尝试50次连接(你可以根据需要调整这个次数)
- 通过
ping DiskStation | find /i "bytes="检测目标设备(这里是群晖DiskStation)是否可达——只要能收到ping的回复,就说明网络已经连通,直接跳转到Connected标签执行映射 - 每次尝试失败后,通过
ping LocalHost -n 3 > nul实现3秒的延迟,避免频繁重试占用资源 ECHO %%A显示当前的尝试次数,方便你看进度
- 如果50次都失败,会触发系统提示音(
rundll32 user32.dll,MessageBeep -1)提醒你,然后结束脚本 :Connected标签下就是真正执行映射的地方,记得把示例命令换成你自己的共享路径、用户名和密码
使用建议:
把这个脚本放到Windows的启动文件夹里(按下Win+R输入shell:startup就能打开),开机后它会自动运行,等WiFi连接好再帮你映射驱动器,再也不用手动重试了!
内容的提问来源于stack exchange,提问作者Megrez7
相关产品推荐
相关产品推荐

