Поделиться через


Фиксация пользовательских действий

При успешном завершении скрипта установки выполняются пользовательские действия фиксации. Если действие InstallFinalize успешно выполнено, установщик выполнит все существующие пользовательские действия фиксации. Единственным параметром режима установщика в данном случае является MSIRUNMODE_COMMIT. Описание параметров режима выполнения см. в MsiGetMode.

Настраиваемое действие фиксации можно указать путем добавления флага параметра в поле Type таблицы CustomAction. Параметры выполнения In-Script настраиваемых действий см. в для флага параметра, обозначающего настраиваемое действие фиксации.

Пользовательское действие фиксации — это дополнение к настраиваемого действия отката и может использоваться с откатом пользовательских действий для отмены пользовательских действий, которые вносят изменения непосредственно в систему.

Обратите внимание, что настраиваемое действие отката может не удается удалить все изменения, внесенные пользовательскими действиями. Хотя установщик записывает как откат, так и фиксирует пользовательские действия в скрипт отката, фиксация пользовательских действий выполняется только после успешной обработки скрипта установки установщиком. Фиксация пользовательских действий — это первые действия, выполняемые в скрипте отката. Если пользовательское действие фиксации завершается ошибкой, установщик инициирует откат, но может откатить эти операции, уже записанные в скрипт отката. Это означает, что в зависимости от пользовательского действия фиксации откат может не быть в состоянии отменить изменения, внесенные действием. Вы можете игнорировать сбои в фиксации пользовательских действий, создав настраиваемое действие, чтобы игнорировать коды возврата.

Откат и фиксация пользовательских действий не выполняются при отключении отката. Если автор пакета требует этих типов пользовательских действий для правильной установки, они должны использовать свойство RollbackDisabled в условии, которое предотвращает продолжение установки при отключении отката.