mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-05 15:18:32 +02:00
1068 lines
47 KiB
ObjectPascal
1068 lines
47 KiB
ObjectPascal
{******************************************************************************}
|
|
{ }
|
|
{ Windows Installer API interface Unit for Object Pascal }
|
|
{ }
|
|
{ Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft }
|
|
{ Corporation. All Rights Reserved. }
|
|
{ }
|
|
{ The original file is: msidefs.h, released June 2000. The original Pascal }
|
|
{ code is: MsiDefs.pas, released June 2001. The initial developer of the }
|
|
{ Pascal code is Marcel van Brakel (brakelm att chello dott nl). }
|
|
{ }
|
|
{ Portions created by Marcel van Brakel are Copyright (C) 1999-2001 }
|
|
{ Marcel van Brakel. All Rights Reserved. }
|
|
{ }
|
|
{ Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) }
|
|
{ }
|
|
{ You may retrieve the latest version of this file at the Project JEDI }
|
|
{ APILIB home page, located at http://jedi-apilib.sourceforge.net }
|
|
{ }
|
|
{ The contents of this file are used with permission, subject to the Mozilla }
|
|
{ Public License Version 1.1 (the "License"); you may not use this file except }
|
|
{ in compliance with the License. You may obtain a copy of the License at }
|
|
{ http://www.mozilla.org/MPL/MPL-1.1.html }
|
|
{ }
|
|
{ Software distributed under the License is distributed on an "AS IS" basis, }
|
|
{ WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
|
|
{ the specific language governing rights and limitations under the License. }
|
|
{ }
|
|
{ Alternatively, the contents of this file may be used under the terms of the }
|
|
{ GNU Lesser General Public License (the "LGPL License"), in which case the }
|
|
{ provisions of the LGPL License are applicable instead of those above. }
|
|
{ If you wish to allow use of your version of this file only under the terms }
|
|
{ of the LGPL License and not to allow others to use your version of this file }
|
|
{ under the MPL, indicate your decision by deleting the provisions above and }
|
|
{ replace them with the notice and other provisions required by the LGPL }
|
|
{ License. If you do not delete the provisions above, a recipient may use }
|
|
{ your version of this file under either the MPL or the LGPL License. }
|
|
{ }
|
|
{ For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
|
|
{ }
|
|
{******************************************************************************}
|
|
|
|
|
|
unit JwaMsiDefs;
|
|
|
|
{$WEAKPACKAGEUNIT}
|
|
|
|
{$HPPEMIT ''}
|
|
{$HPPEMIT '#include "msidefs.h"'}
|
|
{$HPPEMIT ''}
|
|
|
|
{$I jediapilib.inc}
|
|
|
|
interface
|
|
|
|
uses
|
|
JwaWinType;
|
|
|
|
//------------------------------------------------------------------------------
|
|
// INSTALLER PROPERTY DEFINITIONS
|
|
//------------------------------------------------------------------------------
|
|
|
|
const
|
|
|
|
// Required properties: set in Property table
|
|
|
|
IPROPNAME_PRODUCTNAME = TEXT('ProductName'); // name registered for display
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTNAME}
|
|
IPROPNAME_PRODUCTCODE = TEXT('ProductCode'); // unique string GUID for product
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTCODE}
|
|
IPROPNAME_PRODUCTVERSION = TEXT('ProductVersion'); // string product version
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTVERSION}
|
|
IPROPNAME_INSTALLLANGUAGE = TEXT('ProductLanguage'); // install language of product, use to load resources
|
|
{$EXTERNALSYM IPROPNAME_INSTALLLANGUAGE}
|
|
IPROPNAME_MANUFACTURER = TEXT('Manufacturer'); // name of manufacturer
|
|
{$EXTERNALSYM IPROPNAME_MANUFACTURER}
|
|
|
|
// Customization properties: set in Property table
|
|
|
|
IPROPNAME_UPGRADECODE = TEXT('UpgradeCode'); // unique string GUID for product family
|
|
{$EXTERNALSYM IPROPNAME_UPGRADECODE}
|
|
IPROPNAME_PIDTEMPLATE = TEXT('PIDTemplate'); // drives Product ID processing
|
|
{$EXTERNALSYM IPROPNAME_PIDTEMPLATE}
|
|
IPROPNAME_DISKPROMPT = TEXT('DiskPrompt'); // prompt for CD
|
|
{$EXTERNALSYM IPROPNAME_DISKPROMPT}
|
|
IPROPNAME_LEFTUNIT = TEXT('LeftUnit'); // name of unit placed to left of number instead of right
|
|
{$EXTERNALSYM IPROPNAME_LEFTUNIT}
|
|
IPROPNAME_ADMIN_PROPERTIES = TEXT('AdminProperties'); // properties to stuff in admin package
|
|
{$EXTERNALSYM IPROPNAME_ADMIN_PROPERTIES}
|
|
IPROPNAME_DEFAULTUIFONT = TEXT('DefaultUIFont'); // the font used in the UI if no other font is specified
|
|
{$EXTERNALSYM IPROPNAME_DEFAULTUIFONT}
|
|
IPROPNAME_ALLOWEDPROPERTIES = TEXT('SecureCustomProperties');
|
|
{$EXTERNALSYM IPROPNAME_ALLOWEDPROPERTIES}
|
|
IPROPNAME_ENABLEUSERCONTROL = TEXT('EnableUserControl'); // allows user to specify any public property
|
|
{$EXTERNALSYM IPROPNAME_ENABLEUSERCONTROL}
|
|
IPROPNAME_HIDDEN_PROPERTIES = TEXT('MsiHiddenProperties'); // properties that should not be dumped into the log file
|
|
{$EXTERNALSYM IPROPNAME_HIDDEN_PROPERTIES}
|
|
|
|
// Customization properties: set on command-line or in Property table
|
|
|
|
IPROPNAME_USERNAME = TEXT('USERNAME');
|
|
{$EXTERNALSYM IPROPNAME_USERNAME}
|
|
IPROPNAME_COMPANYNAME = TEXT('COMPANYNAME');
|
|
{$EXTERNALSYM IPROPNAME_COMPANYNAME}
|
|
IPROPNAME_PIDKEY = TEXT('PIDKEY'); // used with PIDTemplate to form ProductID
|
|
{$EXTERNALSYM IPROPNAME_PIDKEY}
|
|
IPROPNAME_PATCH = TEXT('PATCH'); // patch package to apply - SET BY INSTALLER
|
|
{$EXTERNALSYM IPROPNAME_PATCH}
|
|
IPROPNAME_TARGETDIR = TEXT('TARGETDIR'); // target location - defaults to ROOTDRIVE
|
|
{$EXTERNALSYM IPROPNAME_TARGETDIR}
|
|
IPROPNAME_ACTION = TEXT('ACTION'); // top-level action to perform - default to INSTALL
|
|
{$EXTERNALSYM IPROPNAME_ACTION}
|
|
IPROPNAME_LIMITUI = TEXT('LIMITUI'); // limit ui level to Basic
|
|
{$EXTERNALSYM IPROPNAME_LIMITUI}
|
|
IPROPNAME_LOGACTION = TEXT('LOGACTION'); // log only these actions
|
|
{$EXTERNALSYM IPROPNAME_LOGACTION}
|
|
IPROPNAME_ALLUSERS = TEXT('ALLUSERS'); // install for all users
|
|
{$EXTERNALSYM IPROPNAME_ALLUSERS}
|
|
IPROPNAME_INSTALLLEVEL = TEXT('INSTALLLEVEL');
|
|
{$EXTERNALSYM IPROPNAME_INSTALLLEVEL}
|
|
IPROPNAME_REBOOT = TEXT('REBOOT'); // force or suppress reboot
|
|
{$EXTERNALSYM IPROPNAME_REBOOT}
|
|
|
|
IPROPNAME_REBOOTPROMPT = TEXT('REBOOTPROMPT'); // allow or suppress reboot prompt
|
|
{$EXTERNALSYM IPROPNAME_REBOOTPROMPT}
|
|
|
|
IPROPNAME_EXECUTEMODE = TEXT('EXECUTEMODE'); // NONE or SCRIPT
|
|
{$EXTERNALSYM IPROPNAME_EXECUTEMODE}
|
|
IPROPVALUE_EXECUTEMODE_NONE = TEXT('NONE'); // do not update system
|
|
{$EXTERNALSYM IPROPVALUE_EXECUTEMODE_NONE}
|
|
IPROPVALUE_EXECUTEMODE_SCRIPT = TEXT('SCRIPT'); // default - run script to update system
|
|
{$EXTERNALSYM IPROPVALUE_EXECUTEMODE_SCRIPT}
|
|
IPROPNAME_EXECUTEACTION = TEXT('EXECUTEACTION'); // run action on server side
|
|
{$EXTERNALSYM IPROPNAME_EXECUTEACTION}
|
|
IPROPNAME_SOURCELIST = TEXT('SOURCELIST');
|
|
{$EXTERNALSYM IPROPNAME_SOURCELIST}
|
|
IPROPNAME_ROOTDRIVE = TEXT('ROOTDRIVE'); // default drive to install - SET BY INSTALLER
|
|
{$EXTERNALSYM IPROPNAME_ROOTDRIVE}
|
|
IPROPNAME_TRANSFORMS = TEXT('TRANSFORMS'); // transforms to apply
|
|
{$EXTERNALSYM IPROPNAME_TRANSFORMS}
|
|
IPROPNAME_TRANSFORMSATSOURCE = TEXT('TRANSFORMSATSOURCE'); // transforms can be found at source
|
|
{$EXTERNALSYM IPROPNAME_TRANSFORMSATSOURCE}
|
|
IPROPNAME_TRANSFORMSSECURE = TEXT('TRANSFORMSSECURE'); // file transforms are secured
|
|
{$EXTERNALSYM IPROPNAME_TRANSFORMSSECURE}
|
|
IPROPNAME_SEQUENCE = TEXT('SEQUENCE'); // sequence table to run with SEQUENCE action
|
|
{$EXTERNALSYM IPROPNAME_SEQUENCE}
|
|
IPROPNAME_SHORTFILENAMES = TEXT('SHORTFILENAMES'); // force short file names
|
|
{$EXTERNALSYM IPROPNAME_SHORTFILENAMES}
|
|
IPROPNAME_PRIMARYFOLDER = TEXT('PRIMARYFOLDER'); // Folder on the volume the author wants costing info for
|
|
{$EXTERNALSYM IPROPNAME_PRIMARYFOLDER}
|
|
IPROPNAME_AFTERREBOOT = TEXT('AFTERREBOOT'); // install is after a ForceReboot triggered reboot
|
|
{$EXTERNALSYM IPROPNAME_AFTERREBOOT}
|
|
IPROPNAME_NOCOMPANYNAME = TEXT('NOCOMPANYNAME');
|
|
{$EXTERNALSYM IPROPNAME_NOCOMPANYNAME}
|
|
IPROPNAME_NOUSERNAME = TEXT('NOUSERNAME');
|
|
{$EXTERNALSYM IPROPNAME_NOUSERNAME}
|
|
IPROPNAME_DISABLEROLLBACK = TEXT('DISABLEROLLBACK'); // disable rollback for this install
|
|
{$EXTERNALSYM IPROPNAME_DISABLEROLLBACK}
|
|
IPROPNAME_AVAILABLEFREEREG = TEXT('AVAILABLEFREEREG'); // set up the free space in the registry before commencing the install
|
|
{$EXTERNALSYM IPROPNAME_AVAILABLEFREEREG}
|
|
IPROPNAME_DISABLEADVTSHORTCUTS = TEXT('DISABLEADVTSHORTCUTS'); // disable creating darwin shortcuts even if supported
|
|
{$EXTERNALSYM IPROPNAME_DISABLEADVTSHORTCUTS}
|
|
IPROPNAME_PATCHNEWPACKAGECODE = TEXT('PATCHNEWPACKAGECODE'); // added to property table by patch transforms - used to update
|
|
{$EXTERNALSYM IPROPNAME_PATCHNEWPACKAGECODE}
|
|
// PackageCode of admin packages when patching admin installs
|
|
IPROPNAME_PATCHNEWSUMMARYSUBJECT = TEXT('PATCHNEWSUMMARYSUBJECT'); // added to property table by patch transforms - used to update
|
|
{$EXTERNALSYM IPROPNAME_PATCHNEWSUMMARYSUBJECT}
|
|
// Subject summary info property of admin packages when patching admin installs
|
|
IPROPNAME_PATCHNEWSUMMARYCOMMENTS = TEXT('PATCHNEWSUMMARYCOMMENTS'); // added to property table by patch transforms - used to update
|
|
{$EXTERNALSYM IPROPNAME_PATCHNEWSUMMARYCOMMENTS}
|
|
// Comments summary info property of admin packages when patching admin installs
|
|
IPROPNAME_PRODUCTLANGUAGE = TEXT('PRODUCTLANGUAGE'); // requested language, must be one in summary information list, selects language transform
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTLANGUAGE}
|
|
|
|
IPROPNAME_CHECKCRCS = TEXT('MSICHECKCRCS'); // requests Darwin to check CRCs after copying, moving, patching & duplicating files.
|
|
{$EXTERNALSYM IPROPNAME_CHECKCRCS}
|
|
IPROPNAME_MSINODISABLEMEDIA = TEXT('MSINODISABLEMEDIA'); // if set, DISABLEMEDIA won't be set in the AdminProperties stream during an admin install of
|
|
{$EXTERNALSYM IPROPNAME_MSINODISABLEMEDIA} // a package with compressed source
|
|
|
|
// property used for URT bootstrapping
|
|
|
|
IPROPNAME_CARRYINGNDP = TEXT('CARRYINGNDP');
|
|
{$EXTERNALSYM IPROPNAME_CARRYINGNDP}
|
|
IPROPVALUE__CARRYINGNDP_URTREINSTALL = TEXT('URTREINSTALL'); // reinstalling/ uninstalling core URT files
|
|
{$EXTERNALSYM IPROPVALUE__CARRYINGNDP_URTREINSTALL}
|
|
IPROPVALUE__CARRYINGNDP_URTUPGRADE = TEXT('URTUPGRADE'); // upgrading core URT files
|
|
{$EXTERNALSYM IPROPVALUE__CARRYINGNDP_URTUPGRADE}
|
|
|
|
// property used for multiple instance support
|
|
|
|
IPROPNAME_MSINEWINSTANCE = TEXT('MSINEWINSTANCE');
|
|
{$EXTERNALSYM IPROPNAME_MSINEWINSTANCE}
|
|
IPROPNAME_MSIINSTANCEGUID = TEXT('MSIINSTANCEGUID');
|
|
{$EXTERNALSYM IPROPNAME_MSIINSTANCEGUID}
|
|
|
|
// properties used for URL download reduction for admins
|
|
|
|
IPROPNAME_MSIPACKAGEDOWNLOADLOCALCOPY = TEXT('MSIPACKAGEDOWNLOADLOCALCOPY');
|
|
{$EXTERNALSYM IPROPNAME_MSIPACKAGEDOWNLOADLOCALCOPY}
|
|
IPROPNAME_MSIPATCHDOWNLOADLOCALCOPY = TEXT('MSIPATCHDOWNLOADLOCALCOPY');
|
|
{$EXTERNALSYM IPROPNAME_MSIPATCHDOWNLOADLOCALCOPY}
|
|
|
|
// Properties used to populate Add/Remove Control Panel values
|
|
|
|
IPROPNAME_ARPAUTHORIZEDCDFPREFIX = TEXT('ARPAUTHORIZEDCDFPREFIX');
|
|
{$EXTERNALSYM IPROPNAME_ARPAUTHORIZEDCDFPREFIX}
|
|
IPROPNAME_ARPCOMMENTS = TEXT('ARPCOMMENTS');
|
|
{$EXTERNALSYM IPROPNAME_ARPCOMMENTS}
|
|
IPROPNAME_ARPCONTACT = TEXT('ARPCONTACT');
|
|
{$EXTERNALSYM IPROPNAME_ARPCONTACT}
|
|
IPROPNAME_ARPHELPLINK = TEXT('ARPHELPLINK');
|
|
{$EXTERNALSYM IPROPNAME_ARPHELPLINK}
|
|
IPROPNAME_ARPHELPTELEPHONE = TEXT('ARPHELPTELEPHONE');
|
|
{$EXTERNALSYM IPROPNAME_ARPHELPTELEPHONE}
|
|
IPROPNAME_ARPINSTALLLOCATION = TEXT('ARPINSTALLLOCATION');
|
|
{$EXTERNALSYM IPROPNAME_ARPINSTALLLOCATION}
|
|
IPROPNAME_ARPNOMODIFY = TEXT('ARPNOMODIFY');
|
|
{$EXTERNALSYM IPROPNAME_ARPNOMODIFY}
|
|
IPROPNAME_ARPNOREMOVE = TEXT('ARPNOREMOVE');
|
|
{$EXTERNALSYM IPROPNAME_ARPNOREMOVE}
|
|
IPROPNAME_ARPNOREPAIR = TEXT('ARPNOREPAIR');
|
|
{$EXTERNALSYM IPROPNAME_ARPNOREPAIR}
|
|
IPROPNAME_ARPREADME = TEXT('ARPREADME');
|
|
{$EXTERNALSYM IPROPNAME_ARPREADME}
|
|
IPROPNAME_ARPSIZE = TEXT('ARPSIZE');
|
|
{$EXTERNALSYM IPROPNAME_ARPSIZE}
|
|
IPROPNAME_ARPSYSTEMCOMPONENT = TEXT('ARPSYSTEMCOMPONENT');
|
|
{$EXTERNALSYM IPROPNAME_ARPSYSTEMCOMPONENT}
|
|
IPROPNAME_ARPURLINFOABOUT = TEXT('ARPURLINFOABOUT');
|
|
{$EXTERNALSYM IPROPNAME_ARPURLINFOABOUT}
|
|
IPROPNAME_ARPURLUPDATEINFO = TEXT('ARPURLUPDATEINFO');
|
|
{$EXTERNALSYM IPROPNAME_ARPURLUPDATEINFO}
|
|
IPROPNAME_ARPPRODUCTICON = TEXT('ARPPRODUCTICON');
|
|
{$EXTERNALSYM IPROPNAME_ARPPRODUCTICON}
|
|
|
|
// Dynamic properties set by installer during install
|
|
|
|
IPROPNAME_INSTALLED = TEXT('Installed'); // product already installed
|
|
{$EXTERNALSYM IPROPNAME_INSTALLED}
|
|
IPROPNAME_PRODUCTSTATE = TEXT('ProductState'); // state of product (installed,advertised,etc...)
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTSTATE}
|
|
IPROPNAME_PRESELECTED = TEXT('Preselected'); // selections made on command line
|
|
{$EXTERNALSYM IPROPNAME_PRESELECTED}
|
|
IPROPNAME_RESUME = TEXT('RESUME'); // resuming suspended install
|
|
{$EXTERNALSYM IPROPNAME_RESUME}
|
|
IPROPNAME_UPDATESTARTED = TEXT('UpdateStarted'); // have begun to update system
|
|
{$EXTERNALSYM IPROPNAME_UPDATESTARTED}
|
|
IPROPNAME_PRODUCTID = TEXT('ProductID'); // the complete validated Product ID
|
|
{$EXTERNALSYM IPROPNAME_PRODUCTID}
|
|
IPROPNAME_OUTOFDISKSPACE = TEXT('OutOfDiskSpace');
|
|
{$EXTERNALSYM IPROPNAME_OUTOFDISKSPACE}
|
|
IPROPNAME_OUTOFNORBDISKSPACE = TEXT('OutOfNoRbDiskSpace');
|
|
{$EXTERNALSYM IPROPNAME_OUTOFNORBDISKSPACE}
|
|
IPROPNAME_COSTINGCOMPLETE = TEXT('CostingComplete');
|
|
{$EXTERNALSYM IPROPNAME_COSTINGCOMPLETE}
|
|
IPROPNAME_SOURCEDIR = TEXT('SourceDir'); // source location - SET BY INSTALLER
|
|
{$EXTERNALSYM IPROPNAME_SOURCEDIR}
|
|
IPROPNAME_REPLACEDINUSEFILES = TEXT('ReplacedInUseFiles'); // need reboot to completely install one or more files
|
|
{$EXTERNALSYM IPROPNAME_REPLACEDINUSEFILES}
|
|
IPROPNAME_PRIMARYFOLDER_PATH = TEXT('PrimaryVolumePath');
|
|
{$EXTERNALSYM IPROPNAME_PRIMARYFOLDER_PATH}
|
|
IPROPNAME_PRIMARYFOLDER_SPACEAVAILABLE = TEXT('PrimaryVolumeSpaceAvailable');
|
|
{$EXTERNALSYM IPROPNAME_PRIMARYFOLDER_SPACEAVAILABLE}
|
|
IPROPNAME_PRIMARYFOLDER_SPACEREQUIRED = TEXT('PrimaryVolumeSpaceRequired');
|
|
{$EXTERNALSYM IPROPNAME_PRIMARYFOLDER_SPACEREQUIRED}
|
|
IPROPNAME_PRIMARYFOLDER_SPACEREMAINING = TEXT('PrimaryVolumeSpaceRemaining');
|
|
{$EXTERNALSYM IPROPNAME_PRIMARYFOLDER_SPACEREMAINING}
|
|
IPROPNAME_ISADMINPACKAGE = TEXT('IsAdminPackage');
|
|
{$EXTERNALSYM IPROPNAME_ISADMINPACKAGE}
|
|
IPROPNAME_ROLLBACKDISABLED = TEXT('RollbackDisabled');
|
|
{$EXTERNALSYM IPROPNAME_ROLLBACKDISABLED}
|
|
IPROPNAME_RESTRICTEDUSERCONTROL = TEXT('RestrictedUserControl');
|
|
{$EXTERNALSYM IPROPNAME_RESTRICTEDUSERCONTROL}
|
|
|
|
// Dynamic properties evaluated upon use
|
|
|
|
IPROPNAME_TIME = TEXT('Time');
|
|
{$EXTERNALSYM IPROPNAME_TIME}
|
|
IPROPNAME_DATE = TEXT('Date');
|
|
{$EXTERNALSYM IPROPNAME_DATE}
|
|
IPROPNAME_DATETIME = TEXT('DateTime');
|
|
{$EXTERNALSYM IPROPNAME_DATETIME}
|
|
|
|
// Hardware properties: set by installer at initialization
|
|
|
|
IPROPNAME_INTEL = TEXT('Intel');
|
|
{$EXTERNALSYM IPROPNAME_INTEL}
|
|
//#if (_WIN32_MSI >= 150)
|
|
IPROPNAME_AMD64 = TEXT('AMD64');
|
|
{$EXTERNALSYM IPROPNAME_AMD64}
|
|
IPROPNAME_INTEL64 = TEXT('Intel64');
|
|
{$EXTERNALSYM IPROPNAME_INTEL64}
|
|
//#else // (_WIN32_MSI >= 150)
|
|
IPROPNAME_IA64 = TEXT('IA64');
|
|
{$EXTERNALSYM IPROPNAME_IA64}
|
|
//#endif // (_WIN32_MSI >= 150)
|
|
IPROPNAME_TEXTHEIGHT = TEXT('TextHeight');
|
|
{$EXTERNALSYM IPROPNAME_TEXTHEIGHT}
|
|
IPROPNAME_SCREENX = TEXT('ScreenX');
|
|
{$EXTERNALSYM IPROPNAME_SCREENX}
|
|
IPROPNAME_SCREENY = TEXT('ScreenY');
|
|
{$EXTERNALSYM IPROPNAME_SCREENY}
|
|
IPROPNAME_CAPTIONHEIGHT = TEXT('CaptionHeight');
|
|
{$EXTERNALSYM IPROPNAME_CAPTIONHEIGHT}
|
|
IPROPNAME_BORDERTOP = TEXT('BorderTop');
|
|
{$EXTERNALSYM IPROPNAME_BORDERTOP}
|
|
IPROPNAME_BORDERSIDE = TEXT('BorderSide');
|
|
{$EXTERNALSYM IPROPNAME_BORDERSIDE}
|
|
IPROPNAME_COLORBITS = TEXT('ColorBits');
|
|
{$EXTERNALSYM IPROPNAME_COLORBITS}
|
|
IPROPNAME_PHYSICALMEMORY = TEXT('PhysicalMemory');
|
|
{$EXTERNALSYM IPROPNAME_PHYSICALMEMORY}
|
|
IPROPNAME_VIRTUALMEMORY = TEXT('VirtualMemory');
|
|
{$EXTERNALSYM IPROPNAME_VIRTUALMEMORY}
|
|
IPROPNAME_TEXTHEIGHT_CORRECTION = TEXT('TextHeightCorrection');
|
|
{$EXTERNALSYM IPROPNAME_TEXTHEIGHT_CORRECTION}
|
|
|
|
// Operating System properties: set by installer at initialization
|
|
|
|
IPROPNAME_VERSIONNT = TEXT('VersionNT');
|
|
{$EXTERNALSYM IPROPNAME_VERSIONNT}
|
|
IPROPNAME_VERSION9X = TEXT('Version9X');
|
|
{$EXTERNALSYM IPROPNAME_VERSION9X}
|
|
IPROPNAME_VERSIONNT64 = TEXT('VersionNT64');
|
|
{$EXTERNALSYM IPROPNAME_VERSIONNT64}
|
|
IPROPNAME_WINDOWSBUILD = TEXT('WindowsBuild');
|
|
{$EXTERNALSYM IPROPNAME_WINDOWSBUILD}
|
|
IPROPNAME_SERVICEPACKLEVEL = TEXT('ServicePackLevel');
|
|
{$EXTERNALSYM IPROPNAME_SERVICEPACKLEVEL}
|
|
IPROPNAME_SERVICEPACKLEVELMINOR = TEXT('ServicePackLevelMinor');
|
|
{$EXTERNALSYM IPROPNAME_SERVICEPACKLEVELMINOR}
|
|
IPROPNAME_SHAREDWINDOWS = TEXT('SharedWindows');
|
|
{$EXTERNALSYM IPROPNAME_SHAREDWINDOWS}
|
|
IPROPNAME_COMPUTERNAME = TEXT('ComputerName');
|
|
{$EXTERNALSYM IPROPNAME_COMPUTERNAME}
|
|
IPROPNAME_SHELLADVTSUPPORT = TEXT('ShellAdvtSupport');
|
|
{$EXTERNALSYM IPROPNAME_SHELLADVTSUPPORT}
|
|
IPROPNAME_OLEADVTSUPPORT = TEXT('OLEAdvtSupport');
|
|
{$EXTERNALSYM IPROPNAME_OLEADVTSUPPORT}
|
|
IPROPNAME_SYSTEMLANGUAGEID = TEXT('SystemLanguageID');
|
|
{$EXTERNALSYM IPROPNAME_SYSTEMLANGUAGEID}
|
|
IPROPNAME_TTCSUPPORT = TEXT('TTCSupport');
|
|
{$EXTERNALSYM IPROPNAME_TTCSUPPORT}
|
|
IPROPNAME_TERMSERVER = TEXT('TerminalServer');
|
|
{$EXTERNALSYM IPROPNAME_TERMSERVER}
|
|
IPROPNAME_REMOTEADMINTS = TEXT('RemoteAdminTS');
|
|
{$EXTERNALSYM IPROPNAME_REMOTEADMINTS}
|
|
IPROPNAME_REDIRECTEDDLLSUPPORT = TEXT('RedirectedDllSupport');
|
|
{$EXTERNALSYM IPROPNAME_REDIRECTEDDLLSUPPORT}
|
|
IPROPNAME_NTPRODUCTTYPE = TEXT('MsiNTProductType');
|
|
{$EXTERNALSYM IPROPNAME_NTPRODUCTTYPE}
|
|
IPROPNAME_NTSUITEBACKOFFICE = TEXT('MsiNTSuiteBackOffice');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITEBACKOFFICE}
|
|
IPROPNAME_NTSUITEDATACENTER = TEXT('MsiNTSuiteDataCenter');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITEDATACENTER}
|
|
IPROPNAME_NTSUITEENTERPRISE = TEXT('MsiNTSuiteEnterprise');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITEENTERPRISE}
|
|
IPROPNAME_NTSUITESMALLBUSINESS = TEXT('MsiNTSuiteSmallBusiness');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITESMALLBUSINESS}
|
|
IPROPNAME_NTSUITESMALLBUSINESSRESTRICTED = TEXT('MsiNTSuiteSmallBusinessRestricted');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITESMALLBUSINESSRESTRICTED}
|
|
IPROPNAME_NTSUITEPERSONAL = TEXT('MsiNTSuitePersonal');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITEPERSONAL}
|
|
IPROPNAME_NTSUITEWEBSERVER = TEXT('MsiNTSuiteWebServer');
|
|
{$EXTERNALSYM IPROPNAME_NTSUITEWEBSERVER}
|
|
IPROPNAME_NETASSEMBLYSUPPORT = TEXT('MsiNetAssemblySupport');
|
|
{$EXTERNALSYM IPROPNAME_NETASSEMBLYSUPPORT}
|
|
IPROPNAME_WIN32ASSEMBLYSUPPORT = TEXT('MsiWin32AssemblySupport');
|
|
{$EXTERNALSYM IPROPNAME_WIN32ASSEMBLYSUPPORT}
|
|
|
|
// User properties: set by installer at initialization
|
|
|
|
IPROPNAME_LOGONUSER = TEXT('LogonUser');
|
|
{$EXTERNALSYM IPROPNAME_LOGONUSER}
|
|
IPROPNAME_USERSID = TEXT('UserSID');
|
|
{$EXTERNALSYM IPROPNAME_USERSID}
|
|
IPROPNAME_ADMINUSER = TEXT('AdminUser');
|
|
{$EXTERNALSYM IPROPNAME_ADMINUSER}
|
|
IPROPNAME_USERLANGUAGEID = TEXT('UserLanguageID');
|
|
{$EXTERNALSYM IPROPNAME_USERLANGUAGEID}
|
|
IPROPNAME_PRIVILEGED = TEXT('Privileged');
|
|
{$EXTERNALSYM IPROPNAME_PRIVILEGED}
|
|
|
|
// System folder properties: set by installer at initialization
|
|
|
|
IPROPNAME_WINDOWS_FOLDER = TEXT('WindowsFolder');
|
|
{$EXTERNALSYM IPROPNAME_WINDOWS_FOLDER}
|
|
IPROPNAME_SYSTEM_FOLDER = TEXT('SystemFolder');
|
|
{$EXTERNALSYM IPROPNAME_SYSTEM_FOLDER}
|
|
IPROPNAME_SYSTEM16_FOLDER = TEXT('System16Folder');
|
|
{$EXTERNALSYM IPROPNAME_SYSTEM16_FOLDER}
|
|
IPROPNAME_WINDOWS_VOLUME = TEXT('WindowsVolume');
|
|
{$EXTERNALSYM IPROPNAME_WINDOWS_VOLUME}
|
|
IPROPNAME_TEMP_FOLDER = TEXT('TempFolder');
|
|
{$EXTERNALSYM IPROPNAME_TEMP_FOLDER}
|
|
IPROPNAME_PROGRAMFILES_FOLDER = TEXT('ProgramFilesFolder');
|
|
{$EXTERNALSYM IPROPNAME_PROGRAMFILES_FOLDER}
|
|
IPROPNAME_COMMONFILES_FOLDER = TEXT('CommonFilesFolder');
|
|
{$EXTERNALSYM IPROPNAME_COMMONFILES_FOLDER}
|
|
IPROPNAME_SYSTEM64_FOLDER = TEXT('System64Folder');
|
|
{$EXTERNALSYM IPROPNAME_SYSTEM64_FOLDER}
|
|
IPROPNAME_PROGRAMFILES64_FOLDER = TEXT('ProgramFiles64Folder');
|
|
{$EXTERNALSYM IPROPNAME_PROGRAMFILES64_FOLDER}
|
|
IPROPNAME_COMMONFILES64_FOLDER = TEXT('CommonFiles64Folder');
|
|
{$EXTERNALSYM IPROPNAME_COMMONFILES64_FOLDER}
|
|
IPROPNAME_STARTMENU_FOLDER = TEXT('StartMenuFolder');
|
|
{$EXTERNALSYM IPROPNAME_STARTMENU_FOLDER}
|
|
IPROPNAME_PROGRAMMENU_FOLDER = TEXT('ProgramMenuFolder');
|
|
{$EXTERNALSYM IPROPNAME_PROGRAMMENU_FOLDER}
|
|
IPROPNAME_STARTUP_FOLDER = TEXT('StartupFolder');
|
|
{$EXTERNALSYM IPROPNAME_STARTUP_FOLDER}
|
|
IPROPNAME_NETHOOD_FOLDER = TEXT('NetHoodFolder');
|
|
{$EXTERNALSYM IPROPNAME_NETHOOD_FOLDER}
|
|
IPROPNAME_PERSONAL_FOLDER = TEXT('PersonalFolder');
|
|
{$EXTERNALSYM IPROPNAME_PERSONAL_FOLDER}
|
|
IPROPNAME_SENDTO_FOLDER = TEXT('SendToFolder');
|
|
{$EXTERNALSYM IPROPNAME_SENDTO_FOLDER}
|
|
IPROPNAME_DESKTOP_FOLDER = TEXT('DesktopFolder');
|
|
{$EXTERNALSYM IPROPNAME_DESKTOP_FOLDER}
|
|
IPROPNAME_TEMPLATE_FOLDER = TEXT('TemplateFolder');
|
|
{$EXTERNALSYM IPROPNAME_TEMPLATE_FOLDER}
|
|
IPROPNAME_FONTS_FOLDER = TEXT('FontsFolder');
|
|
{$EXTERNALSYM IPROPNAME_FONTS_FOLDER}
|
|
IPROPNAME_FAVORITES_FOLDER = TEXT('FavoritesFolder');
|
|
{$EXTERNALSYM IPROPNAME_FAVORITES_FOLDER}
|
|
IPROPNAME_RECENT_FOLDER = TEXT('RecentFolder');
|
|
{$EXTERNALSYM IPROPNAME_RECENT_FOLDER}
|
|
IPROPNAME_APPDATA_FOLDER = TEXT('AppDataFolder');
|
|
{$EXTERNALSYM IPROPNAME_APPDATA_FOLDER}
|
|
IPROPNAME_PRINTHOOD_FOLDER = TEXT('PrintHoodFolder');
|
|
{$EXTERNALSYM IPROPNAME_PRINTHOOD_FOLDER}
|
|
IPROPNAME_ADMINTOOLS_FOLDER = TEXT('AdminToolsFolder');
|
|
{$EXTERNALSYM IPROPNAME_ADMINTOOLS_FOLDER}
|
|
IPROPNAME_COMMONAPPDATA_FOLDER = TEXT('CommonAppDataFolder');
|
|
{$EXTERNALSYM IPROPNAME_COMMONAPPDATA_FOLDER}
|
|
IPROPNAME_LOCALAPPDATA_FOLDER = TEXT('LocalAppDataFolder');
|
|
{$EXTERNALSYM IPROPNAME_LOCALAPPDATA_FOLDER}
|
|
IPROPNAME_MYPICTURES_FOLDER = TEXT('MyPicturesFolder');
|
|
{$EXTERNALSYM IPROPNAME_MYPICTURES_FOLDER}
|
|
|
|
// Feature/Component installation properties: set on command-line
|
|
|
|
IPROPNAME_FEATUREADDLOCAL = TEXT('ADDLOCAL');
|
|
{$EXTERNALSYM IPROPNAME_FEATUREADDLOCAL}
|
|
IPROPNAME_FEATUREADDSOURCE = TEXT('ADDSOURCE');
|
|
{$EXTERNALSYM IPROPNAME_FEATUREADDSOURCE}
|
|
IPROPNAME_FEATUREADDDEFAULT = TEXT('ADDDEFAULT');
|
|
{$EXTERNALSYM IPROPNAME_FEATUREADDDEFAULT}
|
|
IPROPNAME_FEATUREREMOVE = TEXT('REMOVE');
|
|
{$EXTERNALSYM IPROPNAME_FEATUREREMOVE}
|
|
IPROPNAME_FEATUREADVERTISE = TEXT('ADVERTISE');
|
|
{$EXTERNALSYM IPROPNAME_FEATUREADVERTISE}
|
|
IPROPVALUE_FEATURE_ALL = TEXT('ALL');
|
|
{$EXTERNALSYM IPROPVALUE_FEATURE_ALL}
|
|
|
|
IPROPNAME_COMPONENTADDLOCAL = TEXT('COMPADDLOCAL');
|
|
{$EXTERNALSYM IPROPNAME_COMPONENTADDLOCAL}
|
|
IPROPNAME_COMPONENTADDSOURCE = TEXT('COMPADDSOURCE');
|
|
{$EXTERNALSYM IPROPNAME_COMPONENTADDSOURCE}
|
|
IPROPNAME_COMPONENTADDDEFAULT = TEXT('COMPADDDEFAULT');
|
|
{$EXTERNALSYM IPROPNAME_COMPONENTADDDEFAULT}
|
|
|
|
IPROPNAME_FILEADDLOCAL = TEXT('FILEADDLOCAL');
|
|
{$EXTERNALSYM IPROPNAME_FILEADDLOCAL}
|
|
IPROPNAME_FILEADDSOURCE = TEXT('FILEADDSOURCE');
|
|
{$EXTERNALSYM IPROPNAME_FILEADDSOURCE}
|
|
IPROPNAME_FILEADDDEFAULT = TEXT('FILEADDDEFAULT');
|
|
{$EXTERNALSYM IPROPNAME_FILEADDDEFAULT}
|
|
|
|
IPROPNAME_REINSTALL = TEXT('REINSTALL');
|
|
{$EXTERNALSYM IPROPNAME_REINSTALL}
|
|
IPROPNAME_REINSTALLMODE = TEXT('REINSTALLMODE');
|
|
{$EXTERNALSYM IPROPNAME_REINSTALLMODE}
|
|
IPROPNAME_PROMPTROLLBACKCOST = TEXT('PROMPTROLLBACKCOST');
|
|
{$EXTERNALSYM IPROPNAME_PROMPTROLLBACKCOST}
|
|
IPROPVALUE_RBCOST_PROMPT = TEXT('P');
|
|
{$EXTERNALSYM IPROPVALUE_RBCOST_PROMPT}
|
|
IPROPVALUE_RBCOST_SILENT = TEXT('D');
|
|
{$EXTERNALSYM IPROPVALUE_RBCOST_SILENT}
|
|
IPROPVALUE_RBCOST_FAIL = TEXT('F');
|
|
{$EXTERNALSYM IPROPVALUE_RBCOST_FAIL}
|
|
|
|
// Property for custom actions to communicate
|
|
|
|
IPROPNAME_CUSTOMACTIONDATA = TEXT('CustomActionData');
|
|
{$EXTERNALSYM IPROPNAME_CUSTOMACTIONDATA}
|
|
|
|
//------------------------------------------------------------------------------
|
|
// TOP-LEVEL ACTION NAMES
|
|
//------------------------------------------------------------------------------
|
|
|
|
IACTIONNAME_INSTALL = TEXT('INSTALL');
|
|
{$EXTERNALSYM IACTIONNAME_INSTALL}
|
|
IACTIONNAME_ADVERTISE = TEXT('ADVERTISE');
|
|
{$EXTERNALSYM IACTIONNAME_ADVERTISE}
|
|
IACTIONNAME_ADMIN = TEXT('ADMIN');
|
|
{$EXTERNALSYM IACTIONNAME_ADMIN}
|
|
IACTIONNAME_SEQUENCE = TEXT('SEQUENCE');
|
|
{$EXTERNALSYM IACTIONNAME_SEQUENCE}
|
|
IACTIONNAME_COLLECTUSERINFO = TEXT('CollectUserInfo');
|
|
{$EXTERNALSYM IACTIONNAME_COLLECTUSERINFO}
|
|
IACTIONNAME_FIRSTRUN = TEXT('FirstRun');
|
|
{$EXTERNALSYM IACTIONNAME_FIRSTRUN}
|
|
|
|
//------------------------------------------------------------------------------
|
|
// SummaryInformation property stream property IDs
|
|
//------------------------------------------------------------------------------
|
|
|
|
// standard property definitions, from OLE2 documentation
|
|
|
|
PID_DICTIONARY = 0; // integer count + array of entries
|
|
{$EXTERNALSYM PID_DICTIONARY}
|
|
PID_CODEPAGE = 1; // short integer
|
|
{$EXTERNALSYM PID_CODEPAGE}
|
|
PID_TITLE = 2; // string
|
|
{$EXTERNALSYM PID_TITLE}
|
|
PID_SUBJECT = 3; // string
|
|
{$EXTERNALSYM PID_SUBJECT}
|
|
PID_AUTHOR = 4; // string
|
|
{$EXTERNALSYM PID_AUTHOR}
|
|
PID_KEYWORDS = 5; // string
|
|
{$EXTERNALSYM PID_KEYWORDS}
|
|
PID_COMMENTS = 6; // string
|
|
{$EXTERNALSYM PID_COMMENTS}
|
|
PID_TEMPLATE = 7; // string
|
|
{$EXTERNALSYM PID_TEMPLATE}
|
|
PID_LASTAUTHOR = 8; // string
|
|
{$EXTERNALSYM PID_LASTAUTHOR}
|
|
PID_REVNUMBER = 9; // string
|
|
{$EXTERNALSYM PID_REVNUMBER}
|
|
PID_EDITTIME = 10; // datatime
|
|
{$EXTERNALSYM PID_EDITTIME}
|
|
PID_LASTPRINTED = 11; // datetime
|
|
{$EXTERNALSYM PID_LASTPRINTED}
|
|
PID_CREATE_DTM = 12; // datetime
|
|
{$EXTERNALSYM PID_CREATE_DTM}
|
|
PID_LASTSAVE_DTM = 13; // datetime
|
|
{$EXTERNALSYM PID_LASTSAVE_DTM}
|
|
PID_PAGECOUNT = 14; // integer
|
|
{$EXTERNALSYM PID_PAGECOUNT}
|
|
PID_WORDCOUNT = 15; // integer
|
|
{$EXTERNALSYM PID_WORDCOUNT}
|
|
PID_CHARCOUNT = 16; // integer
|
|
{$EXTERNALSYM PID_CHARCOUNT}
|
|
PID_THUMBNAIL = 17; // clipboard format + metafile/bitmap (not supported)
|
|
{$EXTERNALSYM PID_THUMBNAIL}
|
|
PID_APPNAME = 18; // string
|
|
{$EXTERNALSYM PID_APPNAME}
|
|
PID_SECURITY = 19; // integer
|
|
{$EXTERNALSYM PID_SECURITY}
|
|
|
|
// PIDs given specific meanings for Installer
|
|
|
|
PID_MSIVERSION = PID_PAGECOUNT; // integer, Installer version number (major*100+minor)
|
|
{$EXTERNALSYM PID_MSIVERSION}
|
|
PID_MSISOURCE = PID_WORDCOUNT; // integer, type of file image, short/long, media/tree
|
|
{$EXTERNALSYM PID_MSISOURCE}
|
|
PID_MSIRESTRICT = PID_CHARCOUNT; // integer, transform restrictions
|
|
{$EXTERNALSYM PID_MSIRESTRICT}
|
|
|
|
//------------------------------------------------------------------------------
|
|
// INSTALLER DATABASE INTEGER COLUMN DEFINITIONS
|
|
//------------------------------------------------------------------------------
|
|
|
|
// BBControl.Attributes
|
|
// Control.Attributes
|
|
|
|
type
|
|
msidbControlAttributes = DWORD;
|
|
{$EXTERNALSYM msidbControlAttributes}
|
|
|
|
const
|
|
msidbControlAttributesVisible = $00000001;
|
|
{$EXTERNALSYM msidbControlAttributesVisible}
|
|
msidbControlAttributesEnabled = $00000002;
|
|
{$EXTERNALSYM msidbControlAttributesEnabled}
|
|
msidbControlAttributesSunken = $00000004;
|
|
{$EXTERNALSYM msidbControlAttributesSunken}
|
|
msidbControlAttributesIndirect = $00000008;
|
|
{$EXTERNALSYM msidbControlAttributesIndirect}
|
|
msidbControlAttributesInteger = $00000010;
|
|
{$EXTERNALSYM msidbControlAttributesInteger}
|
|
msidbControlAttributesRTLRO = $00000020;
|
|
{$EXTERNALSYM msidbControlAttributesRTLRO}
|
|
msidbControlAttributesRightAligned = $00000040;
|
|
{$EXTERNALSYM msidbControlAttributesRightAligned}
|
|
msidbControlAttributesLeftScroll = $00000080;
|
|
{$EXTERNALSYM msidbControlAttributesLeftScroll}
|
|
msidbControlAttributesBiDi = msidbControlAttributesRTLRO or
|
|
msidbControlAttributesRightAligned or msidbControlAttributesLeftScroll;
|
|
{$EXTERNALSYM msidbControlAttributesBiDi}
|
|
|
|
// Text controls
|
|
|
|
msidbControlAttributesTransparent = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesTransparent}
|
|
msidbControlAttributesNoPrefix = $00020000;
|
|
{$EXTERNALSYM msidbControlAttributesNoPrefix}
|
|
msidbControlAttributesNoWrap = $00040000;
|
|
{$EXTERNALSYM msidbControlAttributesNoWrap}
|
|
msidbControlAttributesFormatSize = $00080000;
|
|
{$EXTERNALSYM msidbControlAttributesFormatSize}
|
|
msidbControlAttributesUsersLanguage = $00100000;
|
|
{$EXTERNALSYM msidbControlAttributesUsersLanguage}
|
|
|
|
// Edit controls
|
|
|
|
msidbControlAttributesMultiline = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesMultiline}
|
|
msidbControlAttributesPasswordInput = $00200000;
|
|
{$EXTERNALSYM msidbControlAttributesPasswordInput}
|
|
|
|
// ProgressBar controls
|
|
|
|
msidbControlAttributesProgress95 = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesProgress95}
|
|
|
|
// VolumeSelectCombo and DirectoryCombo controls
|
|
|
|
msidbControlAttributesRemovableVolume = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesRemovableVolume}
|
|
msidbControlAttributesFixedVolume = $00020000;
|
|
{$EXTERNALSYM msidbControlAttributesFixedVolume}
|
|
msidbControlAttributesRemoteVolume = $00040000;
|
|
{$EXTERNALSYM msidbControlAttributesRemoteVolume}
|
|
msidbControlAttributesCDROMVolume = $00080000;
|
|
{$EXTERNALSYM msidbControlAttributesCDROMVolume}
|
|
msidbControlAttributesRAMDiskVolume = $00100000;
|
|
{$EXTERNALSYM msidbControlAttributesRAMDiskVolume}
|
|
msidbControlAttributesFloppyVolume = $00200000;
|
|
{$EXTERNALSYM msidbControlAttributesFloppyVolume}
|
|
|
|
// VolumeCostList controls
|
|
|
|
msidbControlShowRollbackCost = $00400000;
|
|
{$EXTERNALSYM msidbControlShowRollbackCost}
|
|
|
|
// ListBox and ComboBox controls
|
|
|
|
msidbControlAttributesSorted = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesSorted}
|
|
msidbControlAttributesComboList = $00020000;
|
|
{$EXTERNALSYM msidbControlAttributesComboList}
|
|
|
|
// picture button controls
|
|
|
|
msidbControlAttributesImageHandle = $00010000;
|
|
{$EXTERNALSYM msidbControlAttributesImageHandle}
|
|
msidbControlAttributesPushLike = $00020000;
|
|
{$EXTERNALSYM msidbControlAttributesPushLike}
|
|
msidbControlAttributesBitmap = $00040000;
|
|
{$EXTERNALSYM msidbControlAttributesBitmap}
|
|
msidbControlAttributesIcon = $00080000;
|
|
{$EXTERNALSYM msidbControlAttributesIcon}
|
|
msidbControlAttributesFixedSize = $00100000;
|
|
{$EXTERNALSYM msidbControlAttributesFixedSize}
|
|
msidbControlAttributesIconSize16 = $00200000;
|
|
{$EXTERNALSYM msidbControlAttributesIconSize16}
|
|
msidbControlAttributesIconSize32 = $00400000;
|
|
{$EXTERNALSYM msidbControlAttributesIconSize32}
|
|
msidbControlAttributesIconSize48 = $00600000;
|
|
{$EXTERNALSYM msidbControlAttributesIconSize48}
|
|
|
|
// RadioButton controls
|
|
|
|
msidbControlAttributesHasBorder = $01000000;
|
|
{$EXTERNALSYM msidbControlAttributesHasBorder}
|
|
|
|
// CompLocator.Type
|
|
// IniLocator.Type
|
|
// RegLocator.Type
|
|
|
|
type
|
|
msidbLocatorType = DWORD;
|
|
{$EXTERNALSYM msidbLocatorType}
|
|
|
|
const
|
|
msidbLocatorTypeDirectory = $00000000;
|
|
{$EXTERNALSYM msidbLocatorTypeDirectory}
|
|
msidbLocatorTypeFileName = $00000001;
|
|
{$EXTERNALSYM msidbLocatorTypeFileName}
|
|
msidbLocatorTypeRawValue = $00000002;
|
|
{$EXTERNALSYM msidbLocatorTypeRawValue}
|
|
msidbLocatorType64bit = $00000010;
|
|
{$EXTERNALSYM msidbLocatorType64bit}
|
|
|
|
// Component.Attributes
|
|
|
|
type
|
|
msidbComponentAttributes = DWORD;
|
|
{$EXTERNALSYM msidbComponentAttributes}
|
|
|
|
const
|
|
msidbComponentAttributesLocalOnly = $00000000;
|
|
{$EXTERNALSYM msidbComponentAttributesLocalOnly}
|
|
msidbComponentAttributesSourceOnly = $00000001;
|
|
{$EXTERNALSYM msidbComponentAttributesSourceOnly}
|
|
msidbComponentAttributesOptional = $00000002; // local or source
|
|
{$EXTERNALSYM msidbComponentAttributesOptional}
|
|
msidbComponentAttributesRegistryKeyPath = $00000004; // KeyPath is key to Registry table
|
|
{$EXTERNALSYM msidbComponentAttributesRegistryKeyPath}
|
|
msidbComponentAttributesSharedDllRefCount = $00000008; // increment SharedDll count
|
|
{$EXTERNALSYM msidbComponentAttributesSharedDllRefCount}
|
|
msidbComponentAttributesPermanent = $00000010; // never uninstall component
|
|
{$EXTERNALSYM msidbComponentAttributesPermanent}
|
|
msidbComponentAttributesODBCDataSource = $00000020; // KeyFile is key to ODBCDataSource table
|
|
{$EXTERNALSYM msidbComponentAttributesODBCDataSource}
|
|
msidbComponentAttributesTransitive = $00000040; // Can transition to/from installed/uninstalled based on changing conditional
|
|
{$EXTERNALSYM msidbComponentAttributesTransitive}
|
|
msidbComponentAttributesNeverOverwrite = $00000080; // dont stomp over existing component if key path exists (file/ regkey)
|
|
{$EXTERNALSYM msidbComponentAttributesNeverOverwrite}
|
|
msidbComponentAttributes64bit = $00000100; // designates a 64-bit component; 32-bit if missing.
|
|
{$EXTERNALSYM msidbComponentAttributes64bit}
|
|
|
|
// Assembly.Attributes
|
|
|
|
type
|
|
msidbAssemblyAttributes = DWORD;
|
|
{$EXTERNALSYM msidbAssemblyAttributes}
|
|
|
|
const
|
|
msidbAssemblyAttributesURT = $00000000;
|
|
{$EXTERNALSYM msidbAssemblyAttributesURT}
|
|
msidbAssemblyAttributesWin32 = $00000001;
|
|
{$EXTERNALSYM msidbAssemblyAttributesWin32}
|
|
|
|
// CustomAction.Type
|
|
|
|
type
|
|
msidbCustomActionType = DWORD;
|
|
{$EXTERNALSYM msidbCustomActionType}
|
|
|
|
const
|
|
|
|
// executable types
|
|
|
|
msidbCustomActionTypeDll = $00000001; // Target = entry point name
|
|
{$EXTERNALSYM msidbCustomActionTypeDll}
|
|
msidbCustomActionTypeExe = $00000002; // Target = command line args
|
|
{$EXTERNALSYM msidbCustomActionTypeExe}
|
|
msidbCustomActionTypeTextData = $00000003; // Target = text string to be formatted and set into property
|
|
{$EXTERNALSYM msidbCustomActionTypeTextData}
|
|
msidbCustomActionTypeJScript = $00000005; // Target = entry point name, null if none to call
|
|
{$EXTERNALSYM msidbCustomActionTypeJScript}
|
|
msidbCustomActionTypeVBScript = $00000006; // Target = entry point name, null if none to call
|
|
{$EXTERNALSYM msidbCustomActionTypeVBScript}
|
|
msidbCustomActionTypeInstall = $00000007; // Target = property list for nested engine initialization
|
|
{$EXTERNALSYM msidbCustomActionTypeInstall}
|
|
|
|
// source of code
|
|
|
|
msidbCustomActionTypeBinaryData = $00000000; // Source = Binary.Name, data stored in stream
|
|
{$EXTERNALSYM msidbCustomActionTypeBinaryData}
|
|
msidbCustomActionTypeSourceFile = $00000010; // Source = File.File, file part of installation
|
|
{$EXTERNALSYM msidbCustomActionTypeSourceFile}
|
|
msidbCustomActionTypeDirectory = $00000020; // Source = Directory.Directory, folder containing existing file
|
|
{$EXTERNALSYM msidbCustomActionTypeDirectory}
|
|
msidbCustomActionTypeProperty = $00000030; // Source = Property.Property, full path to executable
|
|
{$EXTERNALSYM msidbCustomActionTypeProperty}
|
|
|
|
// return processing // default is syncronous execution, process return code
|
|
|
|
msidbCustomActionTypeContinue = $00000040; // ignore action return status, continue running
|
|
{$EXTERNALSYM msidbCustomActionTypeContinue}
|
|
msidbCustomActionTypeAsync = $00000080; // run asynchronously
|
|
{$EXTERNALSYM msidbCustomActionTypeAsync}
|
|
|
|
// execution scheduling flags // default is execute whenever sequenced
|
|
|
|
msidbCustomActionTypeFirstSequence = $00000100; // skip if UI sequence already run
|
|
{$EXTERNALSYM msidbCustomActionTypeFirstSequence}
|
|
msidbCustomActionTypeOncePerProcess = $00000200; // skip if UI sequence already run in same process
|
|
{$EXTERNALSYM msidbCustomActionTypeOncePerProcess}
|
|
msidbCustomActionTypeClientRepeat = $00000300; // run on client only if UI already run on client
|
|
{$EXTERNALSYM msidbCustomActionTypeClientRepeat}
|
|
msidbCustomActionTypeInScript = $00000400; // queue for execution within script
|
|
{$EXTERNALSYM msidbCustomActionTypeInScript}
|
|
msidbCustomActionTypeRollback = $00000100; // in conjunction with InScript: queue in Rollback script
|
|
{$EXTERNALSYM msidbCustomActionTypeRollback}
|
|
msidbCustomActionTypeCommit = $00000200; // in conjunction with InScript: run Commit ops from script on success
|
|
{$EXTERNALSYM msidbCustomActionTypeCommit}
|
|
|
|
// security context flag, default to impersonate as user, valid only if InScript
|
|
|
|
msidbCustomActionTypeNoImpersonate = $00000800; // no impersonation, run in system context
|
|
{$EXTERNALSYM msidbCustomActionTypeNoImpersonate}
|
|
|
|
//#if (_WIN32_MSI >= 150)
|
|
msidbCustomActionTypeTSAware = $00004000; // impersonate for per-machine installs on TS machines
|
|
{$EXTERNALSYM msidbCustomActionTypeTSAware}
|
|
//#endif // (_WIN32_MSI >= 150)
|
|
|
|
// script requires 64bit process
|
|
msidbCustomActionType64BitScript = $00001000; // script should run in 64bit process
|
|
{$EXTERNALSYM msidbCustomActionType64BitScript}
|
|
|
|
// don't record the contents of the Target field in the log file.
|
|
msidbCustomActionTypeHideTarget = $00002000;
|
|
{$EXTERNALSYM msidbCustomActionTypeHideTarget}
|
|
|
|
// Dialog.Attributes
|
|
|
|
type
|
|
msidbDialogAttributes = DWORD;
|
|
{$EXTERNALSYM msidbDialogAttributes}
|
|
|
|
const
|
|
msidbDialogAttributesVisible = $00000001;
|
|
{$EXTERNALSYM msidbDialogAttributesVisible}
|
|
msidbDialogAttributesModal = $00000002;
|
|
{$EXTERNALSYM msidbDialogAttributesModal}
|
|
msidbDialogAttributesMinimize = $00000004;
|
|
{$EXTERNALSYM msidbDialogAttributesMinimize}
|
|
msidbDialogAttributesSysModal = $00000008;
|
|
{$EXTERNALSYM msidbDialogAttributesSysModal}
|
|
msidbDialogAttributesKeepModeless = $00000010;
|
|
{$EXTERNALSYM msidbDialogAttributesKeepModeless}
|
|
msidbDialogAttributesTrackDiskSpace = $00000020;
|
|
{$EXTERNALSYM msidbDialogAttributesTrackDiskSpace}
|
|
msidbDialogAttributesUseCustomPalette = $00000040;
|
|
{$EXTERNALSYM msidbDialogAttributesUseCustomPalette}
|
|
msidbDialogAttributesRTLRO = $00000080;
|
|
{$EXTERNALSYM msidbDialogAttributesRTLRO}
|
|
msidbDialogAttributesRightAligned = $00000100;
|
|
{$EXTERNALSYM msidbDialogAttributesRightAligned}
|
|
msidbDialogAttributesLeftScroll = $00000200;
|
|
{$EXTERNALSYM msidbDialogAttributesLeftScroll}
|
|
msidbDialogAttributesBiDi = msidbDialogAttributesRTLRO or
|
|
msidbDialogAttributesRightAligned or msidbDialogAttributesLeftScroll;
|
|
{$EXTERNALSYM msidbDialogAttributesBiDi}
|
|
msidbDialogAttributesError = $00010000;
|
|
{$EXTERNALSYM msidbDialogAttributesError}
|
|
|
|
// Feature.Attributes
|
|
|
|
type
|
|
msidbFeatureAttributes = DWORD;
|
|
{$EXTERNALSYM msidbFeatureAttributes}
|
|
|
|
const
|
|
msidbFeatureAttributesFavorLocal = $00000000;
|
|
{$EXTERNALSYM msidbFeatureAttributesFavorLocal}
|
|
msidbFeatureAttributesFavorSource = $00000001;
|
|
{$EXTERNALSYM msidbFeatureAttributesFavorSource}
|
|
msidbFeatureAttributesFollowParent = $00000002;
|
|
{$EXTERNALSYM msidbFeatureAttributesFollowParent}
|
|
msidbFeatureAttributesFavorAdvertise = $00000004;
|
|
{$EXTERNALSYM msidbFeatureAttributesFavorAdvertise}
|
|
msidbFeatureAttributesDisallowAdvertise = $00000008;
|
|
{$EXTERNALSYM msidbFeatureAttributesDisallowAdvertise}
|
|
msidbFeatureAttributesUIDisallowAbsent = $00000010;
|
|
{$EXTERNALSYM msidbFeatureAttributesUIDisallowAbsent}
|
|
msidbFeatureAttributesNoUnsupportedAdvertise = $00000020;
|
|
{$EXTERNALSYM msidbFeatureAttributesNoUnsupportedAdvertise}
|
|
|
|
// File.Attributes
|
|
|
|
type
|
|
msidbFileAttributes = DWORD;
|
|
{$EXTERNALSYM msidbFileAttributes}
|
|
|
|
const
|
|
msidbFileAttributesReadOnly = $00000001;
|
|
{$EXTERNALSYM msidbFileAttributesReadOnly}
|
|
msidbFileAttributesHidden = $00000002;
|
|
{$EXTERNALSYM msidbFileAttributesHidden}
|
|
msidbFileAttributesSystem = $00000004;
|
|
{$EXTERNALSYM msidbFileAttributesSystem}
|
|
msidbFileAttributesReserved0 = $00000008; // Internal use only - must be 0
|
|
{$EXTERNALSYM msidbFileAttributesReserved0}
|
|
msidbFileAttributesReserved1 = $00000040; // Internal use only - must be 0
|
|
{$EXTERNALSYM msidbFileAttributesReserved1}
|
|
msidbFileAttributesReserved2 = $00000080; // Internal use only - must be 0
|
|
{$EXTERNALSYM msidbFileAttributesReserved2}
|
|
msidbFileAttributesReserved3 = $00000100; // Internal use only - must be 0
|
|
{$EXTERNALSYM msidbFileAttributesReserved3}
|
|
msidbFileAttributesVital = $00000200;
|
|
{$EXTERNALSYM msidbFileAttributesVital}
|
|
msidbFileAttributesChecksum = $00000400;
|
|
{$EXTERNALSYM msidbFileAttributesChecksum}
|
|
msidbFileAttributesPatchAdded = $00001000; // Internal use only - set by patches
|
|
{$EXTERNALSYM msidbFileAttributesPatchAdded}
|
|
msidbFileAttributesNoncompressed = $00002000;
|
|
{$EXTERNALSYM msidbFileAttributesNoncompressed}
|
|
msidbFileAttributesCompressed = $00004000;
|
|
{$EXTERNALSYM msidbFileAttributesCompressed}
|
|
msidbFileAttributesReserved4 = $00008000; // Internal use only - must be 0
|
|
{$EXTERNALSYM msidbFileAttributesReserved4}
|
|
|
|
// IniFile.Action
|
|
// RemoveIniFile.Action
|
|
|
|
type
|
|
msidbIniFileAction = DWORD;
|
|
{$EXTERNALSYM msidbIniFileAction}
|
|
|
|
const
|
|
msidbIniFileActionAddLine = $00000000;
|
|
{$EXTERNALSYM msidbIniFileActionAddLine}
|
|
msidbIniFileActionCreateLine = $00000001;
|
|
{$EXTERNALSYM msidbIniFileActionCreateLine}
|
|
msidbIniFileActionRemoveLine = $00000002;
|
|
{$EXTERNALSYM msidbIniFileActionRemoveLine}
|
|
msidbIniFileActionAddTag = $00000003;
|
|
{$EXTERNALSYM msidbIniFileActionAddTag}
|
|
msidbIniFileActionRemoveTag = $00000004;
|
|
{$EXTERNALSYM msidbIniFileActionRemoveTag}
|
|
|
|
// MoveFile.Options
|
|
|
|
type
|
|
msidbMoveFileOptions = DWORD;
|
|
{$EXTERNALSYM msidbMoveFileOptions}
|
|
|
|
const
|
|
msidbMoveFileOptionsMove = $00000001;
|
|
{$EXTERNALSYM msidbMoveFileOptionsMove}
|
|
|
|
// ODBCDataSource.Registration
|
|
|
|
type
|
|
msidbODBCDataSourceRegistration = DWORD;
|
|
{$EXTERNALSYM msidbODBCDataSourceRegistration}
|
|
|
|
const
|
|
msidbODBCDataSourceRegistrationPerMachine = $00000000;
|
|
{$EXTERNALSYM msidbODBCDataSourceRegistrationPerMachine}
|
|
msidbODBCDataSourceRegistrationPerUser = $00000001;
|
|
{$EXTERNALSYM msidbODBCDataSourceRegistrationPerUser}
|
|
|
|
// Class.Attributes
|
|
|
|
type
|
|
msidbClassAttributes = DWORD;
|
|
{$EXTERNALSYM msidbClassAttributes}
|
|
|
|
const
|
|
msidbClassAttributesRelativePath = $00000001;
|
|
{$EXTERNALSYM msidbClassAttributesRelativePath}
|
|
|
|
// Patch.Attributes
|
|
|
|
type
|
|
msidbPatchAttributes = DWORD;
|
|
{$EXTERNALSYM msidbPatchAttributes}
|
|
|
|
const
|
|
msidbPatchAttributesNonVital = $00000001;
|
|
{$EXTERNALSYM msidbPatchAttributesNonVital}
|
|
|
|
// Registry.Root
|
|
// RegLocator.Root
|
|
// RemoveRegistry.Root
|
|
|
|
type
|
|
msidbRegistryRoot = DWORD;
|
|
{$EXTERNALSYM msidbRegistryRoot}
|
|
|
|
const
|
|
msidbRegistryRootClassesRoot = 0;
|
|
{$EXTERNALSYM msidbRegistryRootClassesRoot}
|
|
msidbRegistryRootCurrentUser = 1;
|
|
{$EXTERNALSYM msidbRegistryRootCurrentUser}
|
|
msidbRegistryRootLocalMachine = 2;
|
|
{$EXTERNALSYM msidbRegistryRootLocalMachine}
|
|
msidbRegistryRootUsers = 3;
|
|
{$EXTERNALSYM msidbRegistryRootUsers}
|
|
|
|
// RemoveFile.InstallMode
|
|
|
|
type
|
|
msidbRemoveFileInstallMode = DWORD;
|
|
{$EXTERNALSYM msidbRemoveFileInstallMode}
|
|
|
|
const
|
|
msidbRemoveFileInstallModeOnInstall = $00000001;
|
|
{$EXTERNALSYM msidbRemoveFileInstallModeOnInstall}
|
|
msidbRemoveFileInstallModeOnRemove = $00000002;
|
|
{$EXTERNALSYM msidbRemoveFileInstallModeOnRemove}
|
|
msidbRemoveFileInstallModeOnBoth = $00000003;
|
|
{$EXTERNALSYM msidbRemoveFileInstallModeOnBoth}
|
|
|
|
// ServiceControl.Event
|
|
|
|
type
|
|
msidbServiceControlEvent = DWORD;
|
|
{$EXTERNALSYM msidbServiceControlEvent}
|
|
|
|
const
|
|
msidbServiceControlEventStart = $00000001;
|
|
{$EXTERNALSYM msidbServiceControlEventStart}
|
|
msidbServiceControlEventStop = $00000002;
|
|
{$EXTERNALSYM msidbServiceControlEventStop}
|
|
msidbServiceControlEventDelete = $00000008;
|
|
{$EXTERNALSYM msidbServiceControlEventDelete}
|
|
msidbServiceControlEventUninstallStart = $00000010;
|
|
{$EXTERNALSYM msidbServiceControlEventUninstallStart}
|
|
msidbServiceControlEventUninstallStop = $00000020;
|
|
{$EXTERNALSYM msidbServiceControlEventUninstallStop}
|
|
msidbServiceControlEventUninstallDelete = $00000080;
|
|
{$EXTERNALSYM msidbServiceControlEventUninstallDelete}
|
|
|
|
// ServiceInstall.ErrorControl
|
|
|
|
type
|
|
msidbServiceInstallErrorControl = DWORD;
|
|
{$EXTERNALSYM msidbServiceInstallErrorControl}
|
|
|
|
const
|
|
msidbServiceInstallErrorControlVital = $00008000;
|
|
{$EXTERNALSYM msidbServiceInstallErrorControlVital}
|
|
|
|
// TextStyle.StyleBits
|
|
|
|
type
|
|
msidbTextStyleStyleBits = DWORD;
|
|
{$EXTERNALSYM msidbTextStyleStyleBits}
|
|
|
|
const
|
|
msidbTextStyleStyleBitsBold = $00000001;
|
|
{$EXTERNALSYM msidbTextStyleStyleBitsBold}
|
|
msidbTextStyleStyleBitsItalic = $00000002;
|
|
{$EXTERNALSYM msidbTextStyleStyleBitsItalic}
|
|
msidbTextStyleStyleBitsUnderline = $00000004;
|
|
{$EXTERNALSYM msidbTextStyleStyleBitsUnderline}
|
|
msidbTextStyleStyleBitsStrike = $00000008;
|
|
{$EXTERNALSYM msidbTextStyleStyleBitsStrike}
|
|
|
|
// Upgrade.Attributes
|
|
|
|
type
|
|
msidbUpgradeAttributes = DWORD;
|
|
{$EXTERNALSYM msidbUpgradeAttributes}
|
|
|
|
const
|
|
msidbUpgradeAttributesMigrateFeatures = $00000001;
|
|
{$EXTERNALSYM msidbUpgradeAttributesMigrateFeatures}
|
|
msidbUpgradeAttributesOnlyDetect = $00000002;
|
|
{$EXTERNALSYM msidbUpgradeAttributesOnlyDetect}
|
|
msidbUpgradeAttributesIgnoreRemoveFailure = $00000004;
|
|
{$EXTERNALSYM msidbUpgradeAttributesIgnoreRemoveFailure}
|
|
msidbUpgradeAttributesVersionMinInclusive = $00000100;
|
|
{$EXTERNALSYM msidbUpgradeAttributesVersionMinInclusive}
|
|
msidbUpgradeAttributesVersionMaxInclusive = $00000200;
|
|
{$EXTERNALSYM msidbUpgradeAttributesVersionMaxInclusive}
|
|
msidbUpgradeAttributesLanguagesExclusive = $00000400;
|
|
{$EXTERNALSYM msidbUpgradeAttributesLanguagesExclusive}
|
|
|
|
//------------------------------------------------------------------------------
|
|
// SUMMARY INFORMATION PROPERTY DEFINITIONS
|
|
//------------------------------------------------------------------------------
|
|
|
|
type
|
|
msidbSumInfoSourceType = DWORD;
|
|
{$EXTERNALSYM msidbSumInfoSourceType}
|
|
|
|
const
|
|
msidbSumInfoSourceTypeSFN = $00000001; // source uses short filenames
|
|
{$EXTERNALSYM msidbSumInfoSourceTypeSFN}
|
|
msidbSumInfoSourceTypeCompressed = $00000002; // source is compressed
|
|
{$EXTERNALSYM msidbSumInfoSourceTypeCompressed}
|
|
msidbSumInfoSourceTypeAdminImage = $00000004; // source is an admin image
|
|
{$EXTERNALSYM msidbSumInfoSourceTypeAdminImage}
|
|
|
|
implementation
|
|
|
|
end.
|