From 57717000195fdee94b119aa033a12d20cf364d25 Mon Sep 17 00:00:00 2001 From: Francois Gouget Date: Thu, 9 Aug 2007 10:41:41 +0200 Subject: [PATCH] msi: Better match the PSDK types, remove some now unused types from win32.api, and update it to fix the winapi_check warnings. --- dlls/msi/format.c | 6 ++-- dlls/msi/install.c | 20 ++++++------ dlls/msi/msi.c | 64 ++++++++++++++++++------------------- dlls/msi/msipriv.h | 46 +++++++++++++-------------- dlls/msi/msiquery.c | 6 ++-- dlls/msi/package.c | 8 ++--- dlls/msi/record.c | 72 +++++++++++++++++++++--------------------- dlls/msi/registry.c | 20 ++++++------ dlls/msi/suminfo.c | 10 +++--- include/msi.h | 48 ++++++++++++++-------------- include/msiquery.h | 57 +++++++++++++++++---------------- tools/winapi/win32.api | 16 ++++++---- 12 files changed, 190 insertions(+), 183 deletions(-) diff --git a/dlls/msi/format.c b/dlls/msi/format.c index 8dc99b8a56d..06ef6762a80 100644 --- a/dlls/msi/format.c +++ b/dlls/msi/format.c @@ -611,7 +611,7 @@ static DWORD deformat_string_internal(MSIPACKAGE *package, LPCWSTR ptr, UINT MSI_FormatRecordW( MSIPACKAGE* package, MSIRECORD* record, LPWSTR buffer, - DWORD *size ) + LPDWORD size ) { LPWSTR deformated; LPWSTR rec; @@ -658,7 +658,7 @@ UINT MSI_FormatRecordW( MSIPACKAGE* package, MSIRECORD* record, LPWSTR buffer, } UINT WINAPI MsiFormatRecordW( MSIHANDLE hInstall, MSIHANDLE hRecord, - LPWSTR szResult, DWORD *sz ) + LPWSTR szResult, LPDWORD sz ) { UINT r = ERROR_INVALID_HANDLE; MSIPACKAGE *package; @@ -738,7 +738,7 @@ done: } UINT WINAPI MsiFormatRecordA( MSIHANDLE hInstall, MSIHANDLE hRecord, - LPSTR szResult, DWORD *sz ) + LPSTR szResult, LPDWORD sz ) { UINT r; DWORD len, save; diff --git a/dlls/msi/install.c b/dlls/msi/install.c index c370a2885a9..999840dae05 100644 --- a/dlls/msi/install.c +++ b/dlls/msi/install.c @@ -216,7 +216,7 @@ UINT msi_strcpy_to_awstring( LPCWSTR str, awstring *awbuf, DWORD *sz ) * MsiGetTargetPath (internal) */ static UINT WINAPI MSI_GetTargetPath( MSIHANDLE hInstall, LPCWSTR szFolder, - awstring *szPathBuf, DWORD* pcchPathBuf ) + awstring *szPathBuf, LPDWORD pcchPathBuf ) { MSIPACKAGE *package; LPWSTR path; @@ -297,7 +297,7 @@ done: * MsiGetTargetPathA (MSI.@) */ UINT WINAPI MsiGetTargetPathA( MSIHANDLE hInstall, LPCSTR szFolder, - LPSTR szPathBuf, DWORD* pcchPathBuf ) + LPSTR szPathBuf, LPDWORD pcchPathBuf ) { LPWSTR szwFolder; awstring path; @@ -323,7 +323,7 @@ UINT WINAPI MsiGetTargetPathA( MSIHANDLE hInstall, LPCSTR szFolder, * MsiGetTargetPathW (MSI.@) */ UINT WINAPI MsiGetTargetPathW( MSIHANDLE hInstall, LPCWSTR szFolder, - LPWSTR szPathBuf, DWORD* pcchPathBuf ) + LPWSTR szPathBuf, LPDWORD pcchPathBuf ) { awstring path; @@ -339,7 +339,7 @@ UINT WINAPI MsiGetTargetPathW( MSIHANDLE hInstall, LPCWSTR szFolder, * MsiGetSourcePath (internal) */ static UINT MSI_GetSourcePath( MSIHANDLE hInstall, LPCWSTR szFolder, - awstring *szPathBuf, DWORD* pcchPathBuf ) + awstring *szPathBuf, LPDWORD pcchPathBuf ) { MSIPACKAGE *package; LPWSTR path; @@ -429,7 +429,7 @@ done: * MsiGetSourcePathA (MSI.@) */ UINT WINAPI MsiGetSourcePathA( MSIHANDLE hInstall, LPCSTR szFolder, - LPSTR szPathBuf, DWORD* pcchPathBuf ) + LPSTR szPathBuf, LPDWORD pcchPathBuf ) { LPWSTR folder; awstring str; @@ -451,7 +451,7 @@ UINT WINAPI MsiGetSourcePathA( MSIHANDLE hInstall, LPCSTR szFolder, * MsiGetSourcePathW (MSI.@) */ UINT WINAPI MsiGetSourcePathW( MSIHANDLE hInstall, LPCWSTR szFolder, - LPWSTR szPathBuf, DWORD* pcchPathBuf ) + LPWSTR szPathBuf, LPDWORD pcchPathBuf ) { awstring str; @@ -932,7 +932,7 @@ UINT WINAPI MsiGetFeatureStateW(MSIHANDLE hInstall, LPCWSTR szFeature, * MsiGetFeatureCostA (MSI.@) */ UINT WINAPI MsiGetFeatureCostA(MSIHANDLE hInstall, LPCSTR szFeature, - MSICOSTTREE iCostTree, INSTALLSTATE iState, INT *piCost) + MSICOSTTREE iCostTree, INSTALLSTATE iState, LPINT piCost) { FIXME("(%ld %s %i %i %p): stub\n", hInstall, debugstr_a(szFeature), iCostTree, iState, piCost); @@ -944,7 +944,7 @@ UINT WINAPI MsiGetFeatureCostA(MSIHANDLE hInstall, LPCSTR szFeature, * MsiGetFeatureCostW (MSI.@) */ UINT WINAPI MsiGetFeatureCostW(MSIHANDLE hInstall, LPCWSTR szFeature, - MSICOSTTREE iCostTree, INSTALLSTATE iState, INT *piCost) + MSICOSTTREE iCostTree, INSTALLSTATE iState, LPINT piCost) { FIXME("(%ld %s %i %i %p): stub\n", hInstall, debugstr_w(szFeature), iCostTree, iState, piCost); @@ -1228,7 +1228,7 @@ UINT WINAPI MsiSetInstallLevel(MSIHANDLE hInstall, int iInstallLevel) * MsiGetFeatureValidStatesW (MSI.@) */ UINT WINAPI MsiGetFeatureValidStatesW(MSIHANDLE hInstall, LPCWSTR szFeature, - DWORD* pInstallState) + LPDWORD pInstallState) { if(pInstallState) *pInstallState = 1<fields[i] ); } -MSIRECORD *MSI_CreateRecord( unsigned int cParams ) +MSIRECORD *MSI_CreateRecord( UINT cParams ) { MSIRECORD *rec; UINT len; @@ -90,7 +90,7 @@ MSIRECORD *MSI_CreateRecord( unsigned int cParams ) return rec; } -MSIHANDLE WINAPI MsiCreateRecord( unsigned int cParams ) +MSIHANDLE WINAPI MsiCreateRecord( UINT cParams ) { MSIRECORD *rec; MSIHANDLE ret = 0; @@ -106,12 +106,12 @@ MSIHANDLE WINAPI MsiCreateRecord( unsigned int cParams ) return ret; } -unsigned int MSI_RecordGetFieldCount( const MSIRECORD *rec ) +UINT MSI_RecordGetFieldCount( const MSIRECORD *rec ) { return rec->count; } -unsigned int WINAPI MsiRecordGetFieldCount( MSIHANDLE handle ) +UINT WINAPI MsiRecordGetFieldCount( MSIHANDLE handle ) { MSIRECORD *rec; UINT ret; @@ -153,8 +153,8 @@ static BOOL string2intW( LPCWSTR str, int *out ) return TRUE; } -UINT MSI_RecordCopyField( MSIRECORD *in_rec, unsigned int in_n, - MSIRECORD *out_rec, unsigned int out_n ) +UINT MSI_RecordCopyField( MSIRECORD *in_rec, UINT in_n, + MSIRECORD *out_rec, UINT out_n ) { UINT r = ERROR_SUCCESS; @@ -200,7 +200,7 @@ UINT MSI_RecordCopyField( MSIRECORD *in_rec, unsigned int in_n, return r; } -int MSI_RecordGetInteger( MSIRECORD *rec, unsigned int iField) +int MSI_RecordGetInteger( MSIRECORD *rec, UINT iField) { int ret = 0; @@ -224,7 +224,7 @@ int MSI_RecordGetInteger( MSIRECORD *rec, unsigned int iField) return MSI_NULL_INTEGER; } -int WINAPI MsiRecordGetInteger( MSIHANDLE handle, unsigned int iField) +int WINAPI MsiRecordGetInteger( MSIHANDLE handle, UINT iField) { MSIRECORD *rec; UINT ret; @@ -267,7 +267,7 @@ UINT WINAPI MsiRecordClearData( MSIHANDLE handle ) return ERROR_SUCCESS; } -UINT MSI_RecordSetInteger( MSIRECORD *rec, unsigned int iField, int iVal ) +UINT MSI_RecordSetInteger( MSIRECORD *rec, UINT iField, int iVal ) { TRACE("%p %u %d\n", rec, iField, iVal); @@ -281,7 +281,7 @@ UINT MSI_RecordSetInteger( MSIRECORD *rec, unsigned int iField, int iVal ) return ERROR_SUCCESS; } -UINT WINAPI MsiRecordSetInteger( MSIHANDLE handle, unsigned int iField, int iVal ) +UINT WINAPI MsiRecordSetInteger( MSIHANDLE handle, UINT iField, int iVal ) { MSIRECORD *rec; UINT ret; @@ -299,7 +299,7 @@ UINT WINAPI MsiRecordSetInteger( MSIHANDLE handle, unsigned int iField, int iVal return ret; } -BOOL MSI_RecordIsNull( MSIRECORD *rec, unsigned int iField ) +BOOL MSI_RecordIsNull( MSIRECORD *rec, UINT iField ) { BOOL r = TRUE; @@ -311,7 +311,7 @@ BOOL MSI_RecordIsNull( MSIRECORD *rec, unsigned int iField ) return r; } -BOOL WINAPI MsiRecordIsNull( MSIHANDLE handle, unsigned int iField ) +BOOL WINAPI MsiRecordIsNull( MSIHANDLE handle, UINT iField ) { MSIRECORD *rec; UINT ret; @@ -329,8 +329,8 @@ BOOL WINAPI MsiRecordIsNull( MSIHANDLE handle, unsigned int iField ) } -UINT MSI_RecordGetStringA(MSIRECORD *rec, unsigned int iField, - LPSTR szValue, DWORD *pcchValue) +UINT MSI_RecordGetStringA(MSIRECORD *rec, UINT iField, + LPSTR szValue, LPDWORD pcchValue) { UINT len=0, ret; CHAR buffer[16]; @@ -375,8 +375,8 @@ UINT MSI_RecordGetStringA(MSIRECORD *rec, unsigned int iField, return ret; } -UINT WINAPI MsiRecordGetStringA(MSIHANDLE handle, unsigned int iField, - LPSTR szValue, DWORD *pcchValue) +UINT WINAPI MsiRecordGetStringA(MSIHANDLE handle, UINT iField, + LPSTR szValue, LPDWORD pcchValue) { MSIRECORD *rec; UINT ret; @@ -393,7 +393,7 @@ UINT WINAPI MsiRecordGetStringA(MSIHANDLE handle, unsigned int iField, return ret; } -const WCHAR *MSI_RecordGetString( const MSIRECORD *rec, unsigned int iField ) +const WCHAR *MSI_RecordGetString( const MSIRECORD *rec, UINT iField ) { if( iField > rec->count ) return NULL; @@ -404,8 +404,8 @@ const WCHAR *MSI_RecordGetString( const MSIRECORD *rec, unsigned int iField ) return rec->fields[iField].u.szwVal; } -UINT MSI_RecordGetStringW(MSIRECORD *rec, unsigned int iField, - LPWSTR szValue, DWORD *pcchValue) +UINT MSI_RecordGetStringW(MSIRECORD *rec, UINT iField, + LPWSTR szValue, LPDWORD pcchValue) { UINT len=0, ret; WCHAR buffer[16]; @@ -445,8 +445,8 @@ UINT MSI_RecordGetStringW(MSIRECORD *rec, unsigned int iField, return ret; } -UINT WINAPI MsiRecordGetStringW(MSIHANDLE handle, unsigned int iField, - LPWSTR szValue, DWORD *pcchValue) +UINT WINAPI MsiRecordGetStringW(MSIHANDLE handle, UINT iField, + LPWSTR szValue, LPDWORD pcchValue) { MSIRECORD *rec; UINT ret; @@ -475,7 +475,7 @@ static UINT msi_get_stream_size( IStream *stm ) return stat.cbSize.QuadPart; } -UINT MSI_RecordDataSize(MSIRECORD *rec, unsigned int iField) +UINT MSI_RecordDataSize(MSIRECORD *rec, UINT iField) { TRACE("%p %d\n", rec, iField); @@ -496,7 +496,7 @@ UINT MSI_RecordDataSize(MSIRECORD *rec, unsigned int iField) return 0; } -UINT WINAPI MsiRecordDataSize(MSIHANDLE handle, unsigned int iField) +UINT WINAPI MsiRecordDataSize(MSIHANDLE handle, UINT iField) { MSIRECORD *rec; UINT ret; @@ -513,7 +513,7 @@ UINT WINAPI MsiRecordDataSize(MSIHANDLE handle, unsigned int iField) return ret; } -UINT MSI_RecordSetStringA( MSIRECORD *rec, unsigned int iField, LPCSTR szValue ) +UINT MSI_RecordSetStringA( MSIRECORD *rec, UINT iField, LPCSTR szValue ) { LPWSTR str; @@ -538,7 +538,7 @@ UINT MSI_RecordSetStringA( MSIRECORD *rec, unsigned int iField, LPCSTR szValue ) return 0; } -UINT WINAPI MsiRecordSetStringA( MSIHANDLE handle, unsigned int iField, LPCSTR szValue ) +UINT WINAPI MsiRecordSetStringA( MSIHANDLE handle, UINT iField, LPCSTR szValue ) { MSIRECORD *rec; UINT ret; @@ -555,7 +555,7 @@ UINT WINAPI MsiRecordSetStringA( MSIHANDLE handle, unsigned int iField, LPCSTR s return ret; } -UINT MSI_RecordSetStringW( MSIRECORD *rec, unsigned int iField, LPCWSTR szValue ) +UINT MSI_RecordSetStringW( MSIRECORD *rec, UINT iField, LPCWSTR szValue ) { LPWSTR str; @@ -581,7 +581,7 @@ UINT MSI_RecordSetStringW( MSIRECORD *rec, unsigned int iField, LPCWSTR szValue return 0; } -UINT WINAPI MsiRecordSetStringW( MSIHANDLE handle, unsigned int iField, LPCWSTR szValue ) +UINT WINAPI MsiRecordSetStringW( MSIHANDLE handle, UINT iField, LPCWSTR szValue ) { MSIRECORD *rec; UINT ret; @@ -649,7 +649,7 @@ static UINT RECORD_StreamFromFile(LPCWSTR szFile, IStream **pstm) return ERROR_SUCCESS; } -UINT MSI_RecordSetStream(MSIRECORD *rec, unsigned int iField, IStream *stream) +UINT MSI_RecordSetStream(MSIRECORD *rec, UINT iField, IStream *stream) { if ( (iField == 0) || (iField > rec->count) ) return ERROR_INVALID_PARAMETER; @@ -661,7 +661,7 @@ UINT MSI_RecordSetStream(MSIRECORD *rec, unsigned int iField, IStream *stream) return ERROR_SUCCESS; } -UINT MSI_RecordSetStreamFromFileW(MSIRECORD *rec, unsigned int iField, LPCWSTR szFilename) +UINT MSI_RecordSetStreamFromFileW(MSIRECORD *rec, UINT iField, LPCWSTR szFilename) { IStream *stm = NULL; HRESULT r; @@ -701,7 +701,7 @@ UINT MSI_RecordSetStreamFromFileW(MSIRECORD *rec, unsigned int iField, LPCWSTR s return ERROR_SUCCESS; } -UINT WINAPI MsiRecordSetStreamA(MSIHANDLE hRecord, unsigned int iField, LPCSTR szFilename) +UINT WINAPI MsiRecordSetStreamA(MSIHANDLE hRecord, UINT iField, LPCSTR szFilename) { LPWSTR wstr = NULL; UINT ret; @@ -720,7 +720,7 @@ UINT WINAPI MsiRecordSetStreamA(MSIHANDLE hRecord, unsigned int iField, LPCSTR s return ret; } -UINT WINAPI MsiRecordSetStreamW(MSIHANDLE handle, unsigned int iField, LPCWSTR szFilename) +UINT WINAPI MsiRecordSetStreamW(MSIHANDLE handle, UINT iField, LPCWSTR szFilename) { MSIRECORD *rec; UINT ret; @@ -738,7 +738,7 @@ UINT WINAPI MsiRecordSetStreamW(MSIHANDLE handle, unsigned int iField, LPCWSTR s return ret; } -UINT MSI_RecordReadStream(MSIRECORD *rec, unsigned int iField, char *buf, DWORD *sz) +UINT MSI_RecordReadStream(MSIRECORD *rec, UINT iField, char *buf, LPDWORD sz) { ULONG count; HRESULT r; @@ -790,7 +790,7 @@ UINT MSI_RecordReadStream(MSIRECORD *rec, unsigned int iField, char *buf, DWORD return ERROR_SUCCESS; } -UINT WINAPI MsiRecordReadStream(MSIHANDLE handle, unsigned int iField, char *buf, DWORD *sz) +UINT WINAPI MsiRecordReadStream(MSIHANDLE handle, UINT iField, char *buf, LPDWORD sz) { MSIRECORD *rec; UINT ret; @@ -807,7 +807,7 @@ UINT WINAPI MsiRecordReadStream(MSIHANDLE handle, unsigned int iField, char *buf return ret; } -UINT MSI_RecordSetIStream( MSIRECORD *rec, unsigned int iField, IStream *stm ) +UINT MSI_RecordSetIStream( MSIRECORD *rec, UINT iField, IStream *stm ) { TRACE("%p %d %p\n", rec, iField, stm); @@ -823,7 +823,7 @@ UINT MSI_RecordSetIStream( MSIRECORD *rec, unsigned int iField, IStream *stm ) return ERROR_SUCCESS; } -UINT MSI_RecordGetIStream( MSIRECORD *rec, unsigned int iField, IStream **pstm) +UINT MSI_RecordGetIStream( MSIRECORD *rec, UINT iField, IStream **pstm) { TRACE("%p %d %p\n", rec, iField, pstm); @@ -871,7 +871,7 @@ end: return ERROR_SUCCESS; } -UINT MSI_RecordStreamToFile( MSIRECORD *rec, unsigned int iField, LPCWSTR name ) +UINT MSI_RecordStreamToFile( MSIRECORD *rec, UINT iField, LPCWSTR name ) { IStream *stm = NULL; UINT r; diff --git a/dlls/msi/registry.c b/dlls/msi/registry.c index fd00786fb2f..62562c3f0a6 100644 --- a/dlls/msi/registry.c +++ b/dlls/msi/registry.c @@ -1014,7 +1014,7 @@ UINT MSIREG_OpenLocalManagedProductKey(LPCWSTR szProductCode, HKEY *key, BOOL cr * */ UINT WINAPI MsiDecomposeDescriptorW( LPCWSTR szDescriptor, LPWSTR szProduct, - LPWSTR szFeature, LPWSTR szComponent, DWORD *pUsed ) + LPWSTR szFeature, LPWSTR szComponent, LPDWORD pUsed ) { UINT r, len; LPWSTR p; @@ -1063,7 +1063,7 @@ UINT WINAPI MsiDecomposeDescriptorW( LPCWSTR szDescriptor, LPWSTR szProduct, } UINT WINAPI MsiDecomposeDescriptorA( LPCSTR szDescriptor, LPSTR szProduct, - LPSTR szFeature, LPSTR szComponent, DWORD *pUsed ) + LPSTR szFeature, LPSTR szComponent, LPDWORD pUsed ) { WCHAR product[MAX_FEATURE_CHARS+1]; WCHAR feature[MAX_FEATURE_CHARS+1]; @@ -1277,8 +1277,8 @@ UINT WINAPI MsiEnumClientsW(LPCWSTR szComponent, DWORD index, LPWSTR szProduct) } static UINT WINAPI MSI_EnumComponentQualifiers( LPCWSTR szComponent, DWORD iIndex, - awstring *lpQualBuf, DWORD* pcchQual, - awstring *lpAppBuf, DWORD* pcchAppBuf ) + awstring *lpQualBuf, LPDWORD pcchQual, + awstring *lpAppBuf, LPDWORD pcchAppBuf ) { DWORD name_sz, val_sz, name_max, val_max, type, ofs; LPWSTR name = NULL, val = NULL; @@ -1374,8 +1374,8 @@ end: * MsiEnumComponentQualifiersA [MSI.@] */ UINT WINAPI MsiEnumComponentQualifiersA( LPCSTR szComponent, DWORD iIndex, - LPSTR lpQualifierBuf, DWORD* pcchQualifierBuf, - LPSTR lpApplicationDataBuf, DWORD* pcchApplicationDataBuf ) + LPSTR lpQualifierBuf, LPDWORD pcchQualifierBuf, + LPSTR lpApplicationDataBuf, LPDWORD pcchApplicationDataBuf ) { awstring qual, appdata; LPWSTR comp; @@ -1405,8 +1405,8 @@ UINT WINAPI MsiEnumComponentQualifiersA( LPCSTR szComponent, DWORD iIndex, * MsiEnumComponentQualifiersW [MSI.@] */ UINT WINAPI MsiEnumComponentQualifiersW( LPCWSTR szComponent, DWORD iIndex, - LPWSTR lpQualifierBuf, DWORD* pcchQualifierBuf, - LPWSTR lpApplicationDataBuf, DWORD* pcchApplicationDataBuf ) + LPWSTR lpQualifierBuf, LPDWORD pcchQualifierBuf, + LPWSTR lpApplicationDataBuf, LPDWORD pcchApplicationDataBuf ) { awstring qual, appdata; @@ -1492,7 +1492,7 @@ UINT WINAPI MsiEnumRelatedProductsA(LPCSTR szUpgradeCode, DWORD dwReserved, * MsiEnumPatchesA [MSI.@] */ UINT WINAPI MsiEnumPatchesA( LPCSTR szProduct, DWORD iPatchIndex, - LPSTR lpPatchBuf, LPSTR lpTransformsBuf, DWORD* pcchTransformsBuf) + LPSTR lpPatchBuf, LPSTR lpTransformsBuf, LPDWORD pcchTransformsBuf) { FIXME("%s %d %p %p %p\n", debugstr_a(szProduct), iPatchIndex, lpPatchBuf, lpTransformsBuf, pcchTransformsBuf); @@ -1503,7 +1503,7 @@ UINT WINAPI MsiEnumPatchesA( LPCSTR szProduct, DWORD iPatchIndex, * MsiEnumPatchesW [MSI.@] */ UINT WINAPI MsiEnumPatchesW( LPCWSTR szProduct, DWORD iPatchIndex, - LPWSTR lpPatchBuf, LPWSTR lpTransformsBuf, DWORD* pcchTransformsBuf) + LPWSTR lpPatchBuf, LPWSTR lpTransformsBuf, LPDWORD pcchTransformsBuf) { FIXME("%s %d %p %p %p\n", debugstr_w(szProduct), iPatchIndex, lpPatchBuf, lpTransformsBuf, pcchTransformsBuf); diff --git a/dlls/msi/suminfo.c b/dlls/msi/suminfo.c index d86a2dcef5a..e3b4b017a55 100644 --- a/dlls/msi/suminfo.c +++ b/dlls/msi/suminfo.c @@ -502,7 +502,7 @@ UINT WINAPI MsiGetSummaryInformationA(MSIHANDLE hDatabase, return ret; } -UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE hSummaryInfo, UINT *pCount) +UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE hSummaryInfo, PUINT pCount) { MSISUMMARYINFO *si; @@ -619,8 +619,8 @@ LPWSTR msi_get_suminfo_product( IStorage *stg ) } UINT WINAPI MsiSummaryInfoGetPropertyA( - MSIHANDLE handle, UINT uiProperty, UINT *puiDataType, INT *piValue, - FILETIME *pftValue, LPSTR szValueBuf, DWORD *pcchValueBuf) + MSIHANDLE handle, UINT uiProperty, PUINT puiDataType, LPINT piValue, + FILETIME *pftValue, LPSTR szValueBuf, LPDWORD pcchValueBuf) { awstring str; @@ -635,8 +635,8 @@ UINT WINAPI MsiSummaryInfoGetPropertyA( } UINT WINAPI MsiSummaryInfoGetPropertyW( - MSIHANDLE handle, UINT uiProperty, UINT *puiDataType, INT *piValue, - FILETIME *pftValue, LPWSTR szValueBuf, DWORD *pcchValueBuf) + MSIHANDLE handle, UINT uiProperty, PUINT puiDataType, LPINT piValue, + FILETIME *pftValue, LPWSTR szValueBuf, LPDWORD pcchValueBuf) { awstring str; diff --git a/include/msi.h b/include/msi.h index 2956ae96043..05e5ca8c57a 100644 --- a/include/msi.h +++ b/include/msi.h @@ -417,8 +417,8 @@ UINT WINAPI MsiOpenProductA(LPCSTR, MSIHANDLE*); UINT WINAPI MsiOpenProductW(LPCWSTR, MSIHANDLE*); #define MsiOpenProduct WINELIB_NAME_AW(MsiOpenProduct) -UINT WINAPI MsiGetProductPropertyA(MSIHANDLE,LPCSTR,LPSTR,DWORD*); -UINT WINAPI MsiGetProductPropertyW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*); +UINT WINAPI MsiGetProductPropertyA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD); +UINT WINAPI MsiGetProductPropertyW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD); #define MsiGetProductProperty WINELIB_NAME_AW(MsiGetProductProperty) UINT WINAPI MsiVerifyPackageA(LPCSTR); @@ -449,8 +449,8 @@ UINT WINAPI MsiGetProductCodeA(LPCSTR, LPSTR); UINT WINAPI MsiGetProductCodeW(LPCWSTR, LPWSTR); #define MsiGetProductCode WINELIB_NAME_AW(MsiGetProductCode) -UINT WINAPI MsiGetProductInfoA(LPCSTR, LPCSTR, LPSTR, DWORD *); -UINT WINAPI MsiGetProductInfoW(LPCWSTR, LPCWSTR, LPWSTR, DWORD *); +UINT WINAPI MsiGetProductInfoA(LPCSTR, LPCSTR, LPSTR, LPDWORD); +UINT WINAPI MsiGetProductInfoW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD); #define MsiGetProductInfo WINELIB_NAME_AW(MsiGetProductInfo) UINT WINAPI MsiEnableLogA(DWORD, LPCSTR, DWORD); @@ -461,32 +461,32 @@ 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*); +INSTALLSTATE WINAPI MsiGetComponentPathA(LPCSTR, LPCSTR, LPSTR, LPDWORD); +INSTALLSTATE WINAPI MsiGetComponentPathW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD); #define MsiGetComponentPath WINELIB_NAME_AW(MsiGetComponentPath) INSTALLSTATE WINAPI MsiQueryFeatureStateA(LPCSTR, LPCSTR); INSTALLSTATE WINAPI MsiQueryFeatureStateW(LPCWSTR, LPCWSTR); #define MsiQueryFeatureState WINELIB_NAME_AW(MsiQueryFeatureState) -UINT WINAPI MsiGetFeatureUsageA(LPCSTR, LPCSTR, DWORD*, WORD*); -UINT WINAPI MsiGetFeatureUsageW(LPCWSTR, LPCWSTR, DWORD*, WORD*); +UINT WINAPI MsiGetFeatureUsageA(LPCSTR, LPCSTR, LPDWORD, LPWORD); +UINT WINAPI MsiGetFeatureUsageW(LPCWSTR, LPCWSTR, LPDWORD, LPWORD); #define MsiGetFeatureUsage WINELIB_NAME_AW(MsiGetFeatureUsage) UINT WINAPI MsiEnumRelatedProductsA(LPCSTR, DWORD, DWORD, LPSTR); UINT WINAPI MsiEnumRelatedProductsW(LPCWSTR, DWORD, DWORD, LPWSTR); #define MsiEnumRelatedProducts WINELIB_NAME_AW(MsiEnumRelatedProducts) -UINT WINAPI MsiProvideAssemblyA(LPCSTR, LPCSTR, DWORD, DWORD, LPSTR, DWORD*); -UINT WINAPI MsiProvideAssemblyW(LPCWSTR, LPCWSTR, DWORD, DWORD, LPWSTR, DWORD*); +UINT WINAPI MsiProvideAssemblyA(LPCSTR, LPCSTR, DWORD, DWORD, LPSTR, LPDWORD); +UINT WINAPI MsiProvideAssemblyW(LPCWSTR, LPCWSTR, DWORD, DWORD, LPWSTR, LPDWORD); #define MsiProvideAssembly WINELIB_NAME_AW(MsiProvideAssembly) -UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR, DWORD, LPSTR, DWORD*, LPSTR, DWORD*); -UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR, DWORD, LPWSTR, DWORD*, LPWSTR, DWORD*); +UINT WINAPI MsiEnumComponentQualifiersA(LPCSTR, DWORD, LPSTR, LPDWORD, LPSTR, LPDWORD); +UINT WINAPI MsiEnumComponentQualifiersW(LPCWSTR, DWORD, LPWSTR, LPDWORD, LPWSTR, LPDWORD); #define MsiEnumComponentQualifiers WINELIB_NAME_AW(MsiEnumComponentQualifiers) -UINT WINAPI MsiGetFileVersionA(LPCSTR, LPSTR, DWORD*, LPSTR, DWORD*); -UINT WINAPI MsiGetFileVersionW(LPCWSTR, LPWSTR, DWORD*, LPWSTR, DWORD*); +UINT WINAPI MsiGetFileVersionA(LPCSTR, LPSTR, LPDWORD, LPSTR, LPDWORD); +UINT WINAPI MsiGetFileVersionW(LPCWSTR, LPWSTR, LPDWORD, LPWSTR, LPDWORD); #define MsiGetFileVersion WINELIB_NAME_AW(MsiGetFileVersion) UINT WINAPI MsiMessageBoxA(HWND, LPCSTR, LPCSTR, UINT, WORD, DWORD); @@ -497,12 +497,12 @@ UINT WINAPI MsiProvideQualifiedComponentExA(LPCSTR, LPCSTR, DWORD, LPCSTR, DWORD UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR, LPCWSTR, DWORD, LPCWSTR, DWORD, DWORD, LPWSTR, LPDWORD); #define MsiProvideQualifiedComponentEx WINELIB_NAME_AW(MsiProvideQualifiedComponentEx) -UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR, LPCSTR, DWORD, LPSTR, DWORD*); -UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR, LPCWSTR, DWORD, LPWSTR, DWORD*); +UINT WINAPI MsiProvideQualifiedComponentA(LPCSTR, LPCSTR, DWORD, LPSTR, LPDWORD); +UINT WINAPI MsiProvideQualifiedComponentW(LPCWSTR, LPCWSTR, DWORD, LPWSTR, LPDWORD); #define MsiProvideQualifiedComponent WINELIB_NAME_AW(MsiProvideQualifiedComponent) -USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR, LPSTR, DWORD*, LPSTR, DWORD*, LPSTR, DWORD*); -USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR, LPWSTR, DWORD*, LPWSTR, DWORD*, LPWSTR, DWORD*); +USERINFOSTATE WINAPI MsiGetUserInfoA(LPCSTR, LPSTR, LPDWORD, LPSTR, LPDWORD, LPSTR, LPDWORD); +USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR, LPWSTR, LPDWORD, LPWSTR, LPDWORD, LPWSTR, LPDWORD); #define MsiGetUserInfo WINELIB_NAME_AW(MsiGetUserInfo) UINT WINAPI MsiCollectUserInfoA(LPCSTR); @@ -525,12 +525,12 @@ INSTALLSTATE WINAPI MsiUseFeatureExW(LPCWSTR, LPCWSTR, DWORD, DWORD); INSTALLSTATE WINAPI MsiUseFeatureExA(LPCSTR, LPCSTR, DWORD, DWORD); #define MsiUseFeatureEx WINELIB_NAME_AW(MsiUseFeatureEx) -HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR, DWORD, PCCERT_CONTEXT*, BYTE*, DWORD*); -HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR, DWORD, PCCERT_CONTEXT*, BYTE*, DWORD*); +HRESULT WINAPI MsiGetFileSignatureInformationA(LPCSTR, DWORD, PCCERT_CONTEXT*, LPBYTE, LPDWORD); +HRESULT WINAPI MsiGetFileSignatureInformationW(LPCWSTR, DWORD, PCCERT_CONTEXT*, LPBYTE, LPDWORD); #define MsiGetFileSignatureInformation WINELIB_NAME_AW(MsiGetFileSignatureInformation) -INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR, LPSTR, DWORD *); -INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR, LPWSTR, DWORD *); +INSTALLSTATE WINAPI MsiLocateComponentA(LPCSTR, LPSTR, LPDWORD); +INSTALLSTATE WINAPI MsiLocateComponentW(LPCWSTR, LPWSTR, LPDWORD); #define MsiLocateComponent WINELIB_NAME_AW(MsiLocateComponent) UINT WINAPI MsiSourceListAddSourceA(LPCSTR, LPCSTR, DWORD, LPCSTR); @@ -557,8 +557,8 @@ UINT WINAPI MsiSourceListAddMediaDiskA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPCWSTR, LPCWSTR); #define MsiSourceListAddMediaDisk WINELIB_NAME_AW(MsiSourceListAddMediaDisk) -UINT WINAPI MsiEnumPatchesA(LPCSTR, DWORD, LPSTR, LPSTR, DWORD*); -UINT WINAPI MsiEnumPatchesW(LPCWSTR, DWORD, LPWSTR, LPWSTR, DWORD*); +UINT WINAPI MsiEnumPatchesA(LPCSTR, DWORD, LPSTR, LPSTR, LPDWORD); +UINT WINAPI MsiEnumPatchesW(LPCWSTR, DWORD, LPWSTR, LPWSTR, LPDWORD); #define MsiEnumPatches WINELIB_NAME_AW(MsiEnumPatches) UINT WINAPI MsiGetFileHashA(LPCSTR, DWORD, PMSIFILEHASHINFO); diff --git a/include/msiquery.h b/include/msiquery.h index 5a3f2924e6d..67205c99cd3 100644 --- a/include/msiquery.h +++ b/include/msiquery.h @@ -149,33 +149,33 @@ UINT WINAPI MsiViewClose(MSIHANDLE); UINT WINAPI MsiDatabaseOpenViewA(MSIHANDLE,LPCSTR,MSIHANDLE*); UINT WINAPI MsiDatabaseOpenViewW(MSIHANDLE,LPCWSTR,MSIHANDLE*); #define MsiDatabaseOpenView WINELIB_NAME_AW(MsiDatabaseOpenView) -MSIDBERROR WINAPI MsiViewGetErrorA(MSIHANDLE,LPSTR,DWORD*); -MSIDBERROR WINAPI MsiViewGetErrorW(MSIHANDLE,LPWSTR,DWORD*); +MSIDBERROR WINAPI MsiViewGetErrorA(MSIHANDLE,LPSTR,LPDWORD); +MSIDBERROR WINAPI MsiViewGetErrorW(MSIHANDLE,LPWSTR,LPDWORD); #define MsiViewGetError WINELIB_NAME_AW(MsiViewGetError) MSIDBSTATE WINAPI MsiGetDatabaseState(MSIHANDLE); /* record manipulation */ -MSIHANDLE WINAPI MsiCreateRecord(unsigned int); +MSIHANDLE WINAPI MsiCreateRecord(UINT); UINT WINAPI MsiRecordClearData(MSIHANDLE); -UINT WINAPI MsiRecordSetInteger(MSIHANDLE,unsigned int,int); -UINT WINAPI MsiRecordSetStringA(MSIHANDLE,unsigned int,LPCSTR); -UINT WINAPI MsiRecordSetStringW(MSIHANDLE,unsigned int,LPCWSTR); +UINT WINAPI MsiRecordSetInteger(MSIHANDLE,UINT,int); +UINT WINAPI MsiRecordSetStringA(MSIHANDLE,UINT,LPCSTR); +UINT WINAPI MsiRecordSetStringW(MSIHANDLE,UINT,LPCWSTR); #define MsiRecordSetString WINELIB_NAME_AW(MsiRecordSetString) -UINT WINAPI MsiRecordGetStringA(MSIHANDLE,unsigned int,LPSTR,DWORD*); -UINT WINAPI MsiRecordGetStringW(MSIHANDLE,unsigned int,LPWSTR,DWORD*); +UINT WINAPI MsiRecordGetStringA(MSIHANDLE,UINT,LPSTR,LPDWORD); +UINT WINAPI MsiRecordGetStringW(MSIHANDLE,UINT,LPWSTR,LPDWORD); #define MsiRecordGetString WINELIB_NAME_AW(MsiRecordGetString) UINT WINAPI MsiRecordGetFieldCount(MSIHANDLE); -int WINAPI MsiRecordGetInteger(MSIHANDLE,unsigned int); -UINT WINAPI MsiRecordDataSize(MSIHANDLE,unsigned int); -BOOL WINAPI MsiRecordIsNull(MSIHANDLE,unsigned int); -UINT WINAPI MsiFormatRecordA(MSIHANDLE,MSIHANDLE,LPSTR,DWORD*); -UINT WINAPI MsiFormatRecordW(MSIHANDLE,MSIHANDLE,LPWSTR,DWORD*); +int WINAPI MsiRecordGetInteger(MSIHANDLE,UINT); +UINT WINAPI MsiRecordDataSize(MSIHANDLE,UINT); +BOOL WINAPI MsiRecordIsNull(MSIHANDLE,UINT); +UINT WINAPI MsiFormatRecordA(MSIHANDLE,MSIHANDLE,LPSTR,LPDWORD); +UINT WINAPI MsiFormatRecordW(MSIHANDLE,MSIHANDLE,LPWSTR,LPDWORD); #define MsiFormatRecord WINELIB_NAME_AW(MsiFormatRecord) -UINT WINAPI MsiRecordSetStreamA(MSIHANDLE,unsigned int,LPCSTR); -UINT WINAPI MsiRecordSetStreamW(MSIHANDLE,unsigned int,LPCWSTR); +UINT WINAPI MsiRecordSetStreamA(MSIHANDLE,UINT,LPCSTR); +UINT WINAPI MsiRecordSetStreamW(MSIHANDLE,UINT,LPCWSTR); #define MsiRecordSetStream WINELIB_NAME_AW(MsiRecordSetStream) -UINT WINAPI MsiRecordReadStream(MSIHANDLE,unsigned int,char*,DWORD *); +UINT WINAPI MsiRecordReadStream(MSIHANDLE,UINT,char*,LPDWORD); UINT WINAPI MsiDatabaseGetPrimaryKeysA(MSIHANDLE,LPCSTR,MSIHANDLE*); UINT WINAPI MsiDatabaseGetPrimaryKeysW(MSIHANDLE,LPCWSTR,MSIHANDLE*); @@ -200,6 +200,9 @@ UINT WINAPI MsiDatabaseCommit(MSIHANDLE); UINT WINAPI MsiGetFeatureStateA(MSIHANDLE,LPCSTR,INSTALLSTATE*,INSTALLSTATE*); UINT WINAPI MsiGetFeatureStateW(MSIHANDLE,LPCWSTR,INSTALLSTATE*,INSTALLSTATE*); #define MsiGetFeatureState WINELIB_NAME_AW(MsiGetFeatureState) +UINT WINAPI MsiGetFeatureValidStatesA(MSIHANDLE,LPCSTR,LPDWORD); +UINT WINAPI MsiGetFeatureValidStatesW(MSIHANDLE,LPCWSTR,LPDWORD); +#define MsiGetFeatureValidStates WINELIB_NAME_AW(MsiGetFeatureValidStates) UINT WINAPI MsiSetComponentStateA(MSIHANDLE,LPCSTR,INSTALLSTATE); UINT WINAPI MsiSetComponentStateW(MSIHANDLE,LPCWSTR,INSTALLSTATE); #define MsiSetComponentState WINELIB_NAME_AW(MsiSetComponentState) @@ -212,24 +215,24 @@ MSICONDITION WINAPI MsiEvaluateConditionW(MSIHANDLE,LPCWSTR); #define MsiEvaluateCondition WINELIB_NAME_AW(MsiEvaluateCondition) /* property functions */ -UINT WINAPI MsiGetPropertyA(MSIHANDLE, LPCSTR, LPSTR, DWORD*); -UINT WINAPI MsiGetPropertyW(MSIHANDLE, LPCWSTR, LPWSTR, DWORD*); +UINT WINAPI MsiGetPropertyA(MSIHANDLE, LPCSTR, LPSTR, LPDWORD); +UINT WINAPI MsiGetPropertyW(MSIHANDLE, LPCWSTR, LPWSTR, LPDWORD); #define MsiGetProperty WINELIB_NAME_AW(MsiGetProperty) UINT WINAPI MsiSetPropertyA(MSIHANDLE, LPCSTR, LPCSTR); UINT WINAPI MsiSetPropertyW(MSIHANDLE, LPCWSTR, LPCWSTR); #define MsiSetProperty WINELIB_NAME_AW(MsiSetProperty) -UINT WINAPI MsiGetTargetPathA(MSIHANDLE,LPCSTR,LPSTR,DWORD*); -UINT WINAPI MsiGetTargetPathW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*); +UINT WINAPI MsiGetTargetPathA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD); +UINT WINAPI MsiGetTargetPathW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD); #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*); +UINT WINAPI MsiGetSourcePathA(MSIHANDLE,LPCSTR,LPSTR,LPDWORD); +UINT WINAPI MsiGetSourcePathW(MSIHANDLE,LPCWSTR,LPWSTR,LPDWORD); #define MsiGetSourcePath WINELIB_NAME_AW(MsiGetSourcePath) MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE); @@ -257,8 +260,8 @@ UINT WINAPI MsiGetSummaryInformationA(MSIHANDLE, LPCSTR, UINT, MSIHANDLE *); UINT WINAPI MsiGetSummaryInformationW(MSIHANDLE, LPCWSTR, UINT, MSIHANDLE *); #define MsiGetSummaryInformation WINELIB_NAME_AW(MsiGetSummaryInformation) -UINT WINAPI MsiSummaryInfoGetPropertyA(MSIHANDLE,UINT,UINT*,INT*,FILETIME*,LPSTR,DWORD*); -UINT WINAPI MsiSummaryInfoGetPropertyW(MSIHANDLE,UINT,UINT*,INT*,FILETIME*,LPWSTR,DWORD*); +UINT WINAPI MsiSummaryInfoGetPropertyA(MSIHANDLE,UINT,PUINT,LPINT,FILETIME*,LPSTR,LPDWORD); +UINT WINAPI MsiSummaryInfoGetPropertyW(MSIHANDLE,UINT,PUINT,LPINT,FILETIME*,LPWSTR,LPDWORD); #define MsiSummaryInfoGetProperty WINELIB_NAME_AW(MsiSummaryInfoGetProperty) UINT WINAPI MsiSummaryInfoSetPropertyA(MSIHANDLE, UINT, UINT, INT, FILETIME*, LPCSTR); @@ -286,7 +289,7 @@ UINT WINAPI MsiSequenceW(MSIHANDLE, LPCWSTR, INT); #define MsiSequence WINELIB_NAME_AW(MsiSequence) UINT WINAPI MsiSummaryInfoPersist(MSIHANDLE); -UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE,UINT*); +UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE,PUINT); UINT WINAPI MsiEnableUIPreview(MSIHANDLE, MSIHANDLE*); BOOL WINAPI MsiGetMode(MSIHANDLE, MSIRUNMODE); @@ -294,8 +297,8 @@ BOOL WINAPI MsiSetMode(MSIHANDLE, MSIRUNMODE, BOOL); UINT WINAPI MsiViewModify(MSIHANDLE, MSIMODIFY, MSIHANDLE); -UINT WINAPI MsiGetFeatureCostA(MSIHANDLE, LPCSTR, MSICOSTTREE, INSTALLSTATE, INT*); -UINT WINAPI MsiGetFeatureCostW(MSIHANDLE, LPCWSTR, MSICOSTTREE, INSTALLSTATE, INT*); +UINT WINAPI MsiGetFeatureCostA(MSIHANDLE, LPCSTR, MSICOSTTREE, INSTALLSTATE, LPINT); +UINT WINAPI MsiGetFeatureCostW(MSIHANDLE, LPCWSTR, MSICOSTTREE, INSTALLSTATE, LPINT); #define MsiGetFeatureCost WINELIB_NAME_AW(MsiGetFeatureCost) LANGID WINAPI MsiGetLanguage(MSIHANDLE); diff --git a/tools/winapi/win32.api b/tools/winapi/win32.api index c58341e8a2d..8f3163523c0 100644 --- a/tools/winapi/win32.api +++ b/tools/winapi/win32.api @@ -2506,41 +2506,44 @@ INT LANGID MSICOLINFO MSICONDITION +MSICOSTTREE MSIDBERROR MSIDBSTATE MSIHANDLE +MSIINSTALLCONTEXT MSIMODIFY MSIRUNMODE UINT USERINFOSTATE WORD int -unsigned int %ptr -BYTE * DLLVERSIONINFO * -DWORD * FILETIME * HWND * INSTALLSTATE * INSTALLUI_HANDLERA INSTALLUI_HANDLERW -INT * +LPBYTE +LPDWORD +LPINT LPVOID LPVOID * +LPWORD MSIHANDLE * +MSIINSTALLCONTEXT * PCCERT_CONTEXT * PHKEY PMSIFILEHASHINFO +PUINT REFCLSID REFIID -UINT * -WORD * %str +CHAR[39] LPCSTR LPSTR char * @@ -2549,6 +2552,7 @@ char * LPCWSTR LPWSTR +WCHAR[39] %%msimg32.dll