Windows 设置开机启动目录 / 程序自启动

一、启动文件夹(最常用,推荐)

适用于:用户登录后自动启动程序或脚本

1. 当前用户启动目录

打开方式:

  • Win + R
  • 输入: shell:startup

实际路径: C:\Users\你的用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

说明:

  • 可放程序快捷方式
  • 可放 bat / cmd / ps1 脚本
  • 可放 exe
  • 用户登录后自动执行

2. 所有用户启动目录

打开方式:

  • Win + R
  • 输入: shell:common startup

实际路径: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

注意:

  • 需要管理员权限
  • 所有用户登录都会执行

二、系统启动即运行(无需登录)

适用于:后台服务、定时任务、无人值守脚本

方式:任务计划程序

步骤:

  1. 打开「任务计划程序」
  2. 创建任务
  3. 触发器:在系统启动时
  4. 操作:启动程序(exe / bat / powershell)

可配置:

  • 延迟启动
  • 使用最高权限运行
  • 不依赖用户登录

三、注册表方式(高级)

适用于:程序级别自启动

1. 当前用户

注册表路径: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

2. 所有用户

注册表路径: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

操作说明:

  • 在右侧新建「字符串值」
  • 值内容填写程序完整路径

注意:

  • 不建议新手使用
  • 误操作可能影响系统启动

四、常见问题

1. 开机启动没反应

可能原因:

  • 路径包含中文或空格(需使用双引号)
  • 使用了相对路径
  • 程序需要管理员权限

解决方案:

  • 使用绝对路径
  • 改用任务计划程序

2. 延迟启动

方式一:bat 脚本 timeout /t 30

方式二:任务计划

  • 在触发器中设置延迟 X 秒

五、方式选择对照表

使用场景 推荐方式
用户登录后启动 启动文件夹
所有用户登录 common startup
无需登录启动 任务计划
程序级自启 注册表

六、实践建议

  • 启动脚本建议输出日志,方便排查问题
  • 脚本中尽量避免相对路径
  • 需要管理员权限的程序优先使用任务计划