1

我正在使用 WIX 3.7。我有一个基于 BryanJ 源代码的自定义托管引导程序:http: //bryanpjohnston.com/2012/09/28/custom-wix-managed-bootstrapper-application/

安装程序工作正常,但我想检测添加/删除程序中按下的按钮。我的意思是用户是否想要修复或更改已安装的应用程序。目前我只是打开一个带有可能选项的窗口(用于卸载和更改)。

谢谢

4

2 回答 2

0

认为它的工作方式是引导程序将适当的卸载和修复命令放在注册表中:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<productCode>

例如,当我查看此位置的 WiX 3.7 条目时,它有一个名为ModifyPathvalue的注册表项"C:\ProgramData\Package Cache\{963ac4b4-a882-4471-8db9-c4adc7b42dc4}\WiX37.exe" /modify

因此,您可以解析/modify用于修复的开关的命令行,以及类似的/uninstall用于卸载的开关。

于 2013-06-26T12:56:51.073 回答
0

看看在属性LaunchAction中传递的枚举:Command.Action

public enum LaunchAction
{
    Unknown,
    Help,
    Layout,
    Uninstall,
    Install,
    Modify,
    Repair,
    UpdateReplace,
    UpdateReplaceEmbedded,
}
于 2013-06-26T15:28:02.047 回答