我正在使用WIX 3.7。我有一个基于的自定义托管引导程序 BryanJ源代码:http://bryanpjohnston.com/2012/09/28/custom-wix-managed-bootstrapper-application/
安装程序工作正常但我想检测添加/删除程序中的按下按钮。我的意思是用户是想修复还是更改已安装的应用程序。目前我只打开一个带有可能选项的窗口(用于卸载和更改)。
由于
答案 0 :(得分:0)
我认为它的工作方式是引导程序在注册表中放置适当的卸载和修复命令:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<productCode>
例如,当我查看此位置的WiX 3.7条目时,它有一个名为ModifyPath
的注册表项,其值为"C:\ProgramData\Package Cache\{963ac4b4-a882-4471-8db9-c4adc7b42dc4}\WiX37.exe" /modify
。
因此,您可以解析/modify
交换机的命令行以进行修复,同样地解析/uninstall
用于卸载的交换机。
答案 1 :(得分:0)
查看LaunchAction
属性中传递的Command.Action
枚举:
public enum LaunchAction
{
Unknown,
Help,
Layout,
Uninstall,
Install,
Modify,
Repair,
UpdateReplace,
UpdateReplaceEmbedded,
}