windows-7 – 如何在WiX MSI完成后以管理员身份启动应用程序?

使用基于WiX的
MSI完成安装后,如何启动具有管理员权限的应用程序?

我可以在Windows XP上正常启动应用程序,但对于Windows 7,这是一个问题.

应用程序中嵌入了一个清单,表明它应该以管理员身份运行,并且我已将自定义操作中的impersonate属性更改为“no”.我无法将execute属性更改为延迟,因为这仅在InstallFinalize操作之前有效,并且在用户单击MSI中的Finish后我需要它.

这是我的自定义操作:

<CustomAction Id="LaunchApp" FileKey="App" ExeCommand="[Command Line Args]" Execute="immediate" Impersonate="no" Return="asyncNoWait" />

最佳答案 我无法使用WixShellExec,因为如果某些条件为真,我需要传入命令行参数.所以我刚创建了一个通过cmd提示启动exe的自定义操作. Hacky,但是一个可行的解决方案,它可以毫无障碍地工作.

点赞