先来一个基本的:
复制代码 代码示例:
'-------------------------------------------------------
' NAME: add2run01.vbs
' COMMENT: vbs实现添加程序到自启动项
'-------------------------------------------------------
On Error Resume Next '出错继续执行下个命令
dim ws
Set ws=CreateObject("Wscript.
shell")
ws.RegWrite "HKLMSoftwareMicrosoftWindowsCurrentVersionRuncmd","cmd.exe"
有时这个代码会被360拦截,点击同意即可。在autoruns里面刷新后还是不能显示这个启动项。
下面这个,继续完善上面的脚本。
首先,弹个窗口询问询问添加什么程序到启动项,并且询问下启动项的键值。
复制代码 代码示例:
'-------------------------------------------------------
' NAME: add2run02.vbs
' COMMENT: vbs实现添加程序到自启动项
'-------------------------------------------------------
On Error Resume Next '出错继续执行下个命令
Dim ws
Set ws=CreateObject("Wscript.Shell")
Dim runKey,runPath
runKey = InputBox("输入自启动项键值名称","请输入")
runPath = InputBox("输入相应的程序路径","请输入")
'ws.RegWrite "HKLMSoftwareMicrosoftWindowsCurrentVersionRuncmd","cmd.exe"
ws.RegWrite "HKLMSoftwareMicrosoftWindowsCurrentVersionRun"&runKey,runPath
'提示下
MsgBox "添加"&runKey"<"&runPath">成功",vbYes,"恭喜!"
本来要用vbOK的,但是发现还是两个按钮,还是vbYes好!
功能还是不太强的,如果能判断是否存在已经有的项,是否替换确认,那么就比较完善了!
复制代码 代码示例:
'-------------------------------------------------------
' NAME: add2run03.vbs
' COMMENT: vbs实现添加程序到自启动项
'-------------------------------------------------------
On Error Resume Next '出错继续执行下个命令
dim ws
Set ws=CreateObject("Wscript.Shell")
Dim runKey,runPath
runKey = InputBox("输入自启动项键值名称","请输入")
runPath = InputBox("输入相应的程序路径","请输入")
Dim temp,ret
temp = ws.RegRead("HKLMSoftwareMicrosoftWindowsCurrentVersionRun"&runKey)
'MsgBox temp
If temp <> Empty Then
ret = MsgBox( "键值"&runKey"已经存在,其值为"&temp",是否替换为新的值"&runPath, vbOKCancel, "提示!")
If ret = vbOK Then
ws.RegWrite "HKLMSoftwareMicrosoftWindowsCurrentVersionRun"&runKey,runPath
MsgBox "修改"&runKey"值为"&runPath"成功",vbYes,"恭喜!"
End If
Else
ws.RegWrite "HKLMSoftwareMicrosoftWindowsCurrentVersionRun"&runKey,runPath
MsgBox "添加"&runKey"<"&runPath">成功",vbYes,"恭喜!"
End If
说明:启动项在注册表有很多地方,这里就不一一说明了,有兴趣的朋友,可以自行搜索下相关文档。