0%

Windows 开机无窗口启动并运行脚本

有时,编写了自己自定义的python脚本,希望开机后自动执行
例如:

  • 开机自动 git pull
  • 开机发送邮件
  • 开机启动欢迎程序

但是使用 .bat 的话,会显示一个短暂的黑窗口
所以要想后台静默运行,需要用到 .vbs 脚本

先编写一个 .bat 脚本

在 .bat 脚本中,可以自动调用 python 脚本或者直接执行命令

创建一个 start.txt 文件,将脚本内容复制进去后,重命名为 .bat 后缀

脚本内容:

1
2
3
4
5
6
7
mode con cols=15 lines=1

if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin

python ./gui.py

该脚本双击后会调用当前目录的 gui.py 脚本
你也可以在脚本中执行 git pull 等命令

编写 .vbs 脚本

由于 .bat 脚本会启动一个黑窗口,所以需要使用 .vbs 防止黑窗口出现

创建一个 run.txt 文件,将脚本内容复制后,重命名后缀为 .vbs

脚本内容:

1
2
3
set ws=WScript.CreateObject("WScript.Shell")

ws.Run "cmd /c start.bat",0

该脚本含义为调用当前目录下的 start.bat 脚本

将脚本链接到开机目录

windows 开机会自动调用下列两个文件夹下的可执行文件

用户目录的自启文件夹:

1
C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

注意用户名,每个用户都不相同

所有用户都会执行的全局自启文件夹

1
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

在脚本上右键创建快捷方式,然后将这个快捷方式放到上述两个文件夹任意一个即可

右键

当然也可以将 vbs 脚本直接放入进去

推荐在其它磁盘创建一个文件夹,用来保存脚本文件,然后复制快捷方式到自启动文件夹即可