Windows服务开机自动启动需通过SCM配置启动类型为“自动”,在services.msc中右键服务→属性→设启动类型为自动(或自动延迟启动)→应用;命令行可用sc config "ServiceName" start= auto。
windows 服务开机自动启动,不是在“设置”或“启动文件夹”里操作的,而是通过服务控制管理器(scm)配置其“启动类型”。只要服务已正确安装,只需将其启动类型设为“自动”,系统启动时就会加载并运行该服务。
确认服务已安装并可见
按 Win + R 输入 services.msc 回车,打开服务管理窗口。在列表中找到你的目标服务(如“Windows Update”“Print Spooler”或你自定义的服务名)。若找不到,说明该程序尚未注册为系统服务——需先用 sc、NSSM 或 WinSW 等工具完成注册,再进行启动类型设置。
设置启动类型为“自动”
在 services.msc 中,右键点击目标服务 → 选择“属性” → 在“常规”选项卡下找到“启动类型”下拉菜单 → 选中自动(推荐)或自动(延迟启动)(适用于非关键、可稍后加载的服务,能略微加快初始登录速度)→ 点击“应用” → “确定”。
注意:“自动”不等于“正在运行”。设置完后,若服务当前状态是“已停止”,还需手动点击“启动”按钮;若希望开机即运行且保持活跃,建议同时勾选“如果此服务失败,重新启动此服务”(在“恢复”选项卡中设置)。
命令行快速设置(管理员权限)
以管理员身份运行 CMD 或 PowerShell,执行:
- sc config "ServiceName" start= auto —— 将服务设为自动启动
- sc start "ServiceName" —— 立即启动服务(可选)
- sc qc "ServiceName" —— 查看当前配置确认是否生效
其中 "ServiceName" 是服务的实际名称(非显示名称),可在 services.msc 的“名称”列看到,例如 wuauserv(Windows Update)、Spooler(打印后台处理程序)。
常见误区提醒
❌ 把服务快捷方式放进 startup 文件夹无效 —— 服务必须由 SCM 托管,不能靠用户会话级启动机制触发。
❌ 修改注册表 Run 键对服务无用 —— Run 键只影响用户登录时的普通进程,不控制服务生命周期。
❌ 启动类型设为“手动”后指望它开机运行 —— “手动”意味着必须由其他程序或人工显式启动,系统不会自动调用。
✅ 正确路径只有两条:图形界面用 services.msc,命令行用 sc config,二者本质一致,后者更适合批量或脚本化操作。


















