“高可用性”和“需要pipe理员”之间在高程方面的差异?

我在我的EXE的清单中使用“highestAvailable”。 但在standard user and UAC ON它不升级exe。

这是“highestAvailable”的行为?

我提到了这个MSDN链接,但不清楚“最高可用”是否会提升exe文件。 我的要求是提升exe如果UAC是。

我改为“requireAdministrator”,我的EXE在UAC ON的标准用户中得到提升。

有人可以详细解释这两个选项“highestAvailabe”和“requireAdministrator”的提升行为吗?

Solutions Collecting From Web of "“高可用性”和“需要pipe理员”之间在高程方面的差异?"

如果当前用户是管理员, highestAvailable将会提升。 这与你所观察到的一致。 当标准用户运行该进程时,不会显示UAC对话框,并且该进程将使用标准令牌运行。 当管理员用户执行时,显示UAC同意对话框,然后该进程将运行提升。

如果您的程序需要管理员权限才能运行,那么您需要使用requireAdministrator 。 标准用户启动这个过程时,会显示UAC对话框。 这使用户有机会要求管理员提供他们的凭据。

如果您的程序能够以有限的功能运行,并且用户无法highestAvailable则只能使用highestAvailable 。 这就是你的问题所链接的MSDN主题中混合模式的含义。