ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

msi.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2002,2003 Mike McCormack
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00017  */
00018 
00019 #ifndef __WINE_MSI_H
00020 #define __WINE_MSI_H
00021 
00022 #ifndef _MSI_NO_CRYPTO
00023 #include <wincrypt.h>
00024 #endif
00025 
00026 #ifdef __cplusplus
00027 extern "C" {
00028 #endif
00029 
00030 typedef ULONG MSIHANDLE;
00031 
00032 typedef enum tagINSTALLSTATE
00033 {
00034     INSTALLSTATE_NOTUSED = -7,
00035     INSTALLSTATE_BADCONFIG = -6,
00036     INSTALLSTATE_INCOMPLETE = -5,
00037     INSTALLSTATE_SOURCEABSENT = -4,
00038     INSTALLSTATE_MOREDATA = -3,
00039     INSTALLSTATE_INVALIDARG = -2,
00040     INSTALLSTATE_UNKNOWN = -1,
00041     INSTALLSTATE_BROKEN = 0,
00042     INSTALLSTATE_ADVERTISED = 1,
00043     INSTALLSTATE_ABSENT = 2,
00044     INSTALLSTATE_LOCAL = 3,
00045     INSTALLSTATE_SOURCE = 4,
00046     INSTALLSTATE_DEFAULT = 5
00047 } INSTALLSTATE;
00048 
00049 typedef enum tagMSIPATCHSTATE
00050 {
00051     MSIPATCHSTATE_INVALID = 0,
00052     MSIPATCHSTATE_APPLIED = 1,
00053     MSIPATCHSTATE_SUPERSEDED = 2,
00054     MSIPATCHSTATE_OBSOLETED = 4,
00055     MSIPATCHSTATE_REGISTERED = 8,
00056     MSIPATCHSTATE_ALL = (MSIPATCHSTATE_APPLIED | MSIPATCHSTATE_SUPERSEDED |
00057                          MSIPATCHSTATE_OBSOLETED | MSIPATCHSTATE_REGISTERED)
00058 } MSIPATCHSTATE;
00059 
00060 typedef enum tagINSTALLUILEVEL
00061 {
00062     INSTALLUILEVEL_NOCHANGE = 0,
00063     INSTALLUILEVEL_DEFAULT = 1,
00064     INSTALLUILEVEL_NONE = 2,
00065     INSTALLUILEVEL_BASIC = 3,
00066     INSTALLUILEVEL_REDUCED = 4,
00067     INSTALLUILEVEL_FULL = 5,
00068     INSTALLUILEVEL_HIDECANCEL = 0x20,
00069     INSTALLUILEVEL_PROGRESSONLY = 0x40,
00070     INSTALLUILEVEL_ENDDIALOG = 0x80,
00071     INSTALLUILEVEL_SOURCERESONLY = 0x100
00072 } INSTALLUILEVEL;
00073 
00074 typedef enum tagUSERINFOSTATE
00075 {
00076     USERINFOSTATE_MOREDATA = -3,
00077     USERINFOSTATE_INVALIDARG = -2,
00078     USERINFOSTATE_UNKNOWN = -1,
00079     USERINFOSTATE_ABSENT = 0,
00080     USERINFOSTATE_PRESENT = 1,
00081 } USERINFOSTATE;
00082 
00083 typedef enum tagINSTALLLEVEL
00084 {
00085     INSTALLLEVEL_DEFAULT = 0,
00086     INSTALLLEVEL_MINIMUM = 1,
00087     INSTALLLEVEL_MAXIMUM = 0xFFFF
00088 } INSTALLLEVEL;
00089 
00090 typedef enum tagINSTALLMESSAGE
00091 {
00092     INSTALLMESSAGE_FATALEXIT = 0,
00093     INSTALLMESSAGE_ERROR = 0x01000000,
00094     INSTALLMESSAGE_WARNING = 0x02000000,
00095     INSTALLMESSAGE_USER = 0x03000000,
00096     INSTALLMESSAGE_INFO = 0x04000000,
00097     INSTALLMESSAGE_FILESINUSE = 0x05000000,
00098     INSTALLMESSAGE_RESOLVESOURCE = 0x06000000,
00099     INSTALLMESSAGE_OUTOFDISKSPACE = 0x07000000,
00100     INSTALLMESSAGE_ACTIONSTART = 0x08000000,
00101     INSTALLMESSAGE_ACTIONDATA = 0x09000000,
00102     INSTALLMESSAGE_PROGRESS = 0x0a000000,
00103     INSTALLMESSAGE_COMMONDATA = 0x0b000000,
00104     INSTALLMESSAGE_INITIALIZE = 0x0c000000,
00105     INSTALLMESSAGE_TERMINATE = 0x0d000000,
00106     INSTALLMESSAGE_SHOWDIALOG = 0x0e000000
00107 } INSTALLMESSAGE;
00108 
00109 typedef enum tagREINSTALLMODE
00110 {
00111     REINSTALLMODE_REPAIR = 0x00000001,
00112     REINSTALLMODE_FILEMISSING = 0x00000002,
00113     REINSTALLMODE_FILEOLDERVERSION = 0x00000004,
00114     REINSTALLMODE_FILEEQUALVERSION = 0x00000008,
00115     REINSTALLMODE_FILEEXACT = 0x00000010,
00116     REINSTALLMODE_FILEVERIFY = 0x00000020,
00117     REINSTALLMODE_FILEREPLACE = 0x00000040,
00118     REINSTALLMODE_MACHINEDATA = 0x00000080,
00119     REINSTALLMODE_USERDATA = 0x00000100,
00120     REINSTALLMODE_SHORTCUT = 0x00000200,
00121     REINSTALLMODE_PACKAGE = 0x00000400
00122 } REINSTALLMODE;
00123 
00124 typedef enum tagINSTALLLOGMODE
00125 {
00126     INSTALLLOGMODE_FATALEXIT      = (1 << (INSTALLMESSAGE_FATALEXIT >> 24)),
00127     INSTALLLOGMODE_ERROR          = (1 << (INSTALLMESSAGE_ERROR >> 24)),
00128     INSTALLLOGMODE_WARNING        = (1 << (INSTALLMESSAGE_WARNING >> 24)),
00129     INSTALLLOGMODE_USER           = (1 << (INSTALLMESSAGE_USER >> 24)),
00130     INSTALLLOGMODE_INFO           = (1 << (INSTALLMESSAGE_INFO >> 24)),
00131     INSTALLLOGMODE_RESOLVESOURCE  = (1 << (INSTALLMESSAGE_RESOLVESOURCE >> 24)),
00132     INSTALLLOGMODE_OUTOFDISKSPACE = (1 << (INSTALLMESSAGE_OUTOFDISKSPACE >> 24)),
00133     INSTALLLOGMODE_ACTIONSTART    = (1 << (INSTALLMESSAGE_ACTIONSTART >> 24)),
00134     INSTALLLOGMODE_ACTIONDATA     = (1 << (INSTALLMESSAGE_ACTIONDATA >> 24)),
00135     INSTALLLOGMODE_COMMONDATA     = (1 << (INSTALLMESSAGE_COMMONDATA >> 24)),
00136     INSTALLLOGMODE_PROPERTYDUMP   = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),
00137     INSTALLLOGMODE_VERBOSE        = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
00138     INSTALLLOGMODE_EXTRADEBUG     = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),
00139     INSTALLLOGMODE_PROGRESS       = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),
00140     INSTALLLOGMODE_INITIALIZE     = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
00141     INSTALLLOGMODE_TERMINATE      = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),
00142     INSTALLLOGMODE_SHOWDIALOG     = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24))
00143 } INSTALLLOGMODE;
00144 
00145 typedef enum tagINSTALLLOGATTRIBUTES
00146 {
00147     INSTALLLOGATTRIBUTES_APPEND = 0x00000001,
00148     INSTALLLOGATTRIBUTES_FLUSHEACHLINE = 0x00000002
00149 } INSTALLLOGATTRIBUTES;
00150 
00151 typedef enum tagINSTALLMODE
00152 {
00153     INSTALLMODE_NODETECTION_ANY     = -4,
00154     INSTALLMODE_NOSOURCERESOLUTION  = -3,
00155     INSTALLMODE_NODETECTION         = -2,
00156     INSTALLMODE_EXISTING            = -1,
00157     INSTALLMODE_DEFAULT             = 0
00158 } INSTALLMODE;
00159 
00160 typedef enum tagADVERTISEFLAGS
00161 {
00162     ADVERTISEFLAGS_MACHINEASSIGN = 0,
00163     ADVERTISEFLAGS_USERASSIGN = 1
00164 } ADVERTISEFLAGS;
00165 
00166 typedef enum tagSCRIPTFLAGS
00167 {
00168     SCRIPTFLAGS_CACHEINFO = 1,
00169     SCRIPTFLAGS_SHORTCUTS = 4,
00170     SCRIPTFLAGS_MACHINEASSIGN = 8,
00171     SCRIPTFLAGS_REGDATA_APPINFO = 0x10,
00172     SCRIPTFLAGS_REGDATA_CNFGINFO = 0x20,
00173     SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST = 0x40,
00174     SCRIPTFLAGS_REGDATA_CLASSINFO = 0x80,
00175     SCRIPTFLAGS_REGDATA_EXTENSIONINFO = 0x100,
00176 } SCRIPTFLAGS;
00177 
00178 typedef enum tagINSTALLTYPE
00179 {
00180     INSTALLTYPE_DEFAULT = 0,
00181     INSTALLTYPE_NETWORK_IMAGE = 1,
00182     INSTALLTYPE_SINGLE_INSTANCE = 2,
00183 } INSTALLTYPE;
00184 
00185 typedef enum tagMSIINSTALLCONTEXT
00186 {
00187     MSIINSTALLCONTEXT_FIRSTVISIBLE  =   0,
00188     MSIINSTALLCONTEXT_NONE          =   0,
00189     MSIINSTALLCONTEXT_USERMANAGED   =   1,
00190     MSIINSTALLCONTEXT_USERUNMANAGED =   2,
00191     MSIINSTALLCONTEXT_MACHINE       =   4,
00192     MSIINSTALLCONTEXT_ALL           = (MSIINSTALLCONTEXT_USERMANAGED | MSIINSTALLCONTEXT_USERUNMANAGED | MSIINSTALLCONTEXT_MACHINE),
00193     MSIINSTALLCONTEXT_ALLUSERMANAGED=   8,
00194 } MSIINSTALLCONTEXT;
00195 
00196 typedef enum tagMSISOURCETYPE
00197 {
00198     MSISOURCETYPE_UNKNOWN = 0x00000000L,
00199     MSISOURCETYPE_NETWORK = 0x00000001L,
00200     MSISOURCETYPE_URL     = 0x00000002L,
00201     MSISOURCETYPE_MEDIA   = 0x00000004L
00202 } MSISOURCETYPE;
00203 
00204 typedef enum tagMSICODE
00205 {
00206     MSICODE_PRODUCT = 0x00000000L,
00207     MSICODE_PATCH   = 0x40000000L
00208 } MSICODE;
00209 
00210 typedef enum tagINSTALLFEATUREATTRIBUTE
00211 {
00212     INSTALLFEATUREATTRIBUTE_FAVORLOCAL             = 1 << 0,
00213     INSTALLFEATUREATTRIBUTE_FAVORSOURCE            = 1 << 1,
00214     INSTALLFEATUREATTRIBUTE_FOLLOWPARENT           = 1 << 2,
00215     INSTALLFEATUREATTRIBUTE_FAVORADVERTISE         = 1 << 3,
00216     INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE      = 1 << 4,
00217     INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE = 1 << 5
00218 } INSTALLFEATUREATTRIBUTE;
00219 
00220 typedef struct _MSIFILEHASHINFO {
00221     ULONG dwFileHashInfoSize;
00222     ULONG dwData[4];
00223 } MSIFILEHASHINFO, *PMSIFILEHASHINFO;
00224 
00225 typedef enum tagMSIPATCHDATATYPE
00226 {
00227     MSIPATCH_DATATYPE_PATCHFILE = 0,
00228     MSIPATCH_DATATYPE_XMLPATH = 1,
00229     MSIPATCH_DATATYPE_XMLBLOB = 2,
00230 } MSIPATCHDATATYPE, *PMSIPATCHDATATYPE;
00231 
00232 typedef struct tagMSIPATCHSEQUENCEINFOA
00233 {
00234     LPCSTR szPatchData;
00235     MSIPATCHDATATYPE ePatchDataType;
00236     DWORD dwOrder;
00237     UINT uStatus;
00238 } MSIPATCHSEQUENCEINFOA, *PMSIPATCHSEQUENCEINFOA;
00239 
00240 typedef struct tagMSIPATCHSEQUENCEINFOW
00241 {
00242     LPCWSTR szPatchData;
00243     MSIPATCHDATATYPE ePatchDataType;
00244     DWORD dwOrder;
00245     UINT uStatus;
00246 } MSIPATCHSEQUENCEINFOW, *PMSIPATCHSEQUENCEINFOW;
00247 
00248 #define MAX_FEATURE_CHARS 38
00249 
00250 #define ERROR_PATCH_TARGET_NOT_FOUND        1642
00251 
00252 /* Strings defined in msi.h */
00253 /* Advertised Information */
00254 
00255 #define INSTALLPROPERTY_PACKAGENAMEA "PackageName"
00256 static const WCHAR INSTALLPROPERTY_PACKAGENAMEW[] = {'P','a','c','k','a','g','e','N','a','m','e',0};
00257 #define INSTALLPROPERTY_PACKAGENAME WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGENAME)
00258 
00259 #define INSTALLPROPERTY_TRANSFORMSA "Transforms"
00260 static const WCHAR INSTALLPROPERTY_TRANSFORMSW[] = {'T','r','a','n','s','f','o','r','m','s',0};
00261 #define INSTALLPROPERTY_TRANSFORMS WINELIB_NAME_AW(INSTALLPROPERTY_TRANSFORMS)
00262 
00263 #define INSTALLPROPERTY_LANGUAGEA "Language"
00264 static const WCHAR INSTALLPROPERTY_LANGUAGEW[] = {'L','a','n','g','u','a','g','e',0};
00265 #define INSTALLPROPERTY_LANGUAGE WINELIB_NAME_AW(INSTALLPROPERTY_LANGUAGE)
00266 
00267 #define INSTALLPROPERTY_PRODUCTNAMEA "ProductName"
00268 static const WCHAR INSTALLPROPERTY_PRODUCTNAMEW[] = {'P','r','o','d','u','c','t','N','a','m','e',0};
00269 #define INSTALLPROPERTY_PRODUCTNAME WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTNAME)
00270 
00271 #define INSTALLPROPERTY_ASSIGNMENTTYPEA "AssignmentType"
00272 static const WCHAR INSTALLPROPERTY_ASSIGNMENTTYPEW[] = {'A','s','s','i','g','n','m','e','n','t','T','y','p','e',0};
00273 #define INSTALLPROPERTY_ASSIGNMENTTYPE WINELIB_NAME_AW(INSTALLPROPERTY_ASSIGNMENTTYPE)
00274 
00275 #define INSTALLPROPERTY_PACKAGECODEA "PackageCode"
00276 static const WCHAR INSTALLPROPERTY_PACKAGECODEW[] = {'P','a','c','k','a','g','e','C','o','d','e',0};
00277 #define INSTALLPROPERTY_PACKAGECODE WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGECODE)
00278 
00279 #define INSTALLPROPERTY_VERSIONA "Version"
00280 static const WCHAR INSTALLPROPERTY_VERSIONW[]= {'V','e','r','s','i','o','n',0};
00281 #define INSTALLPROPERTY_VERSION WINELIB_NAME_AW(INSTALLPROPERTY_VERSION)
00282 
00283 /* MSI version 1.1 and above */
00284 
00285 #define INSTALLPROPERTY_PRODUCTICONA "ProductIcon"
00286 static const WCHAR INSTALLPROPERTY_PRODUCTICONW[]  = {'P','r','o','d','u','c','t','I','c','o','n',0};
00287 #define INSTALLPROPERTY_PRODUCTICON WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTICON)
00288 
00289 /* MSI version 1.5 and above */
00290 #define INSTALLPROPERTY_INSTANCETYPEA "InstanceType"
00291 static const WCHAR INSTALLPROPERTY_INSTANCETYPEW[] = {'I','n','s','t','a','n','c','e','T','y','p','e',0};
00292 #define INSTALLPROPERTY_INSTANCETYPE WINELIB_NAME_AW(INSTALLPROPERTY_INSTANCETYPE)
00293 
00294 /* MSI version 3 and above */
00295 #define INSTALLPROPERTY_AUTHORIZED_LUA_APPA "AuthorizedLUAApp"
00296 static const WCHAR INSTALLPROPERTY_AUTHORIZED_LUA_APPW[] = {'A','u','t','h','o','r','i','z','e','d','L','U','A','A','p','p',0};
00297 #define INSTALLPROPERTY_AUTHORIZED_LUA_APP WINELIB_NAME_AW(INSTALLPROPERTY_AUTHORIZED_LUA_APP)
00298 
00299 
00300 /* Installed Information */
00301 #define INSTALLPROPERTY_INSTALLEDPRODUCTNAMEA "InstalledProductName"
00302 static const WCHAR INSTALLPROPERTY_INSTALLEDPRODUCTNAMEW[] = {'I','n','s','t','a','l','l','e','d','P','r','o','d','u','c','t','N','a','m','e',0};
00303 #define INSTALLPROPERTY_INSTALLEDPRODUCTNAME WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLEDPRODUCTNAME)
00304 
00305 #define INSTALLPROPERTY_VERSIONSTRINGA "VersionString"
00306 static const WCHAR INSTALLPROPERTY_VERSIONSTRINGW[] = {'V','e','r','s','i','o','n','S','t','r','i','n','g',0};
00307 #define INSTALLPROPERTY_VERSIONSTRING WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONSTRING)
00308 
00309 #define INSTALLPROPERTY_HELPLINKA "HelpLink"
00310 static const WCHAR INSTALLPROPERTY_HELPLINKW[] = {'H','e','l','p','L','i','n','k',0};
00311 #define INSTALLPROPERTY_HELPLINK WINELIB_NAME_AW(INSTALLPROPERTY_HELPLINK)
00312 
00313 #define INSTALLPROPERTY_HELPTELEPHONEA "HelpTelephone"
00314 static const WCHAR INSTALLPROPERTY_HELPTELEPHONEW[] = {'H','e','l','p','T','e','l','e','p','h','o','n','e',0};
00315 #define INSTALLPROPERTY_HELPTELEPHONE WINELIB_NAME_AW(INSTALLPROPERTY_HELPTELEPHONE)
00316 
00317 #define INSTALLPROPERTY_INSTALLLOCATIONA "InstallLocation"
00318 static const WCHAR INSTALLPROPERTY_INSTALLLOCATIONW[] = {'I','n','s','t','a','l','l','L','o','c','a','t','i','o','n',0};
00319 #define INSTALLPROPERTY_INSTALLLOCATION WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLLOCATION)
00320 
00321 #define INSTALLPROPERTY_INSTALLSOURCEA "InstallSource"
00322 static const WCHAR INSTALLPROPERTY_INSTALLSOURCEW[] = {'I','n','s','t','a','l','l','S','o','u','r','c','e',0};
00323 #define INSTALLPROPERTY_INSTALLSOURCE WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLSOURCE)
00324 
00325 #define INSTALLPROPERTY_INSTALLDATEA "InstallDate"
00326 static const WCHAR INSTALLPROPERTY_INSTALLDATEW[] = {'I','n','s','t','a','l','l','D','a','t','e',0};
00327 #define INSTALLPROPERTY_INSTALLDATE WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLDATE)
00328 
00329 #define INSTALLPROPERTY_PUBLISHERA "Publisher"
00330 static const WCHAR INSTALLPROPERTY_PUBLISHERW[] ={'P','u','b','l','i','s','h','e','r',0};
00331 #define INSTALLPROPERTY_PUBLISHER WINELIB_NAME_AW(INSTALLPROPERTY_PUBLISHER)
00332 
00333 #define INSTALLPROPERTY_LOCALPACKAGEA "LocalPackage"
00334 static const WCHAR INSTALLPROPERTY_LOCALPACKAGEW[] = {'L','o','c','a','l','P','a','c','k','a','g','e',0};
00335 #define INSTALLPROPERTY_LOCALPACKAGE WINELIB_NAME_AW(INSTALLPROPERTY_LOCALPACKAGE)
00336 
00337 #define INSTALLPROPERTY_URLINFOABOUTA "URLInfoAbout"
00338 static const WCHAR INSTALLPROPERTY_URLINFOABOUTW[] = {'U','R','L','I','n','f','o','A','b','o','u','t',0};
00339 #define INSTALLPROPERTY_URLINFOABOUT WINELIB_NAME_AW(INSTALLPROPERTY_URLINFOABOUT)
00340 
00341 #define INSTALLPROPERTY_URLUPDATEINFOA "URLUpdateInfo"
00342 static const WCHAR INSTALLPROPERTY_URLUPDATEINFOW[] = {'U','R','L','U','p','d','a','t','e','I','n','f','o',0};
00343 #define INSTALLPROPERTY_URLUPDATEINFO WINELIB_NAME_AW(INSTALLPROPERTY_URLUPDATEINFO)
00344 
00345 #define INSTALLPROPERTY_VERSIONMINORA "VersionMinor"
00346 static const WCHAR INSTALLPROPERTY_VERSIONMINORW[] = {'V','e','r','s','i','o','n','M','i','n','o','r',0};
00347 #define INSTALLPROPERTY_VERSIONMINOR WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMINOR)
00348 
00349 #define INSTALLPROPERTY_VERSIONMAJORA "VersionMajor"
00350 static const WCHAR INSTALLPROPERTY_VERSIONMAJORW[] = {'V','e','r','s','i','o','n','M','a','j','o','r',0};
00351 #define INSTALLPROPERTY_VERSIONMAJOR WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMAJOR)
00352 
00353 #define INSTALLPROPERTY_PRODUCTIDA "ProductID"
00354 static const WCHAR INSTALLPROPERTY_PRODUCTIDW[] = {'P','r','o','d','u','c','t','I','D',0};
00355 #define INSTALLPROPERTY_PRODUCTID WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTID)
00356 
00357 #define INSTALLPROPERTY_REGCOMPANYA "RegCompany"
00358 static const WCHAR INSTALLPROPERTY_REGCOMPANYW[] = {'R','e','g','C','o','m','p','a','n','y',0};
00359 #define INSTALLPROPERTY_REGCOMPANY WINELIB_NAME_AW(INSTALLPROPERTY_REGCOMPANY)
00360 
00361 #define INSTALLPROPERTY_REGOWNERA "RegOwner"
00362 static const WCHAR INSTALLPROPERTY_REGOWNERW[] = {'R','e','g','O','w','n','e','r',0};
00363 #define INSTALLPROPERTY_REGOWNER WINELIB_NAME_AW(INSTALLPROPERTY_REGOWNER)
00364 
00365 /* MSI Version 3.0 and greater */
00366 #define INSTALLPROPERTY_UNINSTALLABLEA "Uninstallable"
00367 static const WCHAR INSTALLPROPERTY_UNINSTALLABLEW[] = {'U','n','i','n','s','t','a','l','l','a','b','l','e',0};
00368 #define INSTALLPROPERTY_UNINSTALLABLE WINELIB_NAME_AW(INSTALLPROPERTY_UNINSTALLABLE)
00369 
00370 #define INSTALLPROPERTY_PRODUCTSTATEA "State"
00371 static const WCHAR INSTALLPROPERTY_PRODUCTSTATEW[] = {'S','t','a','t','e',0};
00372 #define INSTALLPROPERTY_PRODUCTSTATE WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTSTATE)
00373 
00374 #define INSTALLPROPERTY_PATCHSTATEA "State"
00375 static const WCHAR INSTALLPROPERTY_PATCHSTATEW[] ={'S','t','a','t','e',0};
00376 #define INSTALLPROPERTY_PATCHSTATE WINELIB_NAME_AW(INSTALLPROPERTY_PATCHSTATE)
00377 
00378 #define INSTALLPROPERTY_PATCHTYPEA "PatchType"
00379 static const WCHAR INSTALLPROPERTY_PATCHTYPEW[] = {'P','a','t','c','h','T','y','p','e',0};
00380 #define INSTALLPROPERTY_PATCHTYPE WINELIB_NAME_AW(INSTALLPROPERTY_PATCHTYPE)
00381 
00382 #define INSTALLPROPERTY_LUAENABLEDA "LUAEnabled"
00383 static const WCHAR INSTALLPROPERTY_LUAENABLEDW[] = {'L','U','A','E','n','a','b','l','e','d',0};
00384 #define INSTALLPROPERTY_LUAENABLED WINELIB_NAME_AW(INSTALLPROPERTY_LUAENABLED)
00385 
00386 #define INSTALLPROPERTY_DISPLAYNAMEA "DisplayName"
00387 static const WCHAR INSTALLPROPERTY_DISPLAYNAMEW[] = {'D','i','s','p','l','a','y','N','a','m','e',0};
00388 #define INSTALLPROPERTY_DISPLAYNAME WINELIB_NAME_AW(INSTALLPROPERTY_DISPLAYNAME)
00389 
00390 #define INSTALLPROPERTY_MOREINFOURLA "MoreInfoURL"
00391 static const WCHAR INSTALLPROPERTY_MOREINFOURLW[] = {'M','o','r','e','I','n','f','o','U','R','L',0};
00392 #define INSTALLPROPERTY_MOREINFOURL WINELIB_NAME_AW(INSTALLPROPERTY_MOREINFOURL)
00393 
00394 /* Source List Info */
00395 #define INSTALLPROPERTY_LASTUSEDSOURCEA "LastUsedSource"
00396 static const WCHAR INSTALLPROPERTY_LASTUSEDSOURCEW[] = {'L','a','s','t','U','s','e','d','S','o','u','r','c','e',0};
00397 #define INSTALLPROPERTY_LASTUSEDSOURCE WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDSOURCE)
00398 
00399 #define INSTALLPROPERTY_LASTUSEDTYPEA "LastUsedType"
00400 static const WCHAR INSTALLPROPERTY_LASTUSEDTYPEW[] = {'L','a','s','t','U','s','e','d','T','y','p','e',0};
00401 #define INSTALLPROPERTY_LASTUSEDTYPE WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDTYPE)
00402 
00403 #define INSTALLPROPERTY_MEDIAPACKAGEPATHA "MediaPackagePath"
00404 static const WCHAR INSTALLPROPERTY_MEDIAPACKAGEPATHW[] = {'M','e','d','i','a','P','a','c','k','a','g','e','P','a','t','h',0};
00405 #define INSTALLPROPERTY_MEDIAPACKAGEPATH WINELIB_NAME_AW(INSTALLPROPERTY_MEDIAPACKAGEPATH)
00406 
00407 #define INSTALLPROPERTY_DISKPROMPTA "DiskPrompt"
00408 static const WCHAR INSTALLPROPERTY_DISKPROMPTW[] = {'D','i','s','k','P','r','o','m','p','t',0};
00409 #define INSTALLPROPERTY_DISKPROMPT WINELIB_NAME_AW(INSTALLPROPERTY_DISKPROMPT)
00410 
00411 typedef INT (CALLBACK *INSTALLUI_HANDLERA)(LPVOID, UINT, LPCSTR);
00412 typedef INT (CALLBACK *INSTALLUI_HANDLERW)(LPVOID, UINT, LPCWSTR);
00413 typedef INT (CALLBACK *INSTALLUI_HANDLER_RECORD)(LPVOID, UINT, MSIHANDLE);
00414 typedef INSTALLUI_HANDLER_RECORD* PINSTALLUI_HANDLER_RECORD;
00415 
00416 UINT WINAPI MsiAdvertiseProductA(LPCSTR, LPCSTR, LPCSTR, LANGID);
00417 UINT WINAPI MsiAdvertiseProductW(LPCWSTR, LPCWSTR, LPCWSTR, LANGID);
00418 #define     MsiAdvertiseProduct WINELIB_NAME_AW(MsiAdvertiseProduct)
00419 
00420 UINT WINAPI MsiAdvertiseProductExA(LPCSTR, LPCSTR, LPCSTR, LANGID, DWORD, DWORD);
00421 UINT WINAPI MsiAdvertiseProductExW(LPCWSTR, LPCWSTR, LPCWSTR, LANGID, DWORD, DWORD);
00422 #define     MsiAdvertiseProductEx WINELIB_NAME_AW(MsiAdvertiseProductEx)
00423 
00424 UINT WINAPI MsiInstallProductA(LPCSTR, LPCSTR);
00425 UINT WINAPI MsiInstallProductW(LPCWSTR, LPCWSTR);
00426 #define     MsiInstallProduct WINELIB_NAME_AW(MsiInstallProduct)
00427 
00428 UINT WINAPI MsiReinstallProductA(LPCSTR, DWORD);
00429 UINT WINAPI MsiReinstallProductW(LPCWSTR, DWORD);
00430 #define     MsiReinstallProduct WINELIB_NAME_AW(MsiReinstallProduct)
00431 
00432 UINT WINAPI MsiApplyPatchA(LPCSTR, LPCSTR, INSTALLTYPE, LPCSTR);
00433 UINT WINAPI MsiApplyPatchW(LPCWSTR, LPCWSTR, INSTALLTYPE, LPCWSTR);
00434 #define     MsiApplyPatch WINELIB_NAME_AW(MsiApplyPatch)
00435 
00436 UINT WINAPI MsiEnumComponentCostsA(MSIHANDLE, LPCSTR, DWORD, INSTALLSTATE, LPSTR, LPDWORD, LPINT, LPINT);
00437 UINT WINAPI MsiEnumComponentCostsW(MSIHANDLE, LPCWSTR, DWORD, INSTALLSTATE, LPWSTR, LPDWORD, LPINT, LPINT);
00438 #define     MsiEnumComponentCosts WINELIB_NAME_AW(MsiEnumComponentCosts)
00439 
00440 UINT WINAPI MsiEnumProductsA(DWORD, LPSTR);
00441 UINT WINAPI MsiEnumProductsW(DWORD, LPWSTR);
00442 #define     MsiEnumProducts WINELIB_NAME_AW(MsiEnumProducts)
00443 
00444 UINT WINAPI MsiEnumProductsExA(LPCSTR, LPCSTR, DWORD, DWORD, CHAR[39], MSIINSTALLCONTEXT*, LPSTR, LPDWORD);
00445 UINT WINAPI MsiEnumProductsExW(LPCWSTR, LPCWSTR, DWORD, DWORD, WCHAR[39], MSIINSTALLCONTEXT*, LPWSTR, LPDWORD);
00446 #define     MsiEnumProductsEx WINELIB_NAME_AW(MsiEnumProductsEx)
00447 
00448 UINT WINAPI MsiEnumFeaturesA(LPCSTR, DWORD, LPSTR, LPSTR);
00449 UINT WINAPI MsiEnumFeaturesW(LPCWSTR, DWORD, LPWSTR, LPWSTR);
00450 #define     MsiEnumFeatures WINELIB_NAME_AW(MsiEnumFeatures)
00451 
00452 UINT WINAPI MsiEnumComponentsA(DWORD, LPSTR);
00453 UINT WINAPI MsiEnumComponentsW(DWORD, LPWSTR);
00454 #define     MsiEnumComponents WINELIB_NAME_AW(MsiEnumComponents)
00455 
00456 UINT WINAPI MsiEnumComponentsExA(LPCSTR, DWORD, DWORD, CHAR[39],
00457                                  MSIINSTALLCONTEXT *, LPSTR, LPDWORD);
00458 UINT WINAPI MsiEnumComponentsExW(LPCWSTR, DWORD, DWORD, WCHAR[39],
00459                                  MSIINSTALLCONTEXT *, LPWSTR, LPDWORD);
00460 #define     MsiEnumComponentsEx WINELIB_NAME_AW(MsiEnumComponentsEx)
00461 
00462 UINT WINAPI MsiEnumClientsA(LPCSTR, DWORD, LPSTR);
00463 UINT WINAPI MsiEnumClientsW(LPCWSTR, DWORD, LPWSTR);
00464 #define     MsiEnumClients WINELIB_NAME_AW(MsiEnumClients)
00465 
00466 UINT WINAPI MsiOpenPackageA(LPCSTR, MSIHANDLE*);
00467 UINT WINAPI MsiOpenPackageW(LPCWSTR, MSIHANDLE*);
00468 #define     MsiOpenPackage WINELIB_NAME_AW(MsiOpenPackage)
00469 
00470 UINT WINAPI MsiOpenPackageExA(LPCSTR, DWORD, MSIHANDLE*);
00471 UINT WINAPI MsiOpenPackageExW(LPCWSTR, DWORD, MSIHANDLE*);
00472 #define     MsiOpenPackageEx WINELIB_NAME_AW(MsiOpenPackageEx)
00473 
00474 UINT WINAPI MsiOpenProductA(LPCSTR, MSIHANDLE*);
00475 UINT WINAPI MsiOpenProductW(LPCWSTR, MSIHANDLE*);
00476 #define     MsiOpenProduct WINELIB_NAME_AW(MsiOpenProduct)
00477 
00478 UINT WINAPI MsiGetProductPropertyA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD);
00479 UINT WINAPI MsiGetProductPropertyW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD);
00480 #define     MsiGetProductProperty WINELIB_NAME_AW(MsiGetProductProperty)
00481 
00482 UINT WINAPI MsiVerifyPackageA(LPCSTR);
00483 UINT WINAPI MsiVerifyPackageW(LPCWSTR);
00484 #define     MsiVerifyPackage WINELIB_NAME_AW(MsiVerifyPackage)
00485 
00486 UINT WINAPI MsiQueryComponentStateA(LPCSTR,LPCSTR,MSIINSTALLCONTEXT,LPCSTR,INSTALLSTATE*);
00487 UINT WINAPI MsiQueryComponentStateW(LPCWSTR,LPCWSTR,MSIINSTALLCONTEXT,LPCWSTR,INSTALLSTATE*);
00488 #define     MsiQueryComponentState WINELIB_NAME_AW(MsiQueryComponentState)
00489 
00490 INSTALLSTATE WINAPI MsiQueryProductStateA(LPCSTR);
00491 INSTALLSTATE WINAPI MsiQueryProductStateW(LPCWSTR);
00492 #define      MsiQueryProductState WINELIB_NAME_AW(MsiQueryProductState)
00493 
00494 UINT WINAPI MsiConfigureProductA(LPCSTR, int, INSTALLSTATE);
00495 UINT WINAPI MsiConfigureProductW(LPCWSTR, int, INSTALLSTATE);
00496 #define     MsiConfigureProduct WINELIB_NAME_AW(MsiConfigureProduct);
00497 
00498 UINT WINAPI MsiConfigureProductExA(LPCSTR, int, INSTALLSTATE, LPCSTR);
00499 UINT WINAPI MsiConfigureProductExW(LPCWSTR, int, INSTALLSTATE, LPCWSTR);
00500 #define     MsiConfigureProductEx WINELIB_NAME_AW(MsiConfigureProductEx);
00501 
00502 UINT WINAPI MsiConfigureFeatureA(LPCSTR, LPCSTR, INSTALLSTATE);
00503 UINT WINAPI MsiConfigureFeatureW(LPCWSTR, LPCWSTR, INSTALLSTATE);
00504 #define     MsiConfigureFeature WINELIB_NAME_AW(MsiConfigureFeature);
00505 
00506 UINT WINAPI MsiGetProductCodeA(LPCSTR, LPSTR);
00507 UINT WINAPI MsiGetProductCodeW(LPCWSTR, LPWSTR);
00508 #define     MsiGetProductCode WINELIB_NAME_AW(MsiGetProductCode)
00509 
00510 UINT WINAPI MsiGetProductInfoA(LPCSTR, LPCSTR, LPSTR, LPDWORD);
00511 UINT WINAPI MsiGetProductInfoW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD);
00512 #define     MsiGetProductInfo WINELIB_NAME_AW(MsiGetProductInfo)
00513 
00514 UINT WINAPI MsiGetProductInfoExA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, LPCSTR, LPSTR, LPDWORD);
00515 UINT WINAPI MsiGetProductInfoExW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, LPCWSTR, LPWSTR, LPDWORD);
00516 #define     MsiGetProductInfoEx WINELIB_NAME_AW(MsiGetProductInfoEx)
00517 
00518 UINT WINAPI MsiGetPatchInfoExA(LPCSTR, LPCSTR, LPCSTR, MSIINSTALLCONTEXT, LPCSTR, LPSTR, LPDWORD);
00519 UINT WINAPI MsiGetPatchInfoExW(LPCWSTR, LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, LPCWSTR, LPWSTR, LPDWORD);
00520 #define     MsiGetPatchInfoEx WINELIB_NAME_AW(MsiGetPatchInfoEx)
00521 
00522 UINT WINAPI MsiGetPatchInfoA(LPCSTR, LPCSTR, LPSTR, LPDWORD);
00523 UINT WINAPI MsiGetPatchInfoW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD);
00524 #define     MsiGetPatchInfo WINELIB_NAME_AW(MsiGetPatchInfo)
00525 
00526 UINT WINAPI MsiEnableLogA(DWORD, LPCSTR, DWORD);
00527 UINT WINAPI MsiEnableLogW(DWORD, LPCWSTR, DWORD);
00528 #define     MsiEnableLog WINELIB_NAME_AW(MsiEnableLog)
00529 
00530 INSTALLUI_HANDLERA WINAPI MsiSetExternalUIA(INSTALLUI_HANDLERA, DWORD, LPVOID);
00531 INSTALLUI_HANDLERW WINAPI MsiSetExternalUIW(INSTALLUI_HANDLERW, DWORD, LPVOID);
00532 #define MsiSetExternalUI WINELIB_NAME_AW(MsiSetExternalUI)
00533 
00534 INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR, LPCSTR, LPSTR, LPDWORD);
00535 INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD);
00536 #define MsiGetComponentPath WINELIB_NAME_AW(MsiGetComponentPath)
00537 
00538 INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR, LPCSTR);
00539 INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR, LPCWSTR);
00540 #define MsiQueryFeatureState WINELIB_NAME_AW(MsiQueryFeatureState)
00541 
00542 UINT WINAPI MsiGetFeatureInfoA(MSIHANDLE, LPCSTR, LPDWORD, LPSTR, LPDWORD, LPSTR, LPDWORD);
00543 UINT WINAPI MsiGetFeatureInfoW(MSIHANDLE, LPCWSTR, LPDWORD, LPWSTR, LPDWORD, LPWSTR, LPDWORD);
00544 #define MsiGetFeatureInfo WINELIB_NAME_AW(MsiGetFeatureInfo)
00545 
00546 UINT WINAPI MsiGetFeatureUsageA(LPCSTR, LPCSTR, LPDWORD, LPWORD);
00547 UINT WINAPI MsiGetFeatureUsageW(LPCWSTR, LPCWSTR, LPDWORD, LPWORD);
00548 #define MsiGetFeatureUsage WINELIB_NAME_AW(MsiGetFeatureUsage)
00549 
00550 UINT WINAPI MsiEnumRelatedProductsA(LPCSTR, DWORD, DWORD, LPSTR);
00551 UINT WINAPI MsiEnumRelatedProductsW(LPCWSTR, DWORD, DWORD, LPWSTR);
00552 #define MsiEnumRelatedProducts WINELIB_NAME_AW(MsiEnumRelatedProducts)
00553 
00554 UINT WINAPI MsiProvideAssemblyA(LPCSTR, LPCSTR, DWORD, DWORD, LPSTR, LPDWORD);
00555 UINT WINAPI MsiProvideAssemblyW(LPCWSTR, LPCWSTR, DWORD, DWORD, LPWSTR, LPDWORD);
00556 #define MsiProvideAssembly WINELIB_NAME_AW(MsiProvideAssembly)
00557 
00558 UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR, DWORD, LPSTR, LPDWORD, LPSTR, LPDWORD);
00559 UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR, DWORD, LPWSTR, LPDWORD, LPWSTR, LPDWORD);
00560 #define MsiEnumComponentQualifiers WINELIB_NAME_AW(MsiEnumComponentQualifiers)
00561 
00562 UINT WINAPI MsiGetFileVersionA(LPCSTR, LPSTR, LPDWORD, LPSTR, LPDWORD);
00563 UINT WINAPI MsiGetFileVersionW(LPCWSTR, LPWSTR, LPDWORD, LPWSTR, LPDWORD);
00564 #define MsiGetFileVersion WINELIB_NAME_AW(MsiGetFileVersion)
00565 
00566 UINT WINAPI MsiMessageBoxA(HWND, LPCSTR, LPCSTR, UINT, WORD, DWORD);
00567 UINT WINAPI MsiMessageBoxW(HWND, LPCWSTR, LPCWSTR, UINT, WORD, DWORD);
00568 #define MsiMessageBox WINELIB_NAME_AW(MsiMessageBox)
00569 
00570 UINT WINAPI MsiProvideQualifiedComponentExA(LPCSTR, LPCSTR, DWORD, LPCSTR, DWORD, DWORD, LPSTR, LPDWORD);
00571 UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR, LPCWSTR, DWORD, LPCWSTR, DWORD, DWORD, LPWSTR, LPDWORD);
00572 #define MsiProvideQualifiedComponentEx WINELIB_NAME_AW(MsiProvideQualifiedComponentEx)
00573 
00574 UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR, LPCSTR, DWORD, LPSTR, LPDWORD);
00575 UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR, LPCWSTR, DWORD, LPWSTR, LPDWORD);
00576 #define MsiProvideQualifiedComponent WINELIB_NAME_AW(MsiProvideQualifiedComponent)
00577 
00578 USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR, LPSTR, LPDWORD, LPSTR, LPDWORD, LPSTR, LPDWORD);
00579 USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR, LPWSTR, LPDWORD, LPWSTR, LPDWORD, LPWSTR, LPDWORD);
00580 #define MsiGetUserInfo WINELIB_NAME_AW(MsiGetUserInfo)
00581 
00582 UINT WINAPI MsiCollectUserInfoA(LPCSTR);
00583 UINT WINAPI MsiCollectUserInfoW(LPCWSTR);
00584 #define MsiCollectUserInfo WINELIB_NAME_AW(MsiCollectUserInfo)
00585 
00586 UINT WINAPI MsiReinstallFeatureA(LPCSTR, LPCSTR, DWORD);
00587 UINT WINAPI MsiReinstallFeatureW(LPCWSTR, LPCWSTR, DWORD);
00588 #define MsiReinstallFeature WINELIB_NAME_AW(MsiReinstallFeature)
00589 
00590 UINT WINAPI MsiGetShortcutTargetA(LPCSTR, LPSTR, LPSTR, LPSTR);
00591 UINT WINAPI MsiGetShortcutTargetW(LPCWSTR, LPWSTR, LPWSTR, LPWSTR);
00592 #define MsiGetShortcutTarget WINELIB_NAME_AW(MsiGetShortcutTarget)
00593 
00594 INSTALLSTATE WINAPI MsiUseFeatureW(LPCWSTR, LPCWSTR);
00595 INSTALLSTATE WINAPI MsiUseFeatureA(LPCSTR, LPCSTR);
00596 #define MsiUseFeature WINELIB_NAME_AW(MsiUseFeature)
00597 
00598 INSTALLSTATE WINAPI MsiUseFeatureExW(LPCWSTR, LPCWSTR, DWORD, DWORD);
00599 INSTALLSTATE WINAPI MsiUseFeatureExA(LPCSTR, LPCSTR, DWORD, DWORD);
00600 #define MsiUseFeatureEx WINELIB_NAME_AW(MsiUseFeatureEx)
00601 
00602 HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR, DWORD, PCCERT_CONTEXT*, LPBYTE, LPDWORD);
00603 HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR, DWORD, PCCERT_CONTEXT*, LPBYTE, LPDWORD);
00604 #define MsiGetFileSignatureInformation WINELIB_NAME_AW(MsiGetFileSignatureInformation)
00605 
00606 INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR, LPSTR, LPDWORD);
00607 INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR, LPWSTR, LPDWORD);
00608 #define  MsiLocateComponent WINELIB_NAME_AW(MsiLocateComponent)
00609 
00610 UINT WINAPI MsiSourceListAddSourceA(LPCSTR, LPCSTR, DWORD, LPCSTR);
00611 UINT WINAPI MsiSourceListAddSourceW(LPCWSTR, LPCWSTR, DWORD, LPCWSTR);
00612 #define     MsiSourceListAddSource WINELIB_NAME_AW(MsiSourceListAddSource)
00613 
00614 UINT WINAPI MsiSourceListEnumMediaDisksA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPDWORD,
00615                                          LPSTR, LPDWORD, LPSTR, LPDWORD);
00616 UINT WINAPI MsiSourceListEnumMediaDisksW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPDWORD,
00617                                          LPWSTR, LPDWORD, LPWSTR, LPDWORD);
00618 #define     MsiSourceListEnumMediaDisks WINELIB_NAME_AW(MsiSourceListEnumMediaDisks)
00619 
00620 UINT WINAPI MsiSourceListEnumSourcesA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPSTR, LPDWORD);
00621 UINT WINAPI MsiSourceListEnumSourcesW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPWSTR, LPDWORD);
00622 #define     MsiSourceListEnumSources WINELIB_NAME_AW(MsiSourceListEnumSources)
00623 
00624 UINT WINAPI MsiSourceListClearSourceA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR);
00625 UINT WINAPI MsiSourceListClearSourceW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR);
00626 #define     MsiSourceListClearSource WINELIB_NAME_AW(MsiSourceListClearSource)
00627 
00628 UINT WINAPI MsiSourceListClearAllA(LPCSTR, LPCSTR, DWORD);
00629 UINT WINAPI MsiSourceListClearAllW(LPCWSTR, LPCWSTR, DWORD);
00630 #define     MsiSourceListClearAll WINELIB_NAME_AW(MsiSourceListClearAll)
00631 
00632 UINT WINAPI MsiSourceListGetInfoA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR, LPSTR, LPDWORD);
00633 UINT WINAPI MsiSourceListGetInfoW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, LPWSTR, LPDWORD);
00634 #define     MsiSourceListGetInfo WINELIB_NAME_AW(MsiSourceListGetInfo)
00635 
00636 UINT WINAPI MsiSourceListSetInfoA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR, LPCSTR);
00637 UINT WINAPI MsiSourceListSetInfoW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, LPCWSTR);
00638 #define     MsiSourceListSetInfo WINELIB_NAME_AW(MsiSourceListSetInfo)
00639 
00640 UINT WINAPI MsiSourceListAddSourceExA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR, DWORD);
00641 UINT WINAPI MsiSourceListAddSourceExW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, DWORD);
00642 #define     MsiSourceListAddSourceEx WINELIB_NAME_AW(MsiSourceListAddSourceEx)
00643 
00644 UINT WINAPI MsiSourceListAddMediaDiskA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPCSTR, LPCSTR);
00645 UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPCWSTR, LPCWSTR);
00646 #define     MsiSourceListAddMediaDisk WINELIB_NAME_AW(MsiSourceListAddMediaDisk)
00647 
00648 UINT WINAPI MsiEnumPatchesA(LPCSTR, DWORD, LPSTR, LPSTR, LPDWORD);
00649 UINT WINAPI MsiEnumPatchesW(LPCWSTR, DWORD, LPWSTR, LPWSTR, LPDWORD);
00650 #define     MsiEnumPatches WINELIB_NAME_AW(MsiEnumPatches)
00651 
00652 UINT WINAPI MsiEnumPatchesExA(LPCSTR, LPCSTR, DWORD, DWORD, DWORD, LPSTR, LPSTR,
00653                               MSIINSTALLCONTEXT*, LPSTR, LPDWORD);
00654 UINT WINAPI MsiEnumPatchesExW(LPCWSTR, LPCWSTR, DWORD, DWORD, DWORD, LPWSTR, LPWSTR,
00655                               MSIINSTALLCONTEXT*, LPWSTR, LPDWORD);
00656 #define     MsiEnumPatchesEx WINELIB_NAME_AW(MsiEnumPatchesEx)
00657 
00658 UINT WINAPI MsiGetFileHashA(LPCSTR, DWORD, PMSIFILEHASHINFO);
00659 UINT WINAPI MsiGetFileHashW(LPCWSTR, DWORD, PMSIFILEHASHINFO);
00660 #define     MsiGetFileHash WINELIB_NAME_AW(MsiGetFileHash)
00661 
00662 UINT WINAPI MsiAdvertiseScriptA(LPCSTR, DWORD, PHKEY, BOOL);
00663 UINT WINAPI MsiAdvertiseScriptW(LPCWSTR, DWORD, PHKEY, BOOL);
00664 #define     MsiAdvertiseScript WINELIB_NAME_AW(MsiAdvertiseScript)
00665 
00666 UINT WINAPI MsiIsProductElevatedA(LPCSTR, BOOL *);
00667 UINT WINAPI MsiIsProductElevatedW(LPCWSTR, BOOL *);
00668 #define     MsiIsProductElevated WINELIB_NAME_AW(MsiIsProductElevated)
00669 
00670 UINT WINAPI MsiDatabaseMergeA(MSIHANDLE, MSIHANDLE, LPCSTR);
00671 UINT WINAPI MsiDatabaseMergeW(MSIHANDLE, MSIHANDLE, LPCWSTR);
00672 #define     MsiDatabaseMerge WINELIB_NAME_AW(MsiDatabaseMerge)
00673 
00674 UINT WINAPI MsiInstallMissingComponentA(LPCSTR, LPCSTR, INSTALLSTATE);
00675 UINT WINAPI MsiInstallMissingComponentW(LPCWSTR, LPCWSTR, INSTALLSTATE);
00676 #define     MsiInstallMissingComponent WINELIB_NAME_AW(MsiInstallMissingComponent)
00677 
00678 UINT WINAPI MsiDetermineApplicablePatchesA(LPCSTR, DWORD, PMSIPATCHSEQUENCEINFOA);
00679 UINT WINAPI MsiDetermineApplicablePatchesW(LPCWSTR, DWORD, PMSIPATCHSEQUENCEINFOW);
00680 #define     MsiDetermineApplicablePatches WINELIB_NAME_AW(MsiDetermineApplicablePatches)
00681 
00682 UINT WINAPI MsiDeterminePatchSequenceA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, PMSIPATCHSEQUENCEINFOA);
00683 UINT WINAPI MsiDeterminePatchSequenceW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, PMSIPATCHSEQUENCEINFOW);
00684 #define     MsiDeterminePatchSequence WINELIB_NAME_AW(MsiDeterminePatchSequence)
00685 
00686 UINT WINAPI MsiApplyMultiplePatchesA(LPCSTR, LPCSTR, LPCSTR);
00687 UINT WINAPI MsiApplyMultiplePatchesW(LPCWSTR, LPCWSTR, LPCWSTR);
00688 #define     MsiApplyMultiplePatches WINELIB_NAME_AW(MsiApplyMultiplePatches)
00689 
00690 UINT WINAPI MsiBeginTransactionA(LPCSTR, DWORD, MSIHANDLE *, HANDLE *);
00691 UINT WINAPI MsiBeginTransactionW(LPCWSTR, DWORD, MSIHANDLE *, HANDLE *);
00692 #define     MsiBeginTransaction WINELIB_NAME_AW(MsiBeginTransaction)
00693 
00694 UINT WINAPI MsiEndTransaction(DWORD);
00695 
00696 /* Non Unicode */
00697 UINT WINAPI MsiCloseHandle(MSIHANDLE);
00698 UINT WINAPI MsiCloseAllHandles(void);
00699 INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL, HWND*);
00700 UINT WINAPI MsiSetExternalUIRecord(INSTALLUI_HANDLER_RECORD, DWORD, LPVOID, PINSTALLUI_HANDLER_RECORD);
00701 
00702 #ifdef __cplusplus
00703 }
00704 #endif
00705 
00706 #endif /* __WINE_MSI_H */

Generated on Sun May 27 2012 04:31:56 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.