记笔记本开机不能自动联网的问题
记录一下笔记本开机不能自动联网的问题,防止后面换电脑再次碰到类似的问题
问题描述
笔记本不定期出现开机不能自动联网的问题,无WLAN选项,无法选择Wi-Fi。
问题原因
经过排查,开机无网的原因是WLAN AutoConfig服务项自动启动失败,手动启动这个服务项目即可

这个服务项的启动类型默认是自动启动,不知道是什么原因导致自动启动失败。每次开机都要手动启动一次,实在是太麻烦了,于是让AI帮忙写了个脚本,往任务计划执行库插入一个开机定时任务,用来执行这个服务项的开机延时自动启动。
用于执行WLAN AutoConfig服务项
@echo off
chcp 65001 >nul
REM 启动WLAN AutoConfig服务的脚本
echo 正在启动WLAN AutoConfig服务...
REM 检查是否以管理员权限运行
net session >nul 2>&1
if %errorLevel% neq 0 (
echo 错误: 此脚本需要管理员权限运行
echo 请右键点击脚本,选择"以管理员身份运行"
pause
exit /b 1
)
REM 启动WLAN AutoConfig服务
net start "WLAN AutoConfig" >nul 2>&1
REM 检查服务启动结果
sc query "WlanSvc" | find "RUNNING" >nul
if %errorLevel% equ 0 (
echo WLAN AutoConfig服务已成功启动
) else (
echo WLAN AutoConfig服务启动失败,正在尝试重新启动...
sc start "WlanSvc"
timeout /t 3 >nul
sc query "WlanSvc" | find "RUNNING" >nul
if %errorLevel% equ 0 (
echo WLAN AutoConfig服务已成功启动
) else (
echo 服务启动失败,请检查系统设置
pause
exit /b 1
)
)
echo 操作完成
exit /b 0
用于检测WLAN AutoConfig服务项是否启动,未启动则调用脚本1
@echo off
chcp 65001 >nul
REM 开机自动检测并启动WLAN AutoConfig服务的脚本
REM 此脚本应该通过任务计划程序在开机时自动运行
REM 设置日志文件路径
set LOG_FILE=%~dp0wlan-autostart.log
set START_SCRIPT=%~dp0start-wlan-service.bat
REM 等待系统完全启动(延迟10秒)
timeout /t 10 /nobreak >nul
REM 记录检测时间
echo [%date% %time%] 开始检测WLAN AutoConfig服务... >> "%LOG_FILE%"
REM 检查是否以管理员权限运行
net session >nul 2>&1
if %errorLevel% neq 0 (
echo [%date% %time%] 错误: 脚本未以管理员权限运行 >> "%LOG_FILE%"
exit /b 1
)
REM 检查WLAN AutoConfig服务状态
sc query "WlanSvc" | find "RUNNING" >nul
if %errorLevel% equ 0 (
REM 服务已经在运行
echo [%date% %time%] WLAN AutoConfig服务已在运行,无需启动 >> "%LOG_FILE%"
) else (
REM 服务未运行,需要启动
echo [%date% %time%] 检测到WLAN AutoConfig服务未运行,正在启动... >> "%LOG_FILE%"
REM 检查启动脚本是否存在
if exist "%START_SCRIPT%" (
REM 调用启动脚本
call "%START_SCRIPT%"
REM 再次检查服务状态
timeout /t 3 >nul
sc query "WlanSvc" | find "RUNNING" >nul
if %errorLevel% equ 0 (
echo [%date% %time%] WLAN AutoConfig服务启动成功 >> "%LOG_FILE%"
) else (
echo [%date% %time%] WLAN AutoConfig服务启动失败 >> "%LOG_FILE%"
)
) else (
echo [%date% %time%] 错误: 找不到启动脚本 %START_SCRIPT% >> "%LOG_FILE%"
exit /b 1
)
)
echo [%date% %time%] 检测完成 >> "%LOG_FILE%"
exit /b 0
用于将脚本2注册到Windows任务计划程序中
@echo off
chcp 65001 >nul
REM 创建Windows任务计划程序,使脚本在开机时自动运行
echo 正在创建开机自动启动任务...
REM 检查是否以管理员权限运行
net session >nul 2>&1
if %errorLevel% neq 0 (
echo 错误: 此脚本需要管理员权限运行
echo 请右键点击脚本,选择"以管理员身份运行"
pause
exit /b 1
)
REM 设置脚本路径
set SCRIPT_PATH=%~dp0auto-check-wlan-service.bat
REM 检查脚本是否存在
if not exist "%SCRIPT_PATH%" (
echo 错误: 找不到自动检测脚本 %SCRIPT_PATH%
pause
exit /b 1
)
REM 删除已存在的同名任务(如果有)
schtasks /query /tn "AutoStartWLAN" >nul 2>&1
if %errorLevel% equ 0 (
echo 检测到已存在的任务,正在删除...
schtasks /delete /tn "AutoStartWLAN" /f >nul
)
REM 创建新的计划任务
echo 正在创建计划任务...
schtasks /create /tn "AutoStartWLAN" /tr "\"%SCRIPT_PATH%\"" /sc onstart /ru "SYSTEM" /rl highest /f
if %errorLevel% equ 0 (
echo.
echo ========================================
echo 任务创建成功!
echo ========================================
echo.
echo 任务名称: AutoStartWLAN
echo 触发时机: 系统启动时
echo 运行权限: 系统管理员
echo 脚本路径: %SCRIPT_PATH%
echo.
echo 下次开机时,系统将自动检测并启动WLAN AutoConfig服务
echo 日志文件将保存在: %~dp0wlan-autostart.log
echo.
) else (
echo 任务创建失败,请检查系统设置
pause
exit /b 1
)
pause
脚本使用方法
将三个脚本放在同一个目录下,同时运行脚本3:setup-task-scheduler.bat即可。
检验是否运行成功
在win+R快捷键输入:taskschd.msc进入任务计划程序,可以看到已经创建了AutoStartWLAN计划项。重启电脑后,可以看到计划任务已经执行,笔记本已经自动开启了WLAN选项,可以自动联网了。
