我试图复制本文中的步骤来创build一个快捷方式来启动一个没有UAC提示的程序,但是我想从命令行创build任务。
这里是我正在使用的schtasks.exe命令:
schtasks /create /tn MyTaskName /tr "c:\MyApplication.exe" /sc ONCE /st 00:00 /RL HIGHEST /RU BUILTIN\Administrators
/sc和/st开关正在使我绊倒。 我不想指定一个时间表或一个开始时间,但只能按需运行任务。
您可以随时指定“/ sd 01/01/1901”,并指定过去发生的date。 它应该抱怨“警告:由于/ ST早于当前时间,任务可能无法运行。” 原因很明显 但是,如果没有你的干预,它永远不会有效运行,因为它永远不会触发时间表的执行。
由于调度程序不喜欢这个,所以你不能忽略时间(AFAIK)。 这对于调度程序是有点违反直觉的。
你有没有尝试过创build快捷方式与程序和选项,你想运行没有UAC。 然后去快捷方式的属性,高级,然后“以pipe理员身份运行”?
我使用这种技术来改变我通常需要提升访问权限的IP路由的BAT文件。
我创build了一个XML模板,删除了“触发器”节点。
创build计划任务XML文件:
在命令行中…
schtasks / query / xml / tn“任务名称”> c:\ path \ task.xml
要删除触发器并进行其他更改:
在可理解UTF-16的文本编辑器中打开XML文件。
记事本c:\ path \ task.xml
删除从开始直到包含该行的行。
要导入任务XML文件,编辑之后:
在命令行中…
schtasks / create / tn“任务名称”/ xml c:\ path \ task.xml