AutoUpdater. NET не обновляет и не удаляет старую программу - PullRequest
0 голосов
/ 07 мая 2020

Я использую AutoUpdater вместе с проектами установщика Visual Studio в программе WPF. При обновлении моего проекта он никогда не обновляется. Это только дает возможность «Восстановить» или «Удалить» мою существующую установку. Это приводит к тому, что программа всегда запрашивает обновления (так как она все еще находится в старой версии 1.0.0.0).

Мой код обновления (MainWindow.xaml.cs):

AutoUpdater.Start(@"\\SERVER\foo\bar\update.xml", new NetworkCredential("user", "pass"));
AutoUpdater.ShowSkipButton = false;
AutoUpdater.Synchronous = true;
AutoUpdater.Mandatory = true;
AutoUpdater.UpdateMode = Mode.Forced;

My update. xml:

<?xml version="1.0" encoding="utf-8" ?>
<item>
  <version>1.0.1.2</version>
  <url>\\SERVER\foo\bar\setup.msi</url>
  <mandatory>true</mandatory>
</item>

Мои настройки проекта развертывания:

DetectNewerInstalledVersion = False
RemovePreviousVersions = True
Version = 1.0.1.2

My AssemblyInfo.cs:

[assembly: AssemblyVersion("1.0.1.2")]
[assembly: AssemblyFileVersion("1.0.1.2")]

Я меняю версию установки (которая генерирует новый ProductCode) для соответствия AssemblyVersion и AssemblyFileVersion. Однако, когда он идет на обновление, он дает возможность только восстановить или удалить текущую установку. Продолжение «Восстановления» на самом деле не приводит к обновлению программы. В следующий раз, когда вы запустите программу, она все еще будет использовать старую версию и снова попросит обновить.

UpgradeCode остается прежним. Установка для параметра DetectNewerInstalledVersion значения true приводит к тому, что Windows выдает ошибку «Более старая версия уже установлена», но я пытаюсь избавить пользователя от необходимости удалять и переустанавливать для каждого обновления.

enter image description here

Что я могу сделать, чтобы исправить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...