| 1 | 
 /** | 
 
 
 
 
 
 | 2 | 
  * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 
 | 3 | 
  * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 
 | 4 | 
  * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 
 | 5 | 
  */ | 
 
 
 
 
 
 | 6 | 
 #ifndef _MSIQUERY_H_ | 
 
 
 
 
 
 | 7 | 
 #define _MSIQUERY_H_ | 
 
 
 
 
 
 | 8 | 
  | 
 
 
 
 
 
 | 9 | 
 #include <_mingw_unicode.h> | 
 
 
 
 
 
 | 10 | 
 #include "msi.h" | 
 
 
 
 
 
 | 11 | 
  | 
 
 
 
 
 
 | 12 | 
 #define MSI_NULL_INTEGER 0x80000000 | 
 
 
 
 
 
 | 13 | 
  | 
 
 
 
 
 
 | 14 | 
 #define MSIDBOPEN_READONLY (LPCTSTR)0 | 
 
 
 
 
 
 | 15 | 
 #define MSIDBOPEN_TRANSACT (LPCTSTR)1 | 
 
 
 
 
 
 | 16 | 
 #define MSIDBOPEN_DIRECT (LPCTSTR)2 | 
 
 
 
 
 
 | 17 | 
 #define MSIDBOPEN_CREATE (LPCTSTR)3 | 
 
 
 
 
 
 | 18 | 
 #define MSIDBOPEN_CREATEDIRECT (LPCTSTR)4 | 
 
 
 
 
 
 | 19 | 
 #define MSIDBOPEN_PATCHFILE 32/sizeof(*MSIDBOPEN_READONLY) | 
 
 
 
 
 
 | 20 | 
  | 
 
 
 
 
 
 | 21 | 
 typedef enum tagMSIDBSTATE { | 
 
 
 
 
 
 | 22 | 
   MSIDBSTATE_ERROR =-1,MSIDBSTATE_READ = 0,MSIDBSTATE_WRITE = 1 | 
 
 
 
 
 
 | 23 | 
 } MSIDBSTATE; | 
 
 
 
 
 
 | 24 | 
  | 
 
 
 
 
 
 | 25 | 
 typedef enum tagMSIMODIFY { | 
 
 
 
 
 
 | 26 | 
   MSIMODIFY_SEEK =-1,MSIMODIFY_REFRESH = 0,MSIMODIFY_INSERT = 1,MSIMODIFY_UPDATE = 2,MSIMODIFY_ASSIGN = 3,MSIMODIFY_REPLACE = 4, | 
 
 
 
 
 
 | 27 | 
   MSIMODIFY_MERGE = 5,MSIMODIFY_DELETE = 6,MSIMODIFY_INSERT_TEMPORARY = 7,MSIMODIFY_VALIDATE = 8,MSIMODIFY_VALIDATE_NEW = 9, | 
 
 
 
 
 
 | 28 | 
   MSIMODIFY_VALIDATE_FIELD = 10,MSIMODIFY_VALIDATE_DELETE = 11 | 
 
 
 
 
 
 | 29 | 
 } MSIMODIFY; | 
 
 
 
 
 
 | 30 | 
  | 
 
 
 
 
 
 | 31 | 
 typedef enum tagMSICOLINFO { | 
 
 
 
 
 
 | 32 | 
   MSICOLINFO_NAMES = 0,MSICOLINFO_TYPES = 1 | 
 
 
 
 
 
 | 33 | 
 } MSICOLINFO; | 
 
 
 
 
 
 | 34 | 
  | 
 
 
 
 
 
 | 35 | 
 typedef enum tagMSICONDITION { | 
 
 
 
 
 
 | 36 | 
   MSICONDITION_FALSE = 0,MSICONDITION_TRUE = 1,MSICONDITION_NONE = 2,MSICONDITION_ERROR = 3 | 
 
 
 
 
 
 | 37 | 
 } MSICONDITION; | 
 
 
 
 
 
 | 38 | 
  | 
 
 
 
 
 
 | 39 | 
 typedef enum tagMSICOSTTREE { | 
 
 
 
 
 
 | 40 | 
   MSICOSTTREE_SELFONLY = 0,MSICOSTTREE_CHILDREN = 1,MSICOSTTREE_PARENTS = 2,MSICOSTTREE_RESERVED = 3 | 
 
 
 
 
 
 | 41 | 
 } MSICOSTTREE; | 
 
 
 
 
 
 | 42 | 
  | 
 
 
 
 
 
 | 43 | 
 typedef enum tagMSIDBERROR { | 
 
 
 
 
 
 | 44 | 
   MSIDBERROR_INVALIDARG = -3,MSIDBERROR_MOREDATA = -2,MSIDBERROR_FUNCTIONERROR = -1,MSIDBERROR_NOERROR = 0,MSIDBERROR_DUPLICATEKEY = 1, | 
 
 
 
 
 
 | 45 | 
   MSIDBERROR_REQUIRED = 2,MSIDBERROR_BADLINK = 3,MSIDBERROR_OVERFLOW = 4,MSIDBERROR_UNDERFLOW = 5,MSIDBERROR_NOTINSET = 6, | 
 
 
 
 
 
 | 46 | 
   MSIDBERROR_BADVERSION = 7,MSIDBERROR_BADCASE = 8,MSIDBERROR_BADGUID = 9,MSIDBERROR_BADWILDCARD = 10,MSIDBERROR_BADIDENTIFIER = 11, | 
 
 
 
 
 
 | 47 | 
   MSIDBERROR_BADLANGUAGE = 12,MSIDBERROR_BADFILENAME = 13,MSIDBERROR_BADPATH = 14,MSIDBERROR_BADCONDITION = 15,MSIDBERROR_BADFORMATTED = 16, | 
 
 
 
 
 
 | 48 | 
   MSIDBERROR_BADTEMPLATE = 17,MSIDBERROR_BADDEFAULTDIR = 18,MSIDBERROR_BADREGPATH = 19,MSIDBERROR_BADCUSTOMSOURCE = 20,MSIDBERROR_BADPROPERTY = 21, | 
 
 
 
 
 
 | 49 | 
   MSIDBERROR_MISSINGDATA = 22,MSIDBERROR_BADCATEGORY = 23,MSIDBERROR_BADKEYTABLE = 24,MSIDBERROR_BADMAXMINVALUES = 25,MSIDBERROR_BADCABINET = 26, | 
 
 
 
 
 
 | 50 | 
   MSIDBERROR_BADSHORTCUT = 27,MSIDBERROR_STRINGOVERFLOW = 28,MSIDBERROR_BADLOCALIZEATTRIB = 29 | 
 
 
 
 
 
 | 51 | 
 } MSIDBERROR; | 
 
 
 
 
 
 | 52 | 
  | 
 
 
 
 
 
 | 53 | 
 typedef enum tagMSIRUNMODE { | 
 
 
 
 
 
 | 54 | 
   MSIRUNMODE_ADMIN = 0,MSIRUNMODE_ADVERTISE = 1,MSIRUNMODE_MAINTENANCE = 2,MSIRUNMODE_ROLLBACKENABLED = 3,MSIRUNMODE_LOGENABLED = 4, | 
 
 
 
 
 
 | 55 | 
   MSIRUNMODE_OPERATIONS = 5,MSIRUNMODE_REBOOTATEND = 6,MSIRUNMODE_REBOOTNOW = 7,MSIRUNMODE_CABINET = 8,MSIRUNMODE_SOURCESHORTNAMES= 9, | 
 
 
 
 
 
 | 56 | 
   MSIRUNMODE_TARGETSHORTNAMES= 10,MSIRUNMODE_RESERVED11 = 11,MSIRUNMODE_WINDOWS9X = 12,MSIRUNMODE_ZAWENABLED = 13,MSIRUNMODE_RESERVED14 = 14, | 
 
 
 
 
 
 | 57 | 
   MSIRUNMODE_RESERVED15 = 15,MSIRUNMODE_SCHEDULED = 16,MSIRUNMODE_ROLLBACK = 17,MSIRUNMODE_COMMIT = 18 | 
 
 
 
 
 
 | 58 | 
 } MSIRUNMODE; | 
 
 
 
 
 
 | 59 | 
  | 
 
 
 
 
 
 | 60 | 
 #define INSTALLMESSAGE_TYPEMASK __MSABI_LONG(0xFF000000) | 
 
 
 
 
 
 | 61 | 
  | 
 
 
 
 
 
 | 62 | 
 typedef enum tagMSITRANSFORM_ERROR { | 
 
 
 
 
 
 | 63 | 
   MSITRANSFORM_ERROR_ADDEXISTINGROW = 0x00000001,MSITRANSFORM_ERROR_DELMISSINGROW = 0x00000002,MSITRANSFORM_ERROR_ADDEXISTINGTABLE = 0x00000004, | 
 
 
 
 
 
 | 64 | 
   MSITRANSFORM_ERROR_DELMISSINGTABLE = 0x00000008,MSITRANSFORM_ERROR_UPDATEMISSINGROW = 0x00000010,MSITRANSFORM_ERROR_CHANGECODEPAGE = 0x00000020, | 
 
 
 
 
 
 | 65 | 
   MSITRANSFORM_ERROR_VIEWTRANSFORM = 0x00000100 | 
 
 
 
 
 
 | 66 | 
 } MSITRANSFORM_ERROR; | 
 
 
 
 
 
 | 67 | 
  | 
 
 
 
 
 
 | 68 | 
 typedef enum tagMSITRANSFORM_VALIDATE { | 
 
 
 
 
 
 | 69 | 
   MSITRANSFORM_VALIDATE_LANGUAGE = 0x00000001,MSITRANSFORM_VALIDATE_PRODUCT = 0x00000002,MSITRANSFORM_VALIDATE_PLATFORM = 0x00000004, | 
 
 
 
 
 
 | 70 | 
   MSITRANSFORM_VALIDATE_MAJORVERSION = 0x00000008,MSITRANSFORM_VALIDATE_MINORVERSION = 0x00000010,MSITRANSFORM_VALIDATE_UPDATEVERSION = 0x00000020, | 
 
 
 
 
 
 | 71 | 
   MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION = 0x00000040,MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION = 0x00000080, | 
 
 
 
 
 
 | 72 | 
   MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION = 0x00000100,MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION = 0x00000200, | 
 
 
 
 
 
 | 73 | 
   MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION = 0x00000400,MSITRANSFORM_VALIDATE_UPGRADECODE = 0x00000800 | 
 
 
 
 
 
 | 74 | 
 } MSITRANSFORM_VALIDATE; | 
 
 
 
 
 
 | 75 | 
  | 
 
 
 
 
 
 | 76 | 
 #ifdef __cplusplus | 
 
 
 
 
 
 | 77 | 
 extern "C" { | 
 
 
 
 
 
 | 78 | 
 #endif | 
 
 
 
 
 
 | 79 | 
  | 
 
 
 
 
 
 | 80 | 
   UINT WINAPI MsiDatabaseOpenViewA(MSIHANDLE hDatabase,LPCSTR szQuery,MSIHANDLE *phView); | 
 
 
 
 
 
 | 81 | 
   UINT WINAPI MsiDatabaseOpenViewW(MSIHANDLE hDatabase,LPCWSTR szQuery,MSIHANDLE *phView); | 
 
 
 
 
 
 | 82 | 
 #define MsiDatabaseOpenView __MINGW_NAME_AW(MsiDatabaseOpenView) | 
 
 
 
 
 
 | 83 | 
  | 
 
 
 
 
 
 | 84 | 
   MSIDBERROR WINAPI MsiViewGetErrorA(MSIHANDLE hView,LPSTR szColumnNameBuffer,DWORD *pcchBuf); | 
 
 
 
 
 
 | 85 | 
   MSIDBERROR WINAPI MsiViewGetErrorW(MSIHANDLE hView,LPWSTR szColumnNameBuffer,DWORD *pcchBuf); | 
 
 
 
 
 
 | 86 | 
 #define MsiViewGetError __MINGW_NAME_AW(MsiViewGetError) | 
 
 
 
 
 
 | 87 | 
  | 
 
 
 
 
 
 | 88 | 
   UINT WINAPI MsiViewExecute(MSIHANDLE hView,MSIHANDLE hRecord); | 
 
 
 
 
 
 | 89 | 
   UINT WINAPI MsiViewFetch(MSIHANDLE hView,MSIHANDLE *phRecord); | 
 
 
 
 
 
 | 90 | 
   UINT WINAPI MsiViewModify(MSIHANDLE hView,MSIMODIFY eModifyMode,MSIHANDLE hRecord); | 
 
 
 
 
 
 | 91 | 
   UINT WINAPI MsiViewGetColumnInfo(MSIHANDLE hView,MSICOLINFO eColumnInfo,MSIHANDLE *phRecord); | 
 
 
 
 
 
 | 92 | 
   UINT WINAPI MsiViewClose(MSIHANDLE hView); | 
 
 
 
 
 
 | 93 | 
   UINT WINAPI MsiDatabaseGetPrimaryKeysA(MSIHANDLE hDatabase,LPCSTR szTableName,MSIHANDLE *phRecord); | 
 
 
 
 
 
 | 94 | 
   UINT WINAPI MsiDatabaseGetPrimaryKeysW(MSIHANDLE hDatabase,LPCWSTR szTableName,MSIHANDLE *phRecord); | 
 
 
 
 
 
 | 95 | 
 #define MsiDatabaseGetPrimaryKeys __MINGW_NAME_AW(MsiDatabaseGetPrimaryKeys) | 
 
 
 
 
 
 | 96 | 
  | 
 
 
 
 
 
 | 97 | 
   MSICONDITION WINAPI MsiDatabaseIsTablePersistentA(MSIHANDLE hDatabase,LPCSTR szTableName); | 
 
 
 
 
 
 | 98 | 
   MSICONDITION WINAPI MsiDatabaseIsTablePersistentW(MSIHANDLE hDatabase,LPCWSTR szTableName); | 
 
 
 
 
 
 | 99 | 
 #define MsiDatabaseIsTablePersistent __MINGW_NAME_AW(MsiDatabaseIsTablePersistent) | 
 
 
 
 
 
 | 100 | 
  | 
 
 
 
 
 
 | 101 | 
   UINT WINAPI MsiGetSummaryInformationA(MSIHANDLE hDatabase,LPCSTR szDatabasePath,UINT uiUpdateCount,MSIHANDLE *phSummaryInfo); | 
 
 
 
 
 
 | 102 | 
   UINT WINAPI MsiGetSummaryInformationW(MSIHANDLE hDatabase,LPCWSTR szDatabasePath,UINT uiUpdateCount,MSIHANDLE *phSummaryInfo); | 
 
 
 
 
 
 | 103 | 
 #define MsiGetSummaryInformation __MINGW_NAME_AW(MsiGetSummaryInformation) | 
 
 
 
 
 
 | 104 | 
  | 
 
 
 
 
 
 | 105 | 
   UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE hSummaryInfo,UINT *puiPropertyCount); | 
 
 
 
 
 
 | 106 | 
   UINT WINAPI MsiSummaryInfoSetPropertyA(MSIHANDLE hSummaryInfo,UINT uiProperty,UINT uiDataType,INT iValue,FILETIME *pftValue,LPCSTR szValue); | 
 
 
 
 
 
 | 107 | 
   UINT WINAPI MsiSummaryInfoSetPropertyW(MSIHANDLE hSummaryInfo,UINT uiProperty,UINT uiDataType,INT iValue,FILETIME *pftValue,LPCWSTR szValue); | 
 
 
 
 
 
 | 108 | 
 #define MsiSummaryInfoSetProperty __MINGW_NAME_AW(MsiSummaryInfoSetProperty) | 
 
 
 
 
 
 | 109 | 
  | 
 
 
 
 
 
 | 110 | 
   UINT WINAPI MsiSummaryInfoGetPropertyA(MSIHANDLE hSummaryInfo,UINT uiProperty,UINT *puiDataType,INT *piValue,FILETIME *pftValue,LPSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 111 | 
   UINT WINAPI MsiSummaryInfoGetPropertyW(MSIHANDLE hSummaryInfo,UINT uiProperty,UINT *puiDataType,INT *piValue,FILETIME *pftValue,LPWSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 112 | 
 #define MsiSummaryInfoGetProperty __MINGW_NAME_AW(MsiSummaryInfoGetProperty) | 
 
 
 
 
 
 | 113 | 
  | 
 
 
 
 
 
 | 114 | 
   UINT WINAPI MsiSummaryInfoPersist(MSIHANDLE hSummaryInfo); | 
 
 
 
 
 
 | 115 | 
   UINT WINAPI MsiOpenDatabaseA(LPCSTR szDatabasePath,LPCSTR szPersist,MSIHANDLE *phDatabase); | 
 
 
 
 
 
 | 116 | 
   UINT WINAPI MsiOpenDatabaseW(LPCWSTR szDatabasePath,LPCWSTR szPersist,MSIHANDLE *phDatabase); | 
 
 
 
 
 
 | 117 | 
 #define MsiOpenDatabase __MINGW_NAME_AW(MsiOpenDatabase) | 
 
 
 
 
 
 | 118 | 
  | 
 
 
 
 
 
 | 119 | 
   UINT WINAPI MsiDatabaseImportA(MSIHANDLE hDatabase,LPCSTR szFolderPath,LPCSTR szFileName); | 
 
 
 
 
 
 | 120 | 
   UINT WINAPI MsiDatabaseImportW(MSIHANDLE hDatabase,LPCWSTR szFolderPath,LPCWSTR szFileName); | 
 
 
 
 
 
 | 121 | 
 #define MsiDatabaseImport __MINGW_NAME_AW(MsiDatabaseImport) | 
 
 
 
 
 
 | 122 | 
  | 
 
 
 
 
 
 | 123 | 
   UINT WINAPI MsiDatabaseExportA(MSIHANDLE hDatabase,LPCSTR szTableName,LPCSTR szFolderPath,LPCSTR szFileName); | 
 
 
 
 
 
 | 124 | 
   UINT WINAPI MsiDatabaseExportW(MSIHANDLE hDatabase,LPCWSTR szTableName,LPCWSTR szFolderPath,LPCWSTR szFileName); | 
 
 
 
 
 
 | 125 | 
 #define MsiDatabaseExport __MINGW_NAME_AW(MsiDatabaseExport) | 
 
 
 
 
 
 | 126 | 
  | 
 
 
 
 
 
 | 127 | 
   UINT WINAPI MsiDatabaseMergeA(MSIHANDLE hDatabase,MSIHANDLE hDatabaseMerge,LPCSTR szTableName); | 
 
 
 
 
 
 | 128 | 
   UINT WINAPI MsiDatabaseMergeW(MSIHANDLE hDatabase,MSIHANDLE hDatabaseMerge,LPCWSTR szTableName); | 
 
 
 
 
 
 | 129 | 
 #define MsiDatabaseMerge __MINGW_NAME_AW(MsiDatabaseMerge) | 
 
 
 
 
 
 | 130 | 
  | 
 
 
 
 
 
 | 131 | 
   UINT WINAPI MsiDatabaseGenerateTransformA(MSIHANDLE hDatabase,MSIHANDLE hDatabaseReference,LPCSTR szTransformFile,int iReserved1,int iReserved2); | 
 
 
 
 
 
 | 132 | 
   UINT WINAPI MsiDatabaseGenerateTransformW(MSIHANDLE hDatabase,MSIHANDLE hDatabaseReference,LPCWSTR szTransformFile,int iReserved1,int iReserved2); | 
 
 
 
 
 
 | 133 | 
 #define MsiDatabaseGenerateTransform __MINGW_NAME_AW(MsiDatabaseGenerateTransform) | 
 
 
 
 
 
 | 134 | 
  | 
 
 
 
 
 
 | 135 | 
   UINT WINAPI MsiDatabaseApplyTransformA(MSIHANDLE hDatabase,LPCSTR szTransformFile,int iErrorConditions); | 
 
 
 
 
 
 | 136 | 
   UINT WINAPI MsiDatabaseApplyTransformW(MSIHANDLE hDatabase,LPCWSTR szTransformFile,int iErrorConditions); | 
 
 
 
 
 
 | 137 | 
 #define MsiDatabaseApplyTransform __MINGW_NAME_AW(MsiDatabaseApplyTransform) | 
 
 
 
 
 
 | 138 | 
  | 
 
 
 
 
 
 | 139 | 
   UINT WINAPI MsiCreateTransformSummaryInfoA(MSIHANDLE hDatabase,MSIHANDLE hDatabaseReference,LPCSTR szTransformFile,int iErrorConditions,int iValidation); | 
 
 
 
 
 
 | 140 | 
   UINT WINAPI MsiCreateTransformSummaryInfoW(MSIHANDLE hDatabase,MSIHANDLE hDatabaseReference,LPCWSTR szTransformFile,int iErrorConditions,int iValidation); | 
 
 
 
 
 
 | 141 | 
 #define MsiCreateTransformSummaryInfo __MINGW_NAME_AW(MsiCreateTransformSummaryInfo) | 
 
 
 
 
 
 | 142 | 
  | 
 
 
 
 
 
 | 143 | 
   UINT WINAPI MsiDatabaseCommit(MSIHANDLE hDatabase); | 
 
 
 
 
 
 | 144 | 
   MSIDBSTATE WINAPI MsiGetDatabaseState(MSIHANDLE hDatabase); | 
 
 
 
 
 
 | 145 | 
   MSIHANDLE WINAPI MsiCreateRecord(UINT cParams); | 
 
 
 
 
 
 | 146 | 
   WINBOOL WINAPI MsiRecordIsNull(MSIHANDLE hRecord,UINT iField); | 
 
 
 
 
 
 | 147 | 
   UINT WINAPI MsiRecordDataSize(MSIHANDLE hRecord,UINT iField); | 
 
 
 
 
 
 | 148 | 
   UINT WINAPI MsiRecordSetInteger(MSIHANDLE hRecord,UINT iField,int iValue); | 
 
 
 
 
 
 | 149 | 
   int WINAPI MsiRecordGetInteger(MSIHANDLE hRecord,UINT iField); | 
 
 
 
 
 
 | 150 | 
   UINT WINAPI MsiRecordGetFieldCount(MSIHANDLE hRecord); | 
 
 
 
 
 
 | 151 | 
   UINT WINAPI MsiRecordReadStream(MSIHANDLE hRecord,UINT iField,char *szDataBuf,DWORD *pcbDataBuf); | 
 
 
 
 
 
 | 152 | 
   UINT WINAPI MsiRecordClearData(MSIHANDLE hRecord); | 
 
 
 
 
 
 | 153 | 
   MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE hInstall); | 
 
 
 
 
 
 | 154 | 
   LANGID WINAPI MsiGetLanguage(MSIHANDLE hInstall); | 
 
 
 
 
 
 | 155 | 
   WINBOOL WINAPI MsiGetMode(MSIHANDLE hInstall,MSIRUNMODE eRunMode); | 
 
 
 
 
 
 | 156 | 
   UINT WINAPI MsiSetMode(MSIHANDLE hInstall,MSIRUNMODE eRunMode,WINBOOL fState); | 
 
 
 
 
 
 | 157 | 
   int WINAPI MsiProcessMessage(MSIHANDLE hInstall,INSTALLMESSAGE eMessageType,MSIHANDLE hRecord); | 
 
 
 
 
 
 | 158 | 
  | 
 
 
 
 
 
 | 159 | 
   UINT WINAPI MsiRecordSetStringA(MSIHANDLE hRecord,UINT iField,LPCSTR szValue); | 
 
 
 
 
 
 | 160 | 
   UINT WINAPI MsiRecordSetStringW(MSIHANDLE hRecord,UINT iField,LPCWSTR szValue); | 
 
 
 
 
 
 | 161 | 
 #define MsiRecordSetString __MINGW_NAME_AW(MsiRecordSetString) | 
 
 
 
 
 
 | 162 | 
  | 
 
 
 
 
 
 | 163 | 
   UINT WINAPI MsiRecordGetStringA(MSIHANDLE hRecord,UINT iField,LPSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 164 | 
   UINT WINAPI MsiRecordGetStringW(MSIHANDLE hRecord,UINT iField,LPWSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 165 | 
 #define MsiRecordGetString __MINGW_NAME_AW(MsiRecordGetString) | 
 
 
 
 
 
 | 166 | 
  | 
 
 
 
 
 
 | 167 | 
   UINT WINAPI MsiRecordSetStreamA(MSIHANDLE hRecord,UINT iField,LPCSTR szFilePath); | 
 
 
 
 
 
 | 168 | 
   UINT WINAPI MsiRecordSetStreamW(MSIHANDLE hRecord,UINT iField,LPCWSTR szFilePath); | 
 
 
 
 
 
 | 169 | 
 #define MsiRecordSetStream __MINGW_NAME_AW(MsiRecordSetStream) | 
 
 
 
 
 
 | 170 | 
  | 
 
 
 
 
 
 | 171 | 
   UINT WINAPI MsiSetPropertyA(MSIHANDLE hInstall,LPCSTR szName,LPCSTR szValue); | 
 
 
 
 
 
 | 172 | 
   UINT WINAPI MsiSetPropertyW(MSIHANDLE hInstall,LPCWSTR szName,LPCWSTR szValue); | 
 
 
 
 
 
 | 173 | 
 #define MsiSetProperty __MINGW_NAME_AW(MsiSetProperty) | 
 
 
 
 
 
 | 174 | 
  | 
 
 
 
 
 
 | 175 | 
   UINT WINAPI MsiGetPropertyA(MSIHANDLE hInstall,LPCSTR szName,LPSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 176 | 
   UINT WINAPI MsiGetPropertyW(MSIHANDLE hInstall,LPCWSTR szName,LPWSTR szValueBuf,DWORD *pcchValueBuf); | 
 
 
 
 
 
 | 177 | 
 #define MsiGetProperty __MINGW_NAME_AW(MsiGetProperty) | 
 
 
 
 
 
 | 178 | 
  | 
 
 
 
 
 
 | 179 | 
   UINT WINAPI MsiFormatRecordA(MSIHANDLE hInstall,MSIHANDLE hRecord,LPSTR szResultBuf,DWORD *pcchResultBuf); | 
 
 
 
 
 
 | 180 | 
   UINT WINAPI MsiFormatRecordW(MSIHANDLE hInstall,MSIHANDLE hRecord,LPWSTR szResultBuf,DWORD *pcchResultBuf); | 
 
 
 
 
 
 | 181 | 
 #define MsiFormatRecord __MINGW_NAME_AW(MsiFormatRecord) | 
 
 
 
 
 
 | 182 | 
  | 
 
 
 
 
 
 | 183 | 
   UINT WINAPI MsiDoActionA(MSIHANDLE hInstall,LPCSTR szAction); | 
 
 
 
 
 
 | 184 | 
   UINT WINAPI MsiDoActionW(MSIHANDLE hInstall,LPCWSTR szAction); | 
 
 
 
 
 
 | 185 | 
 #define MsiDoAction __MINGW_NAME_AW(MsiDoAction) | 
 
 
 
 
 
 | 186 | 
  | 
 
 
 
 
 
 | 187 | 
   UINT WINAPI MsiSequenceA(MSIHANDLE hInstall,LPCSTR szTable,INT iSequenceMode); | 
 
 
 
 
 
 | 188 | 
   UINT WINAPI MsiSequenceW(MSIHANDLE hInstall,LPCWSTR szTable,INT iSequenceMode); | 
 
 
 
 
 
 | 189 | 
 #define MsiSequence __MINGW_NAME_AW(MsiSequence) | 
 
 
 
 
 
 | 190 | 
  | 
 
 
 
 
 
 | 191 | 
   MSICONDITION WINAPI MsiEvaluateConditionA(MSIHANDLE hInstall,LPCSTR szCondition); | 
 
 
 
 
 
 | 192 | 
   MSICONDITION WINAPI MsiEvaluateConditionW(MSIHANDLE hInstall,LPCWSTR szCondition); | 
 
 
 
 
 
 | 193 | 
 #define MsiEvaluateCondition __MINGW_NAME_AW(MsiEvaluateCondition) | 
 
 
 
 
 
 | 194 | 
  | 
 
 
 
 
 
 | 195 | 
   UINT WINAPI MsiGetFeatureStateA(MSIHANDLE hInstall,LPCSTR szFeature,INSTALLSTATE *piInstalled,INSTALLSTATE *piAction); | 
 
 
 
 
 
 | 196 | 
   UINT WINAPI MsiGetFeatureStateW(MSIHANDLE hInstall,LPCWSTR szFeature,INSTALLSTATE *piInstalled,INSTALLSTATE *piAction); | 
 
 
 
 
 
 | 197 | 
 #define MsiGetFeatureState __MINGW_NAME_AW(MsiGetFeatureState) | 
 
 
 
 
 
 | 198 | 
  | 
 
 
 
 
 
 | 199 | 
   UINT WINAPI MsiSetFeatureStateA(MSIHANDLE hInstall,LPCSTR szFeature,INSTALLSTATE iState); | 
 
 
 
 
 
 | 200 | 
   UINT WINAPI MsiSetFeatureStateW(MSIHANDLE hInstall,LPCWSTR szFeature,INSTALLSTATE iState); | 
 
 
 
 
 
 | 201 | 
 #define MsiSetFeatureState __MINGW_NAME_AW(MsiSetFeatureState) | 
 
 
 
 
 
 | 202 | 
  | 
 
 
 
 
 
 | 203 | 
 #if (_WIN32_MSI >= 110) | 
 
 
 
 
 
 | 204 | 
   UINT WINAPI MsiSetFeatureAttributesA(MSIHANDLE hInstall,LPCSTR szFeature,DWORD dwAttributes); | 
 
 
 
 
 
 | 205 | 
   UINT WINAPI MsiSetFeatureAttributesW(MSIHANDLE hInstall,LPCWSTR szFeature,DWORD dwAttributes); | 
 
 
 
 
 
 | 206 | 
 #define MsiSetFeatureAttributes __MINGW_NAME_AW(MsiSetFeatureAttributes) | 
 
 
 
 
 
 | 207 | 
 #endif | 
 
 
 
 
 
 | 208 | 
  | 
 
 
 
 
 
 | 209 | 
   UINT WINAPI MsiGetComponentStateA(MSIHANDLE hInstall,LPCSTR szComponent,INSTALLSTATE *piInstalled,INSTALLSTATE *piAction); | 
 
 
 
 
 
 | 210 | 
   UINT WINAPI MsiGetComponentStateW(MSIHANDLE hInstall,LPCWSTR szComponent,INSTALLSTATE *piInstalled,INSTALLSTATE *piAction); | 
 
 
 
 
 
 | 211 | 
 #define MsiGetComponentState __MINGW_NAME_AW(MsiGetComponentState) | 
 
 
 
 
 
 | 212 | 
  | 
 
 
 
 
 
 | 213 | 
   UINT WINAPI MsiSetComponentStateA(MSIHANDLE hInstall,LPCSTR szComponent,INSTALLSTATE iState); | 
 
 
 
 
 
 | 214 | 
   UINT WINAPI MsiSetComponentStateW(MSIHANDLE hInstall,LPCWSTR szComponent,INSTALLSTATE iState); | 
 
 
 
 
 
 | 215 | 
 #define MsiSetComponentState __MINGW_NAME_AW(MsiSetComponentState) | 
 
 
 
 
 
 | 216 | 
  | 
 
 
 
 
 
 | 217 | 
   UINT WINAPI MsiGetFeatureCostA(MSIHANDLE hInstall,LPCSTR szFeature,MSICOSTTREE iCostTree,INSTALLSTATE iState,INT *piCost); | 
 
 
 
 
 
 | 218 | 
   UINT WINAPI MsiGetFeatureCostW(MSIHANDLE hInstall,LPCWSTR szFeature,MSICOSTTREE iCostTree,INSTALLSTATE iState,INT *piCost); | 
 
 
 
 
 
 | 219 | 
 #define MsiGetFeatureCost __MINGW_NAME_AW(MsiGetFeatureCost) | 
 
 
 
 
 
 | 220 | 
  | 
 
 
 
 
 
 | 221 | 
 #if (_WIN32_MSI >= 150) | 
 
 
 
 
 
 | 222 | 
   UINT WINAPI MsiEnumComponentCostsA(MSIHANDLE hInstall,LPCSTR szComponent,DWORD dwIndex,INSTALLSTATE iState,LPSTR szDriveBuf,DWORD *pcchDriveBuf,INT *piCost,INT *piTempCost); | 
 
 
 
 
 
 | 223 | 
   UINT WINAPI MsiEnumComponentCostsW(MSIHANDLE hInstall,LPCWSTR szComponent,DWORD dwIndex,INSTALLSTATE iState,LPWSTR szDriveBuf,DWORD *pcchDriveBuf,INT *piCost,INT *piTempCost); | 
 
 
 
 
 
 | 224 | 
 #define MsiEnumComponentCosts __MINGW_NAME_AW(MsiEnumComponentCosts) | 
 
 
 
 
 
 | 225 | 
 #endif | 
 
 
 
 
 
 | 226 | 
  | 
 
 
 
 
 
 | 227 | 
   UINT WINAPI MsiSetInstallLevel(MSIHANDLE hInstall,int iInstallLevel); | 
 
 
 
 
 
 | 228 | 
   UINT WINAPI MsiVerifyDiskSpace(MSIHANDLE hInstall); | 
 
 
 
 
 
 | 229 | 
   UINT WINAPI MsiEnableUIPreview(MSIHANDLE hDatabase,MSIHANDLE *phPreview); | 
 
 
 
 
 
 | 230 | 
   MSIHANDLE WINAPI MsiGetLastErrorRecord(); | 
 
 
 
 
 
 | 231 | 
  | 
 
 
 
 
 
 | 232 | 
   UINT WINAPI MsiGetFeatureValidStatesA(MSIHANDLE hInstall,LPCSTR szFeature,DWORD *dwInstallStates); | 
 
 
 
 
 
 | 233 | 
   UINT WINAPI MsiGetFeatureValidStatesW(MSIHANDLE hInstall,LPCWSTR szFeature,DWORD *dwInstallStates); | 
 
 
 
 
 
 | 234 | 
 #define MsiGetFeatureValidStates __MINGW_NAME_AW(MsiGetFeatureValidStates) | 
 
 
 
 
 
 | 235 | 
  | 
 
 
 
 
 
 | 236 | 
   UINT WINAPI MsiGetSourcePathA(MSIHANDLE hInstall,LPCSTR szFolder,LPSTR szPathBuf,DWORD *pcchPathBuf); | 
 
 
 
 
 
 | 237 | 
   UINT WINAPI MsiGetSourcePathW(MSIHANDLE hInstall,LPCWSTR szFolder,LPWSTR szPathBuf,DWORD *pcchPathBuf); | 
 
 
 
 
 
 | 238 | 
 #define MsiGetSourcePath __MINGW_NAME_AW(MsiGetSourcePath) | 
 
 
 
 
 
 | 239 | 
  | 
 
 
 
 
 
 | 240 | 
   UINT WINAPI MsiGetTargetPathA(MSIHANDLE hInstall,LPCSTR szFolder,LPSTR szPathBuf,DWORD *pcchPathBuf); | 
 
 
 
 
 
 | 241 | 
   UINT WINAPI MsiGetTargetPathW(MSIHANDLE hInstall,LPCWSTR szFolder,LPWSTR szPathBuf,DWORD *pcchPathBuf); | 
 
 
 
 
 
 | 242 | 
 #define MsiGetTargetPath __MINGW_NAME_AW(MsiGetTargetPath) | 
 
 
 
 
 
 | 243 | 
  | 
 
 
 
 
 
 | 244 | 
   UINT WINAPI MsiSetTargetPathA(MSIHANDLE hInstall,LPCSTR szFolder,LPCSTR szFolderPath); | 
 
 
 
 
 
 | 245 | 
   UINT WINAPI MsiSetTargetPathW(MSIHANDLE hInstall,LPCWSTR szFolder,LPCWSTR szFolderPath); | 
 
 
 
 
 
 | 246 | 
 #define MsiSetTargetPath __MINGW_NAME_AW(MsiSetTargetPath) | 
 
 
 
 
 
 | 247 | 
  | 
 
 
 
 
 
 | 248 | 
   UINT WINAPI MsiPreviewDialogA(MSIHANDLE hPreview,LPCSTR szDialogName); | 
 
 
 
 
 
 | 249 | 
   UINT WINAPI MsiPreviewDialogW(MSIHANDLE hPreview,LPCWSTR szDialogName); | 
 
 
 
 
 
 | 250 | 
 #define MsiPreviewDialog __MINGW_NAME_AW(MsiPreviewDialog) | 
 
 
 
 
 
 | 251 | 
  | 
 
 
 
 
 
 | 252 | 
   UINT WINAPI MsiPreviewBillboardA(MSIHANDLE hPreview,LPCSTR szControlName,LPCSTR szBillboard); | 
 
 
 
 
 
 | 253 | 
   UINT WINAPI MsiPreviewBillboardW(MSIHANDLE hPreview,LPCWSTR szControlName,LPCWSTR szBillboard); | 
 
 
 
 
 
 | 254 | 
 #define MsiPreviewBillboard __MINGW_NAME_AW(MsiPreviewBillboard) | 
 
 
 
 
 
 | 255 | 
  | 
 
 
 
 
 
 | 256 | 
 #ifdef __cplusplus | 
 
 
 
 
 
 | 257 | 
 } | 
 
 
 
 
 
 | 258 | 
 #endif | 
 
 
 
 
 
 | 259 | 
 #endif |