Discussion:
StackWalk64 and address offset
(too old to reply)
y***@gmail.com
2007-11-14 23:14:53 UTC
Permalink
How do I use the StackWalk64 and get those address offset only from my
own modules? Currently I get back a lot address offset from the
NTDLL.dll and other modules.
Jochen Kalmbach [MVP]
2007-11-15 06:47:17 UTC
Permalink
Post by y***@gmail.com
How do I use the StackWalk64 and get those address offset only from my
own modules? Currently I get back a lot address offset from the
NTDLL.dll and other modules.
Just filter the addresses to your address-space...
StackWalk64 needs to walk the callstack... so there is no change to
"skip" some entries...
Please see also my example at:
http://www.codeproject.com/threads/StackWalker.asp
--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
y***@gmail.com
2007-11-15 18:55:02 UTC
Permalink
On Nov 14, 10:47 pm, "Jochen Kalmbach [MVP]" <nospam-
Post by Jochen Kalmbach [MVP]
Post by y***@gmail.com
How do I use the StackWalk64 and get those address offset only from my
own modules? Currently I get back a lot address offset from the
NTDLL.dll and other modules.
Just filter the addresses to your address-space...
StackWalk64 needs to walk the callstack... so there is no change to
"skip" some entries...
Please see also my example at:http://www.codeproject.com/threads/StackWalker.asp
--
Greetings
Jochen
My blog about Win32 and .NET
http://blog.kalmbachnet.de/
Yes, this is what I intend to do. In your example I didn't find which
part of the code do the filtering. How to filter the addresses to my
address-space? thanks.
Jochen Kalmbach [MVP]
2007-11-15 19:23:22 UTC
Permalink
Hi yalmin!
Post by y***@gmail.com
Post by Jochen Kalmbach [MVP]
Please see also my example at:http://www.codeproject.com/threads/StackWalker.asp
Yes, this is what I intend to do. In your example I didn't find which
part of the code do the filtering. How to filter the addresses to my
address-space? thanks.
Search for "LoadModule". The first call to this function will load the
"main" module (EXE). It passes "baseAddress" and "size"; with these two
parameters it is easy to check if the provided address is in this range.
--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
Loading...