windows里设置程序自启动的几种方式

创建服务(service)

可以在开始或者搜索里查找service.msc来启动服务管理器,查看和管理系统服务。管理服务也可以通过sc命令,例如:

1
2
3
4
5
sc create TaoService binpath= "path\to\program" start= auto displayname= "WindowsServiceTest"
sc start TaoService
sc description TaoService "just a test service"
sc stop TaoService
sc delete TaoService

注意: 所有的等号和值之间需要一个空格(等号前不要空格,等号后要一个空格)!

对于jenkins slave也可以通过javaws命令来创建jenkins-slave服务:

1
javaws jenkins-slave.jnlp

注:
1 jenkins-slave.jnlp从jenkins slave详情页面下载
2 当服务以本地系统账户运行时可以设置是否能和桌面进行交互

创建计划任务(Task Scheduler)

这种方式可以用来指定在系统启动时自动触发运行程序,但这种启动方式程序貌似没法和桌面交互
Task Scheduler

通过gpedit.msc来设置

通过win + r, 然后输入gpedit.msc来启动Local Group Policy Editor进行添加。这种方式程序可以和桌面进行交互。
gpedit

通过在startup文件夹创建启动文件来实现

首先,通过win + r, 然后输入shell:startup来打开启动文件夹,然后将要启动的程序或脚本创建一个快捷方式到此文件夹, 即可启用:
jenkins salve的powershell脚本如下:

1
2
3
4
5
6
7
8
9
#!powershell

Push-Location -Path "$PSScriptRoot"
while($true)
{
Start-Process -FilePath "cmd.exe" -Wait `
-ArgumentList "/c java -jar D:\jenkins\agent.jar -jnlpUrl https://ci.taolife.com/computer/tao%5Ftest%5Fwindows%5F5/jenkins-agent.jnlp -secret 24d727b3180b9c0108637c1ab2a8ebb70bb7061be7816d616a44a6f399c32a551 -workDir d:\jenkins"
Start-Sleep -Seconds 9
}

创建此脚本的快捷方式到startup文件夹,然后在快捷方式的属性中可以设置powershell的运行时的参数/属性
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -WindowStyle Hidden -File xxx.ps1
另外,因为这种方式是通过powershell脚本来调bat命令,所以为使powershell脚本能正常启动还应设置powershell ExecutePolicyremotesigned:

1
2
Get-ExecutionPolicy
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

windows里设置程序自启动的几种方式
https://www.tao-wt.fun/windows/fluid-setting-log/
作者
tao-wt@qq.com
发布于
2024年1月13日
许可协议