在开始使用WiX之前,我想知道是否可行:
是否可以具有用户输入字段并将值输入到诸如“ OnBeforeInstall”的c#函数中并对其进行更多处理?
如果已经安装了该软件,而您只想对其进行更新,是否可以在安装程序开始时立即调用ac#函数,该函数返回一个布尔值,从而跳过特定的对话框?
整个想法:
在首次安装时,它会询问有关为程序创建配置文件的一些信息。但是,如果您只想升级,它会检查配置文件是否存在以及是否存在,它将跳过询问配置信息的对话框。
答案 0 :(得分:1)
有一个Wix Toolset manual涵盖了很多详细信息。 WiX的学习曲线可能很陡峭,但是您所询问的所有内容显然都是可行的。
有built-in dialogs,但是如果这些不足以满足您的需求,则可以创建custom UI as well。
MSI / WiX中的几乎所有内容都是声明性的,如果需要,大多数元素可以附加Condition
元素以禁用其使用/启动(以在重新安装/升级期间禁用不必要的对话框)。在设置的早期阶段搜索文件并不罕见,可以使用标准的FileSearch
完成。
在大多数情况下,如果有声明性的方法可以实现已经内置在系统中的相同代码,那么您就不应该考虑编写C#代码。但是,对于配置文件的编辑,您可能必须在此处下拉至“自定义操作”。
我要说的最重要的事情是准备在这里有一个学习曲线,您可能想在某些玩具项目中尝试一些概念,然后再尝试“生气”。 “用于您的真实项目。