mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-20 03:14:46 +00:00
810 lines
41 KiB
C++
810 lines
41 KiB
C++
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the mingw-w64 runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
|
*/
|
|
#ifndef _MSI_H_
|
|
#define _MSI_H_
|
|
|
|
#include <_mingw_unicode.h>
|
|
|
|
#ifndef NTDDI_WIN2K
|
|
#define NTDDI_WIN2K 0x05000000
|
|
#endif
|
|
#ifndef NTDDI_WINXP
|
|
#define NTDDI_WINXP 0x05010000
|
|
#endif
|
|
#ifndef NTDDI_WINXPSP2
|
|
#define NTDDI_WINXPSP2 0x05010200
|
|
#endif
|
|
#ifndef NTDDI_WS03SP1
|
|
#define NTDDI_WS03SP1 0x05020100
|
|
#endif
|
|
#ifndef NTDDI_VISTA
|
|
#define NTDDI_VISTA 0x06000000
|
|
#endif
|
|
#ifndef NTDDI_VISTASP1
|
|
#define NTDDI_VISTASP1 0x06000100
|
|
#endif
|
|
|
|
#ifndef _WIN32_MSI
|
|
#if defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTASP1
|
|
#define _WIN32_MSI 450
|
|
#elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_VISTA
|
|
#define _WIN32_MSI 400
|
|
#elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WS03SP1
|
|
#define _WIN32_MSI 310
|
|
#elif defined(NTDDI_VERSION) && NTDDI_VERSION >= NTDDI_WINXPSP2
|
|
#define _WIN32_MSI 300
|
|
#else
|
|
#define _WIN32_MSI 200
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef MAX_GUID_CHARS
|
|
#define MAX_GUID_CHARS 38
|
|
#endif
|
|
|
|
#if _WIN32_MSI >= 150 && !defined (_MSI_NO_CRYPTO)
|
|
#include "wincrypt.h"
|
|
#endif
|
|
|
|
typedef unsigned __LONG32 MSIHANDLE;
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
UINT WINAPI MsiCloseHandle(MSIHANDLE hAny);
|
|
UINT WINAPI MsiCloseAllHandles();
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
class PMSIHANDLE {
|
|
MSIHANDLE m_h;
|
|
public:
|
|
PMSIHANDLE():m_h(0){}
|
|
PMSIHANDLE(MSIHANDLE h):m_h(h) { }
|
|
~PMSIHANDLE() { if (m_h!=0) MsiCloseHandle (m_h); }
|
|
void operator =(MSIHANDLE h) { if (m_h) MsiCloseHandle (m_h); m_h=h; }
|
|
operator MSIHANDLE() { return m_h; }
|
|
MSIHANDLE *operator &() { if (m_h) MsiCloseHandle (m_h); m_h = 0; return &m_h; }
|
|
};
|
|
#endif
|
|
|
|
typedef enum tagINSTALLMESSAGE {
|
|
INSTALLMESSAGE_FATALEXIT = 0x00000000,INSTALLMESSAGE_ERROR = 0x01000000,INSTALLMESSAGE_WARNING = 0x02000000,INSTALLMESSAGE_USER = 0x03000000,
|
|
INSTALLMESSAGE_INFO = 0x04000000,INSTALLMESSAGE_FILESINUSE = 0x05000000,INSTALLMESSAGE_RESOLVESOURCE = 0x06000000,
|
|
INSTALLMESSAGE_OUTOFDISKSPACE = 0x07000000,INSTALLMESSAGE_ACTIONSTART = 0x08000000,INSTALLMESSAGE_ACTIONDATA = 0x09000000,
|
|
INSTALLMESSAGE_PROGRESS = 0x0A000000,INSTALLMESSAGE_COMMONDATA = 0x0B000000,INSTALLMESSAGE_INITIALIZE = 0x0C000000,
|
|
INSTALLMESSAGE_TERMINATE = 0x0D000000,INSTALLMESSAGE_SHOWDIALOG = 0x0E000000
|
|
#if _WIN32_MSI >= 400
|
|
,INSTALLMESSAGE_RMFILESINUSE = 0x19000000
|
|
#endif
|
|
#if _WIN32_MSI >= 450
|
|
,INSTALLMESSAGE_INSTALLSTART = 0x1A000000
|
|
,INSTALLMESSAGE_INSTALLEND = 0x1B000000
|
|
#endif
|
|
} INSTALLMESSAGE;
|
|
|
|
typedef int (WINAPI *INSTALLUI_HANDLERA)(LPVOID pvContext,UINT iMessageType,LPCSTR szMessage);
|
|
typedef int (WINAPI *INSTALLUI_HANDLERW)(LPVOID pvContext,UINT iMessageType,LPCWSTR szMessage);
|
|
#define INSTALLUI_HANDLER __MINGW_NAME_AW(INSTALLUI_HANDLER)
|
|
|
|
#if (_WIN32_MSI >= 310)
|
|
typedef int (WINAPI *INSTALLUI_HANDLER_RECORD)(LPVOID pvContext,UINT iMessageType,MSIHANDLE hRecord);
|
|
typedef INSTALLUI_HANDLER_RECORD *PINSTALLUI_HANDLER_RECORD;
|
|
#endif
|
|
|
|
typedef enum tagINSTALLUILEVEL {
|
|
INSTALLUILEVEL_NOCHANGE = 0,INSTALLUILEVEL_DEFAULT = 1,INSTALLUILEVEL_NONE = 2,INSTALLUILEVEL_BASIC = 3,INSTALLUILEVEL_REDUCED = 4,
|
|
INSTALLUILEVEL_FULL = 5,INSTALLUILEVEL_ENDDIALOG = 0x80,INSTALLUILEVEL_PROGRESSONLY = 0x40,INSTALLUILEVEL_HIDECANCEL = 0x20,
|
|
INSTALLUILEVEL_SOURCERESONLY = 0x100
|
|
} INSTALLUILEVEL;
|
|
|
|
typedef enum tagINSTALLSTATE {
|
|
INSTALLSTATE_NOTUSED = -7,INSTALLSTATE_BADCONFIG = -6,INSTALLSTATE_INCOMPLETE = -5,INSTALLSTATE_SOURCEABSENT = -4,INSTALLSTATE_MOREDATA = -3,
|
|
INSTALLSTATE_INVALIDARG = -2,INSTALLSTATE_UNKNOWN = -1,INSTALLSTATE_BROKEN = 0,INSTALLSTATE_ADVERTISED = 1,INSTALLSTATE_REMOVED = 1,
|
|
INSTALLSTATE_ABSENT = 2,INSTALLSTATE_LOCAL = 3,INSTALLSTATE_SOURCE = 4,INSTALLSTATE_DEFAULT = 5
|
|
} INSTALLSTATE;
|
|
|
|
typedef enum tagUSERINFOSTATE {
|
|
USERINFOSTATE_MOREDATA = -3,USERINFOSTATE_INVALIDARG = -2,USERINFOSTATE_UNKNOWN = -1,USERINFOSTATE_ABSENT = 0,
|
|
USERINFOSTATE_PRESENT = 1
|
|
} USERINFOSTATE;
|
|
|
|
typedef enum tagINSTALLLEVEL {
|
|
INSTALLLEVEL_DEFAULT = 0,INSTALLLEVEL_MINIMUM = 1,INSTALLLEVEL_MAXIMUM = 0xffff
|
|
} INSTALLLEVEL;
|
|
|
|
typedef enum tagREINSTALLMODE {
|
|
REINSTALLMODE_REPAIR = 0x00000001,REINSTALLMODE_FILEMISSING = 0x00000002,REINSTALLMODE_FILEOLDERVERSION = 0x00000004,
|
|
REINSTALLMODE_FILEEQUALVERSION = 0x00000008,REINSTALLMODE_FILEEXACT = 0x00000010,REINSTALLMODE_FILEVERIFY = 0x00000020,
|
|
REINSTALLMODE_FILEREPLACE = 0x00000040,REINSTALLMODE_MACHINEDATA = 0x00000080,REINSTALLMODE_USERDATA = 0x00000100,
|
|
REINSTALLMODE_SHORTCUT = 0x00000200,REINSTALLMODE_PACKAGE = 0x00000400
|
|
} REINSTALLMODE;
|
|
|
|
typedef enum tagINSTALLOGMODE {
|
|
INSTALLLOGMODE_FATALEXIT = (1 << (INSTALLMESSAGE_FATALEXIT >> 24)),INSTALLLOGMODE_ERROR = (1 << (INSTALLMESSAGE_ERROR >> 24)),
|
|
INSTALLLOGMODE_WARNING = (1 << (INSTALLMESSAGE_WARNING >> 24)),INSTALLLOGMODE_USER = (1 << (INSTALLMESSAGE_USER >> 24)),
|
|
INSTALLLOGMODE_INFO = (1 << (INSTALLMESSAGE_INFO >> 24)),INSTALLLOGMODE_RESOLVESOURCE = (1 << (INSTALLMESSAGE_RESOLVESOURCE >> 24)),
|
|
INSTALLLOGMODE_OUTOFDISKSPACE = (1 << (INSTALLMESSAGE_OUTOFDISKSPACE >> 24)),INSTALLLOGMODE_ACTIONSTART = (1 << (INSTALLMESSAGE_ACTIONSTART >> 24)),
|
|
INSTALLLOGMODE_ACTIONDATA = (1 << (INSTALLMESSAGE_ACTIONDATA >> 24)),INSTALLLOGMODE_COMMONDATA = (1 << (INSTALLMESSAGE_COMMONDATA >> 24)),
|
|
INSTALLLOGMODE_PROPERTYDUMP = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_VERBOSE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
|
|
INSTALLLOGMODE_EXTRADEBUG = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_LOGONLYONERROR = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)),
|
|
INSTALLLOGMODE_PROGRESS = (1 << (INSTALLMESSAGE_PROGRESS >> 24)),INSTALLLOGMODE_INITIALIZE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)),
|
|
INSTALLLOGMODE_TERMINATE = (1 << (INSTALLMESSAGE_TERMINATE >> 24)),INSTALLLOGMODE_SHOWDIALOG = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)),
|
|
INSTALLLOGMODE_FILESINUSE = (1 << (INSTALLMESSAGE_FILESINUSE >> 24))
|
|
#if _WIN32_MSI >= 400
|
|
,INSTALLLOGMODE_RMFILESINUSE = (1 << (INSTALLMESSAGE_RMFILESINUSE >> 24))
|
|
#endif
|
|
#if _WIN32_MSI >= 450
|
|
,INSTALLLOGMODE_INSTALLSTART = (1 << (INSTALLMESSAGE_INSTALLSTART >> 24))
|
|
,INSTALLLOGMODE_INSTALLEND = (1 << (INSTALLMESSAGE_INSTALLEND >> 24))
|
|
#endif
|
|
} INSTALLLOGMODE;
|
|
|
|
typedef enum tagINSTALLLOGATTRIBUTES {
|
|
INSTALLLOGATTRIBUTES_APPEND = (1 << 0),INSTALLLOGATTRIBUTES_FLUSHEACHLINE = (1 << 1)
|
|
} INSTALLLOGATTRIBUTES;
|
|
|
|
typedef enum tagINSTALLFEATUREATTRIBUTE {
|
|
INSTALLFEATUREATTRIBUTE_FAVORLOCAL = 1 << 0,INSTALLFEATUREATTRIBUTE_FAVORSOURCE = 1 << 1,
|
|
INSTALLFEATUREATTRIBUTE_FOLLOWPARENT = 1 << 2,INSTALLFEATUREATTRIBUTE_FAVORADVERTISE = 1 << 3,
|
|
INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE = 1 << 4,INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE = 1 << 5
|
|
} INSTALLFEATUREATTRIBUTE;
|
|
|
|
typedef enum tagINSTALLMODE {
|
|
#if (_WIN32_MSI >= 150)
|
|
INSTALLMODE_NODETECTION_ANY = -4,
|
|
#endif
|
|
INSTALLMODE_NOSOURCERESOLUTION = -3,INSTALLMODE_NODETECTION = -2,INSTALLMODE_EXISTING = -1,INSTALLMODE_DEFAULT = 0
|
|
} INSTALLMODE;
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
typedef enum tagMSIPATCHSTATE {
|
|
MSIPATCHSTATE_INVALID = 0,MSIPATCHSTATE_APPLIED = 1,MSIPATCHSTATE_SUPERSEDED = 2,MSIPATCHSTATE_OBSOLETED = 4,MSIPATCHSTATE_REGISTERED = 8,
|
|
MSIPATCHSTATE_ALL = (MSIPATCHSTATE_APPLIED | MSIPATCHSTATE_SUPERSEDED | MSIPATCHSTATE_OBSOLETED | MSIPATCHSTATE_REGISTERED)
|
|
} MSIPATCHSTATE;
|
|
|
|
typedef enum tagMSIINSTALLCONTEXT {
|
|
MSIINSTALLCONTEXT_FIRSTVISIBLE = 0,MSIINSTALLCONTEXT_NONE = 0,MSIINSTALLCONTEXT_USERMANAGED = 1,MSIINSTALLCONTEXT_USERUNMANAGED = 2,
|
|
MSIINSTALLCONTEXT_MACHINE = 4,
|
|
MSIINSTALLCONTEXT_ALL = (MSIINSTALLCONTEXT_USERMANAGED | MSIINSTALLCONTEXT_USERUNMANAGED | MSIINSTALLCONTEXT_MACHINE),
|
|
MSIINSTALLCONTEXT_ALLUSERMANAGED = 8
|
|
} MSIINSTALLCONTEXT;
|
|
|
|
typedef enum tagMSIPATCHDATATYPE {
|
|
MSIPATCH_DATATYPE_PATCHFILE = 0,MSIPATCH_DATATYPE_XMLPATH = 1,MSIPATCH_DATATYPE_XMLBLOB = 2
|
|
} MSIPATCHDATATYPE,*PMSIPATCHDATATYPE;
|
|
|
|
typedef struct tagMSIPATCHSEQUENCEINFOA {
|
|
LPCSTR szPatchData;
|
|
MSIPATCHDATATYPE ePatchDataType;
|
|
DWORD dwOrder;
|
|
UINT uStatus;
|
|
} MSIPATCHSEQUENCEINFOA,*PMSIPATCHSEQUENCEINFOA;
|
|
|
|
typedef struct tagMSIPATCHSEQUENCEINFOW {
|
|
LPCWSTR szPatchData;
|
|
MSIPATCHDATATYPE ePatchDataType;
|
|
DWORD dwOrder;
|
|
UINT uStatus;
|
|
} MSIPATCHSEQUENCEINFOW,*PMSIPATCHSEQUENCEINFOW;
|
|
|
|
__MINGW_TYPEDEF_AW(MSIPATCHSEQUENCEINFO)
|
|
__MINGW_TYPEDEF_AW(PMSIPATCHSEQUENCEINFO)
|
|
#endif
|
|
|
|
#define MAX_FEATURE_CHARS 38
|
|
|
|
#define INSTALLPROPERTY_PACKAGENAME __TEXT("PackageName")
|
|
#define INSTALLPROPERTY_TRANSFORMS __TEXT("Transforms")
|
|
#define INSTALLPROPERTY_LANGUAGE __TEXT("Language")
|
|
#define INSTALLPROPERTY_PRODUCTNAME __TEXT("ProductName")
|
|
#define INSTALLPROPERTY_ASSIGNMENTTYPE __TEXT("AssignmentType")
|
|
#if (_WIN32_MSI >= 150)
|
|
#define INSTALLPROPERTY_INSTANCETYPE __TEXT("InstanceType")
|
|
#endif
|
|
#if (_WIN32_MSI >= 300)
|
|
#define INSTALLPROPERTY_AUTHORIZED_LUA_APP __TEXT("AuthorizedLUAApp")
|
|
#endif
|
|
|
|
#define INSTALLPROPERTY_PACKAGECODE __TEXT("PackageCode")
|
|
#define INSTALLPROPERTY_VERSION __TEXT("Version")
|
|
#if (_WIN32_MSI >= 110)
|
|
#define INSTALLPROPERTY_PRODUCTICON __TEXT("ProductIcon")
|
|
#endif
|
|
|
|
#define INSTALLPROPERTY_INSTALLEDPRODUCTNAME __TEXT("InstalledProductName")
|
|
#define INSTALLPROPERTY_VERSIONSTRING __TEXT("VersionString")
|
|
#define INSTALLPROPERTY_HELPLINK __TEXT("HelpLink")
|
|
#define INSTALLPROPERTY_HELPTELEPHONE __TEXT("HelpTelephone")
|
|
#define INSTALLPROPERTY_INSTALLLOCATION __TEXT("InstallLocation")
|
|
#define INSTALLPROPERTY_INSTALLSOURCE __TEXT("InstallSource")
|
|
#define INSTALLPROPERTY_INSTALLDATE __TEXT("InstallDate")
|
|
#define INSTALLPROPERTY_PUBLISHER __TEXT("Publisher")
|
|
#define INSTALLPROPERTY_LOCALPACKAGE __TEXT("LocalPackage")
|
|
#define INSTALLPROPERTY_URLINFOABOUT __TEXT("URLInfoAbout")
|
|
#define INSTALLPROPERTY_URLUPDATEINFO __TEXT("URLUpdateInfo")
|
|
#define INSTALLPROPERTY_VERSIONMINOR __TEXT("VersionMinor")
|
|
#define INSTALLPROPERTY_VERSIONMAJOR __TEXT("VersionMajor")
|
|
#define INSTALLPROPERTY_PRODUCTID __TEXT("ProductID")
|
|
#define INSTALLPROPERTY_REGCOMPANY __TEXT("RegCompany")
|
|
#define INSTALLPROPERTY_REGOWNER __TEXT("RegOwner")
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
#define INSTALLPROPERTY_UNINSTALLABLE __TEXT("Uninstallable")
|
|
#define INSTALLPROPERTY_PRODUCTSTATE __TEXT("State")
|
|
#define INSTALLPROPERTY_PATCHSTATE __TEXT("State")
|
|
#define INSTALLPROPERTY_PATCHTYPE __TEXT("PatchType")
|
|
#define INSTALLPROPERTY_LUAENABLED __TEXT("LUAEnabled")
|
|
#define INSTALLPROPERTY_DISPLAYNAME __TEXT("DisplayName")
|
|
#define INSTALLPROPERTY_MOREINFOURL __TEXT("MoreInfoURL")
|
|
|
|
#define INSTALLPROPERTY_LASTUSEDSOURCE __TEXT("LastUsedSource")
|
|
#define INSTALLPROPERTY_LASTUSEDTYPE __TEXT("LastUsedType")
|
|
#define INSTALLPROPERTY_MEDIAPACKAGEPATH __TEXT("MediaPackagePath")
|
|
#define INSTALLPROPERTY_DISKPROMPT __TEXT("DiskPrompt")
|
|
#endif
|
|
|
|
typedef enum tagSCRIPTFLAGS {
|
|
SCRIPTFLAGS_CACHEINFO = 0x00000001,SCRIPTFLAGS_SHORTCUTS = 0x00000004,SCRIPTFLAGS_MACHINEASSIGN = 0x00000008,
|
|
SCRIPTFLAGS_REGDATA_CNFGINFO = 0x00000020,SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST = 0x00000040,
|
|
#if (_WIN32_MSI >= 110)
|
|
SCRIPTFLAGS_REGDATA_CLASSINFO = 0x00000080,SCRIPTFLAGS_REGDATA_EXTENSIONINFO = 0x00000100,
|
|
SCRIPTFLAGS_REGDATA_APPINFO = SCRIPTFLAGS_REGDATA_CLASSINFO | SCRIPTFLAGS_REGDATA_EXTENSIONINFO,
|
|
#else
|
|
SCRIPTFLAGS_REGDATA_APPINFO = 0x00000010,
|
|
#endif
|
|
SCRIPTFLAGS_REGDATA = SCRIPTFLAGS_REGDATA_APPINFO | SCRIPTFLAGS_REGDATA_CNFGINFO
|
|
} SCRIPTFLAGS;
|
|
|
|
typedef enum tagADVERTISEFLAGS {
|
|
ADVERTISEFLAGS_MACHINEASSIGN = 0,ADVERTISEFLAGS_USERASSIGN = 1
|
|
} ADVERTISEFLAGS;
|
|
|
|
typedef enum tagINSTALLTYPE {
|
|
INSTALLTYPE_DEFAULT = 0,INSTALLTYPE_NETWORK_IMAGE = 1,INSTALLTYPE_SINGLE_INSTANCE = 2
|
|
} INSTALLTYPE;
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
typedef struct _MSIFILEHASHINFO {
|
|
ULONG dwFileHashInfoSize;
|
|
ULONG dwData [4];
|
|
} MSIFILEHASHINFO,*PMSIFILEHASHINFO;
|
|
|
|
typedef enum tagMSIARCHITECTUREFLAGS {
|
|
MSIARCHITECTUREFLAGS_X86 = 0x00000001,MSIARCHITECTUREFLAGS_IA64 = 0x00000002,MSIARCHITECTUREFLAGS_AMD64 = 0x00000004
|
|
} MSIARCHITECTUREFLAGS;
|
|
|
|
typedef enum tagMSIOPENPACKAGEFLAGS {
|
|
MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE = 0x00000001
|
|
} MSIOPENPACKAGEFLAGS;
|
|
|
|
typedef enum tagMSIADVERTISEOPTIONFLAGS {
|
|
MSIADVERTISEOPTIONFLAGS_INSTANCE = 0x00000001
|
|
} MSIADVERTISEOPTIONFLAGS;
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
typedef enum tagMSISOURCETYPE {
|
|
MSISOURCETYPE_UNKNOWN = 0x00000000,MSISOURCETYPE_NETWORK = 0x00000001,MSISOURCETYPE_URL = 0x00000002,MSISOURCETYPE_MEDIA = 0x00000004
|
|
} MSISOURCETYPE;
|
|
|
|
typedef enum tagMSICODE {
|
|
MSICODE_PRODUCT = 0x00000000,MSICODE_PATCH = 0x40000000
|
|
} MSICODE;
|
|
|
|
#if _WIN32_MSI >= 450
|
|
typedef enum tagMSITRANSACTION {
|
|
MSITRANSACTION_CHAIN_EMBEDDEDUI = 0x00000001,
|
|
MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI = 0x00000002
|
|
} MSITRANSACTION;
|
|
|
|
typedef enum tagMSITRANSACTIONSTATE {
|
|
MSITRANSACTIONSTATE_ROLLBACK = 0x00000000,
|
|
MSITRANSACTIONSTATE_COMMIT = 0x00000001
|
|
} MSITRANSACTIONSTATE;
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL dwUILevel,HWND *phWnd);
|
|
INSTALLUI_HANDLERA WINAPI MsiSetExternalUIA(INSTALLUI_HANDLERA puiHandler,DWORD dwMessageFilter,LPVOID pvContext);
|
|
INSTALLUI_HANDLERW WINAPI MsiSetExternalUIW(INSTALLUI_HANDLERW puiHandler,DWORD dwMessageFilter,LPVOID pvContext);
|
|
#define MsiSetExternalUI __MINGW_NAME_AW(MsiSetExternalUI)
|
|
|
|
#if (_WIN32_MSI >= 310)
|
|
UINT WINAPI MsiSetExternalUIRecord(INSTALLUI_HANDLER_RECORD puiHandler,DWORD dwMessageFilter,LPVOID pvContext,PINSTALLUI_HANDLER_RECORD ppuiPrevHandler);
|
|
#endif
|
|
|
|
UINT WINAPI MsiEnableLogA(DWORD dwLogMode,LPCSTR szLogFile,DWORD dwLogAttributes);
|
|
UINT WINAPI MsiEnableLogW(DWORD dwLogMode,LPCWSTR szLogFile,DWORD dwLogAttributes);
|
|
#define MsiEnableLog __MINGW_NAME_AW(MsiEnableLog)
|
|
|
|
INSTALLSTATE WINAPI MsiQueryProductStateA(LPCSTR szProduct);
|
|
INSTALLSTATE WINAPI MsiQueryProductStateW(LPCWSTR szProduct);
|
|
#define MsiQueryProductState __MINGW_NAME_AW(MsiQueryProductState)
|
|
|
|
UINT WINAPI MsiGetProductInfoA(LPCSTR szProduct,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
#define MsiGetProductInfo __MINGW_NAME_AW(MsiGetProductInfo)
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiGetProductInfoExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue);
|
|
UINT WINAPI MsiGetProductInfoExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue);
|
|
#define MsiGetProductInfoEx __MINGW_NAME_AW(MsiGetProductInfoEx)
|
|
#endif
|
|
|
|
UINT WINAPI MsiInstallProductA(LPCSTR szPackagePath,LPCSTR szCommandLine);
|
|
UINT WINAPI MsiInstallProductW(LPCWSTR szPackagePath,LPCWSTR szCommandLine);
|
|
#define MsiInstallProduct __MINGW_NAME_AW(MsiInstallProduct)
|
|
|
|
UINT WINAPI MsiConfigureProductA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState);
|
|
UINT WINAPI MsiConfigureProductW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState);
|
|
#define MsiConfigureProduct __MINGW_NAME_AW(MsiConfigureProduct)
|
|
|
|
UINT WINAPI MsiConfigureProductExA(LPCSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCSTR szCommandLine);
|
|
UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct,int iInstallLevel,INSTALLSTATE eInstallState,LPCWSTR szCommandLine);
|
|
#define MsiConfigureProductEx __MINGW_NAME_AW(MsiConfigureProductEx)
|
|
|
|
UINT WINAPI MsiReinstallProductA(LPCSTR szProduct,DWORD szReinstallMode);
|
|
UINT WINAPI MsiReinstallProductW(LPCWSTR szProduct,DWORD szReinstallMode);
|
|
#define MsiReinstallProduct __MINGW_NAME_AW(MsiReinstallProduct)
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
UINT WINAPI MsiAdvertiseProductExA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions);
|
|
UINT WINAPI MsiAdvertiseProductExW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage,DWORD dwPlatform,DWORD dwOptions);
|
|
#define MsiAdvertiseProductEx __MINGW_NAME_AW(MsiAdvertiseProductEx)
|
|
#endif
|
|
|
|
UINT WINAPI MsiAdvertiseProductA(LPCSTR szPackagePath,LPCSTR szScriptfilePath,LPCSTR szTransforms,LANGID lgidLanguage);
|
|
UINT WINAPI MsiAdvertiseProductW(LPCWSTR szPackagePath,LPCWSTR szScriptfilePath,LPCWSTR szTransforms,LANGID lgidLanguage);
|
|
#define MsiAdvertiseProduct __MINGW_NAME_AW(MsiAdvertiseProduct)
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
UINT WINAPI MsiProcessAdvertiseScriptA(LPCSTR szScriptFile,LPCSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems);
|
|
UINT WINAPI MsiProcessAdvertiseScriptW(LPCWSTR szScriptFile,LPCWSTR szIconFolder,HKEY hRegData,WINBOOL fShortcuts,WINBOOL fRemoveItems);
|
|
#define MsiProcessAdvertiseScript __MINGW_NAME_AW(MsiProcessAdvertiseScript)
|
|
#endif
|
|
|
|
UINT WINAPI MsiAdvertiseScriptA(LPCSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems);
|
|
UINT WINAPI MsiAdvertiseScriptW(LPCWSTR szScriptFile,DWORD dwFlags,PHKEY phRegData,WINBOOL fRemoveItems);
|
|
#define MsiAdvertiseScript __MINGW_NAME_AW(MsiAdvertiseScript)
|
|
|
|
UINT WINAPI MsiGetProductInfoFromScriptA(LPCSTR szScriptFile,LPSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPSTR lpNameBuf,DWORD *pcchNameBuf,LPSTR lpPackageBuf,DWORD *pcchPackageBuf);
|
|
UINT WINAPI MsiGetProductInfoFromScriptW(LPCWSTR szScriptFile,LPWSTR lpProductBuf39,LANGID *plgidLanguage,DWORD *pdwVersion,LPWSTR lpNameBuf,DWORD *pcchNameBuf,LPWSTR lpPackageBuf,DWORD *pcchPackageBuf);
|
|
#define MsiGetProductInfoFromScript __MINGW_NAME_AW(MsiGetProductInfoFromScript)
|
|
|
|
UINT WINAPI MsiGetProductCodeA(LPCSTR szComponent,LPSTR lpBuf39);
|
|
UINT WINAPI MsiGetProductCodeW(LPCWSTR szComponent,LPWSTR lpBuf39);
|
|
#define MsiGetProductCode __MINGW_NAME_AW(MsiGetProductCode)
|
|
|
|
USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR szProduct,LPSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPSTR lpSerialBuf,DWORD *pcchSerialBuf);
|
|
USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct,LPWSTR lpUserNameBuf,DWORD *pcchUserNameBuf,LPWSTR lpOrgNameBuf,DWORD *pcchOrgNameBuf,LPWSTR lpSerialBuf,DWORD *pcchSerialBuf);
|
|
#define MsiGetUserInfo __MINGW_NAME_AW(MsiGetUserInfo)
|
|
|
|
UINT WINAPI MsiCollectUserInfoA(LPCSTR szProduct);
|
|
UINT WINAPI MsiCollectUserInfoW(LPCWSTR szProduct);
|
|
#define MsiCollectUserInfo __MINGW_NAME_AW(MsiCollectUserInfo)
|
|
|
|
UINT WINAPI MsiApplyPatchA(LPCSTR szPatchPackage,LPCSTR szInstallPackage,INSTALLTYPE eInstallType,LPCSTR szCommandLine);
|
|
UINT WINAPI MsiApplyPatchW(LPCWSTR szPatchPackage,LPCWSTR szInstallPackage,INSTALLTYPE eInstallType,LPCWSTR szCommandLine);
|
|
#define MsiApplyPatch __MINGW_NAME_AW(MsiApplyPatch)
|
|
|
|
UINT WINAPI MsiGetPatchInfoA(LPCSTR szPatch,LPCSTR szAttribute,LPSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
UINT WINAPI MsiGetPatchInfoW(LPCWSTR szPatch,LPCWSTR szAttribute,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
#define MsiGetPatchInfo __MINGW_NAME_AW(MsiGetPatchInfo)
|
|
|
|
UINT WINAPI MsiEnumPatchesA(LPCSTR szProduct,DWORD iPatchIndex,LPSTR lpPatchBuf,LPSTR lpTransformsBuf,DWORD *pcchTransformsBuf);
|
|
UINT WINAPI MsiEnumPatchesW(LPCWSTR szProduct,DWORD iPatchIndex,LPWSTR lpPatchBuf,LPWSTR lpTransformsBuf,DWORD *pcchTransformsBuf);
|
|
#define MsiEnumPatches __MINGW_NAME_AW(MsiEnumPatches)
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiRemovePatchesA(LPCSTR szPatchList,LPCSTR szProductCode,INSTALLTYPE eUninstallType,LPCSTR szPropertyList);
|
|
UINT WINAPI MsiRemovePatchesW(LPCWSTR szPatchList,LPCWSTR szProductCode,INSTALLTYPE eUninstallType,LPCWSTR szPropertyList);
|
|
#define MsiRemovePatches __MINGW_NAME_AW(MsiRemovePatches)
|
|
|
|
UINT WINAPI MsiExtractPatchXMLDataA(LPCSTR szPatchPath,DWORD dwReserved,LPSTR szXMLData,DWORD *pcchXMLData);
|
|
UINT WINAPI MsiExtractPatchXMLDataW(LPCWSTR szPatchPath,DWORD dwReserved,LPWSTR szXMLData,DWORD *pcchXMLData);
|
|
#define MsiExtractPatchXMLData __MINGW_NAME_AW(MsiExtractPatchXMLData)
|
|
|
|
UINT WINAPI MsiGetPatchInfoExA(LPCSTR szPatchCode,LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szProperty,LPSTR lpValue,DWORD *pcchValue);
|
|
UINT WINAPI MsiGetPatchInfoExW(LPCWSTR szPatchCode,LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szProperty,LPWSTR lpValue,DWORD *pcchValue);
|
|
#define MsiGetPatchInfoEx __MINGW_NAME_AW(MsiGetPatchInfoEx)
|
|
|
|
UINT WINAPI MsiApplyMultiplePatchesA(LPCSTR szPatchPackages,LPCSTR szProductCode,LPCSTR szPropertiesList);
|
|
UINT WINAPI MsiApplyMultiplePatchesW(LPCWSTR szPatchPackages,LPCWSTR szProductCode,LPCWSTR szPropertiesList);
|
|
#define MsiApplyMultiplePatches __MINGW_NAME_AW(MsiApplyMultiplePatches)
|
|
|
|
UINT WINAPI MsiDeterminePatchSequenceA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo);
|
|
UINT WINAPI MsiDeterminePatchSequenceW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo);
|
|
#define MsiDeterminePatchSequence __MINGW_NAME_AW(MsiDeterminePatchSequence)
|
|
|
|
UINT WINAPI MsiDetermineApplicablePatchesA(LPCSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOA pPatchInfo);
|
|
UINT WINAPI MsiDetermineApplicablePatchesW(LPCWSTR szProductPackagePath,DWORD cPatchInfo,PMSIPATCHSEQUENCEINFOW pPatchInfo);
|
|
#define MsiDetermineApplicablePatches __MINGW_NAME_AW(MsiDetermineApplicablePatches)
|
|
|
|
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);
|
|
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);
|
|
#define MsiEnumPatchesEx __MINGW_NAME_AW(MsiEnumPatchesEx)
|
|
#endif
|
|
|
|
INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR szProduct,LPCSTR szFeature);
|
|
INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR szProduct,LPCWSTR szFeature);
|
|
#define MsiQueryFeatureState __MINGW_NAME_AW(MsiQueryFeatureState)
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiQueryFeatureStateExA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szFeature,INSTALLSTATE *pdwState);
|
|
UINT WINAPI MsiQueryFeatureStateExW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szFeature,INSTALLSTATE *pdwState);
|
|
#define MsiQueryFeatureStateEx __MINGW_NAME_AW(MsiQueryFeatureStateEx)
|
|
#endif
|
|
|
|
INSTALLSTATE WINAPI MsiUseFeatureA(LPCSTR szProduct,LPCSTR szFeature);
|
|
INSTALLSTATE WINAPI MsiUseFeatureW(LPCWSTR szProduct,LPCWSTR szFeature);
|
|
#define MsiUseFeature __MINGW_NAME_AW(MsiUseFeature)
|
|
|
|
INSTALLSTATE WINAPI MsiUseFeatureExA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwInstallMode,DWORD dwReserved);
|
|
INSTALLSTATE WINAPI MsiUseFeatureExW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwInstallMode,DWORD dwReserved);
|
|
#define MsiUseFeatureEx __MINGW_NAME_AW(MsiUseFeatureEx)
|
|
|
|
UINT WINAPI MsiGetFeatureUsageA(LPCSTR szProduct,LPCSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed);
|
|
UINT WINAPI MsiGetFeatureUsageW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD *pdwUseCount,WORD *pwDateUsed);
|
|
#define MsiGetFeatureUsage __MINGW_NAME_AW(MsiGetFeatureUsage)
|
|
|
|
UINT WINAPI MsiConfigureFeatureA(LPCSTR szProduct,LPCSTR szFeature,INSTALLSTATE eInstallState);
|
|
UINT WINAPI MsiConfigureFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,INSTALLSTATE eInstallState);
|
|
#define MsiConfigureFeature __MINGW_NAME_AW(MsiConfigureFeature)
|
|
|
|
UINT WINAPI MsiReinstallFeatureA(LPCSTR szProduct,LPCSTR szFeature,DWORD dwReinstallMode);
|
|
UINT WINAPI MsiReinstallFeatureW(LPCWSTR szProduct,LPCWSTR szFeature,DWORD dwReinstallMode);
|
|
#define MsiReinstallFeature __MINGW_NAME_AW(MsiReinstallFeature)
|
|
|
|
UINT WINAPI MsiProvideComponentA(LPCSTR szProduct,LPCSTR szFeature,LPCSTR szComponent,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
UINT WINAPI MsiProvideComponentW(LPCWSTR szProduct,LPCWSTR szFeature,LPCWSTR szComponent,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
#define MsiProvideComponent __MINGW_NAME_AW(MsiProvideComponent)
|
|
|
|
UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
#define MsiProvideQualifiedComponent __MINGW_NAME_AW(MsiProvideQualifiedComponent)
|
|
|
|
UINT WINAPI MsiProvideQualifiedComponentExA(LPCSTR szCategory,LPCSTR szQualifier,DWORD dwInstallMode,LPCSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR szCategory,LPCWSTR szQualifier,DWORD dwInstallMode,LPCWSTR szProduct,DWORD dwUnused1,DWORD dwUnused2,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
#define MsiProvideQualifiedComponentEx __MINGW_NAME_AW(MsiProvideQualifiedComponentEx)
|
|
|
|
INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR szProduct,LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf);
|
|
INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR szProduct,LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf);
|
|
#define MsiGetComponentPath __MINGW_NAME_AW(MsiGetComponentPath)
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
#define MSIASSEMBLYINFO_NETASSEMBLY 0
|
|
#define MSIASSEMBLYINFO_WIN32ASSEMBLY 1
|
|
|
|
UINT WINAPI MsiProvideAssemblyA(LPCSTR szAssemblyName,LPCSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
UINT WINAPI MsiProvideAssemblyW(LPCWSTR szAssemblyName,LPCWSTR szAppContext,DWORD dwInstallMode,DWORD dwAssemblyInfo,LPWSTR lpPathBuf,DWORD *pcchPathBuf);
|
|
#define MsiProvideAssembly __MINGW_NAME_AW(MsiProvideAssembly)
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiQueryComponentStateA(LPCSTR szProductCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCSTR szComponentCode,INSTALLSTATE *pdwState);
|
|
UINT WINAPI MsiQueryComponentStateW(LPCWSTR szProductCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,LPCWSTR szComponentCode,INSTALLSTATE *pdwState);
|
|
#define MsiQueryComponentState __MINGW_NAME_AW(MsiQueryComponentState)
|
|
#endif
|
|
|
|
UINT WINAPI MsiEnumProductsA(DWORD iProductIndex,LPSTR lpProductBuf);
|
|
UINT WINAPI MsiEnumProductsW(DWORD iProductIndex,LPWSTR lpProductBuf);
|
|
#define MsiEnumProducts __MINGW_NAME_AW(MsiEnumProducts)
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiEnumProductsExA(LPCSTR szProductCode,LPCSTR szUserSid,DWORD dwContext,DWORD dwIndex,CHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPSTR szSid,LPDWORD pcchSid);
|
|
UINT WINAPI MsiEnumProductsExW(LPCWSTR szProductCode,LPCWSTR szUserSid,DWORD dwContext,DWORD dwIndex,WCHAR szInstalledProductCode[39],MSIINSTALLCONTEXT *pdwInstalledContext,LPWSTR szSid,LPDWORD pcchSid);
|
|
|
|
#define MsiEnumProductsEx __MINGW_NAME_AW(MsiEnumProductsEx)
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 110)
|
|
UINT WINAPI MsiEnumRelatedProductsA(LPCSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPSTR lpProductBuf);
|
|
UINT WINAPI MsiEnumRelatedProductsW(LPCWSTR lpUpgradeCode,DWORD dwReserved,DWORD iProductIndex,LPWSTR lpProductBuf);
|
|
#define MsiEnumRelatedProducts __MINGW_NAME_AW(MsiEnumRelatedProducts)
|
|
#endif
|
|
|
|
UINT WINAPI MsiEnumFeaturesA(LPCSTR szProduct,DWORD iFeatureIndex,LPSTR lpFeatureBuf,LPSTR lpParentBuf);
|
|
UINT WINAPI MsiEnumFeaturesW(LPCWSTR szProduct,DWORD iFeatureIndex,LPWSTR lpFeatureBuf,LPWSTR lpParentBuf);
|
|
#define MsiEnumFeatures __MINGW_NAME_AW(MsiEnumFeatures)
|
|
|
|
UINT WINAPI MsiEnumComponentsA(DWORD iComponentIndex,LPSTR lpComponentBuf);
|
|
UINT WINAPI MsiEnumComponentsW(DWORD iComponentIndex,LPWSTR lpComponentBuf);
|
|
#define MsiEnumComponents __MINGW_NAME_AW(MsiEnumComponents)
|
|
|
|
UINT WINAPI MsiEnumClientsA(LPCSTR szComponent,DWORD iProductIndex,LPSTR lpProductBuf);
|
|
UINT WINAPI MsiEnumClientsW(LPCWSTR szComponent,DWORD iProductIndex,LPWSTR lpProductBuf);
|
|
#define MsiEnumClients __MINGW_NAME_AW(MsiEnumClients)
|
|
|
|
UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR szComponent,DWORD iIndex,LPSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf);
|
|
UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR szComponent,DWORD iIndex,LPWSTR lpQualifierBuf,DWORD *pcchQualifierBuf,LPWSTR lpApplicationDataBuf,DWORD *pcchApplicationDataBuf);
|
|
#define MsiEnumComponentQualifiers __MINGW_NAME_AW(MsiEnumComponentQualifiers)
|
|
|
|
UINT WINAPI MsiOpenProductA(LPCSTR szProduct,MSIHANDLE *hProduct);
|
|
UINT WINAPI MsiOpenProductW(LPCWSTR szProduct,MSIHANDLE *hProduct);
|
|
#define MsiOpenProduct __MINGW_NAME_AW(MsiOpenProduct)
|
|
|
|
UINT WINAPI MsiOpenPackageA(LPCSTR szPackagePath,MSIHANDLE *hProduct);
|
|
UINT WINAPI MsiOpenPackageW(LPCWSTR szPackagePath,MSIHANDLE *hProduct);
|
|
#define MsiOpenPackage __MINGW_NAME_AW(MsiOpenPackage)
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
UINT WINAPI MsiOpenPackageExA(LPCSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct);
|
|
UINT WINAPI MsiOpenPackageExW(LPCWSTR szPackagePath,DWORD dwOptions,MSIHANDLE *hProduct);
|
|
#define MsiOpenPackageEx __MINGW_NAME_AW(MsiOpenPackageEx)
|
|
|
|
#if _WIN32_MSI >= 400
|
|
UINT WINAPI MsiGetPatchFileListA(LPCSTR szProductCode, LPCSTR szPatchPackages, LPDWORD pcFiles, MSIHANDLE **pphFileRecords);
|
|
UINT WINAPI MsiGetPatchFileListW(LPCWSTR szProductCode, LPCWSTR szPatchPackages, LPDWORD pcFiles, MSIHANDLE **pphFileRecords);
|
|
#define MsiGetPatchFileList __MINGW_NAME_AW(MsiGetPatchFileList)
|
|
#endif
|
|
#endif
|
|
|
|
UINT WINAPI MsiGetProductPropertyA(MSIHANDLE hProduct,LPCSTR szProperty,LPSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
UINT WINAPI MsiGetProductPropertyW(MSIHANDLE hProduct,LPCWSTR szProperty,LPWSTR lpValueBuf,DWORD *pcchValueBuf);
|
|
#define MsiGetProductProperty __MINGW_NAME_AW(MsiGetProductProperty)
|
|
|
|
UINT WINAPI MsiVerifyPackageA(LPCSTR szPackagePath);
|
|
UINT WINAPI MsiVerifyPackageW(LPCWSTR szPackagePath);
|
|
#define MsiVerifyPackage __MINGW_NAME_AW(MsiVerifyPackage)
|
|
|
|
UINT WINAPI MsiGetFeatureInfoA(MSIHANDLE hProduct,LPCSTR szFeature,DWORD *lpAttributes,LPSTR lpTitleBuf,DWORD *pcchTitleBuf,LPSTR lpHelpBuf,DWORD *pcchHelpBuf);
|
|
UINT WINAPI MsiGetFeatureInfoW(MSIHANDLE hProduct,LPCWSTR szFeature,DWORD *lpAttributes,LPWSTR lpTitleBuf,DWORD *pcchTitleBuf,LPWSTR lpHelpBuf,DWORD *pcchHelpBuf);
|
|
#define MsiGetFeatureInfo __MINGW_NAME_AW(MsiGetFeatureInfo)
|
|
|
|
UINT WINAPI MsiInstallMissingComponentA(LPCSTR szProduct,LPCSTR szComponent,INSTALLSTATE eInstallState);
|
|
UINT WINAPI MsiInstallMissingComponentW(LPCWSTR szProduct,LPCWSTR szComponent,INSTALLSTATE eInstallState);
|
|
#define MsiInstallMissingComponent __MINGW_NAME_AW(MsiInstallMissingComponent)
|
|
|
|
UINT WINAPI MsiInstallMissingFileA(LPCSTR szProduct,LPCSTR szFile);
|
|
UINT WINAPI MsiInstallMissingFileW(LPCWSTR szProduct,LPCWSTR szFile);
|
|
#define MsiInstallMissingFile __MINGW_NAME_AW(MsiInstallMissingFile)
|
|
|
|
INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR szComponent,LPSTR lpPathBuf,DWORD *pcchBuf);
|
|
INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR szComponent,LPWSTR lpPathBuf,DWORD *pcchBuf);
|
|
#define MsiLocateComponent __MINGW_NAME_AW(MsiLocateComponent)
|
|
|
|
#if (_WIN32_MSI >= 110)
|
|
UINT WINAPI MsiSourceListClearAllA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved);
|
|
UINT WINAPI MsiSourceListClearAllW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved);
|
|
#define MsiSourceListClearAll __MINGW_NAME_AW(MsiSourceListClearAll)
|
|
|
|
UINT WINAPI MsiSourceListAddSourceA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved,LPCSTR szSource);
|
|
UINT WINAPI MsiSourceListAddSourceW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved,LPCWSTR szSource);
|
|
#define MsiSourceListAddSource __MINGW_NAME_AW(MsiSourceListAddSource)
|
|
|
|
UINT WINAPI MsiSourceListForceResolutionA(LPCSTR szProduct,LPCSTR szUserName,DWORD dwReserved);
|
|
UINT WINAPI MsiSourceListForceResolutionW(LPCWSTR szProduct,LPCWSTR szUserName,DWORD dwReserved);
|
|
#define MsiSourceListForceResolution __MINGW_NAME_AW(MsiSourceListForceResolution)
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 300)
|
|
UINT WINAPI MsiSourceListAddSourceExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource,DWORD dwIndex);
|
|
UINT WINAPI MsiSourceListAddSourceExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource,DWORD dwIndex);
|
|
#define MsiSourceListAddSourceEx __MINGW_NAME_AW(MsiSourceListAddSourceEx)
|
|
|
|
UINT WINAPI MsiSourceListAddMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCSTR szVolumeLabel,LPCSTR szDiskPrompt);
|
|
UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId,LPCWSTR szVolumeLabel,LPCWSTR szDiskPrompt);
|
|
#define MsiSourceListAddMediaDisk __MINGW_NAME_AW(MsiSourceListAddMediaDisk)
|
|
|
|
UINT WINAPI MsiSourceListClearSourceA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szSource);
|
|
UINT WINAPI MsiSourceListClearSourceW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szSource);
|
|
#define MsiSourceListClearSource __MINGW_NAME_AW(MsiSourceListClearSource)
|
|
|
|
UINT WINAPI MsiSourceListClearMediaDiskA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId);
|
|
UINT WINAPI MsiSourceListClearMediaDiskW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwDiskId);
|
|
#define MsiSourceListClearMediaDisk __MINGW_NAME_AW(MsiSourceListClearMediaDisk)
|
|
|
|
UINT WINAPI MsiSourceListClearAllExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
|
|
UINT WINAPI MsiSourceListClearAllExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
|
|
#define MsiSourceListClearAllEx __MINGW_NAME_AW(MsiSourceListClearAllEx)
|
|
|
|
UINT WINAPI MsiSourceListForceResolutionExA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
|
|
UINT WINAPI MsiSourceListForceResolutionExW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions);
|
|
#define MsiSourceListForceResolutionEx __MINGW_NAME_AW(MsiSourceListForceResolutionEx)
|
|
|
|
UINT WINAPI MsiSourceListSetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPCSTR szValue);
|
|
UINT WINAPI MsiSourceListSetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPCWSTR szValue);
|
|
#define MsiSourceListSetInfo __MINGW_NAME_AW(MsiSourceListSetInfo)
|
|
|
|
UINT WINAPI MsiSourceListGetInfoA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCSTR szProperty,LPSTR szValue,LPDWORD pcchValue);
|
|
UINT WINAPI MsiSourceListGetInfoW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,LPCWSTR szProperty,LPWSTR szValue,LPDWORD pcchValue);
|
|
#define MsiSourceListGetInfo __MINGW_NAME_AW(MsiSourceListGetInfo)
|
|
|
|
UINT WINAPI MsiSourceListEnumSourcesA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPSTR szSource,LPDWORD pcchSource);
|
|
UINT WINAPI MsiSourceListEnumSourcesW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPWSTR szSource,LPDWORD pcchSource);
|
|
#define MsiSourceListEnumSources __MINGW_NAME_AW(MsiSourceListEnumSources)
|
|
|
|
UINT WINAPI MsiSourceListEnumMediaDisksA(LPCSTR szProductCodeOrPatchCode,LPCSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPSTR szDiskPrompt,LPDWORD pcchDiskPrompt);
|
|
UINT WINAPI MsiSourceListEnumMediaDisksW(LPCWSTR szProductCodeOrPatchCode,LPCWSTR szUserSid,MSIINSTALLCONTEXT dwContext,DWORD dwOptions,DWORD dwIndex,LPDWORD pdwDiskId,LPWSTR szVolumeLabel,LPDWORD pcchVolumeLabel,LPWSTR szDiskPrompt,LPDWORD pcchDiskPrompt);
|
|
#define MsiSourceListEnumMediaDisks __MINGW_NAME_AW(MsiSourceListEnumMediaDisks)
|
|
#endif
|
|
|
|
UINT WINAPI MsiGetFileVersionA(LPCSTR szFilePath,LPSTR lpVersionBuf,DWORD *pcchVersionBuf,LPSTR lpLangBuf,DWORD *pcchLangBuf);
|
|
UINT WINAPI MsiGetFileVersionW(LPCWSTR szFilePath,LPWSTR lpVersionBuf,DWORD *pcchVersionBuf,LPWSTR lpLangBuf,DWORD *pcchLangBuf);
|
|
#define MsiGetFileVersion __MINGW_NAME_AW(MsiGetFileVersion)
|
|
|
|
#if (_WIN32_MSI >= 150)
|
|
UINT WINAPI MsiGetFileHashA(LPCSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash);
|
|
UINT WINAPI MsiGetFileHashW(LPCWSTR szFilePath,DWORD dwOptions,PMSIFILEHASHINFO pHash);
|
|
#define MsiGetFileHash __MINGW_NAME_AW(MsiGetFileHash)
|
|
|
|
#ifndef _MSI_NO_CRYPTO
|
|
HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData);
|
|
HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR szSignedObjectPath,DWORD dwFlags,PCCERT_CONTEXT *ppcCertContext,BYTE *pbHashData,DWORD *pcbHashData);
|
|
#define MsiGetFileSignatureInformation __MINGW_NAME_AW(MsiGetFileSignatureInformation)
|
|
|
|
#define MSI_INVALID_HASH_IS_FATAL 0x1
|
|
#endif
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 110)
|
|
UINT WINAPI MsiGetShortcutTargetA(LPCSTR szShortcutPath,LPSTR szProductCode,LPSTR szFeatureId,LPSTR szComponentCode);
|
|
UINT WINAPI MsiGetShortcutTargetW(LPCWSTR szShortcutPath,LPWSTR szProductCode,LPWSTR szFeatureId,LPWSTR szComponentCode);
|
|
#define MsiGetShortcutTarget __MINGW_NAME_AW(MsiGetShortcutTarget)
|
|
|
|
UINT WINAPI MsiIsProductElevatedA(LPCSTR szProduct,WINBOOL *pfElevated);
|
|
UINT WINAPI MsiIsProductElevatedW(LPCWSTR szProduct,WINBOOL *pfElevated);
|
|
#define MsiIsProductElevated __MINGW_NAME_AW(MsiIsProductElevated)
|
|
#endif
|
|
|
|
#if (_WIN32_MSI >= 310)
|
|
UINT WINAPI MsiNotifySidChangeA(LPCSTR pOldSid,LPCSTR pNewSid);
|
|
UINT WINAPI MsiNotifySidChangeW(LPCWSTR pOldSid,LPCWSTR pNewSid);
|
|
#define MsiNotifySidChange __MINGW_NAME_AW(MsiNotifySidChange)
|
|
|
|
#if _WIN32_MSI >= 450
|
|
UINT WINAPI MsiBeginTransactionA(LPCSTR szName, DWORD dwTransactionAttributes, MSIHANDLE *phTransactionHandle, HANDLE *phChangeOfOwnerEvent);
|
|
UINT WINAPI MsiBeginTransactionW(LPCWSTR szName, DWORD dwTransactionAttributes, MSIHANDLE *phTransactionHandle, HANDLE *phChangeOfOwnerEvent);
|
|
#define MsiBeginTransaction __MINGW_NAME_AW(MsiBeginTransaction)
|
|
|
|
UINT WINAPI MsiEndTransaction(DWORD dwTransactionState);
|
|
UINT WINAPI MsiJoinTransaction(MSIHANDLE hTransactionHandle, DWORD dwTransactionAttributes, HANDLE *phChangeOfOwnerEvent);
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_FAILURE
|
|
#define ERROR_INSTALL_USEREXIT __MSABI_LONG(1602)
|
|
#define ERROR_INSTALL_FAILURE __MSABI_LONG(1603)
|
|
#define ERROR_INSTALL_SUSPEND __MSABI_LONG(1604)
|
|
|
|
#define ERROR_UNKNOWN_PRODUCT __MSABI_LONG(1605)
|
|
|
|
#define ERROR_UNKNOWN_FEATURE __MSABI_LONG(1606)
|
|
#define ERROR_UNKNOWN_COMPONENT __MSABI_LONG(1607)
|
|
#define ERROR_UNKNOWN_PROPERTY __MSABI_LONG(1608)
|
|
#define ERROR_INVALID_HANDLE_STATE __MSABI_LONG(1609)
|
|
|
|
#define ERROR_BAD_CONFIGURATION __MSABI_LONG(1610)
|
|
|
|
#define ERROR_INDEX_ABSENT __MSABI_LONG(1611)
|
|
|
|
#define ERROR_INSTALL_SOURCE_ABSENT __MSABI_LONG(1612)
|
|
|
|
#define ERROR_PRODUCT_UNINSTALLED __MSABI_LONG(1614)
|
|
#define ERROR_BAD_QUERY_SYNTAX __MSABI_LONG(1615)
|
|
#define ERROR_INVALID_FIELD __MSABI_LONG(1616)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_SERVICE_FAILURE
|
|
#define ERROR_INSTALL_SERVICE_FAILURE __MSABI_LONG(1601)
|
|
#define ERROR_INSTALL_PACKAGE_VERSION __MSABI_LONG(1613)
|
|
#define ERROR_INSTALL_ALREADY_RUNNING __MSABI_LONG(1618)
|
|
#define ERROR_INSTALL_PACKAGE_OPEN_FAILED __MSABI_LONG(1619)
|
|
#define ERROR_INSTALL_PACKAGE_INVALID __MSABI_LONG(1620)
|
|
#define ERROR_INSTALL_UI_FAILURE __MSABI_LONG(1621)
|
|
#define ERROR_INSTALL_LOG_FAILURE __MSABI_LONG(1622)
|
|
#define ERROR_INSTALL_LANGUAGE_UNSUPPORTED __MSABI_LONG(1623)
|
|
#define ERROR_INSTALL_PACKAGE_REJECTED __MSABI_LONG(1625)
|
|
|
|
#define ERROR_FUNCTION_NOT_CALLED __MSABI_LONG(1626)
|
|
#define ERROR_FUNCTION_FAILED __MSABI_LONG(1627)
|
|
#define ERROR_INVALID_TABLE __MSABI_LONG(1628)
|
|
#define ERROR_DATATYPE_MISMATCH __MSABI_LONG(1629)
|
|
#define ERROR_UNSUPPORTED_TYPE __MSABI_LONG(1630)
|
|
|
|
#define ERROR_CREATE_FAILED __MSABI_LONG(1631)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_TEMP_UNWRITABLE
|
|
#define ERROR_INSTALL_TEMP_UNWRITABLE __MSABI_LONG(1632)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_PLATFORM_UNSUPPORTED
|
|
#define ERROR_INSTALL_PLATFORM_UNSUPPORTED __MSABI_LONG(1633)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_NOTUSED
|
|
#define ERROR_INSTALL_NOTUSED __MSABI_LONG(1634)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_TRANSFORM_FAILURE
|
|
#define ERROR_INSTALL_TRANSFORM_FAILURE __MSABI_LONG(1624)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_PACKAGE_OPEN_FAILED
|
|
#define ERROR_PATCH_PACKAGE_OPEN_FAILED __MSABI_LONG(1635)
|
|
#define ERROR_PATCH_PACKAGE_INVALID __MSABI_LONG(1636)
|
|
#define ERROR_PATCH_PACKAGE_UNSUPPORTED __MSABI_LONG(1637)
|
|
#endif
|
|
|
|
#ifndef ERROR_PRODUCT_VERSION
|
|
#define ERROR_PRODUCT_VERSION __MSABI_LONG(1638)
|
|
#endif
|
|
|
|
#ifndef ERROR_INVALID_COMMAND_LINE
|
|
#define ERROR_INVALID_COMMAND_LINE __MSABI_LONG(1639)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_REMOTE_DISALLOWED
|
|
#define ERROR_INSTALL_REMOTE_DISALLOWED __MSABI_LONG(1640)
|
|
#endif
|
|
|
|
#ifndef ERROR_SUCCESS_REBOOT_INITIATED
|
|
#define ERROR_SUCCESS_REBOOT_INITIATED __MSABI_LONG(1641)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_TARGET_NOT_FOUND
|
|
#define ERROR_PATCH_TARGET_NOT_FOUND __MSABI_LONG(1642)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_PACKAGE_REJECTED
|
|
#define ERROR_PATCH_PACKAGE_REJECTED __MSABI_LONG(1643)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_TRANSFORM_REJECTED
|
|
#define ERROR_INSTALL_TRANSFORM_REJECTED __MSABI_LONG(1644)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_REMOTE_PROHIBITED
|
|
#define ERROR_INSTALL_REMOTE_PROHIBITED __MSABI_LONG(1645)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_REMOVAL_UNSUPPORTED
|
|
#define ERROR_PATCH_REMOVAL_UNSUPPORTED __MSABI_LONG(1646)
|
|
#endif
|
|
|
|
#ifndef ERROR_UNKNOWN_PATCH
|
|
#define ERROR_UNKNOWN_PATCH __MSABI_LONG(1647)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_NO_SEQUENCE
|
|
#define ERROR_PATCH_NO_SEQUENCE __MSABI_LONG(1648)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_REMOVAL_DISALLOWED
|
|
#define ERROR_PATCH_REMOVAL_DISALLOWED __MSABI_LONG(1649)
|
|
#endif
|
|
|
|
#ifndef ERROR_INVALID_PATCH_XML
|
|
#define ERROR_INVALID_PATCH_XML __MSABI_LONG(1650)
|
|
#endif
|
|
|
|
#ifndef ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT
|
|
#define ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT __MSABI_LONG(1651)
|
|
#endif
|
|
|
|
#ifndef ERROR_INSTALL_SERVICE_SAFEBOOT
|
|
#define ERROR_INSTALL_SERVICE_SAFEBOOT __MSABI_LONG(1652)
|
|
#endif
|
|
|
|
#ifndef ERROR_ROLLBACK_DISABLED
|
|
#define ERROR_ROLLBACK_DISABLED __MSABI_LONG(1653)
|
|
#endif
|
|
|
|
#endif
|