|  | /** | 
|  | * This file has no copyright assigned and is placed in the Public Domain. | 
|  | * This file is part of the w64 mingw-runtime package. | 
|  | * No warranty is given; refer to the file DISCLAIMER within this package. | 
|  | */ | 
|  | #ifndef __MSIDEFS | 
|  | #define __MSIDEFS | 
|  |  | 
|  | #ifndef NTDDI_WIN2K | 
|  | #define NTDDI_WIN2K 0x05000000 | 
|  | #endif | 
|  | #ifndef NTDDI_WINXP | 
|  | #define NTDDI_WINXP 0x05010000 | 
|  | #endif | 
|  | #ifndef NTDDI_WINXPSP2 | 
|  | #define NTDDI_WINXPSP2 0x05010200 | 
|  | #endif | 
|  | #ifndef NTDDI_WS03SP1 | 
|  | #define NTDDI_WS03SP1 0x05020100 | 
|  | #endif | 
|  |  | 
|  | #ifndef _WIN32_MSI | 
|  | #if (defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WS03SP1) | 
|  | #define _WIN32_MSI 310 | 
|  | #elif (defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WINXPSP2) | 
|  | #define _WIN32_MSI 300 | 
|  | #else | 
|  | #define _WIN32_MSI 200 | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_PRODUCTNAME TEXT("ProductName") | 
|  | #define IPROPNAME_PRODUCTCODE TEXT("ProductCode") | 
|  | #define IPROPNAME_PRODUCTVERSION TEXT("ProductVersion") | 
|  | #define IPROPNAME_INSTALLLANGUAGE TEXT("ProductLanguage") | 
|  | #define IPROPNAME_MANUFACTURER TEXT("Manufacturer") | 
|  |  | 
|  | #define IPROPNAME_UPGRADECODE TEXT("UpgradeCode") | 
|  | #define IPROPNAME_PIDTEMPLATE TEXT("PIDTemplate") | 
|  | #define IPROPNAME_DISKPROMPT TEXT("DiskPrompt") | 
|  | #define IPROPNAME_LEFTUNIT TEXT("LeftUnit") | 
|  | #define IPROPNAME_ADMIN_PROPERTIES TEXT("AdminProperties") | 
|  | #define IPROPNAME_DEFAULTUIFONT TEXT("DefaultUIFont") | 
|  | #define IPROPNAME_ALLOWEDPROPERTIES TEXT("SecureCustomProperties") | 
|  | #define IPROPNAME_ENABLEUSERCONTROL TEXT("EnableUserControl") | 
|  | #define IPROPNAME_HIDDEN_PROPERTIES TEXT("MsiHiddenProperties") | 
|  |  | 
|  | #define IPROPNAME_USERNAME TEXT("USERNAME") | 
|  | #define IPROPNAME_COMPANYNAME TEXT("COMPANYNAME") | 
|  | #define IPROPNAME_PIDKEY TEXT("PIDKEY") | 
|  | #define IPROPNAME_PATCH TEXT("PATCH") | 
|  | #define IPROPNAME_MSIPATCHREMOVE TEXT("MSIPATCHREMOVE") | 
|  | #define IPROPNAME_TARGETDIR TEXT("TARGETDIR") | 
|  | #define IPROPNAME_ACTION TEXT("ACTION") | 
|  | #define IPROPNAME_LIMITUI TEXT("LIMITUI") | 
|  | #define IPROPNAME_LOGACTION TEXT("LOGACTION") | 
|  | #define IPROPNAME_ALLUSERS TEXT("ALLUSERS") | 
|  | #define IPROPNAME_INSTALLLEVEL TEXT("INSTALLLEVEL") | 
|  | #define IPROPNAME_REBOOT TEXT("REBOOT") | 
|  | #if (_WIN32_MSI >= 110) | 
|  | #define IPROPNAME_REBOOTPROMPT TEXT("REBOOTPROMPT") | 
|  | #endif | 
|  | #define IPROPNAME_EXECUTEMODE TEXT("EXECUTEMODE") | 
|  | #define IPROPVALUE_EXECUTEMODE_NONE TEXT("NONE") | 
|  | #define IPROPVALUE_EXECUTEMODE_SCRIPT TEXT("SCRIPT") | 
|  | #define IPROPNAME_EXECUTEACTION TEXT("EXECUTEACTION") | 
|  | #define IPROPNAME_SOURCELIST TEXT("SOURCELIST") | 
|  | #define IPROPNAME_ROOTDRIVE TEXT("ROOTDRIVE") | 
|  | #define IPROPNAME_TRANSFORMS TEXT("TRANSFORMS") | 
|  | #define IPROPNAME_TRANSFORMSATSOURCE TEXT("TRANSFORMSATSOURCE") | 
|  | #define IPROPNAME_TRANSFORMSSECURE TEXT("TRANSFORMSSECURE") | 
|  | #define IPROPNAME_SEQUENCE TEXT("SEQUENCE") | 
|  | #define IPROPNAME_SHORTFILENAMES TEXT("SHORTFILENAMES") | 
|  | #define IPROPNAME_PRIMARYFOLDER TEXT("PRIMARYFOLDER") | 
|  | #define IPROPNAME_AFTERREBOOT TEXT("AFTERREBOOT") | 
|  | #define IPROPNAME_NOCOMPANYNAME TEXT("NOCOMPANYNAME") | 
|  | #define IPROPNAME_NOUSERNAME TEXT("NOUSERNAME") | 
|  | #define IPROPNAME_DISABLEROLLBACK TEXT("DISABLEROLLBACK") | 
|  | #define IPROPNAME_AVAILABLEFREEREG TEXT("AVAILABLEFREEREG") | 
|  | #define IPROPNAME_DISABLEADVTSHORTCUTS TEXT("DISABLEADVTSHORTCUTS") | 
|  | #define IPROPNAME_PATCHNEWPACKAGECODE TEXT("PATCHNEWPACKAGECODE") | 
|  |  | 
|  | #define IPROPNAME_PATCHNEWSUMMARYSUBJECT TEXT("PATCHNEWSUMMARYSUBJECT") | 
|  |  | 
|  | #define IPROPNAME_PATCHNEWSUMMARYCOMMENTS TEXT("PATCHNEWSUMMARYCOMMENTS") | 
|  |  | 
|  | #define IPROPNAME_PRODUCTLANGUAGE TEXT("PRODUCTLANGUAGE") | 
|  |  | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_CHECKCRCS TEXT("MSICHECKCRCS") | 
|  | #define IPROPNAME_MSINODISABLEMEDIA TEXT("MSINODISABLEMEDIA") | 
|  |  | 
|  | #define IPROPNAME_CARRYINGNDP TEXT("CARRYINGNDP") | 
|  | #define IPROPVALUE__CARRYINGNDP_URTREINSTALL TEXT("URTREINSTALL") | 
|  | #define IPROPVALUE__CARRYINGNDP_URTUPGRADE TEXT("URTUPGRADE") | 
|  | #define IPROPNAME_ENFORCE_UPGRADE_COMPONENT_RULES TEXT("MSIENFORCEUPGRADECOMPONENTRULES") | 
|  |  | 
|  | #define IPROPNAME_MSINEWINSTANCE TEXT("MSINEWINSTANCE") | 
|  | #define IPROPNAME_MSIINSTANCEGUID TEXT("MSIINSTANCEGUID") | 
|  |  | 
|  | #define IPROPNAME_MSIPACKAGEDOWNLOADLOCALCOPY TEXT("MSIPACKAGEDOWNLOADLOCALCOPY") | 
|  | #define IPROPNAME_MSIPATCHDOWNLOADLOCALCOPY TEXT("MSIPATCHDOWNLOADLOCALCOPY") | 
|  | #endif | 
|  |  | 
|  | #if (_WIN32_MSI >= 300) | 
|  |  | 
|  | #define IPROPNAME_MSIDISABLELUAPATCHING TEXT("MSIDISABLELUAPATCHING") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_ARPAUTHORIZEDCDFPREFIX TEXT("ARPAUTHORIZEDCDFPREFIX") | 
|  | #define IPROPNAME_ARPCOMMENTS TEXT("ARPCOMMENTS") | 
|  | #define IPROPNAME_ARPCONTACT TEXT("ARPCONTACT") | 
|  | #define IPROPNAME_ARPHELPLINK TEXT("ARPHELPLINK") | 
|  | #define IPROPNAME_ARPHELPTELEPHONE TEXT("ARPHELPTELEPHONE") | 
|  | #define IPROPNAME_ARPINSTALLLOCATION TEXT("ARPINSTALLLOCATION") | 
|  | #define IPROPNAME_ARPNOMODIFY TEXT("ARPNOMODIFY") | 
|  | #define IPROPNAME_ARPNOREMOVE TEXT("ARPNOREMOVE") | 
|  | #define IPROPNAME_ARPNOREPAIR TEXT("ARPNOREPAIR") | 
|  | #define IPROPNAME_ARPREADME TEXT("ARPREADME") | 
|  | #define IPROPNAME_ARPSIZE TEXT("ARPSIZE") | 
|  | #define IPROPNAME_ARPSYSTEMCOMPONENT TEXT("ARPSYSTEMCOMPONENT") | 
|  | #define IPROPNAME_ARPURLINFOABOUT TEXT("ARPURLINFOABOUT") | 
|  | #define IPROPNAME_ARPURLUPDATEINFO TEXT("ARPURLUPDATEINFO") | 
|  | #if (_WIN32_MSI >= 110) | 
|  | #define IPROPNAME_ARPPRODUCTICON TEXT("ARPPRODUCTICON") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_INSTALLED TEXT("Installed") | 
|  | #define IPROPNAME_PRODUCTSTATE TEXT("ProductState") | 
|  | #define IPROPNAME_PRESELECTED TEXT("Preselected") | 
|  | #define IPROPNAME_RESUME TEXT("RESUME") | 
|  | #define IPROPNAME_UPDATESTARTED TEXT("UpdateStarted") | 
|  | #define IPROPNAME_PRODUCTID TEXT("ProductID") | 
|  | #define IPROPNAME_OUTOFDISKSPACE TEXT("OutOfDiskSpace") | 
|  | #define IPROPNAME_OUTOFNORBDISKSPACE TEXT("OutOfNoRbDiskSpace") | 
|  | #define IPROPNAME_COSTINGCOMPLETE TEXT("CostingComplete") | 
|  | #define IPROPNAME_SOURCEDIR TEXT("SourceDir") | 
|  | #define IPROPNAME_REPLACEDINUSEFILES TEXT("ReplacedInUseFiles") | 
|  | #define IPROPNAME_PRIMARYFOLDER_PATH TEXT("PrimaryVolumePath") | 
|  | #define IPROPNAME_PRIMARYFOLDER_SPACEAVAILABLE TEXT("PrimaryVolumeSpaceAvailable") | 
|  | #define IPROPNAME_PRIMARYFOLDER_SPACEREQUIRED TEXT("PrimaryVolumeSpaceRequired") | 
|  | #define IPROPNAME_PRIMARYFOLDER_SPACEREMAINING TEXT("PrimaryVolumeSpaceRemaining") | 
|  | #define IPROPNAME_ISADMINPACKAGE TEXT("IsAdminPackage") | 
|  | #define IPROPNAME_ROLLBACKDISABLED TEXT("RollbackDisabled") | 
|  | #define IPROPNAME_RESTRICTEDUSERCONTROL TEXT("RestrictedUserControl") | 
|  | #if (_WIN32_MSI >= 300) | 
|  | #define IPROPNAME_SOURCERESONLY TEXT("MsiUISourceResOnly") | 
|  | #define IPROPNAME_HIDECANCEL TEXT("MsiUIHideCancel") | 
|  | #define IPROPNAME_PROGRESSONLY TEXT("MsiUIProgressOnly") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_TIME TEXT("Time") | 
|  | #define IPROPNAME_DATE TEXT("Date") | 
|  | #define IPROPNAME_DATETIME TEXT("DateTime") | 
|  |  | 
|  | #define IPROPNAME_INTEL TEXT("Intel") | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_TEMPLATE_AMD64 TEXT("AMD64") | 
|  | #define IPROPNAME_TEMPLATE_X64 TEXT("x64") | 
|  | #define IPROPNAME_MSIAMD64 TEXT("MsiAMD64") | 
|  | #define IPROPNAME_MSIX64 TEXT("Msix64") | 
|  | #define IPROPNAME_INTEL64 TEXT("Intel64") | 
|  | #else | 
|  | #define IPROPNAME_IA64 TEXT("IA64") | 
|  | #endif | 
|  | #define IPROPNAME_TEXTHEIGHT TEXT("TextHeight") | 
|  | #define IPROPNAME_SCREENX TEXT("ScreenX") | 
|  | #define IPROPNAME_SCREENY TEXT("ScreenY") | 
|  | #define IPROPNAME_CAPTIONHEIGHT TEXT("CaptionHeight") | 
|  | #define IPROPNAME_BORDERTOP TEXT("BorderTop") | 
|  | #define IPROPNAME_BORDERSIDE TEXT("BorderSide") | 
|  | #define IPROPNAME_COLORBITS TEXT("ColorBits") | 
|  | #define IPROPNAME_PHYSICALMEMORY TEXT("PhysicalMemory") | 
|  | #define IPROPNAME_VIRTUALMEMORY TEXT("VirtualMemory") | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_TEXTHEIGHT_CORRECTION TEXT("TextHeightCorrection") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_VERSIONNT TEXT("VersionNT") | 
|  | #define IPROPNAME_VERSION9X TEXT("Version9X") | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_VERSIONNT64 TEXT("VersionNT64") | 
|  | #endif | 
|  | #define IPROPNAME_WINDOWSBUILD TEXT("WindowsBuild") | 
|  | #define IPROPNAME_SERVICEPACKLEVEL TEXT("ServicePackLevel") | 
|  | #if (_WIN32_MSI >= 110) | 
|  | #define IPROPNAME_SERVICEPACKLEVELMINOR TEXT("ServicePackLevelMinor") | 
|  | #endif | 
|  | #define IPROPNAME_SHAREDWINDOWS TEXT("SharedWindows") | 
|  | #define IPROPNAME_COMPUTERNAME TEXT("ComputerName") | 
|  | #define IPROPNAME_SHELLADVTSUPPORT TEXT("ShellAdvtSupport") | 
|  | #define IPROPNAME_OLEADVTSUPPORT TEXT("OLEAdvtSupport") | 
|  | #define IPROPNAME_SYSTEMLANGUAGEID TEXT("SystemLanguageID") | 
|  | #define IPROPNAME_TTCSUPPORT TEXT("TTCSupport") | 
|  | #define IPROPNAME_TERMSERVER TEXT("TerminalServer") | 
|  | #if (_WIN32_MSI >= 110) | 
|  | #define IPROPNAME_REMOTEADMINTS TEXT("RemoteAdminTS") | 
|  | #define IPROPNAME_REDIRECTEDDLLSUPPORT TEXT("RedirectedDllSupport") | 
|  | #endif | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_NTPRODUCTTYPE TEXT("MsiNTProductType") | 
|  | #define IPROPNAME_NTSUITEBACKOFFICE TEXT("MsiNTSuiteBackOffice") | 
|  | #define IPROPNAME_NTSUITEDATACENTER TEXT("MsiNTSuiteDataCenter") | 
|  | #define IPROPNAME_NTSUITEENTERPRISE TEXT("MsiNTSuiteEnterprise") | 
|  | #define IPROPNAME_NTSUITESMALLBUSINESS TEXT("MsiNTSuiteSmallBusiness") | 
|  | #define IPROPNAME_NTSUITESMALLBUSINESSRESTRICTED TEXT("MsiNTSuiteSmallBusinessRestricted") | 
|  | #define IPROPNAME_NTSUITEPERSONAL TEXT("MsiNTSuitePersonal") | 
|  | #define IPROPNAME_NTSUITEWEBSERVER TEXT("MsiNTSuiteWebServer") | 
|  | #define IPROPNAME_NETASSEMBLYSUPPORT TEXT("MsiNetAssemblySupport") | 
|  | #define IPROPNAME_WIN32ASSEMBLYSUPPORT TEXT("MsiWin32AssemblySupport") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_LOGONUSER TEXT("LogonUser") | 
|  | #define IPROPNAME_USERSID TEXT("UserSID") | 
|  | #define IPROPNAME_ADMINUSER TEXT("AdminUser") | 
|  | #define IPROPNAME_USERLANGUAGEID TEXT("UserLanguageID") | 
|  | #define IPROPNAME_PRIVILEGED TEXT("Privileged") | 
|  |  | 
|  | #define IPROPNAME_WINDOWS_FOLDER TEXT("WindowsFolder") | 
|  | #define IPROPNAME_SYSTEM_FOLDER TEXT("SystemFolder") | 
|  | #define IPROPNAME_SYSTEM16_FOLDER TEXT("System16Folder") | 
|  | #define IPROPNAME_WINDOWS_VOLUME TEXT("WindowsVolume") | 
|  | #define IPROPNAME_TEMP_FOLDER TEXT("TempFolder") | 
|  | #define IPROPNAME_PROGRAMFILES_FOLDER TEXT("ProgramFilesFolder") | 
|  | #define IPROPNAME_COMMONFILES_FOLDER TEXT("CommonFilesFolder") | 
|  | #if (_WIN32_MSI >= 150) | 
|  | #define IPROPNAME_SYSTEM64_FOLDER TEXT("System64Folder") | 
|  | #define IPROPNAME_PROGRAMFILES64_FOLDER TEXT("ProgramFiles64Folder") | 
|  | #define IPROPNAME_COMMONFILES64_FOLDER TEXT("CommonFiles64Folder") | 
|  | #endif | 
|  | #define IPROPNAME_STARTMENU_FOLDER TEXT("StartMenuFolder") | 
|  | #define IPROPNAME_PROGRAMMENU_FOLDER TEXT("ProgramMenuFolder") | 
|  | #define IPROPNAME_STARTUP_FOLDER TEXT("StartupFolder") | 
|  | #define IPROPNAME_NETHOOD_FOLDER TEXT("NetHoodFolder") | 
|  | #define IPROPNAME_PERSONAL_FOLDER TEXT("PersonalFolder") | 
|  | #define IPROPNAME_SENDTO_FOLDER TEXT("SendToFolder") | 
|  | #define IPROPNAME_DESKTOP_FOLDER TEXT("DesktopFolder") | 
|  | #define IPROPNAME_TEMPLATE_FOLDER TEXT("TemplateFolder") | 
|  | #define IPROPNAME_FONTS_FOLDER TEXT("FontsFolder") | 
|  | #define IPROPNAME_FAVORITES_FOLDER TEXT("FavoritesFolder") | 
|  | #define IPROPNAME_RECENT_FOLDER TEXT("RecentFolder") | 
|  | #define IPROPNAME_APPDATA_FOLDER TEXT("AppDataFolder") | 
|  | #define IPROPNAME_PRINTHOOD_FOLDER TEXT("PrintHoodFolder") | 
|  | #if (_WIN32_MSI >= 110) | 
|  | #define IPROPNAME_ADMINTOOLS_FOLDER TEXT("AdminToolsFolder") | 
|  | #define IPROPNAME_COMMONAPPDATA_FOLDER TEXT("CommonAppDataFolder") | 
|  | #define IPROPNAME_LOCALAPPDATA_FOLDER TEXT("LocalAppDataFolder") | 
|  | #define IPROPNAME_MYPICTURES_FOLDER TEXT("MyPicturesFolder") | 
|  | #endif | 
|  |  | 
|  | #define IPROPNAME_FEATUREADDLOCAL TEXT("ADDLOCAL") | 
|  | #define IPROPNAME_FEATUREADDSOURCE TEXT("ADDSOURCE") | 
|  | #define IPROPNAME_FEATUREADDDEFAULT TEXT("ADDDEFAULT") | 
|  | #define IPROPNAME_FEATUREREMOVE TEXT("REMOVE") | 
|  | #define IPROPNAME_FEATUREADVERTISE TEXT("ADVERTISE") | 
|  | #define IPROPVALUE_FEATURE_ALL TEXT("ALL") | 
|  |  | 
|  | #define IPROPNAME_COMPONENTADDLOCAL TEXT("COMPADDLOCAL") | 
|  | #define IPROPNAME_COMPONENTADDSOURCE TEXT("COMPADDSOURCE") | 
|  | #define IPROPNAME_COMPONENTADDDEFAULT TEXT("COMPADDDEFAULT") | 
|  |  | 
|  | #define IPROPNAME_FILEADDLOCAL TEXT("FILEADDLOCAL") | 
|  | #define IPROPNAME_FILEADDSOURCE TEXT("FILEADDSOURCE") | 
|  | #define IPROPNAME_FILEADDDEFAULT TEXT("FILEADDDEFAULT") | 
|  |  | 
|  | #define IPROPNAME_REINSTALL TEXT("REINSTALL") | 
|  | #define IPROPNAME_REINSTALLMODE TEXT("REINSTALLMODE") | 
|  | #define IPROPNAME_PROMPTROLLBACKCOST TEXT("PROMPTROLLBACKCOST") | 
|  | #define IPROPVALUE_RBCOST_PROMPT TEXT("P") | 
|  | #define IPROPVALUE_RBCOST_SILENT TEXT("D") | 
|  | #define IPROPVALUE_RBCOST_FAIL TEXT("F") | 
|  |  | 
|  | #define IPROPNAME_CUSTOMACTIONDATA TEXT("CustomActionData") | 
|  |  | 
|  | #define IACTIONNAME_INSTALL TEXT("INSTALL") | 
|  | #define IACTIONNAME_ADVERTISE TEXT("ADVERTISE") | 
|  | #define IACTIONNAME_ADMIN TEXT("ADMIN") | 
|  | #define IACTIONNAME_SEQUENCE TEXT("SEQUENCE") | 
|  | #define IACTIONNAME_COLLECTUSERINFO TEXT("CollectUserInfo") | 
|  | #define IACTIONNAME_FIRSTRUN TEXT("FirstRun") | 
|  |  | 
|  | #undef PID_SECURITY | 
|  |  | 
|  | #define PID_DICTIONARY (0) | 
|  | #define PID_CODEPAGE (0x1) | 
|  | #define PID_TITLE 2 | 
|  | #define PID_SUBJECT 3 | 
|  | #define PID_AUTHOR 4 | 
|  | #define PID_KEYWORDS 5 | 
|  | #define PID_COMMENTS 6 | 
|  | #define PID_TEMPLATE 7 | 
|  | #define PID_LASTAUTHOR 8 | 
|  | #define PID_REVNUMBER 9 | 
|  | #define PID_EDITTIME 10 | 
|  | #define PID_LASTPRINTED 11 | 
|  | #define PID_CREATE_DTM 12 | 
|  | #define PID_LASTSAVE_DTM 13 | 
|  | #define PID_PAGECOUNT 14 | 
|  | #define PID_WORDCOUNT 15 | 
|  | #define PID_CHARCOUNT 16 | 
|  | #define PID_THUMBNAIL 17 | 
|  | #define PID_APPNAME 18 | 
|  | #define PID_SECURITY 19 | 
|  |  | 
|  | #define PID_MSIVERSION PID_PAGECOUNT | 
|  | #define PID_MSISOURCE PID_WORDCOUNT | 
|  | #define PID_MSIRESTRICT PID_CHARCOUNT | 
|  |  | 
|  | enum msidbControlAttributes { | 
|  | msidbControlAttributesVisible = 0x00000001,msidbControlAttributesEnabled = 0x00000002,msidbControlAttributesSunken = 0x00000004, | 
|  | msidbControlAttributesIndirect = 0x00000008,msidbControlAttributesInteger = 0x00000010,msidbControlAttributesRTLRO = 0x00000020, | 
|  | msidbControlAttributesRightAligned = 0x00000040,msidbControlAttributesLeftScroll = 0x00000080, | 
|  | msidbControlAttributesBiDi = msidbControlAttributesRTLRO | msidbControlAttributesRightAligned | msidbControlAttributesLeftScroll, | 
|  | msidbControlAttributesTransparent = 0x00010000,msidbControlAttributesNoPrefix = 0x00020000,msidbControlAttributesNoWrap = 0x00040000, | 
|  | msidbControlAttributesFormatSize = 0x00080000,msidbControlAttributesUsersLanguage = 0x00100000,msidbControlAttributesMultiline = 0x00010000, | 
|  | #if (_WIN32_MSI >= 110) | 
|  | msidbControlAttributesPasswordInput = 0x00200000, | 
|  | #endif | 
|  | msidbControlAttributesProgress95 = 0x00010000,msidbControlAttributesRemovableVolume = 0x00010000,msidbControlAttributesFixedVolume = 0x00020000, | 
|  | msidbControlAttributesRemoteVolume = 0x00040000,msidbControlAttributesCDROMVolume = 0x00080000,msidbControlAttributesRAMDiskVolume = 0x00100000, | 
|  | msidbControlAttributesFloppyVolume = 0x00200000,msidbControlShowRollbackCost = 0x00400000,msidbControlAttributesSorted = 0x00010000, | 
|  | msidbControlAttributesComboList = 0x00020000,msidbControlAttributesImageHandle = 0x00010000,msidbControlAttributesPushLike = 0x00020000, | 
|  | msidbControlAttributesBitmap = 0x00040000,msidbControlAttributesIcon = 0x00080000,msidbControlAttributesFixedSize = 0x00100000, | 
|  | msidbControlAttributesIconSize16 = 0x00200000,msidbControlAttributesIconSize32 = 0x00400000,msidbControlAttributesIconSize48 = 0x00600000, | 
|  | msidbControlAttributesHasBorder = 0x01000000 | 
|  | }; | 
|  |  | 
|  | typedef enum _msidbLocatorType { | 
|  | msidbLocatorTypeDirectory = 0x0, | 
|  | msidbLocatorTypeFileName = 0x1, | 
|  | #if (_WIN32_MSI >= 110) | 
|  | msidbLocatorTypeRawValue = 0x2, | 
|  | #endif | 
|  | #if (_WIN32_MSI >= 150) | 
|  | msidbLocatorType64bit = 0x10 | 
|  | #endif | 
|  | } msidbLocatorType; | 
|  |  | 
|  | enum msidbComponentAttributes { | 
|  | msidbComponentAttributesLocalOnly = 0x00000000,msidbComponentAttributesSourceOnly = 0x00000001,msidbComponentAttributesOptional = 0x00000002, | 
|  | msidbComponentAttributesRegistryKeyPath = 0x00000004,msidbComponentAttributesSharedDllRefCount = 0x00000008, | 
|  | msidbComponentAttributesPermanent = 0x00000010,msidbComponentAttributesODBCDataSource = 0x00000020,msidbComponentAttributesTransitive = 0x00000040, | 
|  | msidbComponentAttributesNeverOverwrite = 0x00000080, | 
|  | #if (_WIN32_MSI >= 150) | 
|  | msidbComponentAttributes64bit = 0x00000100 | 
|  | #endif | 
|  | }; | 
|  |  | 
|  | #if (_WIN32_MSI >= 150) | 
|  | enum msidbAssemblyAttributes { | 
|  | msidbAssemblyAttributesURT = 0x00000000,msidbAssemblyAttributesWin32 = 0x00000001 | 
|  | }; | 
|  | #endif | 
|  |  | 
|  | enum msidbCustomActionType { | 
|  | msidbCustomActionTypeDll = 0x00000001,msidbCustomActionTypeExe = 0x00000002,msidbCustomActionTypeTextData = 0x00000003, | 
|  | msidbCustomActionTypeJScript = 0x00000005,msidbCustomActionTypeVBScript = 0x00000006,msidbCustomActionTypeInstall = 0x00000007, | 
|  | msidbCustomActionTypeBinaryData = 0x00000000,msidbCustomActionTypeSourceFile = 0x00000010,msidbCustomActionTypeDirectory = 0x00000020, | 
|  | msidbCustomActionTypeProperty = 0x00000030,msidbCustomActionTypeContinue = 0x00000040,msidbCustomActionTypeAsync = 0x00000080, | 
|  | msidbCustomActionTypeFirstSequence = 0x00000100,msidbCustomActionTypeOncePerProcess = 0x00000200,msidbCustomActionTypeClientRepeat = 0x00000300, | 
|  | msidbCustomActionTypeInScript = 0x00000400,msidbCustomActionTypeRollback = 0x00000100,msidbCustomActionTypeCommit = 0x00000200, | 
|  | msidbCustomActionTypeNoImpersonate = 0x00000800, | 
|  | #if (_WIN32_MSI >= 150) | 
|  | msidbCustomActionTypeTSAware = 0x00004000, | 
|  | #endif | 
|  | #if (_WIN32_MSI >= 150) | 
|  | msidbCustomActionType64BitScript = 0x00001000,msidbCustomActionTypeHideTarget = 0x00002000 | 
|  | #endif | 
|  | }; | 
|  |  | 
|  | enum msidbDialogAttributes { | 
|  | msidbDialogAttributesVisible = 0x00000001,msidbDialogAttributesModal = 0x00000002,msidbDialogAttributesMinimize = 0x00000004, | 
|  | msidbDialogAttributesSysModal = 0x00000008,msidbDialogAttributesKeepModeless = 0x00000010,msidbDialogAttributesTrackDiskSpace = 0x00000020, | 
|  | msidbDialogAttributesUseCustomPalette = 0x00000040,msidbDialogAttributesRTLRO = 0x00000080,msidbDialogAttributesRightAligned = 0x00000100, | 
|  | msidbDialogAttributesLeftScroll = 0x00000200,msidbDialogAttributesBiDi = msidbDialogAttributesRTLRO | msidbDialogAttributesRightAligned | msidbDialogAttributesLeftScroll, | 
|  | msidbDialogAttributesError = 0x00010000 | 
|  | }; | 
|  |  | 
|  | enum msidbFeatureAttributes { | 
|  | msidbFeatureAttributesFavorLocal = 0x00000000,msidbFeatureAttributesFavorSource = 0x00000001,msidbFeatureAttributesFollowParent = 0x00000002, | 
|  | msidbFeatureAttributesFavorAdvertise = 0x00000004,msidbFeatureAttributesDisallowAdvertise = 0x00000008, | 
|  | msidbFeatureAttributesUIDisallowAbsent = 0x00000010,msidbFeatureAttributesNoUnsupportedAdvertise= 0x00000020 | 
|  | }; | 
|  |  | 
|  | enum msidbFileAttributes { | 
|  | msidbFileAttributesReadOnly = 0x00000001,msidbFileAttributesHidden = 0x00000002,msidbFileAttributesSystem = 0x00000004, | 
|  | msidbFileAttributesReserved0 = 0x00000008,msidbFileAttributesReserved1 = 0x00000040,msidbFileAttributesReserved2 = 0x00000080, | 
|  | msidbFileAttributesReserved3 = 0x00000100,msidbFileAttributesVital = 0x00000200,msidbFileAttributesChecksum = 0x00000400, | 
|  | msidbFileAttributesPatchAdded = 0x00001000,msidbFileAttributesNoncompressed = 0x00002000,msidbFileAttributesCompressed = 0x00004000, | 
|  | msidbFileAttributesReserved4 = 0x00008000 | 
|  | }; | 
|  |  | 
|  | typedef enum _msidbIniFileAction { | 
|  | msidbIniFileActionAddLine = 0x00000000,msidbIniFileActionCreateLine = 0x00000001,msidbIniFileActionRemoveLine = 0x00000002, | 
|  | msidbIniFileActionAddTag = 0x00000003,msidbIniFileActionRemoveTag = 0x00000004 | 
|  | } msidbIniFileAction; | 
|  |  | 
|  | enum msidbMoveFileOptions { | 
|  | msidbMoveFileOptionsMove = 0x00000001 | 
|  | }; | 
|  |  | 
|  | typedef enum _msidbODBCDataSourceRegistration { | 
|  | msidbODBCDataSourceRegistrationPerMachine = 0x00000000,msidbODBCDataSourceRegistrationPerUser = 0x00000001 | 
|  | } msidbODBCDataSourceRegistration; | 
|  |  | 
|  | #if (_WIN32_MSI >= 110) | 
|  | enum msidbClassAttributes { | 
|  | msidbClassAttributesRelativePath = 0x00000001 | 
|  | }; | 
|  | #endif | 
|  |  | 
|  | enum msidbPatchAttributes { | 
|  | msidbPatchAttributesNonVital = 0x00000001 | 
|  | }; | 
|  |  | 
|  | enum msidbRegistryRoot { | 
|  | msidbRegistryRootClassesRoot = 0,msidbRegistryRootCurrentUser = 1,msidbRegistryRootLocalMachine = 2,msidbRegistryRootUsers = 3 | 
|  | }; | 
|  |  | 
|  | enum msidbRemoveFileInstallMode { | 
|  | msidbRemoveFileInstallModeOnInstall = 0x00000001,msidbRemoveFileInstallModeOnRemove = 0x00000002,msidbRemoveFileInstallModeOnBoth = 0x00000003 | 
|  | }; | 
|  |  | 
|  | enum msidbServiceControlEvent { | 
|  | msidbServiceControlEventStart = 0x00000001,msidbServiceControlEventStop = 0x00000002,msidbServiceControlEventDelete = 0x00000008, | 
|  | msidbServiceControlEventUninstallStart = 0x00000010,msidbServiceControlEventUninstallStop = 0x00000020, | 
|  | msidbServiceControlEventUninstallDelete = 0x00000080 | 
|  | }; | 
|  |  | 
|  | enum msidbServiceInstallErrorControl { | 
|  | msidbServiceInstallErrorControlVital = 0x00008000 | 
|  | }; | 
|  |  | 
|  | enum msidbTextStyleStyleBits { | 
|  | msidbTextStyleStyleBitsBold = 0x00000001,msidbTextStyleStyleBitsItalic = 0x00000002,msidbTextStyleStyleBitsUnderline = 0x00000004, | 
|  | msidbTextStyleStyleBitsStrike = 0x00000008 | 
|  | }; | 
|  |  | 
|  | #if (_WIN32_MSI >= 110) | 
|  | enum msidbUpgradeAttributes { | 
|  | msidbUpgradeAttributesMigrateFeatures = 0x00000001,msidbUpgradeAttributesOnlyDetect = 0x00000002, | 
|  | msidbUpgradeAttributesIgnoreRemoveFailure = 0x00000004,msidbUpgradeAttributesVersionMinInclusive = 0x00000100, | 
|  | msidbUpgradeAttributesVersionMaxInclusive = 0x00000200,msidbUpgradeAttributesLanguagesExclusive = 0x00000400 | 
|  | }; | 
|  | #endif | 
|  |  | 
|  | enum msidbSumInfoSourceType { | 
|  | msidbSumInfoSourceTypeSFN = 0x00000001,msidbSumInfoSourceTypeCompressed = 0x00000002,msidbSumInfoSourceTypeAdminImage = 0x00000004 | 
|  | }; | 
|  | #endif |