如何在启动时以管理员权限运行程序并将其最小化到托盘?

如何在启动时以管理员权限运行程序并将其最小化到托盘?

我喜欢保留进程探索器全时运行。我特别喜欢使用它在系统托盘中显示几个统计数据(例如:CPU、RAM、网络、GPU 的使用情况图表)。但是,其中一些托盘图标(以及我喜欢使用的其他 Process Explorer 功能)需要管理员权限才能运行。

我尝试将 Process Explorer 设置为在启动时以管理员身份运行,并最小化到系统托盘,通过配置以下内容:

  • 在进程资源管理器中
    • 最小化时隐藏
    • 仅允许一个实例

  • 开始菜单 -> 程序 -> 启动中的快捷方式
    • 运行:最小化
    • 高级:以管理员身份运行

但是,这会导致下列情况之一:

  • Process Explorer 不会在启动时运行。
  • Process Explorer 将在启动时运行,但需要 UAC 响应。
  • Process Explorer 将在启动时运行,无需 UAC 提示,但不需要管理员权限。

我理想的解决方案是:

  • Process Explorer 在启动时运行,具有管理员权限。
  • 在启动时运行 Process Explorer 不需要 UAC 响应。
  • 启动时,Process Explorer 将最小化到系统托盘。
  • UAC 可以保持设置为“始终通知”和“提示输入凭据”。
  • 无需安装额外的软件。

这可能吗?

答案1

您可以在 Windows 任务计划程序中创建一个任务,在其中运行 procexp.exe 命令,并确保选中常规选项卡上的“以最高权限运行”以在管理员模式下运行它。在触发器选项卡上,您应该定义要运行“登录时”的任务。

这将在启动时以管理员权限运行命令,而无需进行 UAC 验证。

为了确保 Process Explorer 启动时最小化到托盘,你应该使用/吨当您将命令行开关添加到计划任务的操作选项卡时,将其作为命令的参数。

答案2

我做了类似的事情:

  • 开始菜单 → 程序 → 启动中的快捷方式
    • 到:SCRIPT1.BAT


  • SCRIPT1.BAT
    FRED/c SCRIPT2.BAT


  • FRED.EXE
    • CMD.EXE
    • 兼容性:以管理员身份运行此程序


  • SCRIPT2.BAT
    • 以管理员身份运行命令,无系统对话框

所有文件(FRED.EXE、、SCRIPT1.BATSCRIPT2.BAT)都位于bin我的主目录(的子目录中)。

现在事实上我选择让窗口可见——我想看到命令的结果。但我推测我可以使用“运行:最小化”,也许可以START /MIN让内容不显示在屏幕上(在任务栏中)。

我不记得我为什么要把它分成两个阶段,但我可能花了好几天才让它正常工作。如果你找到了简化它的方法,请发布它。

答案3

这是@Per Salmi 的答案本质的更多细节,在此单独的答案中,因为对他的答案的评论太多了......

  • 跟随无需 UAC 提示即可提升程序快捷方式
  • 这满足了这个问题的所有要求,除了“启动时,进程资源管理器将最小化到系统托盘”
    • 我不确定这是否在特殊情况下不起作用,例如我尝试使用任务管理器(Taskmgr.exe)而不是进程资源管理器,如在 5 中观察到的那样。这里同样,它也许可以与其他程序一起工作......
      • 如果有人能为任务管理器的这一部分提出解决方案,我将非常高兴!
      • 任务管理器中的解决方法:选项 -> 最小化时隐藏。然后在启动时,将其最小化一次即可实现所需的托盘最小化。当然,如果最小化是自动的就更好了,但这就是解决方法的原因。

相关内容