Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/msi.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #ifndef _MSI_H_ | |
| 7 #define _MSI_H_ | |
| 8 | |
| 9 #ifndef NTDDI_WIN2K | |
| 10 #define NTDDI_WIN2K 0x05000000 | |
| 11 #endif | |
| 12 #ifndef NTDDI_WINXP | |
| 13 #define NTDDI_WINXP 0x05010000 | |
| 14 #endif | |
| 15 #ifndef NTDDI_WINXPSP2 | |
| 16 #define NTDDI_WINXPSP2 0x05010200 | |
| 17 #endif | |
| 18 #ifndef NTDDI_WS03SP1 | |
| 19 #define NTDDI_WS03SP1 0x05020100 | |
| 20 #endif | |
| 21 | |
| 22 #ifndef _WIN32_MSI | |
| 23 #if (defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WS03SP1) | |
| 24 #define _WIN32_MSI 310 | |
| 25 #elif (defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WINXPSP2) | |
| 26 #define _WIN32_MSI 300 | |
| 27 #else | |
| 28 #define _WIN32_MSI 200 | |
| 29 #endif | |
| 30 #endif | |
| 31 | |
| 32 #if (_WIN32_MSI >= 150) | |
| 33 #ifndef _MSI_NO_CRYPTO | |
| 34 #include "wincrypt.h" | |
| 35 #endif | |
| 36 #endif | |
| 37 | |
| 38 typedef unsigned long MSIHANDLE; | |
| 39 | |
| 40 #ifdef __cplusplus | |
| 41 extern "C" { | |
| 42 #endif | |
| 43 | |
| 44 UINT WINAPI MsiCloseHandle(MSIHANDLE hAny); | |
| 45 UINT WINAPI MsiCloseAllHandles(); | |
| 46 | |
| 47 #ifdef __cplusplus | |
| 48 } | |
| 49 #endif | |
| 50 | |
| 51 #ifdef __cplusplus | |
| 52 class PMSIHANDLE { | |
| 53 MSIHANDLE m_h; | |
| 54 public: | |
| 55 PMSIHANDLE():m_h(0){} | |
| 56 PMSIHANDLE(MSIHANDLE h):m_h(h){} | |
| 57 ~PMSIHANDLE(){if (m_h!=0) MsiCloseHandle(m_h);} | |
| 58 void operator =(MSIHANDLE h) {if (m_h) MsiCloseHandle(m_h); m_h=h;} | |
| 59 operator MSIHANDLE() {return m_h;} | |
| 60 MSIHANDLE *operator &() {if (m_h) MsiCloseHandle(m_h); m_h = 0; return &m_h;} | |
| 61 }; | |
| 62 #endif | |
| 63 | |
| 64 typedef enum tagINSTALLMESSAGE { | |
| 65 INSTALLMESSAGE_FATALEXIT = 0x00000000L,INSTALLMESSAGE_ERROR = 0x01000000L,INSTALLMESSAGE_WARNING = 0x02000000L,INSTALLMESSAGE_USER = 0x03000000L, | |
| 66 INSTALLMESSAGE_INFO = 0x04000000L,INSTALLMESSAGE_FILESINUSE = 0x05000000L,INSTALLMESSAGE_RESOLVESOURCE = 0x06000000L, | |
| 67 INSTALLMESSAGE_OUTOFDISKSPACE = 0x07000000L,INSTALLMESSAGE_ACTIONSTART = 0x08000000L,INSTALLMESSAGE_ACTIONDATA = 0x09000000L, | |
| 68 INSTALLMESSAGE_PROGRESS = 0x0A000000L,INSTALLMESSAGE_COMMONDATA = 0x0B000000L,INSTALLMESSAGE_INITIALIZE = 0x0C000000L, | |
| 69 INSTALLMESSAGE_TERMINATE = 0x0D000000L,INSTALLMESSAGE_SHOWDIALOG = 0x0E000000L | |
| 70 } INSTALLMESSAGE; | |
| 71 | |
| 72 typedef int (WINAPI *INSTALLUI_HANDLERA)(LPVOID pvContext,UINT iMessageType,LPCSTR szMessage); | |
| 73 typedef int (WINAPI *INSTALLUI_HANDLERW)(LPVOID pvContext,UINT iMessageType,LPCWSTR szMessage); | |
| 74 #ifdef UNICODE | |
| 75 #define INSTALLUI_HANDLER INSTALLUI_HANDLERW | |
| 76 #else | |
| 77 #define INSTALLUI_HANDLER INSTALLUI_HANDLERA | |
| 78 #endif | |
| 79 #if (_WIN32_MSI >= 310) | |
| 80 typedef int (WINAPI *INSTALLUI_HANDLER_RECORD)(LPVOID pvContext,UINT iMessageType,MSIHANDLE hRecord); | |
| 81 typedef INSTALLUI_HANDLER_RECORD *PINSTALLUI_HANDLER_RECORD; | |
| 82 #endif | |
| 83 | |
| 84 typedef enum tagINSTALLUILEVEL { | |
| 85 INSTALLUILEVEL_NOCHANGE = 0,INSTALLUILEVEL_DEFAULT = 1,INSTALLUILEVEL_NONE = 2,INSTALLUILEVEL_BASIC = 3,INSTALLUILEVEL_REDUCED = 4, | |
| 86 INSTALLUILEVEL_FULL = 5,INSTALLUILEVEL_ENDDIALOG = 0x80,INSTALLUILEVEL_PROGRESSONLY = 0x40,INSTALLUILEVEL_HIDECANCEL = 0x20, | |
| 87 INSTALLUILEVEL_SOURCERESONLY = 0x100 | |
| 88 } INSTALLUILEVEL; | |
| 89 | |
| 90 typedef enum tagINSTALLSTATE { | |
| 91 INSTALLSTATE_NOTUSED = -7,INSTALLSTATE_BADCONFIG = -6,INSTALLSTATE_INCOMPLETE = -5,INSTALLSTATE_SOURCEABSENT = -4,INSTALLSTATE_MOREDATA = -3, | |
| 92 INSTALLSTATE_INVALIDARG = -2,INSTALLSTATE_UNKNOWN = -1,INSTALLSTATE_BROKEN = 0,INSTALLSTATE_ADVERTISED = 1,INSTALLSTATE_REMOVED = 1, | |
| 93 INSTALLSTATE_ABSENT = 2,INSTALLSTATE_LOCAL = 3,INSTALLSTATE_SOURCE = 4,INSTALLSTATE_DEFAULT = 5 | |
| 94 } INSTALLSTATE; | |
| 95 | |
| 96 typedef enum tagUSERINFOSTATE { | |
| 97 USERINFOSTATE_MOREDATA = -3,USERINFOSTATE_INVALIDARG = -2,USERINFOSTATE_UNKNOWN = -1,USERINFOSTATE_ABSENT = 0,USERINFOSTATE_PRESENT = 1 | |
| 98 } USERINFOSTATE; | |
| 99 | |
| 100 typedef enum tagINSTALLLEVEL { | |
| 101 INSTALLLEVEL_DEFAULT = 0,INSTALLLEVEL_MINIMUM = 1,INSTALLLEVEL_MAXIMUM = 0xFFFF | |
| 102 } INSTALLLEVEL; | |
| 103 | |
| 104 typedef enum tagREINSTALLMODE { | |
| 105 REINSTALLMODE_REPAIR = 0x00000001,REINSTALLMODE_FILEMISSING = 0x00000002,REINSTALLMODE_FILEOLDERVERSION = 0x00000004, | |
| 106 REINSTALLMODE_FILEEQUALVERSION = 0x00000008,REINSTALLMODE_FILEEXACT = 0x00000010,REINSTALLMODE_FILEVERIFY = 0x00000020, | |
| 107 REINSTALLMODE_FILEREPLACE = 0x00000040,REINSTALLMODE_MACHINEDATA = 0x00000080,REINSTALLMODE_USERDATA = 0x00000100, | |
| 108 REINSTALLMODE_SHORTCUT = 0x00000200,REINSTALLMODE_PACKAGE = 0x00000400 | |
| 109 } REINSTALLMODE; | |
| 110 | |
| 111 typedef enum tagINSTALLOGMODE { | |
| 112 INSTALLLOGMODE_FATALEXIT = (1 << (INSTALLMESSAGE_FATALEXIT >> 24)),INSTALLLOGMODE_ERROR = (1 << (INSTALLMESSAGE_ERROR >> 24)), | |
| 113 INSTALLLOGMODE_WARNING = (1 << (INSTALLMESSAGE_WARNING >> 24)),INSTALLLOGMODE_USER = (1 << (INSTALLMESSAGE_USER >> 24)), | |
| 114 INSTALLLOGMODE_INFO = (1 << (INSTALLMESSAGE_INFO >> 24)),INSTALLLOGMODE_RESOLVESOURCE = (1 << (INSTALLMESSAGE_RESOLVESOURCE >> 24)), | |
| 115 INSTALLLOGMODE_OUTOFDISKSPACE = (1 << (INSTALLMESSAGE_OUTOFDISKSPACE >> 24)),INSTALLLOGMODE_ACTIONSTART = (1 << (INSTALLMESSAGE_ACTIONSTART >> 24)), | |
| 116 INSTALLLOGMODE_ACTIONDATA = (1 << (INSTALLMESSAGE_ACTIONDATA >> 24)),INSTALLLOGMODE_COMMONDATA = (1 << (INSTALLMESSAGE_COMMONDATA >> 24)), | |
| 117 INSTALLLOGMODE_PROPERTYDUMP = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_VERBOSE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)), | |
| 118 INSTALLLOGMODE_EXTRADEBUG = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_LOGONLYONERROR = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)), | |
| 119 INSTALLLOGMODE_PROGRESS = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_INITIALIZE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)), | |
| 120 INSTALLLOGMODE_TERMINATE = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_SHOWDIALOG = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)), | |
| 121 INSTALLLOGMODE_FILESINUSE = (1 << (INSTALLMESSAGE_FILESINUSE >> 24)) | |
| 122 } INSTALLLOGMODE; | |
| 123 | |
| 124 typedef enum tagINSTALLLOGATTRIBUTES { | |
| 125 INSTALLLOGATTRIBUTES_APPEND = (1 << 0),INSTALLLOGATTRIBUTES_FLUSHEACHLINE = (1 << 1) | |
| 126 } INSTALLLOGATTRIBUTES; | |
| 127 | |
| 128 typedef enum tagINSTALLFEATUREATTRIBUTE { | |
| 129 INSTALLFEATUREATTRIBUTE_FAVORLOCAL = 1 << 0,INSTALLFEATUREATTRIBUTE_FAVORSOURCE = 1 << 1, | |
| 130 INSTALLFEATUREATTRIBUTE_FOLLOWPARENT = 1 << 2,INSTALLFEATUREATTRIBUTE_FAVORADVERTISE = 1 << 3, | |
| 131 INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE = 1 << 4,INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE = 1 << 5 | |
| 132 } INSTALLFEATUREATTRIBUTE; | |
| 133 | |
| 134 typedef enum tagINSTALLMODE { | |
| 135 #if (_WIN32_MSI >= 150) | |
| 136 INSTALLMODE_NODETECTION_ANY = -4, | |
| 137 #endif | |
| 138 INSTALLMODE_NOSOURCERESOLUTION = -3,INSTALLMODE_NODETECTION = -2,INSTALLMODE_EXISTING = -1,INSTALLMODE_DEFAULT = 0 | |
| 139 } INSTALLMODE; | |
| 140 | |
| 141 #if (_WIN32_MSI >= 300) | |
| 142 typedef enum tagMSIPATCHSTATE { | |
| 143 MSIPATCHSTATE_INVALID = 0,MSIPATCHSTATE_APPLIED = 1,MSIPATCHSTATE_SUPERSEDED = 2,MSIPATCHSTATE_OBSOLETED = 4,MSIPATCHSTATE_REGISTERED = 8, | |
| 144 MSIPATCHSTATE_ALL = (MSIPATCHSTATE_APPLIED | MSIPATCHSTATE_SUPERSEDED | MSIPATCHSTATE_OBSOLETED | MSIPATCHSTATE_REGISTERED) | |
| 145 } MSIPATCHSTATE; | |
| 146 | |
| 147 typedef enum tagMSIINSTALLCONTEXT { | |
| 148 MSIINSTALLCONTEXT_FIRSTVISIBLE = 0,MSIINSTALLCONTEXT_NONE = 0,MSIINSTALLCONTEXT_USERMANAGED = 1,MSIINSTALLCONTEXT_USERUNMANAGED = 2, | |
| 149 MSIINSTALLCONTEXT_MACHINE = 4, | |
| 150 MSIINSTALLCONTEXT_ALL = (MSIINSTALLCONTEXT_USERMANAGED | MSIINSTALLCONTEXT_USERUNMANAGED | MSIINSTALLCONTEXT_MACHINE), | |
| 151 MSIINSTALLCONTEXT_ALLUSERMANAGED = 8 | |
| 152 } MSIINSTALLCONTEXT; | |
| 153 | |
| 154 typedef enum tagMSIPATCHDATATYPE { | |
| 155 MSIPATCH_DATATYPE_PATCHFILE = 0,MSIPATCH_DATATYPE_XMLPATH = 1,MSIPATCH_DATATYPE_XMLBLOB = 2 | |
| 156 } MSIPATCHDATATYPE,*PMSIPATCHDATATYPE; | |
| 157 | |
| 158 typedef struct tagMSIPATCHSEQUENCEINFOA { | |
| 159 LPCSTR szPatchData; | |
| 160 MSIPATCHDATATYPE ePatchDataType; | |
| 161 DWORD dwOrder; | |
| 162 UINT uStatus; | |
| 163 } MSIPATCHSEQUENCEINFOA,*PMSIPATCHSEQUENCEINFOA; | |
| 164 | |
| 165 typedef struct tagMSIPATCHSEQUENCEINFOW { | |
| 166 LPCWSTR szPatchData; | |
| 167 MSIPATCHDATATYPE ePatchDataType; | |
| 168 DWORD dwOrder; | |
| 169 UINT uStatus; | |
| 170 } MSIPATCHSEQUENCEINFOW,*PMSIPATCHSEQUENCEINFOW; | |
| 171 #ifdef UNICODE | |
| 172 typedef MSIPATCHSEQUENCEINFOW MSIPATCHSEQUENCEINFO; | |
| 173 typedef PMSIPATCHSEQUENCEINFOW PMSIPATCHSEQUENCEINFO; | |
| 174 #else | |
| 175 typedef MSIPATCHSEQUENCEINFOA MSIPATCHSEQUENCEINFO; | |
| 176 typedef PMSIPATCHSEQUENCEINFOA PMSIPATCHSEQUENCEINFO; | |
| 177 #endif | |
| 178 #endif | |
| 179 | |
| 180 #define MAX_FEATURE_CHARS 38 | |
| 181 | |
| 182 #define INSTALLPROPERTY_PACKAGENAME __TEXT("PackageName") | |
| 183 #define INSTALLPROPERTY_TRANSFORMS __TEXT("Transforms") | |
| 184 #define INSTALLPROPERTY_LANGUAGE __TEXT("Language") | |
| 185 #define INSTALLPROPERTY_PRODUCTNAME __TEXT("ProductName") | |
| 186 #define INSTALLPROPERTY_ASSIGNMENTTYPE __TEXT("AssignmentType") | |
| 187 #if (_WIN32_MSI >= 150) | |
| 188 #define INSTALLPROPERTY_INSTANCETYPE __TEXT("InstanceType") | |
| 189 #endif | |
| 190 #if (_WIN32_MSI >= 300) | |
| 191 #define INSTALLPROPERTY_AUTHORIZED_LUA_APP __TEXT("AuthorizedLUAApp") | |
| 192 #endif | |
| 193 | |
| 194 #define INSTALLPROPERTY_PACKAGECODE __TEXT("PackageCode") | |
| 195 #define INSTALLPROPERTY_VERSION __TEXT("Version") | |
| 196 #if (_WIN32_MSI >= 110) | |
| 197 #define INSTALLPROPERTY_PRODUCTICON __TEXT("ProductIcon") | |
| 198 #endif | |
| 199 | |
| 200 #define INSTALLPROPERTY_INSTALLEDPRODUCTNAME __TEXT("InstalledProductName") | |
| 201 #define INSTALLPROPERTY_VERSIONSTRING __TEXT("VersionString") | |
| 202 #define INSTALLPROPERTY_HELPLINK __TEXT("HelpLink") | |
| 203 #define INSTALLPROPERTY_HELPTELEPHONE __TEXT("HelpTelephone") | |
| 204 #define INSTALLPROPERTY_INSTALLLOCATION __TEXT("InstallLocation") | |
| 205 #define INSTALLPROPERTY_INSTALLSOURCE __TEXT("InstallSource") | |
| 206 #define INSTALLPROPERTY_INSTALLDATE __TEXT("InstallDate") | |
| 207 #define INSTALLPROPERTY_PUBLISHER __TEXT("Publisher") | |
| 208 #define INSTALLPROPERTY_LOCALPACKAGE __TEXT("LocalPackage") | |
| 209 #define INSTALLPROPERTY_URLINFOABOUT __TEXT("URLInfoAbout") | |
| 210 #define INSTALLPROPERTY_URLUPDATEINFO __TEXT("URLUpdateInfo") | |
| 211 #define INSTALLPROPERTY_VERSIONMINOR __TEXT("VersionMinor") | |
| 212 #define INSTALLPROPERTY_VERSIONMAJOR __TEXT("VersionMajor") | |
| 213 #define INSTALLPROPERTY_PRODUCTID __TEXT("ProductID") | |
| 214 #define INSTALLPROPERTY_REGCOMPANY __TEXT("RegCompany") | |
| 215 #define INSTALLPROPERTY_REGOWNER __TEXT("RegOwner") | |
| 216 | |
| 217 #if (_WIN32_MSI >= 300) | |
| 218 #define INSTALLPROPERTY_UNINSTALLABLE __TEXT("Uninstallable") | |
| 219 #define INSTALLPROPERTY_PRODUCTSTATE __TEXT("State") | |
| 220 #define INSTALLPROPERTY_PATCHSTATE __TEXT("State") | |
| 221 #define INSTALLPROPERTY_PATCHTYPE __TEXT("PatchType") | |
| 222 #define INSTALLPROPERTY_LUAENABLED __TEXT("LUAEnabled") | |
| 223 #define INSTALLPROPERTY_DISPLAYNAME __TEXT("DisplayName") | |
| 224 #define INSTALLPROPERTY_MOREINFOURL __TEXT("MoreInfoURL") | |
| 225 | |
| 226 #define INSTALLPROPERTY_LASTUSEDSOURCE __TEXT("LastUsedSource") | |
| 227 #define INSTALLPROPERTY_LASTUSEDTYPE __TEXT("LastUsedType") | |
| 228 #define INSTALLPROPERTY_MEDIAPACKAGEPATH __TEXT("MediaPackagePath") | |
| 229 #define INSTALLPROPERTY_DISKPROMPT __TEXT("DiskPrompt") | |
| 230 #endif | |
| 231 | |
| 232 typedef enum tagSCRIPTFLAGS { | |
| 233 SCRIPTFLAGS_CACHEINFO = 0x00000001L,SCRIPTFLAGS_SHORTCUTS = 0x00000004L,SCRIPTFLAGS_MACHINEASSIGN = 0x00000008L, | |
| 234 SCRIPTFLAGS_REGDATA_CNFGINFO = 0x00000020L,SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST = 0x00000040L, | |
| 235 #if (_WIN32_MSI >= 110) | |
| 236 SCRIPTFLAGS_REGDATA_CLASSINFO = 0x00000080L,SCRIPTFLAGS_REGDATA_EXTENSIONINFO = 0x00000100L, | |
| 237 SCRIPTFLAGS_REGDATA_APPINFO = SCRIPTFLAGS_REGDATA_CLASSINFO | SCRIPTFLAGS_REGDATA_EXTENSIONINFO, | |
| 238 #else | |
| 239 SCRIPTFLAGS_REGDATA_APPINFO = 0x00000010L, | |
| 240 #endif | |
| 241 SCRIPTFLAGS_REGDATA = SCRIPTFLAGS_REGDATA_APPINFO | SCRIPTFLAGS_REGDATA_CNFGINFO | |
| 242 } SCRIPTFLAGS; | |
| 243 | |
| 244 typedef enum tagADVERTISEFLAGS { | |
| 245 ADVERTISEFLAGS_MACHINEASSIGN = 0,ADVERTISEFLAGS_USERASSIGN = 1 | |
| 246 } ADVERTISEFLAGS; | |
| 247 | |
| 248 typedef enum tagINSTALLTYPE { | |
| 249 INSTALLTYPE_DEFAULT = 0,INSTALLTYPE_NETWORK_IMAGE = 1,INSTALLTYPE_SINGLE_INSTANCE = 2 | |
| 250 } INSTALLTYPE; | |
| 251 | |
| 252 #if (_WIN32_MSI >= 150) | |
| 253 typedef struct _MSIFILEHASHINFO { | |
| 254 ULONG dwFileHashInfoSize; | |
| 255 ULONG dwData [4 ]; | |
| 256 } MSIFILEHASHINFO,*PMSIFILEHASHINFO; | |
| 257 | |
| 258 typedef enum tagMSIARCHITECTUREFLAGS { | |
| 259 MSIARCHITECTUREFLAGS_X86 = 0x00000001L,MSIARCHITECTUREFLAGS_IA64 = 0x00000002L,MSIARCHITECTUREFLAGS_AMD64 = 0x00000004L | |
| 260 } MSIARCHITECTUREFLAGS; | |
| 261 | |
| 262 typedef enum tagMSIOPENPACKAGEFLAGS { | |
| 263 MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE = 0x00000001L | |
| 264 } MSIOPENPACKAGEFLAGS; | |
| 265 | |
| 266 typedef enum tagMSIADVERTISEOPTIONFLAGS { | |
| 267 MSIADVERTISEOPTIONFLAGS_INSTANCE = 0x00000001L | |
| 268 } MSIADVERTISEOPTIONFLAGS; | |
| 269 #endif | |
| 270 | |
| 271 #if (_WIN32_MSI >= 300) | |
| 272 typedef enum tagMSISOURCETYPE { | |
| 273 MSISOURCETYPE_UNKNOWN = 0x00000000L,MSISOURCETYPE_NETWORK = 0x00000001L,MSISOURCETYPE_URL = 0x00000002L,MSISOURCETYPE_MEDIA = 0x00000004L | |
| 274 } MSISOURCETYPE; | |
| 275 | |
| 276 typedef enum tagMSICODE { | |
| 277 MSICODE_PRODUCT = 0x00000000L,MSICODE_PATCH = 0x40000000L | |
| 278 } MSICODE; | |
| 279 #endif | |
| 280 | |
| 281 #ifdef __cplusplus | |
| 282 extern "C" { | |
| 283 #endif | |
| 284 | |
| 285 INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL dwUILevel,HWND *phWnd); | |
| 286 INSTALLUI_HANDLERA WINAPI MsiSetExternalUIA(INSTALLUI_HANDLERA puiHandler,DWORD dwMessageFilter,LPVOID pvContext); | |
| 287 INSTALLUI_HANDLERW WINAPI MsiSetExternalUIW(INSTALLUI_HANDLERW puiHandler,DWORD dwMessageFilter,LPVOID pvContext); | |
| 288 #ifdef UNICODE | |
| 289 #define MsiSetExternalUI MsiSetExternalUIW | |
| 290 #else | |
| 291 #define MsiSetExternalUI MsiSetExternalUIA | |
| 292 #endif | |
| 293 | |
| 294 #if (_WIN32_MSI >= 310) | |
| 295 UINT WINAPI MsiSetExternalUIRecord(INSTALLUI_HANDLER_RECORD puiHandler,DWORD dwMessageFilter,LPVOID pvContext,PINSTALLUI_HANDLER_RECORD ppuiPrevHandler); | |
| 296 #endif | |
| 297 | |
| 298 UINT WINAPI MsiEnableLogA(DWORD dwLogMode,LPCSTR szLogFile,DWORD dwLogAttributes); | |
| 299 UINT WINAPI MsiEnableLogW(DWORD dwLogMode,LPCWSTR szLogFile,DWORD dwLogAttributes); | |
| 300 #ifdef UNICODE | |
| 301 #define MsiEnableLog MsiEnableLogW | |
| 302 #else | |
| 303 #define MsiEnableLog MsiEnableLogA | |
| 304 #endif | |
| 305 | |
| 306 INSTALLSTATE WINAPI MsiQueryProductStateA(LPCSTR szProduct); | |
| 307 INSTALLSTATE WINAPI MsiQueryProductStateW(LPCWSTR szProduct); | |
| 308 #ifdef UNICODE | |
| 309 #define MsiQueryProductState MsiQueryProductStateW | |
| 310 #else | |
| 311 #define MsiQueryProductState MsiQueryProductStateA | |
| 312 #endif | |
| 313 | |
| 314 UINT WINAPI MsiGetProductInfoA(LPCSTR szProduct,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 315 UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 316 #ifdef UNICODE | |
| 317 #define MsiGetProductInfo MsiGetProductInfoW | |
| 318 #else | |
| 319 #define MsiGetProductInfo MsiGetProductInfoA | |
| 320 #endif | |
| 321 | |
| 322 #if (_WIN32_MSI >= 300) | |
| 323 | |
| 324 UINT WINAPI MsiGetProductInfoExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue); | |
| 325 UINT WINAPI MsiGetProductInfoExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue); | |
| 326 #ifdef UNICODE | |
| 327 #define MsiGetProductInfoEx MsiGetProductInfoExW | |
| 328 #else | |
| 329 #define MsiGetProductInfoEx MsiGetProductInfoExA | |
| 330 #endif | |
| 331 #endif | |
| 332 | |
| 333 UINT WINAPI MsiInstallProductA(LPCSTR szPackagePath,LPCSTR szCommandLine); | |
| 334 UINT WINAPI MsiInstallProductW(LPCWSTR szPackagePath,LPCWSTR szCommandLine); | |
| 335 #ifdef UNICODE | |
| 336 #define MsiInstallProduct MsiInstallProductW | |
| 337 #else | |
| 338 #define MsiInstallProduct MsiInstallProductA | |
| 339 #endif | |
| 340 | |
| 341 UINT WINAPI MsiConfigureProductA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState); | |
| 342 UINT WINAPI MsiConfigureProductW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState); | |
| 343 #ifdef UNICODE | |
| 344 #define MsiConfigureProduct MsiConfigureProductW | |
| 345 #else | |
| 346 #define MsiConfigureProduct MsiConfigureProductA | |
| 347 #endif | |
| 348 | |
| 349 UINT WINAPI MsiConfigureProductExA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCSTR szCommandLine); | |
| 350 UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCWSTR szCommandLine); | |
| 351 #ifdef UNICODE | |
| 352 #define MsiConfigureProductEx MsiConfigureProductExW | |
| 353 #else | |
| 354 #define MsiConfigureProductEx MsiConfigureProductExA | |
| 355 #endif | |
| 356 | |
| 357 UINT WINAPI MsiReinstallProductA(LPCSTR szProduct,DWORD szReinstallMode); | |
| 358 UINT WINAPI MsiReinstallProductW(LPCWSTR szProduct,DWORD szReinstallMode); | |
| 359 #ifdef UNICODE | |
| 360 #define MsiReinstallProduct MsiReinstallProductW | |
| 361 #else | |
| 362 #define MsiReinstallProduct MsiReinstallProductA | |
| 363 #endif | |
| 364 | |
| 365 #if (_WIN32_MSI >= 150) | |
| 366 | |
| 367 UINT WINAPI MsiAdvertiseProductExA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions); | |
| 368 UINT WINAPI MsiAdvertiseProductExW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions); | |
| 369 #ifdef UNICODE | |
| 370 #define MsiAdvertiseProductEx MsiAdvertiseProductExW | |
| 371 #else | |
| 372 #define MsiAdvertiseProductEx MsiAdvertiseProductExA | |
| 373 #endif | |
| 374 #endif | |
| 375 | |
| 376 UINT WINAPI MsiAdvertiseProductA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage); | |
| 377 UINT WINAPI MsiAdvertiseProductW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage); | |
| 378 #ifdef UNICODE | |
| 379 #define MsiAdvertiseProduct MsiAdvertiseProductW | |
| 380 #else | |
| 381 #define MsiAdvertiseProduct MsiAdvertiseProductA | |
| 382 #endif | |
| 383 | |
| 384 #if (_WIN32_MSI >= 150) | |
| 385 | |
| 386 UINT WINAPI MsiProcessAdvertiseScriptA(LPCSTR szScriptFile,LPCSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems); | |
| 387 UINT WINAPI MsiProcessAdvertiseScriptW(LPCWSTR szScriptFile,LPCWSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems); | |
| 388 #ifdef UNICODE | |
| 389 #define MsiProcessAdvertiseScript MsiProcessAdvertiseScriptW | |
| 390 #else | |
| 391 #define MsiProcessAdvertiseScript MsiProcessAdvertiseScriptA | |
| 392 #endif | |
| 393 #endif | |
| 394 | |
| 395 UINT WINAPI MsiAdvertiseScriptA(LPCSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems); | |
| 396 UINT WINAPI MsiAdvertiseScriptW(LPCWSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems); | |
| 397 #ifdef UNICODE | |
| 398 #define MsiAdvertiseScript MsiAdvertiseScriptW | |
| 399 #else | |
| 400 #define MsiAdvertiseScript MsiAdvertiseScriptA | |
| 401 #endif | |
| 402 | |
| 403 UINT WINAPI MsiGetProductInfoFromScriptA(LPCSTR szScriptFile,LPSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPSTR lpNameBuf,DWORD *pcchNameBuf,LPSTR lpPackageBuf,DWORD *pcchPackageBuf); | |
| 404 UINT WINAPI MsiGetProductInfoFromScriptW(LPCWSTR szScriptFile,LPWSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPWSTR lpNameBuf,DWORD *pcchNameBuf,LPWSTR lpPackageBuf,DWORD *pcchPackageBuf); | |
| 405 #ifdef UNICODE | |
| 406 #define MsiGetProductInfoFromScript MsiGetProductInfoFromScriptW | |
| 407 #else | |
| 408 #define MsiGetProductInfoFromScript MsiGetProductInfoFromScriptA | |
| 409 #endif | |
| 410 | |
| 411 UINT WINAPI MsiGetProductCodeA(LPCSTR szComponent,LPSTR lpBuf39); | |
| 412 UINT WINAPI MsiGetProductCodeW(LPCWSTR szComponent,LPWSTR lpBuf39); | |
| 413 #ifdef UNICODE | |
| 414 #define MsiGetProductCode MsiGetProductCodeW | |
| 415 #else | |
| 416 #define MsiGetProductCode MsiGetProductCodeA | |
| 417 #endif | |
| 418 | |
| 419 USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR szProduct,LPSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPSTR lpSerialBuf,DWORD *pcchSerialBuf); | |
| 420 USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct,LPWSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPWSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPWSTR lpSerialBuf,DWORD *pcchSerialBuf); | |
| 421 #ifdef UNICODE | |
| 422 #define MsiGetUserInfo MsiGetUserInfoW | |
| 423 #else | |
| 424 #define MsiGetUserInfo MsiGetUserInfoA | |
| 425 #endif | |
| 426 | |
| 427 UINT WINAPI MsiCollectUserInfoA(LPCSTR szProduct); | |
| 428 UINT WINAPI MsiCollectUserInfoW(LPCWSTR szProduct); | |
| 429 #ifdef UNICODE | |
| 430 #define MsiCollectUserInfo MsiCollectUserInfoW | |
| 431 #else | |
| 432 #define MsiCollectUserInfo MsiCollectUserInfoA | |
| 433 #endif | |
| 434 | |
| 435 UINT WINAPI MsiApplyPatchA(LPCSTR szPatchPackage,LPCSTR szInstallPackage,INSTALLTYPE eInstallType,LPCSTR szCommandLine); | |
| 436 UINT WINAPI MsiApplyPatchW(LPCWSTR szPatchPackage,LPCWSTR szInstallPackage,INSTALLTYPE eInstallType,LPCWSTR szCommandLine); | |
| 437 #ifdef UNICODE | |
| 438 #define MsiApplyPatch MsiApplyPatchW | |
| 439 #else | |
| 440 #define MsiApplyPatch MsiApplyPatchA | |
| 441 #endif | |
| 442 | |
| 443 UINT WINAPI MsiGetPatchInfoA(LPCSTR szPatch,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 444 UINT WINAPI MsiGetPatchInfoW(LPCWSTR szPatch,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 445 #ifdef UNICODE | |
| 446 #define MsiGetPatchInfo MsiGetPatchInfoW | |
| 447 #else | |
| 448 #define MsiGetPatchInfo MsiGetPatchInfoA | |
| 449 #endif | |
| 450 | |
| 451 UINT WINAPI MsiEnumPatchesA(LPCSTR szProduct,DWORD iPatchIndex,LPSTR lpPatchBuf,LPSTR lpTransformsBuf,DWORD *pcchTransformsBuf); | |
| 452 UINT WINAPI MsiEnumPatchesW(LPCWSTR szProduct,DWORD iPatchIndex,LPWSTR lpPatchBuf,LPWSTR lpTransformsBuf,DWORD *pcchTransformsBuf); | |
| 453 #ifdef UNICODE | |
| 454 #define MsiEnumPatches MsiEnumPatchesW | |
| 455 #else | |
| 456 #define MsiEnumPatches MsiEnumPatchesA | |
| 457 #endif | |
| 458 | |
| 459 #if (_WIN32_MSI >= 300) | |
| 460 | |
| 461 UINT WINAPI MsiRemovePatchesA(LPCSTR szPatchList,LPCSTR szProductCode,INSTALLTYPE eUninstallType,LPCSTR szPropertyList); | |
| 462 UINT WINAPI MsiRemovePatchesW(LPCWSTR szPatchList,LPCWSTR szProductCode,INSTALLTYPE eUninstallType,LPCWSTR szPropertyList); | |
| 463 #ifdef UNICODE | |
| 464 #define MsiRemovePatches MsiRemovePatchesW | |
| 465 #else | |
| 466 #define MsiRemovePatches MsiRemovePatchesA | |
| 467 #endif | |
| 468 | |
| 469 UINT WINAPI MsiExtractPatchXMLDataA(LPCSTR szPatchPath,DWORD dwReserved,LPSTR szXMLData,DWORD *pcchXMLData); | |
| 470 UINT WINAPI MsiExtractPatchXMLDataW(LPCWSTR szPatchPath,DWORD dwReserved,LPWSTR szXMLData,DWORD *pcchXMLData); | |
| 471 #ifdef UNICODE | |
| 472 #define MsiExtractPatchXMLData MsiExtractPatchXMLDataW | |
| 473 #else | |
| 474 #define MsiExtractPatchXMLData MsiExtractPatchXMLDataA | |
| 475 #endif | |
| 476 | |
| 477 UINT WINAPI MsiGetPatchInfoExA(LPCSTR szPatchCode,LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR lpValue,DWORD *pcchValue); | |
| 478 UINT WINAPI MsiGetPatchInfoExW(LPCWSTR szPatchCode,LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR lpValue,DWORD *pcchValue); | |
| 479 #ifdef UNICODE | |
| 480 #define MsiGetPatchInfoEx MsiGetPatchInfoExW | |
| 481 #else | |
| 482 #define MsiGetPatchInfoEx MsiGetPatchInfoExA | |
| 483 #endif | |
| 484 | |
| 485 UINT WINAPI MsiApplyMultiplePatchesA(LPCSTR szPatchPackages,LPCSTR szProductCode,LPCSTR szPropertiesList); | |
| 486 UINT WINAPI MsiApplyMultiplePatchesW(LPCWSTR szPatchPackages,LPCWSTR szProductCode,LPCWSTR szPropertiesList); | |
| 487 #ifdef UNICODE | |
| 488 #define MsiApplyMultiplePatches MsiApplyMultiplePatchesW | |
| 489 #else | |
| 490 #define MsiApplyMultiplePatches MsiApplyMultiplePatchesA | |
| 491 #endif | |
| 492 | |
| 493 UINT WINAPI MsiDeterminePatchSequenceA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo); | |
| 494 UINT WINAPI MsiDeterminePatchSequenceW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo); | |
| 495 #ifdef UNICODE | |
| 496 #define MsiDeterminePatchSequence MsiDeterminePatchSequenceW | |
| 497 #else | |
| 498 #define MsiDeterminePatchSequence MsiDeterminePatchSequenceA | |
| 499 #endif | |
| 500 | |
| 501 UINT WINAPI MsiDetermineApplicablePatchesA(LPCSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo); | |
| 502 UINT WINAPI MsiDetermineApplicablePatchesW(LPCWSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo); | |
| 503 #ifdef UNICODE | |
| 504 #define MsiDetermineApplicablePatches MsiDetermineApplicablePatchesW | |
| 505 #else | |
| 506 #define MsiDetermineApplicablePatches MsiDetermineApplicablePatchesA | |
| 507 #endif | |
| 508 | |
| 509 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); | |
| 510 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); | |
| 511 #ifdef UNICODE | |
| 512 #define MsiEnumPatchesEx MsiEnumPatchesExW | |
| 513 #else | |
| 514 #define MsiEnumPatchesEx MsiEnumPatchesExA | |
| 515 #endif | |
| 516 #endif | |
| 517 | |
| 518 INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR szProduct,LPCSTR szFeature); | |
| 519 INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR szProduct,LPCWSTR szFeature); | |
| 520 #ifdef UNICODE | |
| 521 #define MsiQueryFeatureState MsiQueryFeatureStateW | |
| 522 #else | |
| 523 #define MsiQueryFeatureState MsiQueryFeatureStateA | |
| 524 #endif | |
| 525 | |
| 526 #if (_WIN32_MSI >= 300) | |
| 527 | |
| 528 UINT WINAPI MsiQueryFeatureStateExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szFeature,INSTALLSTATE *pdwState); | |
| 529 UINT WINAPI MsiQueryFeatureStateExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szFeature,INSTALLSTATE *pdwState); | |
| 530 #ifdef UNICODE | |
| 531 #define MsiQueryFeatureStateEx MsiQueryFeatureStateExW | |
| 532 #else | |
| 533 #define MsiQueryFeatureStateEx MsiQueryFeatureStateExA | |
| 534 #endif | |
| 535 #endif | |
| 536 | |
| 537 INSTALLSTATE WINAPI MsiUseFeatureA(LPCSTR szProduct,LPCSTR szFeature); | |
| 538 INSTALLSTATE WINAPI MsiUseFeatureW(LPCWSTR szProduct,LPCWSTR szFeature); | |
| 539 #ifdef UNICODE | |
| 540 #define MsiUseFeature MsiUseFeatureW | |
| 541 #else | |
| 542 #define MsiUseFeature MsiUseFeatureA | |
| 543 #endif | |
| 544 | |
| 545 INSTALLSTATE WINAPI MsiUseFeatureExA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwInstallMode,DWORD dwReserved); | |
| 546 INSTALLSTATE WINAPI MsiUseFeatureExW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwInstallMode,DWORD dwReserved); | |
| 547 #ifdef UNICODE | |
| 548 #define MsiUseFeatureEx MsiUseFeatureExW | |
| 549 #else | |
| 550 #define MsiUseFeatureEx MsiUseFeatureExA | |
| 551 #endif | |
| 552 | |
| 553 UINT WINAPI MsiGetFeatureUsageA(LPCSTR szProduct,LPCSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed); | |
| 554 UINT WINAPI MsiGetFeatureUsageW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed); | |
| 555 #ifdef UNICODE | |
| 556 #define MsiGetFeatureUsage MsiGetFeatureUsageW | |
| 557 #else | |
| 558 #define MsiGetFeatureUsage MsiGetFeatureUsageA | |
| 559 #endif | |
| 560 | |
| 561 UINT WINAPI MsiConfigureFeatureA(LPCSTR szProduct,LPCSTR szFeature,INSTALLSTATE eInstallState); | |
| 562 UINT WINAPI MsiConfigureFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,INSTALLSTATE eInstallState); | |
| 563 #ifdef UNICODE | |
| 564 #define MsiConfigureFeature MsiConfigureFeatureW | |
| 565 #else | |
| 566 #define MsiConfigureFeature MsiConfigureFeatureA | |
| 567 #endif | |
| 568 | |
| 569 UINT WINAPI MsiReinstallFeatureA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwReinstallMode); | |
| 570 UINT WINAPI MsiReinstallFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwReinstallMode); | |
| 571 #ifdef UNICODE | |
| 572 #define MsiReinstallFeature MsiReinstallFeatureW | |
| 573 #else | |
| 574 #define MsiReinstallFeature MsiReinstallFeatureA | |
| 575 #endif | |
| 576 | |
| 577 UINT WINAPI MsiProvideComponentA(LPCSTR szProduct,LPCSTR szFeature,LPCSTR szComponent,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 578 UINT WINAPI MsiProvideComponentW(LPCWSTR szProduct,LPCWSTR szFeature,LPCWSTR szComponent,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 579 #ifdef UNICODE | |
| 580 #define MsiProvideComponent MsiProvideComponentW | |
| 581 #else | |
| 582 #define MsiProvideComponent MsiProvideComponentA | |
| 583 #endif | |
| 584 | |
| 585 UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 586 UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 587 #ifdef UNICODE | |
| 588 #define MsiProvideQualifiedComponent MsiProvideQualifiedComponentW | |
| 589 #else | |
| 590 #define MsiProvideQualifiedComponent MsiProvideQualifiedComponentA | |
| 591 #endif | |
| 592 | |
| 593 UINT WINAPI MsiProvideQualifiedComponentExA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPCSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 594 UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPCWSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPWSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 595 #ifdef UNICODE | |
| 596 #define MsiProvideQualifiedComponentEx MsiProvideQualifiedComponentExW | |
| 597 #else | |
| 598 #define MsiProvideQualifiedComponentEx MsiProvideQualifiedComponentExA | |
| 599 #endif | |
| 600 | |
| 601 INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR szProduct,LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf); | |
| 602 INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR szProduct,LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf); | |
| 603 #ifdef UNICODE | |
| 604 #define MsiGetComponentPath MsiGetComponentPathW | |
| 605 #else | |
| 606 #define MsiGetComponentPath MsiGetComponentPathA | |
| 607 #endif | |
| 608 | |
| 609 #if (_WIN32_MSI >= 150) | |
| 610 | |
| 611 #define MSIASSEMBLYINFO_NETASSEMBLY 0 | |
| 612 #define MSIASSEMBLYINFO_WIN32ASSEMBLY 1 | |
| 613 | |
| 614 UINT WINAPI MsiProvideAssemblyA(LPCSTR szAssemblyName,LPCSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 615 UINT WINAPI MsiProvideAssemblyW(LPCWSTR szAssemblyName,LPCWSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPWSTR lpPathBuf,DWORD *pcchPathBuf); | |
| 616 #ifdef UNICODE | |
| 617 #define MsiProvideAssembly MsiProvideAssemblyW | |
| 618 #else | |
| 619 #define MsiProvideAssembly MsiProvideAssemblyA | |
| 620 #endif | |
| 621 #endif | |
| 622 | |
| 623 #if (_WIN32_MSI >= 300) | |
| 624 | |
| 625 UINT WINAPI MsiQueryComponentStateA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szComponentCode,INSTALLSTATE *pdwState); | |
| 626 UINT WINAPI MsiQueryComponentStateW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szComponentCode,INSTALLSTATE *pdwState); | |
| 627 #ifdef UNICODE | |
| 628 #define MsiQueryComponentState MsiQueryComponentStateW | |
| 629 #else | |
| 630 #define MsiQueryComponentState MsiQueryComponentStateA | |
| 631 #endif | |
| 632 #endif | |
| 633 | |
| 634 UINT WINAPI MsiEnumProductsA(DWORD iProductIndex,LPSTR lpProductBuf); | |
| 635 UINT WINAPI MsiEnumProductsW(DWORD iProductIndex,LPWSTR lpProductBuf); | |
| 636 #ifdef UNICODE | |
| 637 #define MsiEnumProducts MsiEnumProductsW | |
| 638 #else | |
| 639 #define MsiEnumProducts MsiEnumProductsA | |
| 640 #endif | |
| 641 | |
| 642 #if (_WIN32_MSI >= 300) | |
| 643 UINT WINAPI MsiEnumProductsExA(LPCSTR szProductCode,LPCSTR szUserSid,DWORD dwContext,DWORD dwIndex,CHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPSTR szSid,LPDWORD pcchSid); | |
| 644 UINT WINAPI MsiEnumProductsExW(LPCWSTR szProductCode,LPCWSTR szUserSid,DWORD dwContext,DWORD dwIndex,WCHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPWSTR szSid,LPDWORD pcchSid); | |
| 645 #ifdef UNICODE | |
| 646 #define MsiEnumProductsEx MsiEnumProductsExW | |
| 647 #else | |
| 648 #define MsiEnumProductsEx MsiEnumProductsExA | |
| 649 #endif | |
| 650 #endif | |
| 651 | |
| 652 #if (_WIN32_MSI >= 110) | |
| 653 UINT WINAPI MsiEnumRelatedProductsA(LPCSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPSTR lpProductBuf); | |
| 654 UINT WINAPI MsiEnumRelatedProductsW(LPCWSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPWSTR lpProductBuf); | |
| 655 #ifdef UNICODE | |
| 656 #define MsiEnumRelatedProducts MsiEnumRelatedProductsW | |
| 657 #else | |
| 658 #define MsiEnumRelatedProducts MsiEnumRelatedProductsA | |
| 659 #endif | |
| 660 #endif | |
| 661 | |
| 662 UINT WINAPI MsiEnumFeaturesA(LPCSTR szProduct,DWORD iFeatureIndex,LPSTR lpFeatureBuf,LPSTR lpParentBuf); | |
| 663 UINT WINAPI MsiEnumFeaturesW(LPCWSTR szProduct,DWORD iFeatureIndex,LPWSTR lpFeatureBuf,LPWSTR lpParentBuf); | |
| 664 #ifdef UNICODE | |
| 665 #define MsiEnumFeatures MsiEnumFeaturesW | |
| 666 #else | |
| 667 #define MsiEnumFeatures MsiEnumFeaturesA | |
| 668 #endif | |
| 669 | |
| 670 UINT WINAPI MsiEnumComponentsA(DWORD iComponentIndex,LPSTR lpComponentBuf); | |
| 671 UINT WINAPI MsiEnumComponentsW(DWORD iComponentIndex,LPWSTR lpComponentBuf); | |
| 672 #ifdef UNICODE | |
| 673 #define MsiEnumComponents MsiEnumComponentsW | |
| 674 #else | |
| 675 #define MsiEnumComponents MsiEnumComponentsA | |
| 676 #endif | |
| 677 | |
| 678 UINT WINAPI MsiEnumClientsA(LPCSTR szComponent,DWORD iProductIndex,LPSTR lpProductBuf); | |
| 679 UINT WINAPI MsiEnumClientsW(LPCWSTR szComponent,DWORD iProductIndex,LPWSTR lpProductBuf); | |
| 680 #ifdef UNICODE | |
| 681 #define MsiEnumClients MsiEnumClientsW | |
| 682 #else | |
| 683 #define MsiEnumClients MsiEnumClientsA | |
| 684 #endif | |
| 685 | |
| 686 UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR szComponent,DWORD iIndex,LPSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf); | |
| 687 UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR szComponent,DWORD iIndex,LPWSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPWSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf); | |
| 688 #ifdef UNICODE | |
| 689 #define MsiEnumComponentQualifiers MsiEnumComponentQualifiersW | |
| 690 #else | |
| 691 #define MsiEnumComponentQualifiers MsiEnumComponentQualifiersA | |
| 692 #endif | |
| 693 | |
| 694 UINT WINAPI MsiOpenProductA(LPCSTR szProduct,MSIHANDLE *hProduct); | |
| 695 UINT WINAPI MsiOpenProductW(LPCWSTR szProduct,MSIHANDLE *hProduct); | |
| 696 #ifdef UNICODE | |
| 697 #define MsiOpenProduct MsiOpenProductW | |
| 698 #else | |
| 699 #define MsiOpenProduct MsiOpenProductA | |
| 700 #endif | |
| 701 | |
| 702 UINT WINAPI MsiOpenPackageA(LPCSTR szPackagePath,MSIHANDLE *hProduct); | |
| 703 UINT WINAPI MsiOpenPackageW(LPCWSTR szPackagePath,MSIHANDLE *hProduct); | |
| 704 #ifdef UNICODE | |
| 705 #define MsiOpenPackage MsiOpenPackageW | |
| 706 #else | |
| 707 #define MsiOpenPackage MsiOpenPackageA | |
| 708 #endif | |
| 709 | |
| 710 #if (_WIN32_MSI >= 150) | |
| 711 | |
| 712 UINT WINAPI MsiOpenPackageExA(LPCSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct); | |
| 713 UINT WINAPI MsiOpenPackageExW(LPCWSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct); | |
| 714 #ifdef UNICODE | |
| 715 #define MsiOpenPackageEx MsiOpenPackageExW | |
| 716 #else | |
| 717 #define MsiOpenPackageEx MsiOpenPackageExA | |
| 718 #endif | |
| 719 #endif | |
| 720 | |
| 721 UINT WINAPI MsiGetProductPropertyA(MSIHANDLE hProduct,LPCSTR szProperty,LPSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 722 UINT WINAPI MsiGetProductPropertyW(MSIHANDLE hProduct,LPCWSTR szProperty,LPWSTR lpValueBuf,DWORD *pcchValueBuf); | |
| 723 #ifdef UNICODE | |
| 724 #define MsiGetProductProperty MsiGetProductPropertyW | |
| 725 #else | |
| 726 #define MsiGetProductProperty MsiGetProductPropertyA | |
| 727 #endif | |
| 728 | |
| 729 UINT WINAPI MsiVerifyPackageA(LPCSTR szPackagePath); | |
| 730 UINT WINAPI MsiVerifyPackageW(LPCWSTR szPackagePath); | |
| 731 #ifdef UNICODE | |
| 732 #define MsiVerifyPackage MsiVerifyPackageW | |
| 733 #else | |
| 734 #define MsiVerifyPackage MsiVerifyPackageA | |
| 735 #endif | |
| 736 | |
| 737 UINT WINAPI MsiGetFeatureInfoA(MSIHANDLE hProduct,LPCSTR szFeature,DWORD *lpAttributes,LPSTR lpTitleBuf,DWORD *pcchTitleBuf,LPSTR lpHelpBuf,DWORD *pcchHelpBuf); | |
| 738 UINT WINAPI MsiGetFeatureInfoW(MSIHANDLE hProduct,LPCWSTR szFeature,DWORD *lpAttributes,LPWSTR lpTitleBuf,DWORD *pcchTitleBuf,LPWSTR lpHelpBuf,DWORD *pcchHelpBuf); | |
| 739 #ifdef UNICODE | |
| 740 #define MsiGetFeatureInfo MsiGetFeatureInfoW | |
| 741 #else | |
| 742 #define MsiGetFeatureInfo MsiGetFeatureInfoA | |
| 743 #endif | |
| 744 | |
| 745 UINT WINAPI MsiInstallMissingComponentA(LPCSTR szProduct,LPCSTR szComponent,INSTALLSTATE eInstallState); | |
| 746 UINT WINAPI MsiInstallMissingComponentW(LPCWSTR szProduct,LPCWSTR szComponent,INSTALLSTATE eInstallState); | |
| 747 #ifdef UNICODE | |
| 748 #define MsiInstallMissingComponent MsiInstallMissingComponentW | |
| 749 #else | |
| 750 #define MsiInstallMissingComponent MsiInstallMissingComponentA | |
| 751 #endif | |
| 752 | |
| 753 UINT WINAPI MsiInstallMissingFileA(LPCSTR szProduct,LPCSTR szFile); | |
| 754 UINT WINAPI MsiInstallMissingFileW(LPCWSTR szProduct,LPCWSTR szFile); | |
| 755 #ifdef UNICODE | |
| 756 #define MsiInstallMissingFile MsiInstallMissingFileW | |
| 757 #else | |
| 758 #define MsiInstallMissingFile MsiInstallMissingFileA | |
| 759 #endif | |
| 760 | |
| 761 INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf); | |
| 762 INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf); | |
| 763 #ifdef UNICODE | |
| 764 #define MsiLocateComponent MsiLocateComponentW | |
| 765 #else | |
| 766 #define MsiLocateComponent MsiLocateComponentA | |
| 767 #endif | |
| 768 | |
| 769 #if (_WIN32_MSI >= 110) | |
| 770 | |
| 771 UINT WINAPI MsiSourceListClearAllA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved); | |
| 772 UINT WINAPI MsiSourceListClearAllW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved); | |
| 773 #ifdef UNICODE | |
| 774 #define MsiSourceListClearAll MsiSourceListClearAllW | |
| 775 #else | |
| 776 #define MsiSourceListClearAll MsiSourceListClearAllA | |
| 777 #endif | |
| 778 | |
| 779 UINT WINAPI MsiSourceListAddSourceA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved,LPCSTR szSource); | |
| 780 UINT WINAPI MsiSourceListAddSourceW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved,LPCWSTR szSource); | |
| 781 #ifdef UNICODE | |
| 782 #define MsiSourceListAddSource MsiSourceListAddSourceW | |
| 783 #else | |
| 784 #define MsiSourceListAddSource MsiSourceListAddSourceA | |
| 785 #endif | |
| 786 | |
| 787 UINT WINAPI MsiSourceListForceResolutionA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved); | |
| 788 UINT WINAPI MsiSourceListForceResolutionW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved); | |
| 789 #ifdef UNICODE | |
| 790 #define MsiSourceListForceResolution MsiSourceListForceResolutionW | |
| 791 #else | |
| 792 #define MsiSourceListForceResolution MsiSourceListForceResolutionA | |
| 793 #endif | |
| 794 #endif | |
| 795 | |
| 796 #if (_WIN32_MSI >= 300) | |
| 797 | |
| 798 UINT WINAPI MsiSourceListAddSourceExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource,DWORD dwIndex); | |
| 799 UINT WINAPI MsiSourceListAddSourceExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource,DWORD dwIndex); | |
| 800 #ifdef UNICODE | |
| 801 #define MsiSourceListAddSourceEx MsiSourceListAddSourceExW | |
| 802 #else | |
| 803 #define MsiSourceListAddSourceEx MsiSourceListAddSourceExA | |
| 804 #endif | |
| 805 | |
| 806 UINT WINAPI MsiSourceListAddMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCSTR szVolumeLabel,LPCSTR szDiskPrompt); | |
| 807 UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCWSTR szVolumeLabel,LPCWSTR szDiskPrompt); | |
| 808 #ifdef UNICODE | |
| 809 #define MsiSourceListAddMediaDisk MsiSourceListAddMediaDiskW | |
| 810 #else | |
| 811 #define MsiSourceListAddMediaDisk MsiSourceListAddMediaDiskA | |
| 812 #endif | |
| 813 | |
| 814 UINT WINAPI MsiSourceListClearSourceA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource); | |
| 815 UINT WINAPI MsiSourceListClearSourceW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource); | |
| 816 #ifdef UNICODE | |
| 817 #define MsiSourceListClearSource MsiSourceListClearSourceW | |
| 818 #else | |
| 819 #define MsiSourceListClearSource MsiSourceListClearSourceA | |
| 820 #endif | |
| 821 | |
| 822 UINT WINAPI MsiSourceListClearMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId); | |
| 823 UINT WINAPI MsiSourceListClearMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId); | |
| 824 #ifdef UNICODE | |
| 825 #define MsiSourceListClearMediaDisk MsiSourceListClearMediaDiskW | |
| 826 #else | |
| 827 #define MsiSourceListClearMediaDisk MsiSourceListClearMediaDiskA | |
| 828 #endif | |
| 829 | |
| 830 UINT WINAPI MsiSourceListClearAllExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions); | |
| 831 UINT WINAPI MsiSourceListClearAllExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions); | |
| 832 #ifdef UNICODE | |
| 833 #define MsiSourceListClearAllEx MsiSourceListClearAllExW | |
| 834 #else | |
| 835 #define MsiSourceListClearAllEx MsiSourceListClearAllExA | |
| 836 #endif | |
| 837 | |
| 838 UINT WINAPI MsiSourceListForceResolutionExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions); | |
| 839 UINT WINAPI MsiSourceListForceResolutionExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions); | |
| 840 #ifdef UNICODE | |
| 841 #define MsiSourceListForceResolutionEx MsiSourceListForceResolutionExW | |
| 842 #else | |
| 843 #define MsiSourceListForceResolutionEx MsiSourceListForceResolutionExA | |
| 844 #endif | |
| 845 | |
| 846 UINT WINAPI MsiSourceListSetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPCSTR szValue); | |
| 847 UINT WINAPI MsiSourceListSetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPCWSTR szValue); | |
| 848 #ifdef UNICODE | |
| 849 #define MsiSourceListSetInfo MsiSourceListSetInfoW | |
| 850 #else | |
| 851 #define MsiSourceListSetInfo MsiSourceListSetInfoA | |
| 852 #endif | |
| 853 | |
| 854 UINT WINAPI MsiSourceListGetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue); | |
| 855 UINT WINAPI MsiSourceListGetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue); | |
| 856 #ifdef UNICODE | |
| 857 #define MsiSourceListGetInfo MsiSourceListGetInfoW | |
| 858 #else | |
| 859 #define MsiSourceListGetInfo MsiSourceListGetInfoA | |
| 860 #endif | |
| 861 | |
| 862 UINT WINAPI MsiSourceListEnumSourcesA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPSTR szSource,LPDWORD pcchSource); | |
| 863 UINT WINAPI MsiSourceListEnumSourcesW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPWSTR szSource,LPDWORD pcchSource); | |
| 864 #ifdef UNICODE | |
| 865 #define MsiSourceListEnumSources MsiSourceListEnumSourcesW | |
| 866 #else | |
| 867 #define MsiSourceListEnumSources MsiSourceListEnumSourcesA | |
| 868 #endif | |
| 869 | |
| 870 UINT WINAPI MsiSourceListEnumMediaDisksA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPSTR szDiskPrompt,LPDWORD pcchDiskPrompt); | |
| 871 UINT WINAPI MsiSourceListEnumMediaDisksW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPWSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPWSTR szDiskPrompt,LPDWORD pcchDiskPrompt); | |
| 872 #ifdef UNICODE | |
| 873 #define MsiSourceListEnumMediaDisks MsiSourceListEnumMediaDisksW | |
| 874 #else | |
| 875 #define MsiSourceListEnumMediaDisks MsiSourceListEnumMediaDisksA | |
| 876 #endif | |
| 877 #endif | |
| 878 | |
| 879 UINT WINAPI MsiGetFileVersionA(LPCSTR szFilePath,LPSTR lpVersionBuf,DWORD *pcchVersionBuf,LPSTR lpLangBuf,DWORD *pcchLangBuf); | |
| 880 UINT WINAPI MsiGetFileVersionW(LPCWSTR szFilePath,LPWSTR lpVersionBuf,DWORD *pcchVersionBuf,LPWSTR lpLangBuf,DWORD *pcchLangBuf); | |
| 881 #ifdef UNICODE | |
| 882 #define MsiGetFileVersion MsiGetFileVersionW | |
| 883 #else | |
| 884 #define MsiGetFileVersion MsiGetFileVersionA | |
| 885 #endif | |
| 886 | |
| 887 #if (_WIN32_MSI >= 150) | |
| 888 | |
| 889 UINT WINAPI MsiGetFileHashA(LPCSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash); | |
| 890 UINT WINAPI MsiGetFileHashW(LPCWSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash); | |
| 891 #ifdef UNICODE | |
| 892 #define MsiGetFileHash MsiGetFileHashW | |
| 893 #else | |
| 894 #define MsiGetFileHash MsiGetFileHashA | |
| 895 #endif | |
| 896 #endif | |
| 897 | |
| 898 #if (_WIN32_MSI >= 150) | |
| 899 #ifndef _MSI_NO_CRYPTO | |
| 900 | |
| 901 HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData); | |
| 902 HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData); | |
| 903 #ifdef UNICODE | |
| 904 #define MsiGetFileSignatureInformation MsiGetFileSignatureInformationW | |
| 905 #else | |
| 906 #define MsiGetFileSignatureInformation MsiGetFileSignatureInformationA | |
| 907 #endif | |
| 908 | |
| 909 #define MSI_INVALID_HASH_IS_FATAL 0x1 | |
| 910 #endif | |
| 911 #endif | |
| 912 | |
| 913 #if (_WIN32_MSI >= 110) | |
| 914 | |
| 915 UINT WINAPI MsiGetShortcutTargetA(LPCSTR szShortcutPath,LPSTR szProductCode,LPSTR szFeatureId,LPSTR szComponentCode); | |
| 916 UINT WINAPI MsiGetShortcutTargetW(LPCWSTR szShortcutPath,LPWSTR szProductCode,LPWSTR szFeatureId,LPWSTR szComponentCode); | |
| 917 #ifdef UNICODE | |
| 918 #define MsiGetShortcutTarget MsiGetShortcutTargetW | |
| 919 #else | |
| 920 #define MsiGetShortcutTarget MsiGetShortcutTargetA | |
| 921 #endif | |
| 922 #endif | |
| 923 | |
| 924 #if (_WIN32_MSI >= 110) | |
| 925 UINT WINAPI MsiIsProductElevatedA(LPCSTR szProduct,WINBOOL *pfElevated); | |
| 926 UINT WINAPI MsiIsProductElevatedW(LPCWSTR szProduct,WINBOOL *pfElevated); | |
| 927 #ifdef UNICODE | |
| 928 #define MsiIsProductElevated MsiIsProductElevatedW | |
| 929 #else | |
| 930 #define MsiIsProductElevated MsiIsProductElevatedA | |
| 931 #endif | |
| 932 #endif | |
| 933 | |
| 934 #if (_WIN32_MSI >= 310) | |
| 935 | |
| 936 UINT WINAPI MsiNotifySidChangeA(LPCSTR pOldSid,LPCSTR pNewSid); | |
| 937 UINT WINAPI MsiNotifySidChangeW(LPCWSTR pOldSid,LPCWSTR pNewSid); | |
| 938 #ifdef UNICODE | |
| 939 #define MsiNotifySidChange MsiNotifySidChangeW | |
| 940 #else | |
| 941 #define MsiNotifySidChange MsiNotifySidChangeA | |
| 942 #endif | |
| 943 #endif | |
| 944 | |
| 945 #ifdef __cplusplus | |
| 946 } | |
| 947 #endif | |
| 948 | |
| 949 #ifndef ERROR_INSTALL_FAILURE | |
| 950 #define ERROR_INSTALL_USEREXIT 1602L | |
| 951 #define ERROR_INSTALL_FAILURE 1603L | |
| 952 #define ERROR_INSTALL_SUSPEND 1604L | |
| 953 | |
| 954 #define ERROR_UNKNOWN_PRODUCT 1605L | |
| 955 | |
| 956 #define ERROR_UNKNOWN_FEATURE 1606L | |
| 957 #define ERROR_UNKNOWN_COMPONENT 1607L | |
| 958 #define ERROR_UNKNOWN_PROPERTY 1608L | |
| 959 #define ERROR_INVALID_HANDLE_STATE 1609L | |
| 960 | |
| 961 #define ERROR_BAD_CONFIGURATION 1610L | |
| 962 | |
| 963 #define ERROR_INDEX_ABSENT 1611L | |
| 964 | |
| 965 #define ERROR_INSTALL_SOURCE_ABSENT 1612L | |
| 966 | |
| 967 #define ERROR_PRODUCT_UNINSTALLED 1614L | |
| 968 #define ERROR_BAD_QUERY_SYNTAX 1615L | |
| 969 #define ERROR_INVALID_FIELD 1616L | |
| 970 #endif | |
| 971 | |
| 972 #ifndef ERROR_INSTALL_SERVICE_FAILURE | |
| 973 #define ERROR_INSTALL_SERVICE_FAILURE 1601L | |
| 974 #define ERROR_INSTALL_PACKAGE_VERSION 1613L | |
| 975 #define ERROR_INSTALL_ALREADY_RUNNING 1618L | |
| 976 #define ERROR_INSTALL_PACKAGE_OPEN_FAILED 1619L | |
| 977 #define ERROR_INSTALL_PACKAGE_INVALID 1620L | |
| 978 #define ERROR_INSTALL_UI_FAILURE 1621L | |
| 979 #define ERROR_INSTALL_LOG_FAILURE 1622L | |
| 980 #define ERROR_INSTALL_LANGUAGE_UNSUPPORTED 1623L | |
| 981 #define ERROR_INSTALL_PACKAGE_REJECTED 1625L | |
| 982 | |
| 983 #define ERROR_FUNCTION_NOT_CALLED 1626L | |
| 984 #define ERROR_FUNCTION_FAILED 1627L | |
| 985 #define ERROR_INVALID_TABLE 1628L | |
| 986 #define ERROR_DATATYPE_MISMATCH 1629L | |
| 987 #define ERROR_UNSUPPORTED_TYPE 1630L | |
| 988 | |
| 989 #define ERROR_CREATE_FAILED 1631L | |
| 990 #endif | |
| 991 | |
| 992 #ifndef ERROR_INSTALL_TEMP_UNWRITABLE | |
| 993 #define ERROR_INSTALL_TEMP_UNWRITABLE 1632L | |
| 994 #endif | |
| 995 | |
| 996 #ifndef ERROR_INSTALL_PLATFORM_UNSUPPORTED | |
| 997 #define ERROR_INSTALL_PLATFORM_UNSUPPORTED 1633L | |
| 998 #endif | |
| 999 | |
| 1000 #ifndef ERROR_INSTALL_NOTUSED | |
| 1001 #define ERROR_INSTALL_NOTUSED 1634L | |
| 1002 #endif | |
| 1003 | |
| 1004 #ifndef ERROR_INSTALL_TRANSFORM_FAILURE | |
| 1005 #define ERROR_INSTALL_TRANSFORM_FAILURE 1624L | |
| 1006 #endif | |
| 1007 | |
| 1008 #ifndef ERROR_PATCH_PACKAGE_OPEN_FAILED | |
| 1009 #define ERROR_PATCH_PACKAGE_OPEN_FAILED 1635L | |
| 1010 #define ERROR_PATCH_PACKAGE_INVALID 1636L | |
| 1011 #define ERROR_PATCH_PACKAGE_UNSUPPORTED 1637L | |
| 1012 #endif | |
| 1013 | |
| 1014 #ifndef ERROR_PRODUCT_VERSION | |
| 1015 #define ERROR_PRODUCT_VERSION 1638L | |
| 1016 #endif | |
| 1017 | |
| 1018 #ifndef ERROR_INVALID_COMMAND_LINE | |
| 1019 #define ERROR_INVALID_COMMAND_LINE 1639L | |
| 1020 #endif | |
| 1021 | |
| 1022 #ifndef ERROR_INSTALL_REMOTE_DISALLOWED | |
| 1023 #define ERROR_INSTALL_REMOTE_DISALLOWED 1640L | |
| 1024 #endif | |
| 1025 | |
| 1026 #ifndef ERROR_SUCCESS_REBOOT_INITIATED | |
| 1027 #define ERROR_SUCCESS_REBOOT_INITIATED 1641L | |
| 1028 #endif | |
| 1029 | |
| 1030 #ifndef ERROR_PATCH_TARGET_NOT_FOUND | |
| 1031 #define ERROR_PATCH_TARGET_NOT_FOUND 1642L | |
| 1032 #endif | |
| 1033 | |
| 1034 #ifndef ERROR_PATCH_PACKAGE_REJECTED | |
| 1035 #define ERROR_PATCH_PACKAGE_REJECTED 1643L | |
| 1036 #endif | |
| 1037 | |
| 1038 #ifndef ERROR_INSTALL_TRANSFORM_REJECTED | |
| 1039 #define ERROR_INSTALL_TRANSFORM_REJECTED 1644L | |
| 1040 #endif | |
| 1041 | |
| 1042 #ifndef ERROR_INSTALL_REMOTE_PROHIBITED | |
| 1043 #define ERROR_INSTALL_REMOTE_PROHIBITED 1645L | |
| 1044 #endif | |
| 1045 | |
| 1046 #ifndef ERROR_PATCH_REMOVAL_UNSUPPORTED | |
| 1047 #define ERROR_PATCH_REMOVAL_UNSUPPORTED 1646L | |
| 1048 #endif | |
| 1049 | |
| 1050 #ifndef ERROR_UNKNOWN_PATCH | |
| 1051 #define ERROR_UNKNOWN_PATCH 1647L | |
| 1052 #endif | |
| 1053 | |
| 1054 #ifndef ERROR_PATCH_NO_SEQUENCE | |
| 1055 #define ERROR_PATCH_NO_SEQUENCE 1648L | |
| 1056 #endif | |
| 1057 | |
| 1058 #ifndef ERROR_PATCH_REMOVAL_DISALLOWED | |
| 1059 #define ERROR_PATCH_REMOVAL_DISALLOWED 1649L | |
| 1060 #endif | |
| 1061 | |
| 1062 #ifndef ERROR_INVALID_PATCH_XML | |
| 1063 #define ERROR_INVALID_PATCH_XML 1650L | |
| 1064 #endif | |
| 1065 | |
| 1066 #ifndef ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT | |
| 1067 #define ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT 1651L | |
| 1068 #endif | |
| 1069 #endif |
