Я использую WiX для создания установщика Windows. К сожалению, мой установщик перезаписывает файл конфигурации на каждом обновлении. То, что я действительно хочу, что установщик только создает файл, если это не найдено.
Спасибо и наилучшие пожелания, вилкообразные
Я уверен, что кто-нибудь найдет правильный ответ, но как резервная копия:
Вы можете заставить установщик создать файл конфигурации по умолчанию, а затем ваше приложение скопирует файл по умолчанию в файл нормальной конфигурации, если файл нормальной конфигурации отсутствует. Это также обеспечивает простой способ сбросить приложение до заводских значений по умолчанию (просто удалите файл конфигурации).
Вы можете изменить поведение по умолчанию с помощью свойства REINSTALLMODE . По умолчанию установлено «Переустановить, если файл отсутствует или является более старой версией», что логически правильно, как для меня. Но вы можете поэкспериментировать с другими значениями, чтобы найти нужное поведение.
Надеюсь, это поможет.
Это действительно ошибка приложения, а не проблема установки.
Вы не должны «устанавливать» данные, которые впоследствии могут редактироваться пользователем. Установщик Windows записывает размер, дату изменения и хеш-значение установленных файлов. Таким образом, если позже будет обнаружено, что файл «поврежден», его можно будет восстановить.
Мы устанавливаем файл конфигурации по умолчанию, который копируется в конфигурацию пользователя, если он не найден, таким образом, установщик Windows никогда не узнает о конфигурации, редактируемой пользователем, и поэтому не выполняет никакой замены.