/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD 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 NTDDI_VISTA #define NTDDI_VISTA 0x06000000 #endif #ifndef NTDDI_VISTASP1 #define NTDDI_VISTASP1 0x6000100 #endif #ifndef _WIN32_MSI #if _WIN32_WINNT >= 0x0600 || (defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTA) #if defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTASP1 #define _WIN32_MSI 450 #else #define _WIN32_MSI 400 #endif #elif (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 #if _WIN32_MSI >= 400 #define IPROPNAME_MSILOGGINGMODE TEXT("MsiLogging") #define IPROPNAME_MSILOGFILELOCATION TEXT("MsiLogFileLocation") #define IPROPNAME_MSI_RM_CONTROL TEXT("MSIRESTARTMANAGERCONTROL") #define IPROPVALUE_MSI_RM_CONTROL_DISABLE TEXT("Disable") #define IPROPVALUE_MSI_RM_CONTROL_DISABLESHUTDOWN TEXT("DisableShutdown") #define IPROPNAME_MSI_RM_SESSION_KEY TEXT("MsiRestartManagerSessionKey") #define IPROPNAME_MSI_REBOOT_PENDING TEXT("MsiSystemRebootPending") #define IPROPNAME_MSI_RM_SHUTDOWN TEXT("MSIRMSHUTDOWN") #define IPROPNAME_MSI_RM_DISABLE_RESTART TEXT("MSIDISABLERMRESTART") #define IPROPNAME_MSI_UAC_DEPLOYMENT_COMPLIANT TEXT("MSIDEPLOYMENTCOMPLIANT") #define IPROPNAME_MSI_USE_REAL_ADMIN_DETECTION TEXT("MSIUSEREALADMINDETECTION") #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") #if _WIN32_MSI >= 400 #define IPROPNAME_ARPSETTINGSIDENTIFIER TEXT("MSIARPSETTINGSIDENTIFIER") #endif #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") #if _WIN32_MSI >= 400 #define IPROPNAME_MSITABLETPC TEXT("MsiTabletPC") #endif #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") #if _WIN32_MSI >= 400 #define IPROPNAME_RUNNINGELEVATED TEXT("MsiRunningElevated") #endif #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 #if _WIN32_MSI >= 400 ,msidbComponentAttributesDisableRegistryReflection = 0x00000200 #endif #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 #if _WIN32_MSI >= 450 ,msidbCustomActionTypePatchUninstall = 0x00008000 #endif #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 #if _WIN32_MSI >= 450 enum msidbEmbeddedUIAttributes { msidbEmbeddedUI = 0x1, msidbEmbeddedHandlesBasic = 0x02 }; #endif enum msidbSumInfoSourceType { msidbSumInfoSourceTypeSFN = 0x00000001,msidbSumInfoSourceTypeCompressed = 0x00000002, msidbSumInfoSourceTypeAdminImage = 0x00000004 #if _WIN32_MSI >= 400 ,msidbSumInfoSourceTypeLUAPackage = 0x00000008 #endif }; #if _WIN32_MSI >= 400 enum msirbRebootType { msirbRebootImmediate = 1, msirbRebootDeferred = 2 }; enum msirbRebootReason { msirbRebootUndeterminedReason = 0, msirbRebootInUseFilesReason = 1, msirbRebootScheduleRebootReason = 2, msirbRebootForceRebootReason = 3, msirbRebootCustomActionReason = 4 }; #endif #endif