MSI.OpenPackage
Описание
Вызывает функцию MsiOpenPackage открывающую пакет для использования с действиями, что обращаются к базе данных продукта.
Когда дескриптор станет больше не нужен, необходимо вызвать действие MSI.CloseHandle.
ПараметрыВозвратResultVariable
(число) Дескриптор к пакету MSI. Если действие неудачно, возвращается значение nil.
Можно использовать действие Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1-- Get the package handle. -- Получаем дескриптор пакета. nPackageHandle = MSI.OpenPackage(_TempFolder.."\\Downloaded\\setup.msi"); if (nPackageHandle) then strProperty = MSI.GetProductProperty(nPackageHandle, "SUFUSERPROFILE"); if (strProperty) then -- Show a dialog with the feature info. -- Показываем диалоговое окно с информацией о свойстве. Dialog.Message("Property", "Property value: " .. strProperty); else -- An error occurred. -- Произошла ошибка. nError = Application.GetLastError(); Dialog.Message("Error", _tblErrorMessages[nError], MB_OK, MB_ICONEXCLAMATION); end -- Finished using the handle, so close it. -- Завершилось использование дескриптора, так что закрываем его. if (not MSI.CloseHandle(nPackageHandle)) then Dialog.Message("Error", "Failed to close package handle."); end else Dialog.Message("Error", "Failed to get package handle."); endПолучаем свойство продукта "SUFUSERPROFILE" и показываем его значение в диалоговом окне сообщения.
Смотрите также: Связанные действия
|