【问题标题】:Using UAC elevation for executing several installers使用 UAC 提升执行多个安装程序
【发布时间】:2011-08-13 00:24:20
【问题描述】:

我正在尝试确定在以下情况下使用 UAC 提升的正确方法:

我有一个在系统托盘中运行并安装其他程序的 c# 应用程序。虽然我的应用程序本身只执行可能不需要提升的内容(在 HKLM 读取注册表,将自己的文件写入始终允许的路径 - C:\Users\User\AppData\Local),但我的应用程序安装的程序可能需要抬高。

我的问题是:如果我向我的应用添加清单,并将其设置为需要提升,这是否意味着:

  • 提升也适用于我的应用执行的其他安装程序?
  • 我的应用程序执行的安装程序会记住提升并且不再询问?

提前感谢您的澄清。

【问题讨论】:

  • 虽然在系统启动期间启动一个需要提升的应用程序并不容易。您可以考虑使用一个应用程序,该应用程序在准备好安装安装程序时要求提升,并启动安装程序。通知区域中的主应用程序继续在非提升状态下运行。

标签: c# uac


【解决方案1】:

如果您的应用程序被提升,它会在其整个生命周期内保持提升。没有回头路了。它自己运行的任何应用程序也将被提升。无法从提升的程序直接启动非提升程序。

您可能想阅读this article 了解一些处理海拔高度的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-18
    • 1970-01-01
    • 2012-02-02
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多