Чтобы сделать это поведение обновления вам нужно две вещи:
1) Приложение обновления, которая проверяет наличие обновлений на регулярной основе. Если обновление найдено, оно должно установить его автоматически. Большинство коммерческих инструментов для создания настроек включают хорошие приложения для обновления. Вы можете попробовать написать программу обновления самостоятельно, но это не так просто, как кажется.
2) Индивидуальные установки для каждой версии вашего продукта. Установка для каждого пользователя записывает данные только в папку профиля пользователя (AppData, Роуминг и т. Д.) И HKEY_CURRENT_USER. Нет файлов программы или HKEY_LOCAL_MACHINE.
Требуется установка на пользователя, чтобы вы могли выполнить обновление без проблем. Если установка выполняется на машине, в новой версии Windows будет отображаться запрос на повышение, и пользователь не будет знать, что происходит.
Модуль обновления
Некоторые пользуются услугами обновлении приложений. Для автоматических обновлений это не настоящее решение, потому что для установки службы требуются привилегии администратора. Таким образом, ваш процесс установки и последующие обновления отображают подсказки о высоте.
Другим подходом является использование приложения-получателя для каждого пользователя. Он не требует какого-либо повышения, и его можно установить в папку приложения. Этот тип обновления может запускаться либо как запланированное задание, либо из вашего приложения (выполнить его при запуске приложения).
В обоих сценариях необходимо учитывать, что Updater, возможно, потребуется обновить себя. Таким образом, процесс, который выполняет обновление, должен быть временным процессом (например, временной копией приложения для обновления). Он также должен работать без повышения. Вот почему услуга не такая хорошая идея. Он должен остановиться перед обновлением, использовать временный процесс, который обрабатывает обновление и запускается снова по завершении.
Непонятно - если вы не хотите запрашивать пользователя - чем нет ... Или есть фактические причины, чтобы сделать это, не охваченные в сообщении? –
Вы ищете продукт, который уже делает это, или для разработки методологии построения собственного? Также неясно, «в настоящее время мы устанавливаем наше приложение через WIX и переустановка новой версии полностью перезаписывает то, что было до этого» - это проблема для вас. Если вы устанавливаете пакет MSI, вы должны обновить обновление MSI, патч (файл MSP) или другое обновление. Похоже, вы используете основное обновление. Патч может быть тем, что вам нужно. – PhilDW
[ClickOnce] (https://msdn.microsoft.com/en-us/library/s22azw1e.aspx) может помочь вам в этом случае. – Kurubaran