Class DumpReader
Read contents of a minidump. If we have a 32-bit dump, then there's an addressing collision possible. OS debugging code sign extends 32 bit wide addresses into 64 bit wide addresses. The CLR does not sign extend, thus you cannot round-trip target addresses exposed by this class. Currently we read these addresses once and don't hand them back, so it's not an issue.
public sealed class DumpReader : IDisposable
- Inheritance
-
DumpReader
- Implements
Constructors
- DumpReader(string)
Constructor
Properties
- OSVersion
Operating system that the dump was taken on.
- OSVersionString
Friendly helper to get full OS version string (including CSDVersion) that the dump was taken on.
- ProcessorArchitecture
The processor architecture that this dump was taken on.
- Version
Version numbers of OS that this dump was taken on.
Methods
- Dispose()
Dispose method.
- EnumerateModules()
Enumerate all the modules in the dump.
- EnumerateThreads()
Enumerate all the native threads in the dump
- ExceptionStreamThreadId()
Return the TID from the exception stream.
- GetThread(int)
Get the thread for the given thread Id.
- IsExceptionStream()
Check on whether there's an exception stream in the dump
- LookupModule(string)
Lookup the first module in the target with a matching.
- ReadMemory(ulong, byte[])
Read memory from the dump file and copy into the buffer
- ReadMemory(ulong, int)
Read memory from the dump file and return results in newly allocated buffer
- ReadMemory(ulong, IntPtr, uint)
Read memory from target and copy it to the local buffer pointed to by destinationBuffer. Throw if any portion of the requested memory is unavailable.
- ReadPartialMemory(ulong, IntPtr, uint)
Read memory from target and copy it to the local buffer pointed to by destinationBuffer.
- ToString()
ToString override.
- TryLookupModuleByAddress(ulong)
Return the module containing the target address, or null if no match.