我有一个 CustomAction 作为 MSI 的一部分。
它必须作为域帐户运行,该域帐户也是本地管理员帐户的成员。
它不能使用 NoImpersonate 标志以 NT Authority\System 的身份运行自定义操作,因为它将无法访问网络资源。
在启用了 UAC 的 Vista/2008 上,如果 NoImpersonate 关闭,那么它将作为执行用户运行,但使用非特权令牌,并且无法访问本地资源,例如 .installState。请参阅 UAC 架构
任何人都知道一种方法
以与从提升的命令提示符运行相同的方式强制 MSI 使用提升的令牌运行?
强制 CustomAction 运行提升(清单中的 requireAdministrator 似乎不起作用)?
确定 UAC 是否已启用,是否尚未提升,如果是,则警告或取消安装?