From: Rob M. <ro...@us...> - 2006-01-18 10:52:48
|
Update of /cvsroot/wix/wix/src/ca/wcautil In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15800/src/ca/wcautil Modified Files: precomp.h wcalog.cpp wcautil.cpp wcautil.h wcawrap.cpp Log Message: DerekC: - Fix a bug in the XsdGen code for special xml characters in comments. - Add decompiler support for the remaining standard MSI tables. - Fix the help information for dark/light/lit/candle for new short extension syntax. - Lots of other random little fixes. BobArnso: - Use whole sentences for localization, instead of building up sentences by using properties to specify different verbs and word forms, as many languages don't easily follow English word order. - Add ActionText/Template loc strings BobArnso: Add build requirements to WiX.chm, fixing sfbug:1318424. RobMen: Allow MIME to not be advertised independent of parent Extension. BobArnso: - UI fails with 2803 if you click the enabled modify button in maintenance mode - Add ARPNOMODIFY to WixUI_Minimal - Adjust MaintenanceTypeDlg modify text/button based on ARPNOMODIFY setting ScotK: Cleaning up server custom action memory allocation code and other stuff. BobArnson: Fix WixTasks build to copy wix.targets to output tree DerekC: Correctly modularize the RegLocator.Key and RemoveRegistry.Key columns. DerekC: Cleanup wix.xsd: - Remove minOccurs="1" and maxOccurs="1" (since they are the defaults). - Remove unnecessary mixed="true". - Remove unnecessary sequence from under the Fragment element. DerekC: Support grabbing binary registry keys in tallow. SBonev: Modify candle.exe to not compile the input files if -p is specified. This behavior is consisent with the current C/C++ compilers. DerekC: Fix invalid xml in a patching example inside wix.chm. DerekC: Remove the entry section id from wixout files since it is not used. This is a breaking change to the wixout file format. DerekC: Allow DocCompiler to correctly generate documentation for a deprecated element which does not specify a replacement element. RobMen: Add FeatureGroup and allow deeply nested FeatureGroups and ComponentGroups. DerekC: Make the Component/@Guid attribute mandatory. JohnLs: Fixes for the MSBuild related WixTasks.dll and wix.targets. SBonev: Modify the PreprocessorExtension to work with an XmlDocument instead of text. DerekC: Deprecate the FragmentRef element and support UIRef under UI. SBonev: Move CompilerCore.GetSourceLineNumbers to Preprocessor and make it static. Logically, this is a better place for it because the ln processing instructions are generated by the preprocessor. This also allows consumers other than compiler extensions, for example preprocessor extensions, to determine the source information for a given XmlNode. EdYoung: Change the compiler so that if a user specifies a multistring registry key, they actually get one, even if they only provide one or zero values to put in the value. BobArnso: Added instructions in "Building WiX" .CHM topic on modifying NAnt.exe.config to support .NET Framework 2.0. DerekC: Fix 2 bugs with registry identifier generation: 1. Registry keys may unintentionally collide if they share similar key and name values. For example a registry entry with a key ending with "EndOfKey" and name "Name" may collide with another entry with a key ending with "End" and name "OfKeyName". The problem is that the hashing algorithm does not insert a separator between the parts of the registry entry before hashing them. 2. Registry keys generated by COM registration will not appropriately collide with entries authored via Registry elements (if they should collide because they have identical component, root, key, and name values which differ only by case of the key or name). Before hashing the parts of the registry entry for Registry elements, the key and name parts were lowercased to ensure proper canonicalization. Unfortunately, the code for the COM elements like Class and ProgId did not canonicalize properly, so the identifier for two registry entries that are essentially identical may not collide (and thus provide the user with early feedback that an authoring error has occurred). Index: wcautil.h =================================================================== RCS file: /cvsroot/wix/wix/src/ca/wcautil/wcautil.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** wcautil.h 7 Nov 2005 22:47:30 -0000 1.4 --- wcautil.h 18 Jan 2006 10:50:59 -0000 1.5 *************** *** 43,56 **** void WcaGlobalInitialize( ! IN HINSTANCE hInst ); void WcaGlobalFinalize(); HRESULT WcaInitialize( ! IN MSIHANDLE hInstall, ! IN const char* szCustomActionLogName ); UINT WcaFinalize( ! IN UINT iReturnValue ); BOOL WcaIsInitialized(); --- 43,56 ---- void WcaGlobalInitialize( ! __in HINSTANCE hInst ); void WcaGlobalFinalize(); HRESULT WcaInitialize( ! __in MSIHANDLE hInstall, ! __in const char* szCustomActionLogName ); UINT WcaFinalize( ! __in UINT iReturnValue ); BOOL WcaIsInitialized(); *************** *** 62,66 **** void WcaSetReturnValue( ! IN UINT iReturnValue ); BOOL WcaCancelDetected(); --- 62,66 ---- void WcaSetReturnValue( ! __in UINT iReturnValue ); BOOL WcaCancelDetected(); *************** *** 75,260 **** void WcaLog( ! IN LOGLEVEL llv, ! IN const char* fmt, ... ); BOOL WcaDisplayAssert( ! IN LPCSTR sz ); void WcaLogError( ! IN HRESULT hr, ! IN LPCSTR szMessage, ! IN ... ); UINT WcaProcessMessage( ! IN INSTALLMESSAGE eMessageType, ! IN MSIHANDLE hRecord ); UINT WcaErrorMessage( ! IN int iError, ! IN HRESULT hrError, ! IN UINT uiType, ! IN DWORD cArgs, ! IN ... ); HRESULT WcaProgressMessage( ! IN UINT uiCost, ! IN BOOL fExtendProgressBar ); BOOL WcaIsInstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ); BOOL WcaIsReInstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ); BOOL WcaIsUninstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ); HRESULT WcaSetComponentState( ! IN LPCWSTR wzComponent, ! IN INSTALLSTATE isState ); HRESULT WcaTableExists( ! IN LPCWSTR wzTable ); HRESULT WcaOpenView( ! IN LPCWSTR wzSql, ! OUT MSIHANDLE* phView ); HRESULT WcaExecuteView( ! IN MSIHANDLE hView, ! IN MSIHANDLE hRec ); HRESULT WcaOpenExecuteView( ! IN LPCWSTR wzSql, ! OUT MSIHANDLE* phView ); HRESULT WcaFetchRecord( ! IN MSIHANDLE hView, ! OUT MSIHANDLE* phRec ); HRESULT WcaFetchSingleRecord( ! IN MSIHANDLE hView, ! OUT MSIHANDLE* phRec ); HRESULT WcaGetProperty( ! IN LPCWSTR wzProperty, ! IN OUT LPWSTR* ppwzData ); HRESULT WcaGetFormattedProperty( ! IN LPCWSTR wzProperty, ! OUT LPWSTR* ppwzData ); HRESULT WcaGetFormattedString( ! IN LPCWSTR wzString, ! OUT LPWSTR* ppwzData ); HRESULT WcaGetIntProperty( ! IN LPCWSTR wzProperty, ! IN OUT int* piData ); HRESULT WcaGetTargetPath( ! IN LPCWSTR wzFolder, ! OUT LPWSTR* ppwzData ); HRESULT WcaSetProperty( ! IN LPCWSTR wzPropertyName, ! IN LPCWSTR wzPropertyValue ); HRESULT WcaSetIntProperty( ! IN LPCWSTR wzPropertyName, ! IN int nPropertyValue ); BOOL WcaIsPropertySet( ! IN LPCSTR szProperty ); HRESULT WcaGetRecordInteger( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT int* piData ); HRESULT WcaGetRecordString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT LPWSTR* ppwzData ); HRESULT WcaGetRecordFormattedString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT LPWSTR* ppwzData ); ! HRESULT WcaAllocStream(BYTE** ppbData, DWORD cbData); ! HRESULT WcaFreeStream(BYTE* pbData); HRESULT WcaGetRecordStream( ! IN MSIHANDLE hRecBinary, ! IN UINT uiField, ! IN OUT BYTE** ppbData, ! IN OUT DWORD* pcbData ); HRESULT WcaSetRecordString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN LPCWSTR wzData ); HRESULT WcaSetRecordInteger( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN int iValue ); HRESULT WcaDoDeferredAction( ! IN LPCWSTR wzAction, ! IN LPCWSTR wzCustomActionData, ! IN UINT uiCost ); DWORD WcaCountOfCustomActionDataRecords( ! IN LPCWSTR wzData ); HRESULT WcaReadStringFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! IN OUT LPWSTR* ppwzString ); HRESULT WcaReadIntegerFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! IN OUT int* piResult ); HRESULT WcaReadStreamFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! OUT BYTE** ppbData, ! OUT DWORD* pcbData ); HRESULT WcaWriteStringToCaData( ! IN LPCWSTR wzString, ! IN OUT LPWSTR* ppwzCustomActionData ); HRESULT WcaWriteIntegerToCaData( ! IN int i, ! IN OUT LPWSTR* ppwzCustomActionData ); HRESULT WcaWriteStreamToCaData( ! IN const BYTE* pbData, ! IN DWORD cbData, ! IN OUT LPWSTR* ppwzCustomActionData ); HRESULT WcaAddTempRecord( ! IN OUT MSIHANDLE* phTableView, ! IN OUT MSIHANDLE* phColumns, ! IN LPCWSTR wzTable, ! IN UINT uiUniquifyColumn, ! IN UINT cColumns, ! IN ... ); --- 75,260 ---- void WcaLog( ! __in LOGLEVEL llv, ! __in const char* fmt, ... ); BOOL WcaDisplayAssert( ! __in LPCSTR sz ); void WcaLogError( ! __in HRESULT hr, ! __in LPCSTR szMessage, ! ... ); UINT WcaProcessMessage( ! __in INSTALLMESSAGE eMessageType, ! __in MSIHANDLE hRecord ); UINT WcaErrorMessage( ! __in int iError, ! __in HRESULT hrError, ! __in UINT uiType, ! __in DWORD cArgs, ! ... ); HRESULT WcaProgressMessage( ! __in UINT uiCost, ! __in BOOL fExtendProgressBar ); BOOL WcaIsInstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ); BOOL WcaIsReInstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ); BOOL WcaIsUninstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ); HRESULT WcaSetComponentState( ! __in LPCWSTR wzComponent, ! __in INSTALLSTATE isState ); HRESULT WcaTableExists( ! __in LPCWSTR wzTable ); HRESULT WcaOpenView( ! __in LPCWSTR wzSql, ! __out MSIHANDLE* phView ); HRESULT WcaExecuteView( ! __in MSIHANDLE hView, ! __in MSIHANDLE hRec ); HRESULT WcaOpenExecuteView( ! __in LPCWSTR wzSql, ! __out MSIHANDLE* phView ); HRESULT WcaFetchRecord( ! __in MSIHANDLE hView, ! __out MSIHANDLE* phRec ); HRESULT WcaFetchSingleRecord( ! __in MSIHANDLE hView, ! __out MSIHANDLE* phRec ); HRESULT WcaGetProperty( ! __in LPCWSTR wzProperty, ! __inout LPWSTR* ppwzData ); HRESULT WcaGetFormattedProperty( ! __in LPCWSTR wzProperty, ! __out LPWSTR* ppwzData ); HRESULT WcaGetFormattedString( ! __in LPCWSTR wzString, ! __out LPWSTR* ppwzData ); HRESULT WcaGetIntProperty( ! __in LPCWSTR wzProperty, ! __inout int* piData ); HRESULT WcaGetTargetPath( ! __in LPCWSTR wzFolder, ! __out LPWSTR* ppwzData ); HRESULT WcaSetProperty( ! __in LPCWSTR wzPropertyName, ! __in LPCWSTR wzPropertyValue ); HRESULT WcaSetIntProperty( ! __in LPCWSTR wzPropertyName, ! __in int nPropertyValue ); BOOL WcaIsPropertySet( ! __in LPCSTR szProperty ); HRESULT WcaGetRecordInteger( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout int* piData ); HRESULT WcaGetRecordString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout LPWSTR* ppwzData ); HRESULT WcaGetRecordFormattedString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout LPWSTR* ppwzData ); ! HRESULT WcaAllocStream(__inout BYTE** ppbData, __in DWORD cbData); ! HRESULT WcaFreeStream(__in BYTE* pbData); HRESULT WcaGetRecordStream( ! __in MSIHANDLE hRecBinary, ! __in UINT uiField, ! __inout BYTE** ppbData, ! __inout DWORD* pcbData ); HRESULT WcaSetRecordString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __in LPCWSTR wzData ); HRESULT WcaSetRecordInteger( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __in int iValue ); HRESULT WcaDoDeferredAction( ! __in LPCWSTR wzAction, ! __in LPCWSTR wzCustomActionData, ! __in UINT uiCost ); DWORD WcaCountOfCustomActionDataRecords( ! __in LPCWSTR wzData ); HRESULT WcaReadStringFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __inout LPWSTR* ppwzString ); HRESULT WcaReadIntegerFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __inout int* piResult ); HRESULT WcaReadStreamFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __out BYTE** ppbData, ! __out DWORD_PTR* pcbData ); HRESULT WcaWriteStringToCaData( ! __in LPCWSTR wzString, ! __inout LPWSTR* ppwzCustomActionData ); HRESULT WcaWriteIntegerToCaData( ! __in int i, ! __inout LPWSTR* ppwzCustomActionData ); HRESULT WcaWriteStreamToCaData( ! __in_bcount(cbData) const BYTE* pbData, ! __in DWORD cbData, ! __inout LPWSTR* ppwzCustomActionData ); HRESULT WcaAddTempRecord( ! __inout MSIHANDLE* phTableView, ! __inout MSIHANDLE* phColumns, ! __in LPCWSTR wzTable, ! __in UINT uiUniquifyColumn, ! __in UINT cColumns, ! ... ); Index: wcautil.cpp =================================================================== RCS file: /cvsroot/wix/wix/src/ca/wcautil/wcautil.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wcautil.cpp 2 May 2005 05:48:38 -0000 1.1 --- wcautil.cpp 18 Jan 2006 10:50:59 -0000 1.2 *************** *** 37,41 **** ********************************************************************/ extern "C" void WcaGlobalInitialize( ! IN HINSTANCE hInst ) { --- 37,41 ---- ********************************************************************/ extern "C" void WcaGlobalInitialize( ! __in HINSTANCE hInst ) { *************** *** 76,81 **** ********************************************************************/ extern "C" HRESULT WcaInitialize( ! IN MSIHANDLE hInstall, ! IN const char* szCustomActionLogName ) { --- 76,81 ---- ********************************************************************/ extern "C" HRESULT WcaInitialize( ! __in MSIHANDLE hInstall, ! __in const char* szCustomActionLogName ) { *************** *** 124,128 **** ********************************************************************/ extern "C" UINT WcaFinalize( ! IN UINT iReturnValue ) { --- 124,128 ---- ********************************************************************/ extern "C" UINT WcaFinalize( ! __in UINT iReturnValue ) { *************** *** 193,197 **** ********************************************************************/ extern "C" void WcaSetReturnValue( ! IN UINT iReturnValue ) { --- 193,197 ---- ********************************************************************/ extern "C" void WcaSetReturnValue( ! __in UINT iReturnValue ) { Index: wcawrap.cpp =================================================================== RCS file: /cvsroot/wix/wix/src/ca/wcautil/wcawrap.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** wcawrap.cpp 7 Nov 2005 22:47:30 -0000 1.4 --- wcawrap.cpp 18 Jan 2006 10:50:59 -0000 1.5 *************** *** 27,32 **** ********************************************************************/ extern "C" UINT WcaProcessMessage( ! IN INSTALLMESSAGE eMessageType, ! IN MSIHANDLE hRecord ) { --- 27,32 ---- ********************************************************************/ extern "C" UINT WcaProcessMessage( ! __in INSTALLMESSAGE eMessageType, ! __in MSIHANDLE hRecord ) { *************** *** 46,54 **** ********************************************************************/ extern "C" UINT WcaErrorMessage( ! IN int iError, ! IN HRESULT hrError, ! IN UINT uiType, ! IN DWORD cArgs, ! IN ... ) { --- 46,54 ---- ********************************************************************/ extern "C" UINT WcaErrorMessage( ! __in int iError, ! __in HRESULT hrError, ! __in UINT uiType, ! __in DWORD cArgs, ! ... ) { *************** *** 94,99 **** ********************************************************************/ extern "C" HRESULT WcaProgressMessage( ! IN UINT uiCost, ! IN BOOL fExtendProgressBar ) { --- 94,99 ---- ********************************************************************/ extern "C" HRESULT WcaProgressMessage( ! __in UINT uiCost, ! __in BOOL fExtendProgressBar ) { *************** *** 168,173 **** ********************************************************************/ extern "C" BOOL WcaIsInstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ) { --- 168,173 ---- ********************************************************************/ extern "C" BOOL WcaIsInstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ) { *************** *** 184,189 **** ********************************************************************/ extern "C" BOOL WcaIsReInstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ) { --- 184,189 ---- ********************************************************************/ extern "C" BOOL WcaIsReInstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ) { *************** *** 201,206 **** ********************************************************************/ extern "C" BOOL WcaIsUninstalling( ! IN INSTALLSTATE isInstalled, ! IN INSTALLSTATE isAction ) { --- 201,206 ---- ********************************************************************/ extern "C" BOOL WcaIsUninstalling( ! __in INSTALLSTATE isInstalled, ! __in INSTALLSTATE isAction ) { *************** *** 217,222 **** ********************************************************************/ extern "C" HRESULT WcaSetComponentState( ! IN LPCWSTR wzComponent, ! IN INSTALLSTATE isState ) { --- 217,222 ---- ********************************************************************/ extern "C" HRESULT WcaSetComponentState( ! __in LPCWSTR wzComponent, ! __in INSTALLSTATE isState ) { *************** *** 234,238 **** ********************************************************************/ extern "C" HRESULT WcaTableExists( ! IN LPCWSTR wzTable ) { --- 234,238 ---- ********************************************************************/ extern "C" HRESULT WcaTableExists( ! __in LPCWSTR wzTable ) { *************** *** 265,270 **** ********************************************************************/ extern "C" HRESULT WcaOpenView( ! IN LPCWSTR wzSql, ! OUT MSIHANDLE* phView ) { --- 265,270 ---- ********************************************************************/ extern "C" HRESULT WcaOpenView( ! __in LPCWSTR wzSql, ! __out MSIHANDLE* phView ) { *************** *** 287,292 **** ********************************************************************/ extern "C" HRESULT WcaExecuteView( ! IN MSIHANDLE hView, ! IN MSIHANDLE hRec ) { --- 287,292 ---- ********************************************************************/ extern "C" HRESULT WcaExecuteView( ! __in MSIHANDLE hView, ! __in MSIHANDLE hRec ) { *************** *** 310,315 **** ********************************************************************/ extern "C" HRESULT WcaOpenExecuteView( ! IN LPCWSTR wzSql, ! OUT MSIHANDLE* phView ) { --- 310,315 ---- ********************************************************************/ extern "C" HRESULT WcaOpenExecuteView( ! __in LPCWSTR wzSql, ! __out MSIHANDLE* phView ) { *************** *** 336,341 **** ********************************************************************/ extern "C" HRESULT WcaFetchRecord( ! IN MSIHANDLE hView, ! OUT MSIHANDLE* phRec ) { --- 336,341 ---- ********************************************************************/ extern "C" HRESULT WcaFetchRecord( ! __in MSIHANDLE hView, ! __out MSIHANDLE* phRec ) { *************** *** 359,364 **** ********************************************************************/ extern "C" HRESULT WcaFetchSingleRecord( ! IN MSIHANDLE hView, ! OUT MSIHANDLE* phRec ) { --- 359,364 ---- ********************************************************************/ extern "C" HRESULT WcaFetchSingleRecord( ! __in MSIHANDLE hView, ! __out MSIHANDLE* phRec ) { *************** *** 391,396 **** ********************************************************************/ extern "C" HRESULT WcaGetProperty( ! IN LPCWSTR wzProperty, ! IN OUT LPWSTR* ppwzData ) { --- 391,396 ---- ********************************************************************/ extern "C" HRESULT WcaGetProperty( ! __in LPCWSTR wzProperty, ! __inout LPWSTR* ppwzData ) { *************** *** 400,408 **** HRESULT hr = S_OK; UINT er = ERROR_SUCCESS; ! DWORD cch = 0; if (!*ppwzData) { ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, L"", &cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { --- 400,408 ---- HRESULT hr = S_OK; UINT er = ERROR_SUCCESS; ! DWORD_PTR cch = 0; if (!*ppwzData) { ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, L"", (DWORD *)&cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { *************** *** 419,423 **** } ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, *ppwzData, &cch); if (ERROR_MORE_DATA == er) { --- 419,423 ---- } ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, *ppwzData, (DWORD *)&cch); if (ERROR_MORE_DATA == er) { *************** *** 426,430 **** ExitOnFailure1(hr, "Failed to allocate string for Property '%S'", wzProperty); ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, *ppwzData, &cch); } hr = HRESULT_FROM_WIN32(er); --- 426,430 ---- ExitOnFailure1(hr, "Failed to allocate string for Property '%S'", wzProperty); ! er = ::MsiGetPropertyW(WcaGetInstallHandle(), wzProperty, *ppwzData, (DWORD *)&cch); } hr = HRESULT_FROM_WIN32(er); *************** *** 442,447 **** ********************************************************************/ extern "C" HRESULT WcaGetFormattedProperty( ! IN LPCWSTR wzProperty, ! OUT LPWSTR* ppwzData ) { --- 442,447 ---- ********************************************************************/ extern "C" HRESULT WcaGetFormattedProperty( ! __in LPCWSTR wzProperty, ! __out LPWSTR* ppwzData ) { *************** *** 471,476 **** ********************************************************************/ extern "C" HRESULT WcaGetFormattedString( ! IN LPCWSTR wzString, ! OUT LPWSTR* ppwzData ) { --- 471,476 ---- ********************************************************************/ extern "C" HRESULT WcaGetFormattedString( ! __in LPCWSTR wzString, ! __out LPWSTR* ppwzData ) { *************** *** 481,485 **** UINT er = ERROR_SUCCESS; PMSIHANDLE hRecord = ::MsiCreateRecord(1); ! DWORD cch = 0; er = ::MsiRecordSetStringW(hRecord, 0, wzString); --- 481,485 ---- UINT er = ERROR_SUCCESS; PMSIHANDLE hRecord = ::MsiCreateRecord(1); ! DWORD_PTR cch = 0; er = ::MsiRecordSetStringW(hRecord, 0, wzString); *************** *** 488,492 **** if (!*ppwzData) { ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, L"", &cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { --- 488,492 ---- if (!*ppwzData) { ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, L"", (DWORD *)&cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { *************** *** 503,507 **** } ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, *ppwzData, &cch); if (ERROR_MORE_DATA == er) { --- 503,507 ---- } ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, *ppwzData, (DWORD *)&cch); if (ERROR_MORE_DATA == er) { *************** *** 509,513 **** ExitOnFailure1(hr, "Failed to allocate string for formatted string: '%S'", wzString); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, *ppwzData, &cch); } ExitOnFailure1(hr = HRESULT_FROM_WIN32(er), "Failed to get formatted string: '%S'", wzString); --- 509,513 ---- ExitOnFailure1(hr, "Failed to allocate string for formatted string: '%S'", wzString); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecord, *ppwzData, (DWORD *)&cch); } ExitOnFailure1(hr = HRESULT_FROM_WIN32(er), "Failed to get formatted string: '%S'", wzString); *************** *** 523,528 **** ********************************************************************/ extern "C" HRESULT WcaGetIntProperty( ! IN LPCWSTR wzProperty, ! IN OUT int* piData ) { --- 523,528 ---- ********************************************************************/ extern "C" HRESULT WcaGetIntProperty( ! __in LPCWSTR wzProperty, ! __inout int* piData ) { *************** *** 552,557 **** ********************************************************************/ extern "C" HRESULT WcaGetTargetPath( ! LPCWSTR wzFolder, ! LPWSTR* ppwzData ) { --- 552,557 ---- ********************************************************************/ extern "C" HRESULT WcaGetTargetPath( ! __in LPCWSTR wzFolder, ! __out LPWSTR* ppwzData ) { *************** *** 562,570 **** UINT er = ERROR_SUCCESS; ! DWORD cch = 0; if (!*ppwzData) { ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, L"", &cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { --- 562,570 ---- UINT er = ERROR_SUCCESS; ! DWORD_PTR cch = 0; if (!*ppwzData) { ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, L"", (DWORD*)&cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { *************** *** 582,586 **** } ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, *ppwzData, &cch); if (ERROR_MORE_DATA == er) { --- 582,586 ---- } ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, *ppwzData, (DWORD*)&cch); if (ERROR_MORE_DATA == er) { *************** *** 589,593 **** ExitOnFailure1(hr, "Failed to allocate string for target path of folder: '%S'", wzFolder); ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, *ppwzData, &cch); } ExitOnFailure1(hr = HRESULT_FROM_WIN32(er), "Failed to get target path for folder '%S'", wzFolder); --- 589,593 ---- ExitOnFailure1(hr, "Failed to allocate string for target path of folder: '%S'", wzFolder); ! er = ::MsiGetTargetPathW(WcaGetInstallHandle(), wzFolder, *ppwzData, (DWORD*)&cch); } ExitOnFailure1(hr = HRESULT_FROM_WIN32(er), "Failed to get target path for folder '%S'", wzFolder); *************** *** 603,608 **** ********************************************************************/ extern "C" HRESULT WcaSetProperty( ! IN LPCWSTR wzPropertyName, ! IN LPCWSTR wzPropertyValue ) { --- 603,608 ---- ********************************************************************/ extern "C" HRESULT WcaSetProperty( ! __in LPCWSTR wzPropertyName, ! __in LPCWSTR wzPropertyValue ) { *************** *** 624,629 **** ********************************************************************/ extern "C" HRESULT WcaSetIntProperty( ! IN LPCWSTR wzPropertyName, ! IN int nPropertyValue ) { --- 624,629 ---- ********************************************************************/ extern "C" HRESULT WcaSetIntProperty( ! __in LPCWSTR wzPropertyName, ! __in int nPropertyValue ) { *************** *** 650,654 **** ********************************************************************/ extern "C" BOOL WcaIsPropertySet( ! IN LPCSTR szProperty ) { --- 650,654 ---- ********************************************************************/ extern "C" BOOL WcaIsPropertySet( ! __in LPCSTR szProperty ) { *************** *** 667,673 **** ********************************************************************/ extern "C" HRESULT WcaGetRecordInteger( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT int* piData ) { --- 667,673 ---- ********************************************************************/ extern "C" HRESULT WcaGetRecordInteger( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout int* piData ) { *************** *** 690,696 **** ********************************************************************/ extern "C" HRESULT WcaGetRecordString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT LPWSTR* ppwzData ) { --- 690,696 ---- ********************************************************************/ extern "C" HRESULT WcaGetRecordString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout LPWSTR* ppwzData ) { *************** *** 700,708 **** HRESULT hr = S_OK; UINT er; ! DWORD cch = 0; if (!*ppwzData) { ! er = ::MsiRecordGetStringW(hRec, uiField, L"", &cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { --- 700,708 ---- HRESULT hr = S_OK; UINT er; ! DWORD_PTR cch = 0; if (!*ppwzData) { ! er = ::MsiRecordGetStringW(hRec, uiField, L"", (DWORD*)&cch); if (ERROR_MORE_DATA == er || ERROR_SUCCESS == er) { *************** *** 719,723 **** } ! er = ::MsiRecordGetStringW(hRec, uiField, *ppwzData, &cch); if (ERROR_MORE_DATA == er) { --- 719,723 ---- } ! er = ::MsiRecordGetStringW(hRec, uiField, *ppwzData, (DWORD*)&cch); if (ERROR_MORE_DATA == er) { *************** *** 725,729 **** ExitOnFailure(hr, "Failed to allocate memory for record string"); ! er = ::MsiRecordGetStringW(hRec, uiField, *ppwzData, &cch); } hr = HRESULT_FROM_WIN32(er); --- 725,729 ---- ExitOnFailure(hr, "Failed to allocate memory for record string"); ! er = ::MsiRecordGetStringW(hRec, uiField, *ppwzData, (DWORD*)&cch); } hr = HRESULT_FROM_WIN32(er); *************** *** 740,744 **** ********************************************************************/ static void HideNulls( ! IN LPWSTR wzData ) { --- 740,744 ---- ********************************************************************/ static void HideNulls( ! __in LPWSTR wzData ) { *************** *** 765,769 **** ********************************************************************/ static void RevealNulls( ! IN LPWSTR wzData ) { --- 765,769 ---- ********************************************************************/ static void RevealNulls( ! __in LPWSTR wzData ) { *************** *** 790,796 **** ********************************************************************/ extern "C" HRESULT WcaGetRecordFormattedString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN OUT LPWSTR* ppwzData ) { --- 790,796 ---- ********************************************************************/ extern "C" HRESULT WcaGetRecordFormattedString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __inout LPWSTR* ppwzData ) { *************** *** 800,804 **** HRESULT hr = S_OK; UINT er; ! DWORD cch = 0; PMSIHANDLE hRecFormat; --- 800,804 ---- HRESULT hr = S_OK; UINT er; ! DWORD_PTR cch = 0; PMSIHANDLE hRecFormat; *************** *** 823,827 **** ExitOnFailure(hr, "failed to get max length of string"); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecFormat, *ppwzData, &cch); if (ERROR_MORE_DATA == er) { --- 823,827 ---- ExitOnFailure(hr, "failed to get max length of string"); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecFormat, *ppwzData, (DWORD*)&cch); if (ERROR_MORE_DATA == er) { *************** *** 829,833 **** ExitOnFailure(hr, "Failed to allocate memory for record string"); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecFormat, *ppwzData, &cch); } hr = HRESULT_FROM_WIN32(er); --- 829,833 ---- ExitOnFailure(hr, "Failed to allocate memory for record string"); ! er = ::MsiFormatRecordW(WcaGetInstallHandle(), hRecFormat, *ppwzData, (DWORD*)&cch); } hr = HRESULT_FROM_WIN32(er); *************** *** 848,853 **** ********************************************************************/ extern "C" HRESULT WcaAllocStream( ! IN OUT BYTE** ppbData, ! IN DWORD cbData ) { --- 848,853 ---- ********************************************************************/ extern "C" HRESULT WcaAllocStream( ! __inout BYTE** ppbData, ! __in DWORD cbData ) { *************** *** 880,884 **** ********************************************************************/ extern "C" HRESULT WcaFreeStream( ! IN BYTE* pbData ) { --- 880,884 ---- ********************************************************************/ extern "C" HRESULT WcaFreeStream( ! __in BYTE* pbData ) { *************** *** 896,903 **** ********************************************************************/ extern "C" HRESULT WcaGetRecordStream( ! IN MSIHANDLE hRecBinary, ! IN UINT uiField, ! IN OUT BYTE** ppbData, ! IN OUT DWORD* pcbData ) { --- 896,903 ---- ********************************************************************/ extern "C" HRESULT WcaGetRecordStream( ! __in MSIHANDLE hRecBinary, ! __in UINT uiField, ! __inout BYTE** ppbData, ! __inout DWORD* pcbData ) { *************** *** 930,936 **** ********************************************************************/ extern "C" HRESULT WcaSetRecordString( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN LPCWSTR wzData ) { --- 930,936 ---- ********************************************************************/ extern "C" HRESULT WcaSetRecordString( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __in LPCWSTR wzData ) { *************** *** 953,959 **** ********************************************************************/ extern "C" HRESULT WcaSetRecordInteger( ! IN MSIHANDLE hRec, ! IN UINT uiField, ! IN int iValue ) { --- 953,959 ---- ********************************************************************/ extern "C" HRESULT WcaSetRecordInteger( ! __in MSIHANDLE hRec, ! __in UINT uiField, ! __in int iValue ) { *************** *** 972,982 **** /******************************************************************** WcaDoDeferredAction() - schedules an action at this point in the script ********************************************************************/ extern "C" HRESULT WcaDoDeferredAction( ! IN LPCWSTR wzAction, ! IN LPCWSTR wzCustomActionData, ! IN UINT uiCost ) { --- 972,983 ---- /******************************************************************** + WcaDoDeferredAction() - schedules an action at this point in the script ********************************************************************/ extern "C" HRESULT WcaDoDeferredAction( ! __in LPCWSTR wzAction, ! __in LPCWSTR wzCustomActionData, ! __in UINT uiCost ) { *************** *** 1012,1016 **** ********************************************************************/ extern "C" DWORD WcaCountOfCustomActionDataRecords( ! IN LPCWSTR wzData ) { --- 1013,1017 ---- ********************************************************************/ extern "C" DWORD WcaCountOfCustomActionDataRecords( ! __in LPCWSTR wzData ) { *************** *** 1038,1042 **** ********************************************************************/ static LPWSTR BreakDownCustomActionData( ! IN OUT LPWSTR* ppwzData ) { --- 1039,1043 ---- ********************************************************************/ static LPWSTR BreakDownCustomActionData( ! __inout LPWSTR* ppwzData ) { *************** *** 1068,1073 **** ********************************************************************/ extern "C" HRESULT WcaReadStringFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! IN OUT LPWSTR* ppwzString ) { --- 1069,1074 ---- ********************************************************************/ extern "C" HRESULT WcaReadStringFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __inout LPWSTR* ppwzString ) { *************** *** 1093,1098 **** ********************************************************************/ extern "C" HRESULT WcaReadIntegerFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! IN OUT int* piResult ) { --- 1094,1099 ---- ********************************************************************/ extern "C" HRESULT WcaReadIntegerFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __inout int* piResult ) { *************** *** 1113,1119 **** ********************************************************************/ extern "C" HRESULT WcaReadStreamFromCaData( ! IN OUT LPWSTR* ppwzCustomActionData, ! OUT BYTE** ppbData, ! OUT DWORD* pcbData ) { --- 1114,1120 ---- ********************************************************************/ extern "C" HRESULT WcaReadStreamFromCaData( ! __inout LPWSTR* ppwzCustomActionData, ! __out BYTE** ppbData, ! __out DWORD_PTR* pcbData ) { *************** *** 1138,1143 **** ********************************************************************/ extern "C" HRESULT WcaWriteStringToCaData( ! IN LPCWSTR wzString, ! IN OUT LPWSTR* ppwzCustomActionData ) { --- 1139,1144 ---- ********************************************************************/ extern "C" HRESULT WcaWriteStringToCaData( ! __in LPCWSTR wzString, ! __inout LPWSTR* ppwzCustomActionData ) { *************** *** 1149,1153 **** DWORD cchString = lstrlenW(wzString) + 1; // assume we'll be adding the delim ! DWORD cchCustomActionData = 0; if (*ppwzCustomActionData) --- 1150,1154 ---- DWORD cchString = lstrlenW(wzString) + 1; // assume we'll be adding the delim ! DWORD_PTR cchCustomActionData = 0; if (*ppwzCustomActionData) *************** *** 1180,1185 **** ********************************************************************/ extern "C" HRESULT WcaWriteIntegerToCaData( ! IN int i, ! IN OUT LPWSTR* ppwzCustomActionData ) { --- 1181,1186 ---- ********************************************************************/ extern "C" HRESULT WcaWriteIntegerToCaData( ! __in int i, ! __inout LPWSTR* ppwzCustomActionData ) { *************** *** 1197,1203 **** ********************************************************************/ extern "C" HRESULT WcaWriteStreamToCaData( ! IN const BYTE* pbData, ! IN DWORD cbData, ! IN OUT LPWSTR* ppwzCustomActionData ) { --- 1198,1204 ---- ********************************************************************/ extern "C" HRESULT WcaWriteStreamToCaData( ! __in_bcount(cbData) const BYTE* pbData, ! __in DWORD cbData, ! __inout LPWSTR* ppwzCustomActionData ) { *************** *** 1219,1232 **** WcaAddTempRecord - adds a temporary record to the active database ! NOTE: you cannot use PMSIHANDLEs for the IN/OUT parameters NOTE: uiUniquifyColumn can be 0 if no column needs to be made unique ********************************************************************/ extern "C" HRESULT WcaAddTempRecord( ! IN OUT MSIHANDLE* phTableView, ! IN OUT MSIHANDLE* phColumns, ! IN LPCWSTR wzTable, ! IN UINT uiUniquifyColumn, ! IN UINT cColumns, ! IN ... ) { --- 1220,1233 ---- WcaAddTempRecord - adds a temporary record to the active database ! NOTE: you cannot use PMSIHANDLEs for the __in/__out parameters NOTE: uiUniquifyColumn can be 0 if no column needs to be made unique ********************************************************************/ extern "C" HRESULT WcaAddTempRecord( ! __inout MSIHANDLE* phTableView, ! __inout MSIHANDLE* phColumns, ! __in LPCWSTR wzTable, ! __in UINT uiUniquifyColumn, ! __in UINT cColumns, ! ... ) { Index: wcalog.cpp =================================================================== RCS file: /cvsroot/wix/wix/src/ca/wcautil/wcalog.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wcalog.cpp 2 May 2005 05:48:38 -0000 1.1 --- wcalog.cpp 18 Jan 2006 10:50:59 -0000 1.2 *************** *** 66,71 **** *******************************************************************/ extern "C" void WcaLog( ! IN LOGLEVEL llv, ! IN const char* fmt, ... ) { --- 66,71 ---- *******************************************************************/ extern "C" void WcaLog( ! __in LOGLEVEL llv, ! __in const char* fmt, ... ) { *************** *** 128,132 **** ********************************************************************/ extern "C" BOOL WcaDisplayAssert( ! IN LPCSTR sz ) { --- 128,132 ---- ********************************************************************/ extern "C" BOOL WcaDisplayAssert( ! __in LPCSTR sz ) { *************** *** 142,148 **** ********************************************************************/ extern "C" void WcaLogError( ! IN HRESULT hr, ! IN LPCSTR szMessage, ! IN ... ) { --- 142,148 ---- ********************************************************************/ extern "C" void WcaLogError( ! __in HRESULT hr, ! __in LPCSTR szMessage, ! ... ) { Index: precomp.h =================================================================== RCS file: /cvsroot/wix/wix/src/ca/wcautil/precomp.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** precomp.h 3 May 2005 15:18:43 -0000 1.2 --- precomp.h 18 Jan 2006 10:50:59 -0000 1.3 *************** *** 18,21 **** --- 18,22 ---- #include <windows.h> #include <msiquery.h> + #include <wchar.h> #include <strsafe.h> |