ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/msi.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 42291 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
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 _MSI_H_
7 #define _MSI_H_
8
9 #include <_mingw_unicode.h>
10
11 #ifndef NTDDI_WIN2K
12 #define NTDDI_WIN2K 0x05000000
13 #endif
14 #ifndef NTDDI_WINXP
15 #define NTDDI_WINXP 0x05010000
16 #endif
17 #ifndef NTDDI_WINXPSP2
18 #define NTDDI_WINXPSP2 0x05010200
19 #endif
20 #ifndef NTDDI_WS03SP1
21 #define NTDDI_WS03SP1 0x05020100
22 #endif
23 #ifndef NTDDI_VISTA
24 #define NTDDI_VISTA 0x06000000
25 #endif
26 #ifndef NTDDI_VISTASP1
27 #define NTDDI_VISTASP1 0x06000100
28 #endif
29
30 #ifndef _WIN32_MSI
31 #if defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTASP1
32 #define _WIN32_MSI 450
33 #elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTA
34 #define _WIN32_MSI 400
35 #elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WS03SP1
36 #define _WIN32_MSI 310
37 #elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WINXPSP2
38 #define _WIN32_MSI 300
39 #else
40 #define _WIN32_MSI 200
41 #endif
42 #endif
43
44 #ifndef MAX_GUID_CHARS
45 #define MAX_GUID_CHARS 38
46 #endif
47
48 #if _WIN32_MSI >= 150 && !defined (_MSI_NO_CRYPTO)
49 #include "wincrypt.h"
50 #endif
51
52 typedef unsigned __LONG32 MSIHANDLE;
53
54 #ifdef __cplusplus
55 extern "C" {
56 #endif
57
58 UINT WINAPI MsiCloseHandle(MSIHANDLE hAny);
59 UINT WINAPI MsiCloseAllHandles();
60
61 #ifdef __cplusplus
62 }
63 #endif
64
65 #ifdef __cplusplus
66 class PMSIHANDLE {
67 MSIHANDLE m_h;
68 public:
69 PMSIHANDLE():m_h(0){}
70 PMSIHANDLE(MSIHANDLE h):m_h(h) { }
71 ~PMSIHANDLE() { if (m_h!=0) MsiCloseHandle (m_h); }
72 void operator =(MSIHANDLE h) { if (m_h) MsiCloseHandle (m_h); m_h=h; }
73 operator MSIHANDLE() { return m_h; }
74 MSIHANDLE *operator &() { if (m_h) MsiCloseHandle (m_h); m_h = 0; return &m_h; }
75 };
76 #endif
77
78 typedef enum tagINSTALLMESSAGE {
79 INSTALLMESSAGE_FATALEXIT = 0x00000000,INSTALLMESSAGE_ERROR = 0x01000000,INSTALLMESSAGE_WARNING = 0x02000000,INSTALLMESSAGE_USER = 0x03000000,
80 INSTALLMESSAGE_INFO = 0x04000000,INSTALLMESSAGE_FILESINUSE = 0x05000000,INSTALLMESSAGE_RESOLVESOURCE = 0x06000000,
81 INSTALLMESSAGE_OUTOFDISKSPACE = 0x07000000,INSTALLMESSAGE_ACTIONSTART = 0x08000000,INSTALLMESSAGE_ACTIONDATA = 0x09000000,
82 INSTALLMESSAGE_PROGRESS = 0x0A000000,INSTALLMESSAGE_COMMONDATA = 0x0B000000,INSTALLMESSAGE_INITIALIZE = 0x0C000000,
83 INSTALLMESSAGE_TERMINATE = 0x0D000000,INSTALLMESSAGE_SHOWDIALOG = 0x0E000000
84 #if _WIN32_MSI >= 400
85 ,INSTALLMESSAGE_RMFILESINUSE = 0x19000000
86 #endif
87 #if _WIN32_MSI >= 450
88 ,INSTALLMESSAGE_INSTALLSTART = 0x1A000000
89 ,INSTALLMESSAGE_INSTALLEND = 0x1B000000
90 #endif
91 } INSTALLMESSAGE;
92
93 typedef int (WINAPI *INSTALLUI_HANDLERA)(LPVOID pvContext,UINT iMessageType,LPCSTR szMessage);
94 typedef int (WINAPI *INSTALLUI_HANDLERW)(LPVOID pvContext,UINT iMessageType,LPCWSTR szMessage);
95 #define INSTALLUI_HANDLER __MINGW_NAME_AW(INSTALLUI_HANDLER)
96
97 #if (_WIN32_MSI >= 310)
98 typedef int (WINAPI *INSTALLUI_HANDLER_RECORD)(LPVOID pvContext,UINT iMessageType,MSIHANDLE hRecord);
99 typedef INSTALLUI_HANDLER_RECORD *PINSTALLUI_HANDLER_RECORD;
100 #endif
101
102 typedef enum tagINSTALLUILEVEL {
103 INSTALLUILEVEL_NOCHANGE = 0,INSTALLUILEVEL_DEFAULT = 1,INSTALLUILEVEL_NONE = 2,INSTALLUILEVEL_BASIC = 3,INSTALLUILEVEL_REDUCED = 4,
104 INSTALLUILEVEL_FULL = 5,INSTALLUILEVEL_ENDDIALOG = 0x80,INSTALLUILEVEL_PROGRESSONLY = 0x40,INSTALLUILEVEL_HIDECANCEL = 0x20,
105 INSTALLUILEVEL_SOURCERESONLY = 0x100
106 } INSTALLUILEVEL;
107
108 typedef enum tagINSTALLSTATE {
109 INSTALLSTATE_NOTUSED = -7,INSTALLSTATE_BADCONFIG = -6,INSTALLSTATE_INCOMPLETE = -5,INSTALLSTATE_SOURCEABSENT = -4,INSTALLSTATE_MOREDATA = -3,
110 INSTALLSTATE_INVALIDARG = -2,INSTALLSTATE_UNKNOWN = -1,INSTALLSTATE_BROKEN = 0,INSTALLSTATE_ADVERTISED = 1,INSTALLSTATE_REMOVED = 1,
111 INSTALLSTATE_ABSENT = 2,INSTALLSTATE_LOCAL = 3,INSTALLSTATE_SOURCE = 4,INSTALLSTATE_DEFAULT = 5
112 } INSTALLSTATE;
113
114 typedef enum tagUSERINFOSTATE {
115 USERINFOSTATE_MOREDATA = -3,USERINFOSTATE_INVALIDARG = -2,USERINFOSTATE_UNKNOWN = -1,USERINFOSTATE_ABSENT = 0,
116 USERINFOSTATE_PRESENT = 1
117 } USERINFOSTATE;
118
119 typedef enum tagINSTALLLEVEL {
120 INSTALLLEVEL_DEFAULT = 0,INSTALLLEVEL_MINIMUM = 1,INSTALLLEVEL_MAXIMUM = 0xffff
121 } INSTALLLEVEL;
122
123 typedef enum tagREINSTALLMODE {
124 REINSTALLMODE_REPAIR = 0x00000001,REINSTALLMODE_FILEMISSING = 0x00000002,REINSTALLMODE_FILEOLDERVERSION = 0x00000004,
125 REINSTALLMODE_FILEEQUALVERSION = 0x00000008,REINSTALLMODE_FILEEXACT = 0x00000010,REINSTALLMODE_FILEVERIFY = 0x00000020,
126 REINSTALLMODE_FILEREPLACE = 0x00000040,REINSTALLMODE_MACHINEDATA = 0x00000080,REINSTALLMODE_USERDATA = 0x00000100,
127 REINSTALLMODE_SHORTCUT = 0x00000200,REINSTALLMODE_PACKAGE = 0x00000400
128 } REINSTALLMODE;
129
130 typedef enum tagINSTALLOGMODE {
131 INSTALLLOGMODE_FATALEXIT = (1 << (INSTALLMESSAGE_FATALEXIT >> 24)),INSTALLLOGMODE_ERROR = (1 << (INSTALLMESSAGE_ERROR >> 24)),
132 INSTALLLOGMODE_WARNING = (1 << (INSTALLMESSAGE_WARNING >> 24)),INSTALLLOGMODE_USER = (1 << (INSTALLMESSAGE_USER >> 24)),
133 INSTALLLOGMODE_INFO = (1 << (INSTALLMESSAGE_INFO >> 24)),INSTALLLOGMODE_RESOLVESOURCE = (1 << (INSTALLMESSAGE_RESOLVESOURCE >> 24)),
134 INSTALLLOGMODE_OUTOFDISKSPACE = (1 << (INSTALLMESSAGE_OUTOFDISKSPACE >> 24)),INSTALLLOGMODE_ACTIONSTART = (1 << (INSTALLMESSAGE_ACTIONSTART >> 24)),
135 INSTALLLOGMODE_ACTIONDATA = (1 << (INSTALLMESSAGE_ACTIONDATA >> 24)),INSTALLLOGMODE_COMMONDATA = (1 << (INSTALLMESSAGE_COMMONDATA >> 24)),
136 INSTALLLOGMODE_PROPERTYDUMP = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_VERBOSE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
137 INSTALLLOGMODE_EXTRADEBUG = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_LOGONLYONERROR = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)),
138 INSTALLLOGMODE_PROGRESS = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_INITIALIZE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
139 INSTALLLOGMODE_TERMINATE = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_SHOWDIALOG = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)),
140 INSTALLLOGMODE_FILESINUSE = (1 << (INSTALLMESSAGE_FILESINUSE >> 24))
141 #if _WIN32_MSI >= 400
142 ,INSTALLLOGMODE_RMFILESINUSE = (1 << (INSTALLMESSAGE_RMFILESINUSE >> 24))
143 #endif
144 #if _WIN32_MSI >= 450
145 ,INSTALLLOGMODE_INSTALLSTART = (1 << (INSTALLMESSAGE_INSTALLSTART >> 24))
146 ,INSTALLLOGMODE_INSTALLEND = (1 << (INSTALLMESSAGE_INSTALLEND >> 24))
147 #endif
148 } INSTALLLOGMODE;
149
150 typedef enum tagINSTALLLOGATTRIBUTES {
151 INSTALLLOGATTRIBUTES_APPEND = (1 << 0),INSTALLLOGATTRIBUTES_FLUSHEACHLINE = (1 << 1)
152 } INSTALLLOGATTRIBUTES;
153
154 typedef enum tagINSTALLFEATUREATTRIBUTE {
155 INSTALLFEATUREATTRIBUTE_FAVORLOCAL = 1 << 0,INSTALLFEATUREATTRIBUTE_FAVORSOURCE = 1 << 1,
156 INSTALLFEATUREATTRIBUTE_FOLLOWPARENT = 1 << 2,INSTALLFEATUREATTRIBUTE_FAVORADVERTISE = 1 << 3,
157 INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE = 1 << 4,INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE = 1 << 5
158 } INSTALLFEATUREATTRIBUTE;
159
160 typedef enum tagINSTALLMODE {
161 #if (_WIN32_MSI >= 150)
162 INSTALLMODE_NODETECTION_ANY = -4,
163 #endif
164 INSTALLMODE_NOSOURCERESOLUTION = -3,INSTALLMODE_NODETECTION = -2,INSTALLMODE_EXISTING = -1,INSTALLMODE_DEFAULT = 0
165 } INSTALLMODE;
166
167 #if (_WIN32_MSI >= 300)
168 typedef enum tagMSIPATCHSTATE {
169 MSIPATCHSTATE_INVALID = 0,MSIPATCHSTATE_APPLIED = 1,MSIPATCHSTATE_SUPERSEDED = 2,MSIPATCHSTATE_OBSOLETED = 4,MSIPATCHSTATE_REGISTERED = 8,
170 MSIPATCHSTATE_ALL = (MSIPATCHSTATE_APPLIED | MSIPATCHSTATE_SUPERSEDED | MSIPATCHSTATE_OBSOLETED | MSIPATCHSTATE_REGISTERED)
171 } MSIPATCHSTATE;
172
173 typedef enum tagMSIINSTALLCONTEXT {
174 MSIINSTALLCONTEXT_FIRSTVISIBLE = 0,MSIINSTALLCONTEXT_NONE = 0,MSIINSTALLCONTEXT_USERMANAGED = 1,MSIINSTALLCONTEXT_USERUNMANAGED = 2,
175 MSIINSTALLCONTEXT_MACHINE = 4,
176 MSIINSTALLCONTEXT_ALL = (MSIINSTALLCONTEXT_USERMANAGED | MSIINSTALLCONTEXT_USERUNMANAGED | MSIINSTALLCONTEXT_MACHINE),
177 MSIINSTALLCONTEXT_ALLUSERMANAGED = 8
178 } MSIINSTALLCONTEXT;
179
180 typedef enum tagMSIPATCHDATATYPE {
181 MSIPATCH_DATATYPE_PATCHFILE = 0,MSIPATCH_DATATYPE_XMLPATH = 1,MSIPATCH_DATATYPE_XMLBLOB = 2
182 } MSIPATCHDATATYPE,*PMSIPATCHDATATYPE;
183
184 typedef struct tagMSIPATCHSEQUENCEINFOA {
185 LPCSTR szPatchData;
186 MSIPATCHDATATYPE ePatchDataType;
187 DWORD dwOrder;
188 UINT uStatus;
189 } MSIPATCHSEQUENCEINFOA,*PMSIPATCHSEQUENCEINFOA;
190
191 typedef struct tagMSIPATCHSEQUENCEINFOW {
192 LPCWSTR szPatchData;
193 MSIPATCHDATATYPE ePatchDataType;
194 DWORD dwOrder;
195 UINT uStatus;
196 } MSIPATCHSEQUENCEINFOW,*PMSIPATCHSEQUENCEINFOW;
197
198 __MINGW_TYPEDEF_AW(MSIPATCHSEQUENCEINFO)
199 __MINGW_TYPEDEF_AW(PMSIPATCHSEQUENCEINFO)
200 #endif
201
202 #define MAX_FEATURE_CHARS 38
203
204 #define INSTALLPROPERTY_PACKAGENAME __TEXT("PackageName")
205 #define INSTALLPROPERTY_TRANSFORMS __TEXT("Transforms")
206 #define INSTALLPROPERTY_LANGUAGE __TEXT("Language")
207 #define INSTALLPROPERTY_PRODUCTNAME __TEXT("ProductName")
208 #define INSTALLPROPERTY_ASSIGNMENTTYPE __TEXT("AssignmentType")
209 #if (_WIN32_MSI >= 150)
210 #define INSTALLPROPERTY_INSTANCETYPE __TEXT("InstanceType")
211 #endif
212 #if (_WIN32_MSI >= 300)
213 #define INSTALLPROPERTY_AUTHORIZED_LUA_APP __TEXT("AuthorizedLUAApp")
214 #endif
215
216 #define INSTALLPROPERTY_PACKAGECODE __TEXT("PackageCode")
217 #define INSTALLPROPERTY_VERSION __TEXT("Version")
218 #if (_WIN32_MSI >= 110)
219 #define INSTALLPROPERTY_PRODUCTICON __TEXT("ProductIcon")
220 #endif
221
222 #define INSTALLPROPERTY_INSTALLEDPRODUCTNAME __TEXT("InstalledProductName")
223 #define INSTALLPROPERTY_VERSIONSTRING __TEXT("VersionString")
224 #define INSTALLPROPERTY_HELPLINK __TEXT("HelpLink")
225 #define INSTALLPROPERTY_HELPTELEPHONE __TEXT("HelpTelephone")
226 #define INSTALLPROPERTY_INSTALLLOCATION __TEXT("InstallLocation")
227 #define INSTALLPROPERTY_INSTALLSOURCE __TEXT("InstallSource")
228 #define INSTALLPROPERTY_INSTALLDATE __TEXT("InstallDate")
229 #define INSTALLPROPERTY_PUBLISHER __TEXT("Publisher")
230 #define INSTALLPROPERTY_LOCALPACKAGE __TEXT("LocalPackage")
231 #define INSTALLPROPERTY_URLINFOABOUT __TEXT("URLInfoAbout")
232 #define INSTALLPROPERTY_URLUPDATEINFO __TEXT("URLUpdateInfo")
233 #define INSTALLPROPERTY_VERSIONMINOR __TEXT("VersionMinor")
234 #define INSTALLPROPERTY_VERSIONMAJOR __TEXT("VersionMajor")
235 #define INSTALLPROPERTY_PRODUCTID __TEXT("ProductID")
236 #define INSTALLPROPERTY_REGCOMPANY __TEXT("RegCompany")
237 #define INSTALLPROPERTY_REGOWNER __TEXT("RegOwner")
238
239 #if (_WIN32_MSI >= 300)
240 #define INSTALLPROPERTY_UNINSTALLABLE __TEXT("Uninstallable")
241 #define INSTALLPROPERTY_PRODUCTSTATE __TEXT("State")
242 #define INSTALLPROPERTY_PATCHSTATE __TEXT("State")
243 #define INSTALLPROPERTY_PATCHTYPE __TEXT("PatchType")
244 #define INSTALLPROPERTY_LUAENABLED __TEXT("LUAEnabled")
245 #define INSTALLPROPERTY_DISPLAYNAME __TEXT("DisplayName")
246 #define INSTALLPROPERTY_MOREINFOURL __TEXT("MoreInfoURL")
247
248 #define INSTALLPROPERTY_LASTUSEDSOURCE __TEXT("LastUsedSource")
249 #define INSTALLPROPERTY_LASTUSEDTYPE __TEXT("LastUsedType")
250 #define INSTALLPROPERTY_MEDIAPACKAGEPATH __TEXT("MediaPackagePath")
251 #define INSTALLPROPERTY_DISKPROMPT __TEXT("DiskPrompt")
252 #endif
253
254 typedef enum tagSCRIPTFLAGS {
255 SCRIPTFLAGS_CACHEINFO = 0x00000001,SCRIPTFLAGS_SHORTCUTS = 0x00000004,SCRIPTFLAGS_MACHINEASSIGN = 0x00000008,
256 SCRIPTFLAGS_REGDATA_CNFGINFO = 0x00000020,SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST = 0x00000040,
257 #if (_WIN32_MSI >= 110)
258 SCRIPTFLAGS_REGDATA_CLASSINFO = 0x00000080,SCRIPTFLAGS_REGDATA_EXTENSIONINFO = 0x00000100,
259 SCRIPTFLAGS_REGDATA_APPINFO = SCRIPTFLAGS_REGDATA_CLASSINFO | SCRIPTFLAGS_REGDATA_EXTENSIONINFO,
260 #else
261 SCRIPTFLAGS_REGDATA_APPINFO = 0x00000010,
262 #endif
263 SCRIPTFLAGS_REGDATA = SCRIPTFLAGS_REGDATA_APPINFO | SCRIPTFLAGS_REGDATA_CNFGINFO
264 } SCRIPTFLAGS;
265
266 typedef enum tagADVERTISEFLAGS {
267 ADVERTISEFLAGS_MACHINEASSIGN = 0,ADVERTISEFLAGS_USERASSIGN = 1
268 } ADVERTISEFLAGS;
269
270 typedef enum tagINSTALLTYPE {
271 INSTALLTYPE_DEFAULT = 0,INSTALLTYPE_NETWORK_IMAGE = 1,INSTALLTYPE_SINGLE_INSTANCE = 2
272 } INSTALLTYPE;
273
274 #if (_WIN32_MSI >= 150)
275 typedef struct _MSIFILEHASHINFO {
276 ULONG dwFileHashInfoSize;
277 ULONG dwData [4];
278 } MSIFILEHASHINFO,*PMSIFILEHASHINFO;
279
280 typedef enum tagMSIARCHITECTUREFLAGS {
281 MSIARCHITECTUREFLAGS_X86 = 0x00000001,MSIARCHITECTUREFLAGS_IA64 = 0x00000002,MSIARCHITECTUREFLAGS_AMD64 = 0x00000004
282 } MSIARCHITECTUREFLAGS;
283
284 typedef enum tagMSIOPENPACKAGEFLAGS {
285 MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE = 0x00000001
286 } MSIOPENPACKAGEFLAGS;
287
288 typedef enum tagMSIADVERTISEOPTIONFLAGS {
289 MSIADVERTISEOPTIONFLAGS_INSTANCE = 0x00000001
290 } MSIADVERTISEOPTIONFLAGS;
291 #endif
292
293 #if (_WIN32_MSI >= 300)
294 typedef enum tagMSISOURCETYPE {
295 MSISOURCETYPE_UNKNOWN = 0x00000000,MSISOURCETYPE_NETWORK = 0x00000001,MSISOURCETYPE_URL = 0x00000002,MSISOURCETYPE_MEDIA = 0x00000004
296 } MSISOURCETYPE;
297
298 typedef enum tagMSICODE {
299 MSICODE_PRODUCT = 0x00000000,MSICODE_PATCH = 0x40000000
300 } MSICODE;
301
302 #if _WIN32_MSI >= 450
303 typedef enum tagMSITRANSACTION {
304 MSITRANSACTION_CHAIN_EMBEDDEDUI = 0x00000001,
305 MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI = 0x00000002
306 } MSITRANSACTION;
307
308 typedef enum tagMSITRANSACTIONSTATE {
309 MSITRANSACTIONSTATE_ROLLBACK = 0x00000000,
310 MSITRANSACTIONSTATE_COMMIT = 0x00000001
311 } MSITRANSACTIONSTATE;
312 #endif
313 #endif
314
315 #ifdef __cplusplus
316 extern "C" {
317 #endif
318
319 INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL dwUILevel,HWND *phWnd);
320 INSTALLUI_HANDLERA WINAPI MsiSetExternalUIA(INSTALLUI_HANDLERA puiHandler,DWORD dwMessageFilter,LPVOID pvContext);
321 INSTALLUI_HANDLERW WINAPI MsiSetExternalUIW(INSTALLUI_HANDLERW puiHandler,DWORD dwMessageFilter,LPVOID pvContext);
322 #define MsiSetExternalUI __MINGW_NAME_AW(MsiSetExternalUI)
323
324 #if (_WIN32_MSI >= 310)
325 UINT WINAPI MsiSetExternalUIRecord(INSTALLUI_HANDLER_RECORD puiHandler,DWORD dwMessageFilter,LPVOID pvContext,PINSTALLUI_HANDLER_RECORD ppuiPrevHandler);
326 #endif
327
328 UINT WINAPI MsiEnableLogA(DWORD dwLogMode,LPCSTR szLogFile,DWORD dwLogAttributes);
329 UINT WINAPI MsiEnableLogW(DWORD dwLogMode,LPCWSTR szLogFile,DWORD dwLogAttributes);
330 #define MsiEnableLog __MINGW_NAME_AW(MsiEnableLog)
331
332 INSTALLSTATE WINAPI MsiQueryProductStateA(LPCSTR szProduct);
333 INSTALLSTATE WINAPI MsiQueryProductStateW(LPCWSTR szProduct);
334 #define MsiQueryProductState __MINGW_NAME_AW(MsiQueryProductState)
335
336 UINT WINAPI MsiGetProductInfoA(LPCSTR szProduct,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf);
337 UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
338 #define MsiGetProductInfo __MINGW_NAME_AW(MsiGetProductInfo)
339
340 #if (_WIN32_MSI >= 300)
341 UINT WINAPI MsiGetProductInfoExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue);
342 UINT WINAPI MsiGetProductInfoExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue);
343 #define MsiGetProductInfoEx __MINGW_NAME_AW(MsiGetProductInfoEx)
344 #endif
345
346 UINT WINAPI MsiInstallProductA(LPCSTR szPackagePath,LPCSTR szCommandLine);
347 UINT WINAPI MsiInstallProductW(LPCWSTR szPackagePath,LPCWSTR szCommandLine);
348 #define MsiInstallProduct __MINGW_NAME_AW(MsiInstallProduct)
349
350 UINT WINAPI MsiConfigureProductA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState);
351 UINT WINAPI MsiConfigureProductW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState);
352 #define MsiConfigureProduct __MINGW_NAME_AW(MsiConfigureProduct)
353
354 UINT WINAPI MsiConfigureProductExA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCSTR szCommandLine);
355 UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCWSTR szCommandLine);
356 #define MsiConfigureProductEx __MINGW_NAME_AW(MsiConfigureProductEx)
357
358 UINT WINAPI MsiReinstallProductA(LPCSTR szProduct,DWORD szReinstallMode);
359 UINT WINAPI MsiReinstallProductW(LPCWSTR szProduct,DWORD szReinstallMode);
360 #define MsiReinstallProduct __MINGW_NAME_AW(MsiReinstallProduct)
361
362 #if (_WIN32_MSI >= 150)
363 UINT WINAPI MsiAdvertiseProductExA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions);
364 UINT WINAPI MsiAdvertiseProductExW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions);
365 #define MsiAdvertiseProductEx __MINGW_NAME_AW(MsiAdvertiseProductEx)
366 #endif
367
368 UINT WINAPI MsiAdvertiseProductA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage);
369 UINT WINAPI MsiAdvertiseProductW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage);
370 #define MsiAdvertiseProduct __MINGW_NAME_AW(MsiAdvertiseProduct)
371
372 #if (_WIN32_MSI >= 150)
373 UINT WINAPI MsiProcessAdvertiseScriptA(LPCSTR szScriptFile,LPCSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems);
374 UINT WINAPI MsiProcessAdvertiseScriptW(LPCWSTR szScriptFile,LPCWSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems);
375 #define MsiProcessAdvertiseScript __MINGW_NAME_AW(MsiProcessAdvertiseScript)
376 #endif
377
378 UINT WINAPI MsiAdvertiseScriptA(LPCSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems);
379 UINT WINAPI MsiAdvertiseScriptW(LPCWSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems);
380 #define MsiAdvertiseScript __MINGW_NAME_AW(MsiAdvertiseScript)
381
382 UINT WINAPI MsiGetProductInfoFromScriptA(LPCSTR szScriptFile,LPSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPSTR lpNameBuf,DWORD *pcchNameBuf,LPSTR lpPackageBuf,DWORD *pcchPackageBuf);
383 UINT WINAPI MsiGetProductInfoFromScriptW(LPCWSTR szScriptFile,LPWSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPWSTR lpNameBuf,DWORD *pcchNameBuf,LPWSTR lpPackageBuf,DWORD *pcchPackageBuf);
384 #define MsiGetProductInfoFromScript __MINGW_NAME_AW(MsiGetProductInfoFromScript)
385
386 UINT WINAPI MsiGetProductCodeA(LPCSTR szComponent,LPSTR lpBuf39);
387 UINT WINAPI MsiGetProductCodeW(LPCWSTR szComponent,LPWSTR lpBuf39);
388 #define MsiGetProductCode __MINGW_NAME_AW(MsiGetProductCode)
389
390 USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR szProduct,LPSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPSTR lpSerialBuf,DWORD *pcchSerialBuf);
391 USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct,LPWSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPWSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPWSTR lpSerialBuf,DWORD *pcchSerialBuf);
392 #define MsiGetUserInfo __MINGW_NAME_AW(MsiGetUserInfo)
393
394 UINT WINAPI MsiCollectUserInfoA(LPCSTR szProduct);
395 UINT WINAPI MsiCollectUserInfoW(LPCWSTR szProduct);
396 #define MsiCollectUserInfo __MINGW_NAME_AW(MsiCollectUserInfo)
397
398 UINT WINAPI MsiApplyPatchA(LPCSTR szPatchPackage,LPCSTR szInstallPackage,INSTALLTYPE eInstallType,LPCSTR szCommandLine);
399 UINT WINAPI MsiApplyPatchW(LPCWSTR szPatchPackage,LPCWSTR szInstallPackage,INSTALLTYPE eInstallType,LPCWSTR szCommandLine);
400 #define MsiApplyPatch __MINGW_NAME_AW(MsiApplyPatch)
401
402 UINT WINAPI MsiGetPatchInfoA(LPCSTR szPatch,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf);
403 UINT WINAPI MsiGetPatchInfoW(LPCWSTR szPatch,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
404 #define MsiGetPatchInfo __MINGW_NAME_AW(MsiGetPatchInfo)
405
406 UINT WINAPI MsiEnumPatchesA(LPCSTR szProduct,DWORD iPatchIndex,LPSTR lpPatchBuf,LPSTR lpTransformsBuf,DWORD *pcchTransformsBuf);
407 UINT WINAPI MsiEnumPatchesW(LPCWSTR szProduct,DWORD iPatchIndex,LPWSTR lpPatchBuf,LPWSTR lpTransformsBuf,DWORD *pcchTransformsBuf);
408 #define MsiEnumPatches __MINGW_NAME_AW(MsiEnumPatches)
409
410 #if (_WIN32_MSI >= 300)
411 UINT WINAPI MsiRemovePatchesA(LPCSTR szPatchList,LPCSTR szProductCode,INSTALLTYPE eUninstallType,LPCSTR szPropertyList);
412 UINT WINAPI MsiRemovePatchesW(LPCWSTR szPatchList,LPCWSTR szProductCode,INSTALLTYPE eUninstallType,LPCWSTR szPropertyList);
413 #define MsiRemovePatches __MINGW_NAME_AW(MsiRemovePatches)
414
415 UINT WINAPI MsiExtractPatchXMLDataA(LPCSTR szPatchPath,DWORD dwReserved,LPSTR szXMLData,DWORD *pcchXMLData);
416 UINT WINAPI MsiExtractPatchXMLDataW(LPCWSTR szPatchPath,DWORD dwReserved,LPWSTR szXMLData,DWORD *pcchXMLData);
417 #define MsiExtractPatchXMLData __MINGW_NAME_AW(MsiExtractPatchXMLData)
418
419 UINT WINAPI MsiGetPatchInfoExA(LPCSTR szPatchCode,LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR lpValue,DWORD *pcchValue);
420 UINT WINAPI MsiGetPatchInfoExW(LPCWSTR szPatchCode,LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR lpValue,DWORD *pcchValue);
421 #define MsiGetPatchInfoEx __MINGW_NAME_AW(MsiGetPatchInfoEx)
422
423 UINT WINAPI MsiApplyMultiplePatchesA(LPCSTR szPatchPackages,LPCSTR szProductCode,LPCSTR szPropertiesList);
424 UINT WINAPI MsiApplyMultiplePatchesW(LPCWSTR szPatchPackages,LPCWSTR szProductCode,LPCWSTR szPropertiesList);
425 #define MsiApplyMultiplePatches __MINGW_NAME_AW(MsiApplyMultiplePatches)
426
427 UINT WINAPI MsiDeterminePatchSequenceA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo);
428 UINT WINAPI MsiDeterminePatchSequenceW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo);
429 #define MsiDeterminePatchSequence __MINGW_NAME_AW(MsiDeterminePatchSequence)
430
431 UINT WINAPI MsiDetermineApplicablePatchesA(LPCSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo);
432 UINT WINAPI MsiDetermineApplicablePatchesW(LPCWSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo);
433 #define MsiDetermineApplicablePatches __MINGW_NAME_AW(MsiDetermineApplicablePatches)
434
435 UINT WINAPI MsiEnumPatchesExA(LPCSTR szProductCode,LPCSTR szUserSid,DWORD dwContext,DWORD dwFilter,DWORD dwIndex,CHAR szPatchCode[39],CHAR szTargetProductCode[39],MSIINSTALLCONTEXT *pdwTargetProductContext,LPSTR szTargetUserSid,LPDWORD pcchTargetUserSid);
436 UINT WINAPI MsiEnumPatchesExW(LPCWSTR szProductCode,LPCWSTR szUserSid,DWORD dwContext,DWORD dwFilter,DWORD dwIndex,WCHAR szPatchCode[39],WCHAR szTargetProductCode[39],MSIINSTALLCONTEXT *pdwTargetProductContext,LPWSTR szTargetUserSid,LPDWORD pcchTargetUserSid);
437 #define MsiEnumPatchesEx __MINGW_NAME_AW(MsiEnumPatchesEx)
438 #endif
439
440 INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR szProduct,LPCSTR szFeature);
441 INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR szProduct,LPCWSTR szFeature);
442 #define MsiQueryFeatureState __MINGW_NAME_AW(MsiQueryFeatureState)
443
444 #if (_WIN32_MSI >= 300)
445 UINT WINAPI MsiQueryFeatureStateExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szFeature,INSTALLSTATE *pdwState);
446 UINT WINAPI MsiQueryFeatureStateExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szFeature,INSTALLSTATE *pdwState);
447 #define MsiQueryFeatureStateEx __MINGW_NAME_AW(MsiQueryFeatureStateEx)
448 #endif
449
450 INSTALLSTATE WINAPI MsiUseFeatureA(LPCSTR szProduct,LPCSTR szFeature);
451 INSTALLSTATE WINAPI MsiUseFeatureW(LPCWSTR szProduct,LPCWSTR szFeature);
452 #define MsiUseFeature __MINGW_NAME_AW(MsiUseFeature)
453
454 INSTALLSTATE WINAPI MsiUseFeatureExA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwInstallMode,DWORD dwReserved);
455 INSTALLSTATE WINAPI MsiUseFeatureExW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwInstallMode,DWORD dwReserved);
456 #define MsiUseFeatureEx __MINGW_NAME_AW(MsiUseFeatureEx)
457
458 UINT WINAPI MsiGetFeatureUsageA(LPCSTR szProduct,LPCSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed);
459 UINT WINAPI MsiGetFeatureUsageW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed);
460 #define MsiGetFeatureUsage __MINGW_NAME_AW(MsiGetFeatureUsage)
461
462 UINT WINAPI MsiConfigureFeatureA(LPCSTR szProduct,LPCSTR szFeature,INSTALLSTATE eInstallState);
463 UINT WINAPI MsiConfigureFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,INSTALLSTATE eInstallState);
464 #define MsiConfigureFeature __MINGW_NAME_AW(MsiConfigureFeature)
465
466 UINT WINAPI MsiReinstallFeatureA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwReinstallMode);
467 UINT WINAPI MsiReinstallFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwReinstallMode);
468 #define MsiReinstallFeature __MINGW_NAME_AW(MsiReinstallFeature)
469
470 UINT WINAPI MsiProvideComponentA(LPCSTR szProduct,LPCSTR szFeature,LPCSTR szComponent,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf);
471 UINT WINAPI MsiProvideComponentW(LPCWSTR szProduct,LPCWSTR szFeature,LPCWSTR szComponent,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
472 #define MsiProvideComponent __MINGW_NAME_AW(MsiProvideComponent)
473
474 UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf);
475 UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
476 #define MsiProvideQualifiedComponent __MINGW_NAME_AW(MsiProvideQualifiedComponent)
477
478 UINT WINAPI MsiProvideQualifiedComponentExA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPCSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPSTR lpPathBuf,DWORD *pcchPathBuf);
479 UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPCWSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
480 #define MsiProvideQualifiedComponentEx __MINGW_NAME_AW(MsiProvideQualifiedComponentEx)
481
482 INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR szProduct,LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf);
483 INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR szProduct,LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf);
484 #define MsiGetComponentPath __MINGW_NAME_AW(MsiGetComponentPath)
485
486 #if (_WIN32_MSI >= 150)
487 #define MSIASSEMBLYINFO_NETASSEMBLY 0
488 #define MSIASSEMBLYINFO_WIN32ASSEMBLY 1
489
490 UINT WINAPI MsiProvideAssemblyA(LPCSTR szAssemblyName,LPCSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPSTR lpPathBuf,DWORD *pcchPathBuf);
491 UINT WINAPI MsiProvideAssemblyW(LPCWSTR szAssemblyName,LPCWSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
492 #define MsiProvideAssembly __MINGW_NAME_AW(MsiProvideAssembly)
493 #endif
494
495 #if (_WIN32_MSI >= 300)
496 UINT WINAPI MsiQueryComponentStateA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szComponentCode,INSTALLSTATE *pdwState);
497 UINT WINAPI MsiQueryComponentStateW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szComponentCode,INSTALLSTATE *pdwState);
498 #define MsiQueryComponentState __MINGW_NAME_AW(MsiQueryComponentState)
499 #endif
500
501 UINT WINAPI MsiEnumProductsA(DWORD iProductIndex,LPSTR lpProductBuf);
502 UINT WINAPI MsiEnumProductsW(DWORD iProductIndex,LPWSTR lpProductBuf);
503 #define MsiEnumProducts __MINGW_NAME_AW(MsiEnumProducts)
504
505 #if (_WIN32_MSI >= 300)
506 UINT WINAPI MsiEnumProductsExA(LPCSTR szProductCode,LPCSTR szUserSid,DWORD dwContext,DWORD dwIndex,CHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPSTR szSid,LPDWORD pcchSid);
507 UINT WINAPI MsiEnumProductsExW(LPCWSTR szProductCode,LPCWSTR szUserSid,DWORD dwContext,DWORD dwIndex,WCHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPWSTR szSid,LPDWORD pcchSid);
508
509 #define MsiEnumProductsEx __MINGW_NAME_AW(MsiEnumProductsEx)
510 #endif
511
512 #if (_WIN32_MSI >= 110)
513 UINT WINAPI MsiEnumRelatedProductsA(LPCSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPSTR lpProductBuf);
514 UINT WINAPI MsiEnumRelatedProductsW(LPCWSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPWSTR lpProductBuf);
515 #define MsiEnumRelatedProducts __MINGW_NAME_AW(MsiEnumRelatedProducts)
516 #endif
517
518 UINT WINAPI MsiEnumFeaturesA(LPCSTR szProduct,DWORD iFeatureIndex,LPSTR lpFeatureBuf,LPSTR lpParentBuf);
519 UINT WINAPI MsiEnumFeaturesW(LPCWSTR szProduct,DWORD iFeatureIndex,LPWSTR lpFeatureBuf,LPWSTR lpParentBuf);
520 #define MsiEnumFeatures __MINGW_NAME_AW(MsiEnumFeatures)
521
522 UINT WINAPI MsiEnumComponentsA(DWORD iComponentIndex,LPSTR lpComponentBuf);
523 UINT WINAPI MsiEnumComponentsW(DWORD iComponentIndex,LPWSTR lpComponentBuf);
524 #define MsiEnumComponents __MINGW_NAME_AW(MsiEnumComponents)
525
526 UINT WINAPI MsiEnumClientsA(LPCSTR szComponent,DWORD iProductIndex,LPSTR lpProductBuf);
527 UINT WINAPI MsiEnumClientsW(LPCWSTR szComponent,DWORD iProductIndex,LPWSTR lpProductBuf);
528 #define MsiEnumClients __MINGW_NAME_AW(MsiEnumClients)
529
530 UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR szComponent,DWORD iIndex,LPSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf);
531 UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR szComponent,DWORD iIndex,LPWSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPWSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf);
532 #define MsiEnumComponentQualifiers __MINGW_NAME_AW(MsiEnumComponentQualifiers)
533
534 UINT WINAPI MsiOpenProductA(LPCSTR szProduct,MSIHANDLE *hProduct);
535 UINT WINAPI MsiOpenProductW(LPCWSTR szProduct,MSIHANDLE *hProduct);
536 #define MsiOpenProduct __MINGW_NAME_AW(MsiOpenProduct)
537
538 UINT WINAPI MsiOpenPackageA(LPCSTR szPackagePath,MSIHANDLE *hProduct);
539 UINT WINAPI MsiOpenPackageW(LPCWSTR szPackagePath,MSIHANDLE *hProduct);
540 #define MsiOpenPackage __MINGW_NAME_AW(MsiOpenPackage)
541
542 #if (_WIN32_MSI >= 150)
543 UINT WINAPI MsiOpenPackageExA(LPCSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct);
544 UINT WINAPI MsiOpenPackageExW(LPCWSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct);
545 #define MsiOpenPackageEx __MINGW_NAME_AW(MsiOpenPackageEx)
546
547 #if _WIN32_MSI >= 400
548 UINT WINAPI MsiGetPatchFileListA(LPCSTR szProductCode, LPCSTR szPatchPackages, LPDWORD pcFiles, MSIHANDLE **pphFileRecords);
549 UINT WINAPI MsiGetPatchFileListW(LPCWSTR szProductCode, LPCWSTR szPatchPackages, LPDWORD pcFiles, MSIHANDLE **pphFileRecords);
550 #define MsiGetPatchFileList __MINGW_NAME_AW(MsiGetPatchFileList)
551 #endif
552 #endif
553
554 UINT WINAPI MsiGetProductPropertyA(MSIHANDLE hProduct,LPCSTR szProperty,LPSTR lpValueBuf,DWORD *pcchValueBuf);
555 UINT WINAPI MsiGetProductPropertyW(MSIHANDLE hProduct,LPCWSTR szProperty,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
556 #define MsiGetProductProperty __MINGW_NAME_AW(MsiGetProductProperty)
557
558 UINT WINAPI MsiVerifyPackageA(LPCSTR szPackagePath);
559 UINT WINAPI MsiVerifyPackageW(LPCWSTR szPackagePath);
560 #define MsiVerifyPackage __MINGW_NAME_AW(MsiVerifyPackage)
561
562 UINT WINAPI MsiGetFeatureInfoA(MSIHANDLE hProduct,LPCSTR szFeature,DWORD *lpAttributes,LPSTR lpTitleBuf,DWORD *pcchTitleBuf,LPSTR lpHelpBuf,DWORD *pcchHelpBuf);
563 UINT WINAPI MsiGetFeatureInfoW(MSIHANDLE hProduct,LPCWSTR szFeature,DWORD *lpAttributes,LPWSTR lpTitleBuf,DWORD *pcchTitleBuf,LPWSTR lpHelpBuf,DWORD *pcchHelpBuf);
564 #define MsiGetFeatureInfo __MINGW_NAME_AW(MsiGetFeatureInfo)
565
566 UINT WINAPI MsiInstallMissingComponentA(LPCSTR szProduct,LPCSTR szComponent,INSTALLSTATE eInstallState);
567 UINT WINAPI MsiInstallMissingComponentW(LPCWSTR szProduct,LPCWSTR szComponent,INSTALLSTATE eInstallState);
568 #define MsiInstallMissingComponent __MINGW_NAME_AW(MsiInstallMissingComponent)
569
570 UINT WINAPI MsiInstallMissingFileA(LPCSTR szProduct,LPCSTR szFile);
571 UINT WINAPI MsiInstallMissingFileW(LPCWSTR szProduct,LPCWSTR szFile);
572 #define MsiInstallMissingFile __MINGW_NAME_AW(MsiInstallMissingFile)
573
574 INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf);
575 INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf);
576 #define MsiLocateComponent __MINGW_NAME_AW(MsiLocateComponent)
577
578 #if (_WIN32_MSI >= 110)
579 UINT WINAPI MsiSourceListClearAllA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved);
580 UINT WINAPI MsiSourceListClearAllW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved);
581 #define MsiSourceListClearAll __MINGW_NAME_AW(MsiSourceListClearAll)
582
583 UINT WINAPI MsiSourceListAddSourceA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved,LPCSTR szSource);
584 UINT WINAPI MsiSourceListAddSourceW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved,LPCWSTR szSource);
585 #define MsiSourceListAddSource __MINGW_NAME_AW(MsiSourceListAddSource)
586
587 UINT WINAPI MsiSourceListForceResolutionA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved);
588 UINT WINAPI MsiSourceListForceResolutionW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved);
589 #define MsiSourceListForceResolution __MINGW_NAME_AW(MsiSourceListForceResolution)
590 #endif
591
592 #if (_WIN32_MSI >= 300)
593 UINT WINAPI MsiSourceListAddSourceExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource,DWORD dwIndex);
594 UINT WINAPI MsiSourceListAddSourceExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource,DWORD dwIndex);
595 #define MsiSourceListAddSourceEx __MINGW_NAME_AW(MsiSourceListAddSourceEx)
596
597 UINT WINAPI MsiSourceListAddMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCSTR szVolumeLabel,LPCSTR szDiskPrompt);
598 UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCWSTR szVolumeLabel,LPCWSTR szDiskPrompt);
599 #define MsiSourceListAddMediaDisk __MINGW_NAME_AW(MsiSourceListAddMediaDisk)
600
601 UINT WINAPI MsiSourceListClearSourceA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource);
602 UINT WINAPI MsiSourceListClearSourceW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource);
603 #define MsiSourceListClearSource __MINGW_NAME_AW(MsiSourceListClearSource)
604
605 UINT WINAPI MsiSourceListClearMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId);
606 UINT WINAPI MsiSourceListClearMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId);
607 #define MsiSourceListClearMediaDisk __MINGW_NAME_AW(MsiSourceListClearMediaDisk)
608
609 UINT WINAPI MsiSourceListClearAllExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
610 UINT WINAPI MsiSourceListClearAllExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
611 #define MsiSourceListClearAllEx __MINGW_NAME_AW(MsiSourceListClearAllEx)
612
613 UINT WINAPI MsiSourceListForceResolutionExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
614 UINT WINAPI MsiSourceListForceResolutionExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
615 #define MsiSourceListForceResolutionEx __MINGW_NAME_AW(MsiSourceListForceResolutionEx)
616
617 UINT WINAPI MsiSourceListSetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPCSTR szValue);
618 UINT WINAPI MsiSourceListSetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPCWSTR szValue);
619 #define MsiSourceListSetInfo __MINGW_NAME_AW(MsiSourceListSetInfo)
620
621 UINT WINAPI MsiSourceListGetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue);
622 UINT WINAPI MsiSourceListGetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue);
623 #define MsiSourceListGetInfo __MINGW_NAME_AW(MsiSourceListGetInfo)
624
625 UINT WINAPI MsiSourceListEnumSourcesA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPSTR szSource,LPDWORD pcchSource);
626 UINT WINAPI MsiSourceListEnumSourcesW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPWSTR szSource,LPDWORD pcchSource);
627 #define MsiSourceListEnumSources __MINGW_NAME_AW(MsiSourceListEnumSources)
628
629 UINT WINAPI MsiSourceListEnumMediaDisksA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPSTR szDiskPrompt,LPDWORD pcchDiskPrompt);
630 UINT WINAPI MsiSourceListEnumMediaDisksW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPWSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPWSTR szDiskPrompt,LPDWORD pcchDiskPrompt);
631 #define MsiSourceListEnumMediaDisks __MINGW_NAME_AW(MsiSourceListEnumMediaDisks)
632 #endif
633
634 UINT WINAPI MsiGetFileVersionA(LPCSTR szFilePath,LPSTR lpVersionBuf,DWORD *pcchVersionBuf,LPSTR lpLangBuf,DWORD *pcchLangBuf);
635 UINT WINAPI MsiGetFileVersionW(LPCWSTR szFilePath,LPWSTR lpVersionBuf,DWORD *pcchVersionBuf,LPWSTR lpLangBuf,DWORD *pcchLangBuf);
636 #define MsiGetFileVersion __MINGW_NAME_AW(MsiGetFileVersion)
637
638 #if (_WIN32_MSI >= 150)
639 UINT WINAPI MsiGetFileHashA(LPCSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash);
640 UINT WINAPI MsiGetFileHashW(LPCWSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash);
641 #define MsiGetFileHash __MINGW_NAME_AW(MsiGetFileHash)
642
643 #ifndef _MSI_NO_CRYPTO
644 HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData);
645 HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData);
646 #define MsiGetFileSignatureInformation __MINGW_NAME_AW(MsiGetFileSignatureInformation)
647
648 #define MSI_INVALID_HASH_IS_FATAL 0x1
649 #endif
650 #endif
651
652 #if (_WIN32_MSI >= 110)
653 UINT WINAPI MsiGetShortcutTargetA(LPCSTR szShortcutPath,LPSTR szProductCode,LPSTR szFeatureId,LPSTR szComponentCode);
654 UINT WINAPI MsiGetShortcutTargetW(LPCWSTR szShortcutPath,LPWSTR szProductCode,LPWSTR szFeatureId,LPWSTR szComponentCode);
655 #define MsiGetShortcutTarget __MINGW_NAME_AW(MsiGetShortcutTarget)
656
657 UINT WINAPI MsiIsProductElevatedA(LPCSTR szProduct,WINBOOL *pfElevated);
658 UINT WINAPI MsiIsProductElevatedW(LPCWSTR szProduct,WINBOOL *pfElevated);
659 #define MsiIsProductElevated __MINGW_NAME_AW(MsiIsProductElevated)
660 #endif
661
662 #if (_WIN32_MSI >= 310)
663 UINT WINAPI MsiNotifySidChangeA(LPCSTR pOldSid,LPCSTR pNewSid);
664 UINT WINAPI MsiNotifySidChangeW(LPCWSTR pOldSid,LPCWSTR pNewSid);
665 #define MsiNotifySidChange __MINGW_NAME_AW(MsiNotifySidChange)
666
667 #if _WIN32_MSI >= 450
668 UINT WINAPI MsiBeginTransactionA(LPCSTR szName, DWORD dwTransactionAttributes, MSIHANDLE *phTransactionHandle, HANDLE *phChangeOfOwnerEvent);
669 UINT WINAPI MsiBeginTransactionW(LPCWSTR szName, DWORD dwTransactionAttributes, MSIHANDLE *phTransactionHandle, HANDLE *phChangeOfOwnerEvent);
670 #define MsiBeginTransaction __MINGW_NAME_AW(MsiBeginTransaction)
671
672 UINT WINAPI MsiEndTransaction(DWORD dwTransactionState);
673 UINT WINAPI MsiJoinTransaction(MSIHANDLE hTransactionHandle, DWORD dwTransactionAttributes, HANDLE *phChangeOfOwnerEvent);
674 #endif
675 #endif
676
677 #ifdef __cplusplus
678 }
679 #endif
680
681 #ifndef ERROR_INSTALL_FAILURE
682 #define ERROR_INSTALL_USEREXIT __MSABI_LONG(1602)
683 #define ERROR_INSTALL_FAILURE __MSABI_LONG(1603)
684 #define ERROR_INSTALL_SUSPEND __MSABI_LONG(1604)
685
686 #define ERROR_UNKNOWN_PRODUCT __MSABI_LONG(1605)
687
688 #define ERROR_UNKNOWN_FEATURE __MSABI_LONG(1606)
689 #define ERROR_UNKNOWN_COMPONENT __MSABI_LONG(1607)
690 #define ERROR_UNKNOWN_PROPERTY __MSABI_LONG(1608)
691 #define ERROR_INVALID_HANDLE_STATE __MSABI_LONG(1609)
692
693 #define ERROR_BAD_CONFIGURATION __MSABI_LONG(1610)
694
695 #define ERROR_INDEX_ABSENT __MSABI_LONG(1611)
696
697 #define ERROR_INSTALL_SOURCE_ABSENT __MSABI_LONG(1612)
698
699 #define ERROR_PRODUCT_UNINSTALLED __MSABI_LONG(1614)
700 #define ERROR_BAD_QUERY_SYNTAX __MSABI_LONG(1615)
701 #define ERROR_INVALID_FIELD __MSABI_LONG(1616)
702 #endif
703
704 #ifndef ERROR_INSTALL_SERVICE_FAILURE
705 #define ERROR_INSTALL_SERVICE_FAILURE __MSABI_LONG(1601)
706 #define ERROR_INSTALL_PACKAGE_VERSION __MSABI_LONG(1613)
707 #define ERROR_INSTALL_ALREADY_RUNNING __MSABI_LONG(1618)
708 #define ERROR_INSTALL_PACKAGE_OPEN_FAILED __MSABI_LONG(1619)
709 #define ERROR_INSTALL_PACKAGE_INVALID __MSABI_LONG(1620)
710 #define ERROR_INSTALL_UI_FAILURE __MSABI_LONG(1621)
711 #define ERROR_INSTALL_LOG_FAILURE __MSABI_LONG(1622)
712 #define ERROR_INSTALL_LANGUAGE_UNSUPPORTED __MSABI_LONG(1623)
713 #define ERROR_INSTALL_PACKAGE_REJECTED __MSABI_LONG(1625)
714
715 #define ERROR_FUNCTION_NOT_CALLED __MSABI_LONG(1626)
716 #define ERROR_FUNCTION_FAILED __MSABI_LONG(1627)
717 #define ERROR_INVALID_TABLE __MSABI_LONG(1628)
718 #define ERROR_DATATYPE_MISMATCH __MSABI_LONG(1629)
719 #define ERROR_UNSUPPORTED_TYPE __MSABI_LONG(1630)
720
721 #define ERROR_CREATE_FAILED __MSABI_LONG(1631)
722 #endif
723
724 #ifndef ERROR_INSTALL_TEMP_UNWRITABLE
725 #define ERROR_INSTALL_TEMP_UNWRITABLE __MSABI_LONG(1632)
726 #endif
727
728 #ifndef ERROR_INSTALL_PLATFORM_UNSUPPORTED
729 #define ERROR_INSTALL_PLATFORM_UNSUPPORTED __MSABI_LONG(1633)
730 #endif
731
732 #ifndef ERROR_INSTALL_NOTUSED
733 #define ERROR_INSTALL_NOTUSED __MSABI_LONG(1634)
734 #endif
735
736 #ifndef ERROR_INSTALL_TRANSFORM_FAILURE
737 #define ERROR_INSTALL_TRANSFORM_FAILURE __MSABI_LONG(1624)
738 #endif
739
740 #ifndef ERROR_PATCH_PACKAGE_OPEN_FAILED
741 #define ERROR_PATCH_PACKAGE_OPEN_FAILED __MSABI_LONG(1635)
742 #define ERROR_PATCH_PACKAGE_INVALID __MSABI_LONG(1636)
743 #define ERROR_PATCH_PACKAGE_UNSUPPORTED __MSABI_LONG(1637)
744 #endif
745
746 #ifndef ERROR_PRODUCT_VERSION
747 #define ERROR_PRODUCT_VERSION __MSABI_LONG(1638)
748 #endif
749
750 #ifndef ERROR_INVALID_COMMAND_LINE
751 #define ERROR_INVALID_COMMAND_LINE __MSABI_LONG(1639)
752 #endif
753
754 #ifndef ERROR_INSTALL_REMOTE_DISALLOWED
755 #define ERROR_INSTALL_REMOTE_DISALLOWED __MSABI_LONG(1640)
756 #endif
757
758 #ifndef ERROR_SUCCESS_REBOOT_INITIATED
759 #define ERROR_SUCCESS_REBOOT_INITIATED __MSABI_LONG(1641)
760 #endif
761
762 #ifndef ERROR_PATCH_TARGET_NOT_FOUND
763 #define ERROR_PATCH_TARGET_NOT_FOUND __MSABI_LONG(1642)
764 #endif
765
766 #ifndef ERROR_PATCH_PACKAGE_REJECTED
767 #define ERROR_PATCH_PACKAGE_REJECTED __MSABI_LONG(1643)
768 #endif
769
770 #ifndef ERROR_INSTALL_TRANSFORM_REJECTED
771 #define ERROR_INSTALL_TRANSFORM_REJECTED __MSABI_LONG(1644)
772 #endif
773
774 #ifndef ERROR_INSTALL_REMOTE_PROHIBITED
775 #define ERROR_INSTALL_REMOTE_PROHIBITED __MSABI_LONG(1645)
776 #endif
777
778 #ifndef ERROR_PATCH_REMOVAL_UNSUPPORTED
779 #define ERROR_PATCH_REMOVAL_UNSUPPORTED __MSABI_LONG(1646)
780 #endif
781
782 #ifndef ERROR_UNKNOWN_PATCH
783 #define ERROR_UNKNOWN_PATCH __MSABI_LONG(1647)
784 #endif
785
786 #ifndef ERROR_PATCH_NO_SEQUENCE
787 #define ERROR_PATCH_NO_SEQUENCE __MSABI_LONG(1648)
788 #endif
789
790 #ifndef ERROR_PATCH_REMOVAL_DISALLOWED
791 #define ERROR_PATCH_REMOVAL_DISALLOWED __MSABI_LONG(1649)
792 #endif
793
794 #ifndef ERROR_INVALID_PATCH_XML
795 #define ERROR_INVALID_PATCH_XML __MSABI_LONG(1650)
796 #endif
797
798 #ifndef ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT
799 #define ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT __MSABI_LONG(1651)
800 #endif
801
802 #ifndef ERROR_INSTALL_SERVICE_SAFEBOOT
803 #define ERROR_INSTALL_SERVICE_SAFEBOOT __MSABI_LONG(1652)
804 #endif
805
806 #ifndef ERROR_ROLLBACK_DISABLED
807 #define ERROR_ROLLBACK_DISABLED __MSABI_LONG(1653)
808 #endif
809
810 #endif