diff --git a/include/msi.h b/include/msi.h index 8cc4f04ebfc..72f67fee989 100644 --- a/include/msi.h +++ b/include/msi.h @@ -58,9 +58,56 @@ typedef enum tagINSTALLLEVEL INSTALLLEVEL_MAXIMUM = 0xFFFF } INSTALLLEVEL; +typedef enum tagINSTALLMESSAGE +{ + INSTALLMESSAGE_FATALEXIT = 0, + 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 +} INSTALLMESSAGE; + +typedef enum tagINSTALLLOGMODE +{ + 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_PROGRESS = (1 << (INSTALLMESSAGE_PROGRESS >> 24)), + INSTALLLOGMODE_INITIALIZE = (1 << (INSTALLMESSAGE_INITIALIZE >> 24)), + INSTALLLOGMODE_TERMINATE = (1 << (INSTALLMESSAGE_TERMINATE >> 24)), + INSTALLLOGMODE_SHOWDIALOG = (1 << (INSTALLMESSAGE_SHOWDIALOG >> 24)) +} INSTALLLOGMODE; #define MAX_FEATURE_CHARS 38 +typedef INT (CALLBACK *INSTALLUI_HANDLERA)(LPVOID pvContext, UINT iMessageType, + LPCSTR szMessage); +typedef INT (CALLBACK *INSTALLUI_HANDLERW)(LPVOID pvContext, UINT iMessageType, + LPCWSTR szMessage); + +UINT WINAPI MsiAdvertiseProductA(LPCSTR, LPCSTR, LPCSTR, LANGID); +UINT WINAPI MsiAdvertiseProductW(LPCWSTR, LPCWSTR, LPCWSTR, LANGID); +#define MsiAdvertiseProduct WINELIB_NAME_AW(MsiAdvertiseProduct) UINT WINAPI MsiInstallProductA(LPCSTR, LPCSTR); UINT WINAPI MsiInstallProductW(LPCWSTR, LPCWSTR); @@ -142,6 +189,18 @@ UINT WINAPI MsiEnableLogA(DWORD dwLogMode, LPCSTR szLogFile, BOOL fAppend); UINT WINAPI MsiEnableLogW(DWORD dwLogMode, LPCWSTR szLogFile, BOOL fAppend); #define MsiEnableLog WINELIB_NAME_AW(MsiEnableLog) +INSTALLUI_HANDLERA WINAPI MsiSetExternalUIA(INSTALLUI_HANDLERA, DWORD, LPVOID); +INSTALLUI_HANDLERW WINAPI MsiSetExternalUIW(INSTALLUI_HANDLERW, DWORD, LPVOID); +#define MsiSetExternalUI WINELIB_NAME_AW(MsiSetExternalUI) + +INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR, LPCSTR, LPSTR, DWORD*); +INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR, LPCWSTR, LPWSTR, DWORD*); +#define MsiGetComponentPath WINELIB_NAME_AW(MsiGetComponentPath) + +INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR szProduct, LPCSTR szFeature); +INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR szProduct, LPCWSTR szFeature); +#define MsiQueryFeatureState WINELIB_NAME_AW(MsiQueryFeatureState) + /** * Non Unicode */ diff --git a/include/msiquery.h b/include/msiquery.h index aa6157bfee6..cfd07b9a875 100644 --- a/include/msiquery.h +++ b/include/msiquery.h @@ -122,5 +122,37 @@ MSICONDITION WINAPI MsiEvaluateConditionA(MSIHANDLE,LPCSTR); MSICONDITION WINAPI MsiEvaluateConditionW(MSIHANDLE,LPCWSTR); #define MsiEvaluateCondition WINELIB_NAME_AW(MsiEvaluateCondition) +/* property functions */ +UINT WINAPI MsiGetPropertyA(MSIHANDLE hInstall, LPCSTR szName, + LPSTR szValueBuf, DWORD* pchValueBuf); +UINT WINAPI MsiGetPropertyW(MSIHANDLE hInstall, LPCWSTR szName, + LPWSTR szValueBuf, DWORD* pchValueBuf); +#define MsiGetProperty WINELIB_NAME_AW(MsiGetProperty) + +UINT WINAPI MsiSetPropertyA(MSIHANDLE hInstall, LPCSTR szName, LPCSTR szValue); +UINT WINAPI MsiSetPropertyW(MSIHANDLE hInstall, LPCWSTR szName, + LPCWSTR szValue); +#define MsiSetProperty WINELIB_NAME_AW(MsiSetProperty) + +UINT WINAPI MsiGetTargetPathA(MSIHANDLE,LPCSTR,LPSTR,DWORD*); +UINT WINAPI MsiGetTargetPathW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*); +#define MsiGetTargetPath WINELIB_NAME_AW(MsiGetTargetPath) + +UINT WINAPI MsiSetTargetPathA(MSIHANDLE, LPCSTR, LPCSTR); +UINT WINAPI MsiSetTargetPathW(MSIHANDLE, LPCWSTR, LPCWSTR); +#define MsiSetTargetPath WINELIB_NAME_AW(MsiSetTargetPath) + +UINT WINAPI MsiGetSourcePathA(MSIHANDLE,LPCSTR,LPSTR,DWORD*); +UINT WINAPI MsiGetSourcePathW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*); +#define MsiGetSourcePath WINELIB_NAME_AW(MsiGetSourcePath) + +MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE); + +UINT WINAPI MsiViewGetColumnInfo( MSIHANDLE, MSICOLINFO, MSIHANDLE*); +INT WINAPI MsiProcessMessage( MSIHANDLE, INSTALLMESSAGE, MSIHANDLE); + +UINT WINAPI MsiSetFeatureStateA( MSIHANDLE, LPCSTR, INSTALLSTATE); +UINT WINAPI MsiSetFeatureStateW( MSIHANDLE, LPCWSTR, INSTALLSTATE); +#define MsiSetFeatureState WINELIB_NAME_AW(MsiSetFeatureState) #endif /* __WINE_MSIQUERY_H */