c# - Getting handles data with MiniDump (DbgHelp.h) -
i struggling getting handles information via minidump (dbghelp.h).
i getting list of minidump_handle_descriptor_2
mapped file stream.. getting each descriptor minidump_handle_object_information
using objectinforva
field.
however cannot understand information minidump_handle_object_information
structure gives me, couldn't find examples on web extracting meaningful information minidump_handle_object_information
, , documentation not helpful.
how can use minidump_handle_object_information
structure data a human readable data? mean need it? 0 @ infotype
filed means - minihandleobjectinformationnone
.
minidump_handle_object_information struct:
public struct minidump_handle_object_information { public uint nextinforva; public minidump_handle_object_information_type infotype; public uint32 sizeofinfo; }
i've done experiment minidump_handle_object_information struct
when getting struct, capable of reading string rva address sizeofinfo
size. here allays getting 'directory' string on handles descriptors got...
link doc:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms680375(v=vs.85).aspx
any appreciated :)
my process, on trying apply it, uses waitformultipleobjects
, waitforsingleobject
kernel32
calls.
link implementation:
link windbg !handle
command output execute on same dump file: https://docs.google.com/document/d/1hjid-2dcm0azrg5a1p5vrcbsysu_vqhynxdbavxv29q/edit?usp=sharing
maybe issue don't set valid values minidump_handle_object_information_type enumeration, familiar reliable source enum values declaration? didn't found official.
just make clear.
in windbj, same information minidump_handle_descriptor_2, instance if windbg !handle command has output:
handle 00000004 type directory handle 00000008 type directory handle 0000000c type event handle 00000010 type event handle 00000014 type file …
i can getthe same data minidump_handle_descriptor_2
objectname , typename of minidump_string
type.
the information cannot 1 located in minidump_handle_object_information
struct. not visible on !hanlde
command output.
what kind of information suppose located in minidump_handle_object_information ?
after couple of rough hours - debugging managed code , comparing c++ code examples - found bug minidump_handle_object_information
struct reading – didn’t calculated rva + baseminidump
address appropriately.
now works, able of getting additional information handles :)
mu code can found here: https://github.com/pavel-durov/multithreading-debugging-asignments/blob/master/assignments/assignments.core/handlers/minidumphandler.cs
line 144, dealwithhandleinfo function
Comments
Post a Comment