откат приложения загрузчика

Я пытаюсь создать загрузчик записи Wix, который устанавливает мой файл msi. Загрузочный exe работает нормально, но единственная проблема заключается в том, что всякий раз, когда я пытаюсь отменить установку на полпути, пользовательские действия, добавленные в msi, не останавливаются. Может ли кто-нибудь сказать, как остановить и откатить установку, нажав кнопку отмены. Заранее спасибо.


person Saravanan    schedule 02.03.2013    source источник


Ответы (1)


Настраиваемое действие должно отправлять ::MsiProcessMessage() вызовов, чтобы обеспечить возможность получения отмены и обработки кода возврата от этого API (обычно ERROR_INSTALL_USEREXIT или IDCANCEL). Затем пользовательское действие должно выйти.

Если вы посмотрите на некоторые из стандартных настраиваемых действий WiX, вы увидите множество вызовов WcaProcessMessage() и тому подобное. Мы сохраняем код возврата из них, и WcaFinalize () возвращает правильный результат при выходе. Посмотрите src\ca\wcautil\wcautil.cpp и src\ca\wcautil\wcawrap.cpp, например, код.

person Rob Mensching    schedule 02.03.2013
comment
Не могли бы вы подробно объяснить, как остановить установку кнопкой отмены в пользовательском интерфейсе BA? - person Saravanan; 03.03.2013
comment
Верните IDCANCEL из обратного вызова. - person Rob Mensching; 05.03.2013