1 /* 2 * Copyright (C) 2005 Mike McCormack 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17 */ 18 19 #ifndef __WINE_MSIDEFS_H 20 #define __WINE_MSIDEFS_H 21 22 enum msidbUpgradeAttributes { 23 msidbUpgradeAttributesMigrateFeatures = 0x0000001, 24 msidbUpgradeAttributesOnlyDetect = 0x00000002, 25 msidbUpgradeAttributesIgnoreRemoveFailure = 0x00000004, 26 msidbUpgradeAttributesVersionMinInclusive = 0x00000100, 27 msidbUpgradeAttributesVersionMaxInclusive = 0x00000200, 28 msidbUpgradeAttributesLanguagesExclusive = 0x00000400 29 }; 30 31 enum msidbFileAttributes { 32 msidbFileAttributesReadOnly = 0x00000001, 33 msidbFileAttributesHidden = 0x00000002, 34 msidbFileAttributesSystem = 0x00000004, 35 msidbFileAttributesVital = 0x00000200, 36 msidbFileAttributesChecksum = 0x00000400, 37 msidbFileAttributesPatchAdded = 0x00001000, 38 msidbFileAttributesNoncompressed = 0x00002000, 39 msidbFileAttributesCompressed = 0x00004000 40 }; 41 42 enum msidbPatchAttributes { 43 msidbPatchAttributesNonVital = 0x00000001 44 }; 45 46 enum msidbDialogAttributes { 47 msidbDialogAttributesVisible = 0x00000001, 48 msidbDialogAttributesModal = 0x00000002, 49 msidbDialogAttributesMinimize = 0x00000004, 50 msidbDialogAttributesSysModal = 0x00000008, 51 msidbDialogAttributesKeepModeless = 0x00000010, 52 msidbDialogAttributesTrackDiskSpace = 0x00000020, 53 msidbDialogAttributesUseCustomPalette = 0x00000040, 54 msidbDialogAttributesRTLRO = 0x00000080, 55 msidbDialogAttributesRightAligned = 0x00000100, 56 msidbDialogAttributesLeftScroll = 0x00000200, 57 msidbDialogAttributesBidi = 0x00000380, 58 msidbDialogAttributesError = 0x00010000 59 }; 60 61 enum msidbControlAttributes { 62 msidbControlAttributesVisible = 0x00000001, 63 msidbControlAttributesEnabled = 0x00000002, 64 msidbControlAttributesSunken = 0x00000004, 65 msidbControlAttributesIndirect = 0x00000008, 66 msidbControlAttributesInteger = 0x00000010, 67 msidbControlAttributesRTLRO = 0x00000020, 68 msidbControlAttributesRightAligned = 0x00000040, 69 msidbControlAttributesLeftScroll = 0x00000080, 70 msidbControlAttributesBiDi = 0x000000c0, 71 72 msidbControlAttributesTransparent = 0x00010000, 73 msidbControlAttributesNoPrefix = 0x00020000, 74 msidbControlAttributesNoWrap = 0x00040000, 75 msidbControlAttributesFormatSize = 0x00080000, 76 msidbControlAttributesUsersLanguage = 0x00100000, 77 78 msidbControlAttributesMultiline = 0x00010000, 79 msidbControlAttributesPasswordInput = 0x00200000, 80 81 msidbControlAttributesProgress95 = 0x00010000, 82 83 msidbControlAttributesRemovableVolume = 0x00010000, 84 msidbControlAttributesFixedVolume = 0x00020000, 85 msidbControlAttributesRemoteVolume = 0x00040000, 86 msidbControlAttributesCDROMVolume = 0x00080000, 87 msidbControlAttributesRAMdiskVolume = 0x00100000, 88 msidbControlAttributesFloppyVolume = 0x00200000, 89 msidbControlShowRollbackCost = 0x00400000, 90 91 msidbControlAttributesSorted = 0x00010000, 92 msidbControlAttributesComboList = 0x00020000, 93 94 msidbControlAttributesImageHandle = 0x00010000, 95 msidbControlAttributesPushLike = 0x00020000, 96 msidbControlAttributesBitmap = 0x00040000, 97 msidbControlAttributesIcon = 0x00080000, 98 msidbControlAttributesFixedSize = 0x00100000, 99 msidbControlAttributesIconSize16 = 0x00200000, 100 msidbControlAttributesIconSize32 = 0x00400000, 101 msidbControlAttributesIconSize48 = 0x00600000, 102 103 msidbControlAttributesHasBorder = 0x01000000, 104 }; 105 106 enum msidbTextStyleStyleBits 107 { 108 msidbTextStyleStyleBitsBold = 0x00000001, 109 msidbTextStyleStyleBitsItalic = 0x00000002, 110 msidbTextStyleStyleBitsUnderline = 0x00000004, 111 msidbTextStyleStyleBitsStrike = 0x00000008, 112 }; 113 114 enum msidbCustomActionType 115 { 116 msidbCustomActionTypeDll = 0x00000001, 117 msidbCustomActionTypeExe = 0x00000002, 118 msidbCustomActionTypeTextData = 0x00000003, 119 msidbCustomActionTypeJScript = 0x00000005, 120 msidbCustomActionTypeVBScript = 0x00000006, 121 msidbCustomActionTypeInstall = 0x00000007, 122 123 msidbCustomActionTypeBinaryData = 0x00000000, 124 msidbCustomActionTypeSourceFile = 0x00000010, 125 msidbCustomActionTypeDirectory = 0x00000020, 126 msidbCustomActionTypeProperty = 0x00000030, 127 128 msidbCustomActionTypeContinue = 0x00000040, 129 msidbCustomActionTypeAsync = 0x00000080, 130 131 msidbCustomActionTypeFirstSequence = 0x00000100, 132 msidbCustomActionTypeOncePerProcess = 0x00000200, 133 msidbCustomActionTypeClientRepeat = 0x00000300, 134 msidbCustomActionTypeInScript = 0x00000400, 135 136 msidbCustomActionTypeRollback = 0x00000100, 137 msidbCustomActionTypeCommit = 0x00000200, 138 139 msidbCustomActionTypeNoImpersonate = 0x00000800, 140 msidbCustomActionTypeTSAware = 0x00004000, 141 142 msidbCustomActionType64BitScript = 0x00001000, 143 msidbCustomActionTypeHideTarget = 0x00002000 144 }; 145 146 enum msidbFeatureAttributes 147 { 148 msidbFeatureAttributesFavorLocal = 0x00000000, 149 msidbFeatureAttributesFavorSource = 0x00000001, 150 msidbFeatureAttributesFollowParent = 0x00000002, 151 msidbFeatureAttributesFavorAdvertise = 0x00000004, 152 msidbFeatureAttributesDisallowAdvertise = 0x00000008, 153 msidbFeatureAttributesUIDisallowAbsent = 0x00000010, 154 msidbFeatureAttributesNoUnsupportedAdvertise = 0x00000020 155 }; 156 157 enum msidbComponentAttributes 158 { 159 msidbComponentAttributesLocalOnly = 0x00000000, 160 msidbComponentAttributesSourceOnly = 0x00000001, 161 msidbComponentAttributesOptional = 0x00000002, 162 msidbComponentAttributesRegistryKeyPath = 0x00000004, 163 msidbComponentAttributesSharedDllRefCount = 0x00000008, 164 msidbComponentAttributesPermanent = 0x00000010, 165 msidbComponentAttributesODBCDataSource = 0x00000020, 166 msidbComponentAttributesTransitive = 0x00000040, 167 msidbComponentAttributesNeverOverwrite = 0x00000080, 168 msidbComponentAttributes64bit = 0x00000100 169 }; 170 171 enum msidbODBCDataSourceRegistration 172 { 173 msidbODBCDataSourceRegistrationPerMachine = 0x00000000, 174 msidbODBCDataSourceRegistrationPerUser = 0x00000001 175 }; 176 177 enum msidbRegistryRoot 178 { 179 msidbRegistryRootClassesRoot = 0, 180 msidbRegistryRootCurrentUser = 1, 181 msidbRegistryRootLocalMachine = 2, 182 msidbRegistryRootUsers = 3, 183 }; 184 185 enum msidbLocatorType 186 { 187 msidbLocatorTypeDirectory = 0x000, 188 msidbLocatorTypeFileName = 0x001, 189 msidbLocatorTypeRawValue = 0x002, 190 msidbLocatorType64bit = 0x010, 191 }; 192 193 enum msidbServiceControlEvent 194 { 195 msidbServiceControlEventStart = 0x00000001, 196 msidbServiceControlEventStop = 0x00000002, 197 msidbServiceControlEventDelete = 0x00000008, 198 msidbServiceControlEventUninstallStart = 0x00000010, 199 msidbServiceControlEventUninstallStop = 0x00000020, 200 msidbServiceControlEventUninstallDelete = 0x00000080, 201 }; 202 203 enum msidbServiceInstallErrorControl 204 { 205 msidbServiceInstallErrorControlVital = 0x00008000 206 }; 207 208 enum msidbMoveFileOptions 209 { 210 msidbMoveFileOptionsMove = 0x00000001, 211 }; 212 213 enum msidbAssemblyAttributes 214 { 215 msidbAssemblyAttributesURT = 0x00000000, 216 msidbAssemblyAttributesWin32 = 0x00000001, 217 }; 218 219 enum msidbSumInfoSourceType 220 { 221 msidbSumInfoSourceTypeSFN = 0x00000001, 222 msidbSumInfoSourceTypeCompressed = 0x00000002, 223 msidbSumInfoSourceTypeAdminImage = 0x00000004, 224 msidbSumInfoSourceTypeLUAPackage = 0x00000008, 225 }; 226 227 enum msidbRemoveFileInstallMode 228 { 229 msidbRemoveFileInstallModeOnInstall = 0x00000001, 230 msidbRemoveFileInstallModeOnRemove = 0x00000002, 231 msidbRemoveFileInstallModeOnBoth = 0x00000003, 232 }; 233 234 enum 235 { 236 msidbIniFileActionAddLine = 0x00000000, 237 msidbIniFileActionCreateLine = 0x00000001, 238 msidbIniFileActionRemoveLine = 0x00000002, 239 msidbIniFileActionAddTag = 0x00000003, 240 msidbIniFileActionRemoveTag = 0x00000004 241 }; 242 243 /* 244 * Windows SDK braindamage alert 245 * 246 * PID_DICTIONARY and PID_CODEPAGE are defined by propidl.h too 247 * PID_SECURITY is defined in propidl.h with a different value! 248 * So these need to be undefined first. 249 */ 250 #ifdef PID_DICTIONARY 251 #undef PID_DICTIONARY 252 #endif 253 254 #ifdef PID_CODEPAGE 255 #undef PID_CODEPAGE 256 #endif 257 258 #ifdef PID_SECURITY 259 #undef PID_SECURITY 260 #endif 261 262 #define PID_DICTIONARY 0 263 #define PID_CODEPAGE 1 264 #define PID_TITLE 2 265 #define PID_SUBJECT 3 266 #define PID_AUTHOR 4 267 #define PID_KEYWORDS 5 268 #define PID_COMMENTS 6 269 #define PID_TEMPLATE 7 270 #define PID_LASTAUTHOR 8 271 #define PID_REVNUMBER 9 272 #define PID_EDITTIME 10 273 #define PID_LASTPRINTED 11 274 #define PID_CREATE_DTM 12 275 #define PID_LASTSAVE_DTM 13 276 #define PID_PAGECOUNT 14 277 #define PID_WORDCOUNT 15 278 #define PID_CHARCOUNT 16 279 #define PID_THUMBNAIL 17 280 #define PID_APPNAME 18 281 #define PID_SECURITY 19 282 #define PID_MSIVERSION PID_PAGECOUNT 283 #define PID_MSISOURCE PID_WORDCOUNT 284 #define PID_MSIRESTRICT PID_CHARCOUNT 285 286 #endif /* __WINE_MSIDEFS_H */ 287