想要让一个程序在开机时运行,而不是登录时运行,就需要做成服务,这样就能在登录前运行,不过服务是没有图形界面的,所以只适合不需要图形操作的程序做成服务,windows不像linux没有自带这种功能,所以需要借助第三方工具。
- 首先在官网下载nssm,或下载我提供的单一x64文件、x32文件
- 然后将nssm.exe放进C:\Windows\System32,这一步是可选的,只是为了将nssm放在环境变量的path中方便操作,这属于我的个人规范
- 打开cmd或powershell
创建服务
执行命令
nssm install 服务名称

path中选择需要做成服务的程序
startup directory是运行路径在paht选择后会自动适应,如果不知道这是什么可以不动
arguments是运行参数
修改服务
nssm edit 服务名称
开始、停止、重启服务
nssm start 服务名称
nssm stop 服务名称
nssm restart 服务名称
卸载服务
nssm remove 服务名称
一个小技巧,如果某些程序必须用命令行运行,双击不能直接打开,可以在程序的同目录下创建一个bat文件,以caddy为例,bat文件的内容是caddy run(run只是caddy的启动命令,其他程序需要自行了解启动命令),然后path选择这个bat脚本即可。