InstallShield-2009: базовый MSI: как запустить настраиваемое действие после отмены удаления пользователем (откат) - PullRequest
1 голос
/ 07 мая 2010

InstallShield-2009 Premier: базовый MSI-проект:

Что делать, если я хочу, чтобы пользовательское действие запускалось, когда пользователь нажимает кнопку отмены во время удаления?

Я поместил настраиваемое действие (exe C #, который будет просто показывать окно сообщения) с

Тип действия:

Type: Launch an executable

Location: Stored in the Binary table

Параметры действия:

Source: exe path

Target: a b c (doesn't matter, I don't need it)

Дополнительные опции:

Return Processing: Synchronous (Check exit code)

Run Only During Path Uninstall: unchecked

Варианты ответа:

In-Script Execution: Rollback Execution in System Context

Executing Scheduling: disabled

Вставить в последовательность:

Install UI-Sequence: <Absent from sequence>

Install Execute Sequence: After InstallServices (what should I set here?)

Install Execute Condition: (do I need to set? I left it blank)

но окно отмены не появилось, когда я отменил удаление. Как?

Ответы [ 2 ]

1 голос
/ 12 мая 2011

Вы можете попытаться привязать событие к кнопке «Отмена» в диалоговом окне. В конструкторе установки перейдите в Интерфейс пользователя> Диалог, найдите SetupProgress и, добавив событие, добавьте событие в кнопку Отмена. Я не пробовал, но стоит попробовать.

0 голосов
/ 13 мая 2011

Откат пользовательских действий должен быть запланирован до действия, которое они откатывают. Поскольку вы хотите обработать любой откат, вы можете запланировать действие после InstallInitialize в InstallExecuteSequence.

Таким образом, он всегда будет работать, когда пользователь отменяет установку после того, как он фактически начал установку.

Обратите внимание, что пользовательские действия отката нельзя использовать при отмене установки до фактического запуска процесса (отображается индикатор выполнения). Для этого вам понадобится контрольное событие для этой конкретной кнопки Отмена.

...