Windows启动 - 如何从批处理文件以管理员身份运行程序

yar*_*nkl 6 uac windows-8.1

在Windows 8.1上,我尝试从启动期间调用的批处理文件启动程序,我希望程序以管理员身份运行.这是我做的:

  1. 我在c:\ program files\MyProgram下有一个程序prog.exe
  2. EXE被标记为"以管理员身份运行"
  3. 在c:\ program files\MyProgram下有一个名为RunEXE.bat的批处理文件.它包含各种各样的东西,最后它包含一行"start prog.exe"
  4. 在"C:\ programdata\Microsoft\Windows\Start Menu\Programs\StartUp"下,有一个RunEXE.BAT的快捷方式.
  5. 当我重新启动PC时,我希望快捷方式启动RunEXE.BAT,然后运行PROG.EXE.

但它不会发生.有一个短暂的"哔哔"声,好像Windows正在显示一条消息,要求确认程序应以管理员身份运行,但屏幕上看不到任何内容.

a)如果我旗的快捷和exe文件作为管理员身份运行,那么EXE启动.
b)如果我标记了以管理员身份运行的快捷方式&exe ,那么EXE 不会启动.
C)如果我举报的快捷方式运行的管理和EXE 运行作为管理员则EXE 启动,但它不以管理员身份运行.
d)EXE的启动快捷方式.(没有批次).快捷方式标记以管理员身份运行,EXE 标记:EXE没有运行.
e)EXE的启动快捷方式.(没有批次).标记为以管理员身份运行的快捷方式,EXE 标记:EXE正在运行但不是管理员.

我尝试完全禁用UAC - 结果相同.我还尝试使用另一个EXE代替批处理,结果相同.

那么 - 有没有办法从启动时获得EXE的快捷方式,它将以管理员身份运行EXE?

Xee*_*vis 6

您可以在任务计划程序的帮助下完成此操作.

打开运行对话框Win + R并运行以下命令:

%SystemRoot%\system32\taskschd.msc
Run Code Online (Sandbox Code Playgroud)

击中 Create Task...

  1. 设置名称(我设置它FooBar)
  2. 校验 Run with highest privileges
  3. 切换到Actions选项卡,New....浏览到您的prog.exe
  4. 保存任务

转到.bat文件以及要运行prog.exe添加的位置

schtasks /run /tn "FooBar"
Run Code Online (Sandbox Code Playgroud)

Bat文件不必以管理员身份运行(如果不需要),prog.exe将在没有任何提示的情况下启动.