Запуск пользовательских действий перед удалением или обновлением - PullRequest
0 голосов
/ 27 апреля 2019

Я пытаюсь выполнить пользовательское действие до того, как мое приложение будет обновлено или удалено (перед удалением файлов, поскольку мне нужно скопировать файл базы данных в другой каталог)

Проблема -Я могу запустить его при удалении с панели управления, но не могу сделать это при обновлении. При обновлении установка заканчивается преждевременно, а старая версия также удаляется.

Вотмой код -

<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed."/>

<Binary Id="secondAction" SourceFile="..\Migrations\bin\Debug\Migrations.CA.dll" />

<CustomAction Id="secondActionId"
              BinaryKey="secondAction"
              DllEntry="Migrate"
              Execute="deferred"
              Return="check" />

<InstallExecuteSequence>
   <Custom Action="secondActionId" Before ="RemoveFiles">(REMOVE~="ALL") OR (WIX_UPGRADE_DETECTED)</Custom>
</InstallExecuteSequence>

1 Ответ

0 голосов
/ 07 мая 2019

Вместо запуска до RemoveFiles попробуйте запустить после InstallValidate.Я считаю, что RemoveFiles происходит только при удалении.InstallValidate произойдет до удаления существующего продукта.

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