2012/3/13 Earnie Boyd <[email protected]>: > On Tue, Mar 13, 2012 at 4:41 AM, Vincent Torri <[email protected]> > wrote: >> Hey, >> >> I'm trying to get the callstack of programs, so I try to use dbghelp. >> The code is here: >> >> http://codepad.org/wAhYYChY >> >> compilation is fine (see the first line to see how I compile it with >> mingw). I use mingw-w64, Windows XP SP2 running in virtualbox. >> >> The binary compiled with Visual Studio 2008 express is working correctly >> The binary compiled with mingw gives the following errors : >> >> SymGetSymFromAddr64() failed ( 487) Attempt to access invalid address. >> SymGetLineFromAddr64() failed ( 487) Attempt to access invalid address. >> > > MSDN says "Note This function is provided only for compatibility. > Applications should use SymFromAddr." > > How would these work in a 32 bit platform? Examples on MSDN suggest > that it wouldn't. > > -- > Earnie
Correct, Use here SysFromAddr. Nevertheless the underlying issue here is that dbghelp API depends internally on MS generated CV information for providing more detailed information. So I assume the access-violation you see is caused by invalid lookup for those tables. Regards, Kai PS: Your to be "fixed" cast should use instead of (DWORD) the (DWORD_PTR) cast. ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
