Hi,
I'm trying to build the Mini-XML DLL http://www.minixml.org (http://www.minixml.org) with PellesC 5.0.8.
After some minor changes in config.h and mxml.def the compilation works fine. I linked with the "multithreaded LIB" setting, so I don't have an external DLL dependency.
Then within another project I built the according test application "TESTMXML". Same settings as above. Translation went fine.
If I start the debugger I get the following message "ODS: Invalid Address specified to RtlFreeHeap( 00340000, 00410218 )".
If I build the DLL and the EXE with the setting "multithreaded DLL", the test suite works well.
So does my DLL depend on the pocrt DLL ?
If you like I can send a ZIP file with the projects.
Thanks
Loo
Well, the ODS (="OutputDebugString") from RtlFreeHeap() must come from an internal Windows call, possibly the result of a C runtime function like free() calling HeapFree(). This probably means that HeapFree()/RtlFreeHeap() don't think the memory was allocated by HeapAlloc()/Rtl???().
Possibly there is a case like: the EXE is allocating some memory that the DLL is later attempting to free (or vice verca), and since the pocrt*.dll isn't used they will not have a common/'shared' HEAP ?!
http://blogs.msdn.com/oldnewthing/archive/2006/09/15/755966.aspx (http://blogs.msdn.com/oldnewthing/archive/2006/09/15/755966.aspx)
http://msdn.microsoft.com/en-us/library/ms235460%28VS.80%29.aspx (http://msdn.microsoft.com/en-us/library/ms235460%28VS.80%29.aspx)
thanks for the answers