wix - 以提升的用户身份在 Wix 中运行 CustomAction

标签 wix wix3.5

据我所知 - WiX 支持两种 CustomActions:

  • 延迟 - 运行此操作的用户(默认情况下)已提升,但不是运行安装的用户(例如,LocalSystem 或类似的用户)。

  • 立即 - 运行此操作的用户(默认情况下)未提升 - 它是首先运行安装程序的用户。

我需要一些中间的东西 - 我想要运行安装程序的用户的提升形式 (UAC)。

我需要它的原因是为了访问只能由以提升形式安装包的用户访问的数据库(无法访问 LocalSystem)。

最佳答案

这不存在。自定义操作只有两种可能的上下文。一种是启动用户(通常通过模拟)。另一个是 Windows Installer 服务的提升上下文。在某些机器上(例如 Windows XP,或禁用 UAC 的机器),或提升 Bootstrap ,启动用户是管理员用户;您可以使用 MSIUSEREALADMINDETECTION 的组合来检查这种情况和 AdminUser特性。但在任何情况下都没有第三个上下文。

关于wix - 以提升的用户身份在 Wix 中运行 CustomAction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11736330/

相关文章:

installation - Wix 工具集检查 .Net 4.6.2

WiX CustomAction ExeCommand 失败?

wix - 如果服务未启动则继续

installation - 将外部文件复制到安装目录 WiX

wix - 创建 WIX 对话框的自定义库

wix - 如何在Wix中管理同名文件?

Wix 组件条件

powershell - 从 WiX 安装程序运行 PowerShell 脚本

visual-studio - 如何排除文件被热收获 (WiX 3.5)?

wix - 如何确保在 Windows Installer AdminInstall 期间安装功能