00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __WINE_MSIQUERY_H
00020 #define __WINE_MSIQUERY_H
00021
00022 #include <msi.h>
00023
00024 typedef enum tagMSICONDITION
00025 {
00026 MSICONDITION_FALSE = 0,
00027 MSICONDITION_TRUE = 1,
00028 MSICONDITION_NONE = 2,
00029 MSICONDITION_ERROR = 3,
00030 } MSICONDITION;
00031
00032 #define MSI_NULL_INTEGER 0x80000000
00033
00034 typedef enum tagMSICOLINFO
00035 {
00036 MSICOLINFO_NAMES = 0,
00037 MSICOLINFO_TYPES = 1
00038 } MSICOLINFO;
00039
00040 typedef enum tagMSICOSTTREE
00041 {
00042 MSICOSTTREE_SELFONLY = 0,
00043 MSICOSTTREE_CHILDREN = 1,
00044 MSICOSTTREE_PARENTS = 2,
00045 MSICOSTTREE_PRODUCT = 3,
00046 } MSICOSTTREE;
00047
00048 typedef enum tagMSIMODIFY
00049 {
00050 MSIMODIFY_SEEK = -1,
00051 MSIMODIFY_REFRESH = 0,
00052 MSIMODIFY_INSERT = 1,
00053 MSIMODIFY_UPDATE = 2,
00054 MSIMODIFY_ASSIGN = 3,
00055 MSIMODIFY_REPLACE = 4,
00056 MSIMODIFY_MERGE = 5,
00057 MSIMODIFY_DELETE = 6,
00058 MSIMODIFY_INSERT_TEMPORARY = 7,
00059 MSIMODIFY_VALIDATE = 8,
00060 MSIMODIFY_VALIDATE_NEW = 9,
00061 MSIMODIFY_VALIDATE_FIELD = 10,
00062 MSIMODIFY_VALIDATE_DELETE = 11
00063 } MSIMODIFY;
00064
00065 #ifndef WINE_NO_UNICODE_MACROS
00066 #define MSIDBOPEN_READONLY (LPCTSTR)0
00067 #define MSIDBOPEN_TRANSACT (LPCTSTR)1
00068 #define MSIDBOPEN_DIRECT (LPCTSTR)2
00069 #define MSIDBOPEN_CREATE (LPCTSTR)3
00070 #define MSIDBOPEN_CREATEDIRECT (LPCTSTR)4
00071 #else
00072 #define MSIDBOPEN_READONLY (LPCWSTR)0
00073 #define MSIDBOPEN_TRANSACT (LPCWSTR)1
00074 #define MSIDBOPEN_DIRECT (LPCWSTR)2
00075 #define MSIDBOPEN_CREATE (LPCWSTR)3
00076 #define MSIDBOPEN_CREATEDIRECT (LPCWSTR)4
00077 #endif
00078
00079 #define MSIDBOPEN_PATCHFILE 32 / sizeof(*MSIDBOPEN_READONLY)
00080
00081 typedef enum tagMSIRUNMODE
00082 {
00083 MSIRUNMODE_ADMIN = 0,
00084 MSIRUNMODE_ADVERTISE = 1,
00085 MSIRUNMODE_MAINTENANCE = 2,
00086 MSIRUNMODE_ROLLBACKENABLED = 3,
00087 MSIRUNMODE_LOGENABLED = 4,
00088 MSIRUNMODE_OPERATIONS = 5,
00089 MSIRUNMODE_REBOOTATEND = 6,
00090 MSIRUNMODE_REBOOTNOW = 7,
00091 MSIRUNMODE_CABINET = 8,
00092 MSIRUNMODE_SOURCESHORTNAMES = 9,
00093 MSIRUNMODE_TARGETSHORTNAMES = 10,
00094 MSIRUNMODE_RESERVED11 = 11,
00095 MSIRUNMODE_WINDOWS9X = 12,
00096 MSIRUNMODE_ZAWENABLED = 13,
00097 MSIRUNMODE_RESERVED14 = 14,
00098 MSIRUNMODE_RESERVED15 = 15,
00099 MSIRUNMODE_SCHEDULED = 16,
00100 MSIRUNMODE_ROLLBACK = 17,
00101 MSIRUNMODE_COMMIT = 18
00102 } MSIRUNMODE;
00103
00104 typedef enum tagMSIDBERROR
00105 {
00106 MSIDBERROR_INVALIDARG = -3,
00107 MSIDBERROR_MOREDATA = -2,
00108 MSIDBERROR_FUNCTIONERROR = -1,
00109 MSIDBERROR_NOERROR = 0,
00110 MSIDBERROR_DUPLICATEKEY = 1,
00111 MSIDBERROR_REQUIRED = 2,
00112 MSIDBERROR_BADLINK = 3,
00113 MSIDBERROR_OVERFLOW = 4,
00114 MSIDBERROR_UNDERFLOW = 5,
00115 MSIDBERROR_NOTINSET = 6,
00116 MSIDBERROR_BADVERSION = 7,
00117 MSIDBERROR_BADCASE = 8,
00118 MSIDBERROR_BADGUID = 9,
00119 MSIDBERROR_BADWILDCARD = 10,
00120 MSIDBERROR_BADIDENTIFIER = 11,
00121 MSIDBERROR_BADLANGUAGE = 12,
00122 MSIDBERROR_BADFILENAME = 13,
00123 MSIDBERROR_BADPATH = 14,
00124 MSIDBERROR_BADCONDITION = 15,
00125 MSIDBERROR_BADFORMATTED = 16,
00126 MSIDBERROR_BADTEMPLATE = 17,
00127 MSIDBERROR_BADDEFAULTDIR = 18,
00128 MSIDBERROR_BADREGPATH = 19,
00129 MSIDBERROR_BADCUSTOMSOURCE = 20,
00130 MSIDBERROR_BADPROPERTY = 21,
00131 MSIDBERROR_MISSINGDATA = 22,
00132 MSIDBERROR_BADCATEGORY = 23,
00133 MSIDBERROR_BADKEYTABLE = 24,
00134 MSIDBERROR_BADMAXMINVALUES = 25,
00135 MSIDBERROR_BADCABINET = 26,
00136 MSIDBERROR_BADSHORTCUT= 27,
00137 MSIDBERROR_STRINGOVERFLOW = 28,
00138 MSIDBERROR_BADLOCALIZEATTRIB = 29
00139 } MSIDBERROR;
00140
00141 typedef enum tagMSIDBSTATE
00142 {
00143 MSIDBSTATE_ERROR = -1,
00144 MSIDBSTATE_READ = 0,
00145 MSIDBSTATE_WRITE = 1
00146 } MSIDBSTATE;
00147
00148
00149 #ifdef __cplusplus
00150 extern "C" {
00151 #endif
00152
00153
00154 UINT WINAPI MsiViewFetch(MSIHANDLE,MSIHANDLE*);
00155 UINT WINAPI MsiViewExecute(MSIHANDLE,MSIHANDLE);
00156 UINT WINAPI MsiViewClose(MSIHANDLE);
00157 UINT WINAPI MsiDatabaseOpenViewA(MSIHANDLE,LPCSTR,MSIHANDLE*);
00158 UINT WINAPI MsiDatabaseOpenViewW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
00159 #define MsiDatabaseOpenView WINELIB_NAME_AW(MsiDatabaseOpenView)
00160 MSIDBERROR WINAPI MsiViewGetErrorA(MSIHANDLE,LPSTR,LPDWORD);
00161 MSIDBERROR WINAPI MsiViewGetErrorW(MSIHANDLE,LPWSTR,LPDWORD);
00162 #define MsiViewGetError WINELIB_NAME_AW(MsiViewGetError)
00163
00164 MSIDBSTATE WINAPI MsiGetDatabaseState(MSIHANDLE);
00165
00166
00167 MSIHANDLE WINAPI MsiCreateRecord(UINT);
00168 UINT WINAPI MsiRecordClearData(MSIHANDLE);
00169 UINT WINAPI MsiRecordSetInteger(MSIHANDLE,UINT,int);
00170 UINT WINAPI MsiRecordSetStringA(MSIHANDLE,UINT,LPCSTR);
00171 UINT WINAPI MsiRecordSetStringW(MSIHANDLE,UINT,LPCWSTR);
00172 #define MsiRecordSetString WINELIB_NAME_AW(MsiRecordSetString)
00173 UINT WINAPI MsiRecordGetStringA(MSIHANDLE,UINT,LPSTR,LPDWORD);
00174 UINT WINAPI MsiRecordGetStringW(MSIHANDLE,UINT,LPWSTR,LPDWORD);
00175 #define MsiRecordGetString WINELIB_NAME_AW(MsiRecordGetString)
00176 UINT WINAPI MsiRecordGetFieldCount(MSIHANDLE);
00177 int WINAPI MsiRecordGetInteger(MSIHANDLE,UINT);
00178 UINT WINAPI MsiRecordDataSize(MSIHANDLE,UINT);
00179 BOOL WINAPI MsiRecordIsNull(MSIHANDLE,UINT);
00180 UINT WINAPI MsiFormatRecordA(MSIHANDLE,MSIHANDLE,LPSTR,LPDWORD);
00181 UINT WINAPI MsiFormatRecordW(MSIHANDLE,MSIHANDLE,LPWSTR,LPDWORD);
00182 #define MsiFormatRecord WINELIB_NAME_AW(MsiFormatRecord)
00183 UINT WINAPI MsiRecordSetStreamA(MSIHANDLE,UINT,LPCSTR);
00184 UINT WINAPI MsiRecordSetStreamW(MSIHANDLE,UINT,LPCWSTR);
00185 #define MsiRecordSetStream WINELIB_NAME_AW(MsiRecordSetStream)
00186 UINT WINAPI MsiRecordReadStream(MSIHANDLE,UINT,char*,LPDWORD);
00187
00188 UINT WINAPI MsiDatabaseGetPrimaryKeysA(MSIHANDLE,LPCSTR,MSIHANDLE*);
00189 UINT WINAPI MsiDatabaseGetPrimaryKeysW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
00190 #define MsiDatabaseGetPrimaryKeys WINELIB_NAME_AW(MsiDatabaseGetPrimaryKeys)
00191
00192
00193 UINT WINAPI MsiDoActionA(MSIHANDLE,LPCSTR );
00194 UINT WINAPI MsiDoActionW(MSIHANDLE,LPCWSTR );
00195 #define MsiDoAction WINELIB_NAME_AW(MsiDoAction)
00196
00197
00198 UINT WINAPI MsiDatabaseApplyTransformA(MSIHANDLE,LPCSTR,int);
00199 UINT WINAPI MsiDatabaseApplyTransformW(MSIHANDLE,LPCWSTR,int);
00200 #define MsiDatabaseApplyTransform WINELIB_NAME_AW(MsiDatabaseApplyTransform)
00201 UINT WINAPI MsiDatabaseGenerateTransformA(MSIHANDLE,MSIHANDLE,LPCSTR,int,int);
00202 UINT WINAPI MsiDatabaseGenerateTransformW(MSIHANDLE,MSIHANDLE,LPCWSTR,int,int);
00203 #define MsiDatabaseGenerateTransform WINELIB_NAME_AW(MsiDatabaseGenerateTransform)
00204
00205 UINT WINAPI MsiDatabaseCommit(MSIHANDLE);
00206
00207
00208 UINT WINAPI MsiGetFeatureStateA(MSIHANDLE,LPCSTR,INSTALLSTATE*,INSTALLSTATE*);
00209 UINT WINAPI MsiGetFeatureStateW(MSIHANDLE,LPCWSTR,INSTALLSTATE*,INSTALLSTATE*);
00210 #define MsiGetFeatureState WINELIB_NAME_AW(MsiGetFeatureState)
00211 UINT WINAPI MsiGetFeatureValidStatesA(MSIHANDLE,LPCSTR,LPDWORD);
00212 UINT WINAPI MsiGetFeatureValidStatesW(MSIHANDLE,LPCWSTR,LPDWORD);
00213 #define MsiGetFeatureValidStates WINELIB_NAME_AW(MsiGetFeatureValidStates)
00214 UINT WINAPI MsiSetComponentStateA(MSIHANDLE,LPCSTR,INSTALLSTATE);
00215 UINT WINAPI MsiSetComponentStateW(MSIHANDLE,LPCWSTR,INSTALLSTATE);
00216 #define MsiSetComponentState WINELIB_NAME_AW(MsiSetComponentState)
00217 UINT WINAPI MsiGetComponentStateA(MSIHANDLE,LPCSTR,INSTALLSTATE*,INSTALLSTATE*);
00218 UINT WINAPI MsiGetComponentStateW(MSIHANDLE,LPCWSTR,INSTALLSTATE*,INSTALLSTATE*);
00219 #define MsiGetComponentState WINELIB_NAME_AW(MsiGetComponentState)
00220
00221 MSICONDITION WINAPI MsiEvaluateConditionA(MSIHANDLE,LPCSTR);
00222 MSICONDITION WINAPI MsiEvaluateConditionW(MSIHANDLE,LPCWSTR);
00223 #define MsiEvaluateCondition WINELIB_NAME_AW(MsiEvaluateCondition)
00224
00225
00226 UINT WINAPI MsiGetPropertyA(MSIHANDLE, LPCSTR, LPSTR, LPDWORD);
00227 UINT WINAPI MsiGetPropertyW(MSIHANDLE, LPCWSTR, LPWSTR, LPDWORD);
00228 #define MsiGetProperty WINELIB_NAME_AW(MsiGetProperty)
00229
00230 UINT WINAPI MsiSetPropertyA(MSIHANDLE, LPCSTR, LPCSTR);
00231 UINT WINAPI MsiSetPropertyW(MSIHANDLE, LPCWSTR, LPCWSTR);
00232 #define MsiSetProperty WINELIB_NAME_AW(MsiSetProperty)
00233
00234 UINT WINAPI MsiGetTargetPathA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD);
00235 UINT WINAPI MsiGetTargetPathW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD);
00236 #define MsiGetTargetPath WINELIB_NAME_AW(MsiGetTargetPath)
00237
00238 UINT WINAPI MsiSetTargetPathA(MSIHANDLE, LPCSTR, LPCSTR);
00239 UINT WINAPI MsiSetTargetPathW(MSIHANDLE, LPCWSTR, LPCWSTR);
00240 #define MsiSetTargetPath WINELIB_NAME_AW(MsiSetTargetPath)
00241
00242 UINT WINAPI MsiGetSourcePathA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD);
00243 UINT WINAPI MsiGetSourcePathW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD);
00244 #define MsiGetSourcePath WINELIB_NAME_AW(MsiGetSourcePath)
00245
00246 MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE);
00247
00248 UINT WINAPI MsiViewGetColumnInfo(MSIHANDLE, MSICOLINFO, MSIHANDLE*);
00249 INT WINAPI MsiProcessMessage(MSIHANDLE, INSTALLMESSAGE, MSIHANDLE);
00250
00251 UINT WINAPI MsiSetFeatureAttributesA(MSIHANDLE, LPCSTR, DWORD);
00252 UINT WINAPI MsiSetFeatureAttributesW(MSIHANDLE, LPCWSTR, DWORD);
00253 #define MsiSetFeatureAttributes WINELIB_NAME_AW(MsiSetFeatureAttributes)
00254
00255 UINT WINAPI MsiSetFeatureStateA(MSIHANDLE, LPCSTR, INSTALLSTATE);
00256 UINT WINAPI MsiSetFeatureStateW(MSIHANDLE, LPCWSTR, INSTALLSTATE);
00257 #define MsiSetFeatureState WINELIB_NAME_AW(MsiSetFeatureState)
00258
00259 UINT WINAPI MsiPreviewDialogA(MSIHANDLE, LPCSTR);
00260 UINT WINAPI MsiPreviewDialogW(MSIHANDLE, LPCWSTR);
00261 #define MsiPreviewDialog WINELIB_NAME_AW(MsiPreviewDialog)
00262
00263 UINT WINAPI MsiPreviewBillboardA(MSIHANDLE, LPCSTR, LPCSTR);
00264 UINT WINAPI MsiPreviewBillboardW(MSIHANDLE, LPCWSTR, LPCWSTR);
00265 #define MsiPreviewBillboard WINELIB_NAME_AW(MsiPreviewBillboard)
00266
00267 UINT WINAPI MsiCreateTransformSummaryInfoA(MSIHANDLE, MSIHANDLE, LPCSTR, int, int);
00268 UINT WINAPI MsiCreateTransformSummaryInfoW(MSIHANDLE, MSIHANDLE, LPCWSTR, int, int);
00269 #define MsiCreateTransformSummaryInfo WINELIB_NAME_AW(MsiCreateTransformSummaryInfo)
00270
00271 UINT WINAPI MsiGetSummaryInformationA(MSIHANDLE, LPCSTR, UINT, MSIHANDLE *);
00272 UINT WINAPI MsiGetSummaryInformationW(MSIHANDLE, LPCWSTR, UINT, MSIHANDLE *);
00273 #define MsiGetSummaryInformation WINELIB_NAME_AW(MsiGetSummaryInformation)
00274
00275 UINT WINAPI MsiSummaryInfoGetPropertyA(MSIHANDLE,UINT,PUINT,LPINT,FILETIME*,LPSTR,LPDWORD);
00276 UINT WINAPI MsiSummaryInfoGetPropertyW(MSIHANDLE,UINT,PUINT,LPINT,FILETIME*,LPWSTR,LPDWORD);
00277 #define MsiSummaryInfoGetProperty WINELIB_NAME_AW(MsiSummaryInfoGetProperty)
00278
00279 UINT WINAPI MsiSummaryInfoSetPropertyA(MSIHANDLE, UINT, UINT, INT, FILETIME*, LPCSTR);
00280 UINT WINAPI MsiSummaryInfoSetPropertyW(MSIHANDLE, UINT, UINT, INT, FILETIME*, LPCWSTR);
00281 #define MsiSummaryInfoSetProperty WINELIB_NAME_AW(MsiSummaryInfoSetProperty)
00282
00283 UINT WINAPI MsiDatabaseExportA(MSIHANDLE, LPCSTR, LPCSTR, LPCSTR);
00284 UINT WINAPI MsiDatabaseExportW(MSIHANDLE, LPCWSTR, LPCWSTR, LPCWSTR);
00285 #define MsiDatabaseExport WINELIB_NAME_AW(MsiDatabaseExport)
00286
00287 UINT WINAPI MsiDatabaseImportA(MSIHANDLE, LPCSTR, LPCSTR);
00288 UINT WINAPI MsiDatabaseImportW(MSIHANDLE, LPCWSTR, LPCWSTR);
00289 #define MsiDatabaseImport WINELIB_NAME_AW(MsiDatabaseImport)
00290
00291 UINT WINAPI MsiOpenDatabaseW(LPCWSTR, LPCWSTR, MSIHANDLE*);
00292 UINT WINAPI MsiOpenDatabaseA(LPCSTR, LPCSTR, MSIHANDLE*);
00293 #define MsiOpenDatabase WINELIB_NAME_AW(MsiOpenDatabase)
00294
00295 MSICONDITION WINAPI MsiDatabaseIsTablePersistentA(MSIHANDLE, LPCSTR);
00296 MSICONDITION WINAPI MsiDatabaseIsTablePersistentW(MSIHANDLE, LPCWSTR);
00297 #define MsiDatabaseIsTablePersistent WINELIB_NAME_AW(MsiDatabaseIsTablePersistent)
00298
00299 UINT WINAPI MsiSequenceA(MSIHANDLE, LPCSTR, INT);
00300 UINT WINAPI MsiSequenceW(MSIHANDLE, LPCWSTR, INT);
00301 #define MsiSequence WINELIB_NAME_AW(MsiSequence)
00302
00303 UINT WINAPI MsiSummaryInfoPersist(MSIHANDLE);
00304 UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE,PUINT);
00305
00306 UINT WINAPI MsiEnableUIPreview(MSIHANDLE, MSIHANDLE*);
00307 BOOL WINAPI MsiGetMode(MSIHANDLE, MSIRUNMODE);
00308 UINT WINAPI MsiSetMode(MSIHANDLE, MSIRUNMODE, BOOL);
00309
00310 UINT WINAPI MsiViewModify(MSIHANDLE, MSIMODIFY, MSIHANDLE);
00311
00312 UINT WINAPI MsiGetFeatureCostA(MSIHANDLE, LPCSTR, MSICOSTTREE, INSTALLSTATE, LPINT);
00313 UINT WINAPI MsiGetFeatureCostW(MSIHANDLE, LPCWSTR, MSICOSTTREE, INSTALLSTATE, LPINT);
00314 #define MsiGetFeatureCost WINELIB_NAME_AW(MsiGetFeatureCost)
00315
00316 LANGID WINAPI MsiGetLanguage(MSIHANDLE);
00317
00318 UINT WINAPI MsiSetInstallLevel(MSIHANDLE, int);
00319
00320 MSIHANDLE WINAPI MsiGetLastErrorRecord(void);
00321
00322 #ifdef __cplusplus
00323 }
00324 #endif
00325
00326 #endif