WIX - Пользовательские действия при установке, но не при удалении или обновлении - PullRequest
8 голосов
/ 02 марта 2012

У меня есть установщик wix, где у нас запущено несколько пользовательских действий, например, регистрация и т. Д. Однако мы хотим, чтобы они выполнялись только при установке, а не при обновлении или удалении.

Я пробовалустановив его на НЕ установлено и переустановить, но это тоже не работает.

Кто-нибудь знает, каково правильное свойство при желании запускать определенные приложения с помощью настраиваемых действий только при установке, а не при обновлении или удалении?

 <InstallExecuteSequence>
     <Custom Action="PosConfig.CustomAction" Before="StartServices"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND UILevel>3]]></Custom>
     <Custom Action="Register.CustomAction" After="PosConfig.CustomAction">NOT Installed AND NOT UPGRADINGPRODUCTCODE </Custom>
     <Custom Action="OPOSSelectorFirst.CustomAction" After="Register.CustomAction"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND &ProductFeature=3 AND Not OPOSDLLINSTALLED]]></Custom>
     <Custom Action="OPOSSelectorUpdate.CustomAction" After="OPOSSelectorFirst.CustomAction"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND &ProductFeature=3 AND Not OPOSDLLINSTALLED]]></Custom>
  </InstallExecuteSequence>

РЕДАКТИРОВАТЬ: добавлена ​​моя последовательность настраиваемых действий.

Ответы [ 2 ]

15 голосов
/ 02 марта 2012

NOT Installed AND REINSTALL никогда не может быть правдой одновременно.Это означает, что приложение не установлено, но в настоящее время переустанавливается.Как это будет работать?

Запланируйте свое настраиваемое действие, используя вместо этого следующее условие:

NOT Installed AND NOT UPGRADINGPRODUCTCODE

Это предотвращает его запуск при крупных обновлениях.

3 голосов
/ 23 июля 2013

UPGRADINGPRODUCTCODE устанавливается во время действия RemoveExistingProducts.В зависимости от вашего MajorUpgrade Schedule это может быть слишком поздно.Я пришел к решению NOT Installed AND NOT WIX_UPGRADE_DETECTED.

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