MSI.ReinstallFeature

boolean MSI.ReinstallFeature ( string ProductCode,
string FeatureID,
string ReinstallMode )
Примеры

Описание

Вызывает функцию MsiReinstallFeature для переустановки элемента.

Параметры

ProductCode

(строка) "Код продукта" который содержит переустанавливаемый элемент. Эта строка должна быть строкой идентификатора, заключенная в фигурные скобки, например: "{78B82B0B-9AD9-40C0-B994-F72C21B52723}".

FeatureID

(строка) Идентификатор переустанавливаемого элемента. Родительский или дочерний элементы указанного элемента не переустанавливаются. Для переустановки родительского или дочернего элемента нужно вызвать действие MSI.ReinstallFeature для каждого в отдельности, или использовать действие MSI.ReinstallProduct.

ReinstallMode

(число) Режим переустановки. Для объединения значений используется символ "плюс" ("+"). Выбор одного или нескольких значений из следующих:

КОНСТАНТА
CONSTANT
ЗНАЧЕНИЕ
VALUE
ОПИСАНИЕ
DESCRIPTION
REINSTALLMODE_FILEMISSING2Переустановка только если файл отсутствует.
REINSTALLMODE_FILEOLDERVERSION4Переустановка если файл отсутствует или есть старая версия.
REINSTALLMODE_FILEEQUALVERSION8Переустановка если файл отсутствует или есть равная или старая версия.
REINSTALLMODE_FILEEXACT16Переустановка если файл отсутствует или есть другая версия.
REINSTALLMODE_FILEVERIFY32Проверка значений контрольной суммы и переустановка файла, если он отсутствует или поврежден. Этот флаг восстанавливает только файлы, которые имеют пункт msidbFileAttributesChecksum в колонке Attributes таблицы File.
REINSTALLMODE_FILEREPLACE64Принудительная переустановка всех файлов, независимо от контрольной суммы или версии.
REINSTALLMODE_MACHINEDATA128Переписывает все требуемые записи реестра из Registry Table, которые идут к кусту реестра HKEY_LOCAL_MACHINE или HKEY_CLASSES_ROOT. Переписывает всю информацию из Class Table, Verb Table, PublishComponent Table, ProgID Table, MIMET Table, Icon Table, Extension Table, и AppID Table независимо от машины или назначения пользователя. Переустановка всех подходящих компонентов. При переустановке приложения эта опция запускает действия RegisterTypeLibraries и InstallODBC.
REINSTALLMODE_USERDATA256Переписывает все требуемые записи реестра из Registry Table, которые идут к кусту реестра HKEY_CURRENT_USER или HKEY_USERS.
REINSTALLMODE_SHORTCUT512Переустановка всех ярлыков и выполнение повторного кэширования всех иконок, перезаписывая все существующие ярлыки и иконки.
REINSTALLMODE_PACKAGE1024Использовать для запуска из пакета источника и выполняет повторное кэширование локального пакета. Не использовать для первой установки приложения или элемента.

Возврат

ResultVariable

(логический) Возвращает значение истина - true, если действие было успешным, или значение ложь - false, если оно неудачно. Можно использовать действие Application.GetLastError для определения случился ли отказ в работе этого действия и почему.

При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия

Примеры

Пример 1

bResult = MSI.ReinstallFeature("{78B82B0B-9AD9-40C0-B994-F72C21B52723}", "Core", REINSTALLMODE_FILEMISSING);

if (not bResult) then
    nError = Application.GetLastError();
    Dialog.Message("Error", _tblErrorMessages[nError], MB_OK, MB_ICONEXCLAMATION);
end
Переустанавливаем элемент "Core", если файл пропущен и показываем сообщение об ошибке, если действие не удалось.
Смотрите также: Связанные действия