代码之家  ›  专栏  ›  技术社区  ›  sw.

如果可能,以管理员身份运行,如果不可能:以有限权限运行?

  •  1
  • sw.  · 技术社区  · 14 年前

    我需要根据用户权限更改应用程序的行为:

    1. 当我的应用程序可以作为管理员运行时
    2. 当我的应用程序具有有限的权限时

    由于“requireAdministrator”嵌入到清单中,同一个.exe不能同时在(1)和(2)上工作。

    处理这个问题的最好方法是什么?我计划打包两个可执行文件(其中一个带有“requireAdministrator”),并决定运行哪一个。 有人有其他建议吗?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Kate Gregory    14 年前

    您可以使用要求highestAvailable的清单,而不是requireAdministrator或asInvoker。如果一个可以同意提升的人正在运行它,那么它将提升,但如果是需要OTS提示并输入管理员id和密码的人,则不会提升。我自己也不在乎,因为你不能在知道自己是否有特权的情况下秘密地编写代码。但这就是实现你所要求的。

    推荐文章