MSI.OpenProduct

number MSI.OpenProduct ( string ProductCode )
Примеры

Описание

Вызывает функцию MsiOpenProduct открывающую продукт для использования с действиями, что обращаются к базе данных продукта. Когда дескриптор станет больше не нужен, необходимо вызвать действие MSI.CloseHandle.

Параметры

ProductCode

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

Возврат

ResultVariable

(число) Дескриптор к продукту MSI. Если действие неудачно, возвращается значение nil. Можно использовать действие Application.GetLastError для определения случился ли отказ в работе этого действия и почему.

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

Примеры

Пример 1

-- Get the product handle.
-- Получаем дескриптор продукта.
nProductHandle = MSI.OpenProduct("{78B82B0B-9AD9-40C0-B994-F72C21B52723}");

if (nProductHandle) then
    tbFeatureInfo = MSI.GetFeatureInfo(nProductHandle, "MyTargetFeature", INSTALLFEATUREATTRIBUTE_FAVORLOCAL);
    if (tbFeatureInfo) then
        -- Show a dialog with the feature info.
        -- Показываем диалоговое окно с информацией элемента.
        Dialog.Message("Feature Info", "Title: " .. tbFeatureInfo.Title .. "\r\nDescription: " .. tbFeatureInfo.Description);
    else
        -- An error occurred.
        -- Произошла ошибка.
        nError = Application.GetLastError();
        Dialog.Message("Error", _tblErrorMessages[nError], MB_OK, MB_ICONEXCLAMATION);
    end

    -- Finished using the product handle, so close it.
    -- Использование дескриптора продукта закончено, закрываем его.
    if (not MSI.CloseHandle(nProductHandle)) then
        Dialog.Message("Error", "Failed to close product handle.");
    end
else
    Dialog.Message("Error", "Failed to get product handle.");
end
Получаем заголовок и описание элемента "MyTargetFeature" и показываем их в диалоговом окне сообщения.
Смотрите также: Связанные действия