有没有办法从WiX中的回滚自定义操作启动资源管理器?

时间:2012-10-04 19:09:17

标签: wix windows-installer

由于某些依赖关系,我们在部分安装期间关闭了Windows资源管理器。作为紧急安全,如果我们失败,我想确保用户有一个shell。我认为使用'Execute =“rollback”'的34型自定义动作是我想要做的,但我似乎不够聪明来制作CA.

这就是我所拥有的:

<CustomAction Id="RestartExplorer"     
   ExeCommand="explorer.exe"
   Execute="rollback"
   Impersonate="yes"
   Return="asyncNoWait"/>

我知道我缺少一个目录元素,但我不知道如何指定一个平台无关的方法来指定%windir%\ system32。使用环境变量或脚本不是一种选择。

谢谢:)

2 个答案:

答案 0 :(得分:1)

我从未试图在安装过程中杀死资源管理器。不是自动重启吗?如果在安装时重新启动会怎么样?

否则,如果我这样做,我会使用QuietExec custom action启动它。

您还希望在InstallFinalize之后将其作为立即自定义操作启动。注意我没有说提交,因为可以禁用回滚并且提交不会执行。

SystemFolder property也是您正在寻找的。确保在32位和64位计算机上进行测试。

答案 1 :(得分:0)

在我能想到的任何情况下,杀死资源管理器都是错误的。我没有重新启动资源管理器,而是在shell扩展中修复了错误;)感谢您的帮助