我有一个配置文件myapp.exe.config,我只想在它尚不存在时才安装.也就是说,我不想覆盖任何现有的配置文件.如何在WiX中完成?
(最终我将不得不做一些更复杂的设置,有默认值和覆盖等等.但与此同时我只是在寻找一个短期修复.)
如果文件是组件的
keypath,则您描述的是默认行为.例如,如果foo.config已存在,则不会安装以下组件(或者对于版本化文件,如果已存在具有相同或更高版本号的文件):
原文链接:https://www.f2er.com/windows/372031.html<Component Id="foo.config"> <File Source="foo.config"/> </Component>
请注意,如果组件中有多个文件,则只有一个文件可以是
的keyPath.您可以通过将文件的KeyPath属性设置为yes来控制此操作.但建议的策略是每个组件只有一个文件,在这种情况下,文件自动成为组件键路径.
编辑:请注意,可以使用REINSTALLMODE property覆盖此默认行为.您可能希望使用orca打开MSI,并查看是否在属性表中设置了此属性.