Windows 批量设置程序开机自启动(无需管理员权限)

  每天上班电脑开机都要打开 浏览器、 IDEA、 Visual Studio、Everything 等一堆软件有没有觉得很麻烦,然而一些软件并没有开机自启动项,想要做到开机自动批量启动软件其实很简单,使用bat脚本跟Window的定时任务就可以完成,并且不需要管理员权限。

脚本:

  首先新建 txt 文件,写入以下内容,改后缀为.bat

rem 开机自启动程序

rem 延迟5秒, 等待其他开机自启程序启动
sleep.exe 5000

rem 启动 google 浏览器
tasklist|find /i "chrome.exe" && echo started || start "" "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"

sleep.exe 5000

rem 启动 AndroidStudio
tasklist|find /i "studio64.exe" && echo started || start "" "D:\Program Files\Android\Android Studio\bin\studio64.exe"

rem 由于AndroidStudio启动较慢, 故等待40s, 避免因自启动资源占用过多导致电脑卡顿
sleep 40000
rem 启动Everything, Everything放在最后启动, 因为一般刚开机时不会用到 Everything 搜索文件
tasklist|find /i "Everything.exe" && echo started || start "" "F:\Program Files (x86)\Everything\Everything.exe"
exit
  • 注意一条语句之间不能换行, 360chrome.exe 是程序名
  • "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"是程序所在路径
  • tasklist|find /i "chrome.exe"该句是判断进程是否存在,程序是否已经开启,如未开启才会启动程序,只需更改程序名跟程序所在路径,并改后缀名 .txt.bat,双击即可批量启动程序。(可以在每条语句前使用 ::@rem 来注释一条语句)
  • sleep.exe 5000 是延迟5000毫秒执行, 参数单位是毫秒, 目的是避免过多程序一起启动导致电脑卡顿, 如果自启动程序较少可不加 sleep

sleep程序:

注意: 由于bat脚本没有sleep函数, 所以我自己写了个C++程序来进行sleep操作
程序内容:

#include
#include 

using namespace std;

int main(int argc, char* argv[]) {
	int time = 100;
	if(argc > 1){
		char* params = argv[1];
		cout << params << endl;
		time = atoi(params);
	}
	Sleep(time);
}

编译后的 exe 文件: GitHub下载 或者 csdn下载

设置自启动任务:

  接下来 win + R 启动运行窗口,输入 taskschd.msc,打开任务计划程序窗口:
Windows 批量设置程序开机自启动(无需管理员权限)_第1张图片

然后点击创建任务,在常规选项卡填入任务名称:
Windows 批量设置程序开机自启动(无需管理员权限)_第2张图片
接着选择触发器选项卡,选择新建,在第一栏开始任务处选择登录时、启动时(启动时开始任务需要管理员权限)或者解锁时,点击确定。由于我们的 bat 脚本有做判断,所以不用担心程序会启动多次。
Windows 批量设置程序开机自启动(无需管理员权限)_第3张图片
在操作选项卡选择新建,并选择启动程序选项,以及在程序和脚本处选择刚才编写的.bat程序,点击确定,然后再点击确定(创建任务界面的确定)。
Windows 批量设置程序开机自启动(无需管理员权限)_第4张图片
然后再活动任务处就可以看到我们刚才创建的任务,关闭页面,即可做到开机自动启动程序
Windows 批量设置程序开机自启动(无需管理员权限)_第5张图片
我们可以通过重启电脑或者锁屏解锁测试程序是否可用

本文到此为止, 觉得有用的可以动动小手点个赞哦 ^_^

你可能感兴趣的:(脚本,常用工具)