用bat脚本做一个任务计划:名称Logon,只在用户登陆时运行,触发器是工作站解锁时,操作是启动程序"%appdata%\Microsoft\123.exe,其他默认,执行脚本的用户没管理员权限
时间: 2024-04-12 13:29:55 浏览: 51
如果执行脚本的用户没有管理员权限,无法直接使用批处理脚本创建和修改任务计划。但你可以使用 VBScript 脚本来创建任务计划。以下是一个示例:
```vbscript
Dim objTaskService, objTaskFolder, objTask
Dim strTaskName, strProgramPath
strTaskName = "Logon"
strProgramPath = "%appdata%\Microsoft\123.exe"
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
Set objTaskFolder = objTaskService.GetFolder("\")
Set objTask = objTaskFolder.NewTask(0)
' 设置任务的基本信息
objTask.RegistrationInfo.Description = "Logon Task"
objTask.Settings.Enabled = True
objTask.Settings.Hidden = False
' 设置触发器为工作站解锁
Set trigger = objTask.Triggers.Create(9) ' 9 表示 "On workstation unlock"
trigger.Enabled = True
' 设置操作为启动指定程序
Set action = objTask.Actions.Create(0) ' 0 表示 "Start a program"
action.Path = strProgramPath
' 将任务保存到任务计划程序中
objTaskFolder.RegisterTaskDefinition strTaskName, objTask, 6, "", "", 3 ' 6 表示 "Create or update an existing task", 3 表示 "Run only when user is logged on"
WScript.Echo "任务计划创建成功!"
Set objTaskService = Nothing
Set objTaskFolder = Nothing
Set objTask = Nothing
```
将以上代码保存为扩展名为 `.vbs` 的 VBScript 文件,然后运行该脚本文件即可创建任务计划。
请确保将 `%appdata%\Microsoft\123.exe` 替换为实际的程序路径,并确保该程序存在于该位置。
这段 VBScript 脚本使用 Windows 的任务计划程序 COM 接口来创建名为 "Logon" 的任务计划,设置触发器为工作站解锁,并设置操作为启动指定的程序。脚本会以当前用户的权限运行,无需管理员权限。
注意:在某些情况下,可能需要管理员权限才能创建和修改任务计划。如果你没有管理员权限,可能需要联系系统管理员来帮助你创建任务计划。