internal MiniDumpHeader(MINIDUMP_HEADER header, MINIDUMP_DIRECTORY[] directoryEntries, MiniDumpFile miniDumpFile) { _header = header; _owner = miniDumpFile; _directoryEntries = new List <MiniDumpDirectory>(directoryEntries.Select(x => new MiniDumpDirectory(x))); }
internal MiniDumpHandleObjectInformation(uint objectInfoRva, MiniDumpFile owner) { _objectInfoRva = objectInfoRva; _handleObjectInformation = owner.ReadStructure <MINIDUMP_HANDLE_OBJECT_INFORMATION>(objectInfoRva); _owner = owner; _nextInfo = null; }
internal MiniDumpExceptionStream(MINIDUMP_EXCEPTION_STREAM exceptionStream, MiniDumpFile owner) { _exceptionStream = exceptionStream; _owner = owner; _exceptionRecord = new MiniDumpException(exceptionStream.ExceptionRecord, owner); _threadContext = new MiniDumpLocationDescriptor(exceptionStream.ThreadContext); }
internal MiniDumpSystemMemoryInfo(MINIDUMP_SYSTEM_MEMORY_INFO_1 systemMemoryInfo, MiniDumpFile owner) { _systemMemoryInfo = systemMemoryInfo; _owner = owner; _systemBasicInformation = new MiniDumpSystemBasicInformation(systemMemoryInfo.BasicInfo, owner); _systemFileCacheInformation = new MiniDumpSystemFileCacheInformation(systemMemoryInfo.FileCacheInfo, owner); _systemBasicPerformanceInformation = new MiniDumpSystemBasicPerformanceInformation(systemMemoryInfo.BasicPerfInfo, owner); _systemPerformanceInformation = new MiniDumpSystemPerformanceInformation(systemMemoryInfo.PerfInfo, owner); }
internal MiniDumpSystemInfoStream(MINIDUMP_SYSTEM_INFO systemInfo, MiniDumpFile owner) { _systemInfo = systemInfo; _owner = owner; if (this.ProcessorArchitecture == MiniDumpProcessorArchitecture.PROCESSOR_ARCHITECTURE_INTEL) { this._x86CpuInfo = new X86CpuInfo(_systemInfo.Cpu); } else { this._otherCpuInfo = new OtherCpuInfo(_systemInfo.Cpu); } }
internal unsafe MiniDumpException(MINIDUMP_EXCEPTION exception, MiniDumpFile owner) { _exception = exception; _owner = owner; // Can't generate test data for this, so won't implement it yet. ExceptionRecord doesn't seem to be an RVA? //if (exception.ExceptionRecord != 0) //{ // MINIDUMP_EXCEPTION exceptionRecored = owner.ReadStructure<MINIDUMP_EXCEPTION>(exception.ExceptionRecord); // _exceptionRecord = new MiniDumpException(exceptionRecored); //} _exceptionInformation = new UInt64[windows.EXCEPTION_MAXIMUM_PARAMETERS]; for (int i = 0; i < windows.EXCEPTION_MAXIMUM_PARAMETERS; i++) { _exceptionInformation[i] = exception.ExceptionInformation[i]; } }
internal MiniDumpHandleDescriptor(Native.MINIDUMP_HANDLE_DESCRIPTOR_2 handleDescriptor, MiniDumpFile owner) { _handleDescriptor2 = handleDescriptor; _owner = owner; _isHandleType2 = true; }
internal MiniDumpHandleDescriptor(MINIDUMP_HANDLE_DESCRIPTOR handleDescriptor, MiniDumpFile owner) { _handleDescriptor = handleDescriptor; _owner = owner; _isHandleType2 = false; }
internal MiniDumpThreadName(MINIDUMP_THREAD_NAME threadName, MiniDumpFile owner) { this._threadName = threadName; this._owner = owner; }
internal MiniDumpSystemFileCacheInformation(MINIDUMP_SYSTEM_FILECACHE_INFORMATION systemFileCacheInformation, MiniDumpFile owner) { _systemFileCacheInformation = systemFileCacheInformation; _owner = owner; }
internal MiniDumpThreadNamesStream(MINIDUMP_THREAD_NAME_LIST threadNamesList, MINIDUMP_THREAD_NAME[] threadNameEntries, MiniDumpFile owner) { _threadNamesList = threadNamesList; _threadNameEntries = new List <MiniDumpThreadName>(threadNameEntries.Select(x => new MiniDumpThreadName(x, owner))); }
internal MiniDumpSystemPerformanceInformation(MINIDUMP_SYSTEM_PERFORMANCE_INFORMATION systemPerformanceInformation, MiniDumpFile owner) { _systemPerformanceInformation = systemPerformanceInformation; _owner = owner; }
internal MiniDumpSystemBasicInformation(MINIDUMP_SYSTEM_BASIC_INFORMATION systemBasicInformation, MiniDumpFile owner) { _systemBasicInformation = systemBasicInformation; _owner = owner; }
internal MiniDumpUnloadedModule(MINIDUMP_UNLOADED_MODULE unloadedModule, MiniDumpFile owner) { _unloadedModule = unloadedModule; _owner = owner; }
/// <summary> /// Initialise a new MiniDumpUnloadedModulesStream instance with the unloaded module information provided. /// </summary> /// <param name="unloadedModuleList">Unloaded modules minidump stream header.</param> /// <param name="unloadedModules">An array of the unloaded module information.</param> /// <param name="owner">Minidump file this stream was read from.</param> internal MiniDumpUnloadedModulesStream(MINIDUMP_UNLOADED_MODULE_LIST unloadedModuleList, MINIDUMP_UNLOADED_MODULE[] unloadedModules, MiniDumpFile owner) { _unloadedModuleList = unloadedModuleList; _entries = new List <MiniDumpUnloadedModule>(unloadedModules.Select(x => new MiniDumpUnloadedModule(x, owner))); }
internal MiniDumpModule(MINIDUMP_MODULE module, MiniDumpFile owner) { _owner = owner; _module = module; }