Crashpad
Public Attributes | List of all members
MINIDUMP_MODULE Struct Reference

Information about a specific module loaded within the process at the time the snapshot was taken. More...

#include "dbghelp.h"

Public Attributes

uint64_t BaseOfImage
 The base address of the loaded module in the address space of the process that the minidump file contains a snapshot of.
 
uint32_t SizeOfImage
 The size of the loaded module.
 
uint32_t CheckSum
 The loaded module’s checksum, or 0 if unknown. More...
 
uint32_t TimeDateStamp
 The module’s timestamp, in time_t units, seconds since the POSIX epoch, or 0 if unknown. More...
 
RVA ModuleNameRva
 RVA of a MINIDUMP_STRING containing the module’s path or file name.
 
VS_FIXEDFILEINFO VersionInfo
 The module’s version information.
 
MINIDUMP_LOCATION_DESCRIPTOR CvRecord
 A pointer to the module’s CodeView record, typically a link to its debugging information in crashpad::CodeViewRecordPDB70 format. More...
 
MINIDUMP_LOCATION_DESCRIPTOR MiscRecord
 A pointer to the module’s miscellaneous debugging record, a structure of type IMAGE_DEBUG_MISC. More...
 
uint64_t Reserved0
 
uint64_t Reserved1
 

Detailed Description

Information about a specific module loaded within the process at the time the snapshot was taken.

A module may be the main executable, a shared library, or a loadable module.

See also
MINIDUMP_MODULE_LIST

Member Data Documentation

◆ CheckSum

uint32_t MINIDUMP_MODULE::CheckSum

The loaded module’s checksum, or 0 if unknown.

On Windows, this field comes from the CheckSum field of the module’s IMAGE_OPTIONAL_HEADER structure, if present. It reflects the checksum at the time the module was linked.

◆ CvRecord

MINIDUMP_LOCATION_DESCRIPTOR MINIDUMP_MODULE::CvRecord

A pointer to the module’s CodeView record, typically a link to its debugging information in crashpad::CodeViewRecordPDB70 format.

The specific format of the CodeView record is indicated by its signature, the first 32-bit value in the structure. For links to debugging information in contemporary usage, this is normally a crashpad::CodeViewRecordPDB70 structure, but may be a crashpad::CodeViewRecordPDB20 structure instead. These structures identify a link to debugging data within a .pdb (Program Database) file. See Matching Debug Information, PDB Files.

On Windows, it is also possible for the CodeView record to contain debugging information itself, as opposed to a link to a .pdb file. See Microsoft Symbol and Type Information, section 7.2, “Debug Information Format” for a list of debug information formats, and Undocumented Windows 2000 Secrets, Windows 2000 Debugging Support/Microsoft Symbol File Internals/CodeView Subsections for an in-depth description of the CodeView 4.1 format. Signatures seen in the wild include “NB09” (0x3930424e) for CodeView 4.1 and “NB11” (0x3131424e) for CodeView 5.0. This form of debugging information within the module, as opposed to a link to an external .pdb file, is chosen by building with /Z7 in Visual Studio 6.0 (1998) and earlier. This embedded form of debugging information is now considered obsolete.

On Windows, the CodeView record is taken from a module’s IMAGE_DEBUG_DIRECTORY entry whose Type field has the value IMAGE_DEBUG_TYPE_CODEVIEW (2), if any. Records in crashpad::CodeViewRecordPDB70 format are generated by Visual Studio .NET (2002) (version 7.0) and later.

When the CodeView record is not present, the fields of this MINIDUMP_LOCATION_DESCRIPTOR will be 0.

◆ MiscRecord

MINIDUMP_LOCATION_DESCRIPTOR MINIDUMP_MODULE::MiscRecord

A pointer to the module’s miscellaneous debugging record, a structure of type IMAGE_DEBUG_MISC.

This field is Windows-specific, and has no meaning on other operating systems. It is largely obsolete on Windows, where it was used to link to debugging information stored in a .dbg file. .dbg files have been superseded by .pdb files.

On Windows, the miscellaneous debugging record is taken from module’s IMAGE_DEBUG_DIRECTORY entry whose Type field has the value IMAGE_DEBUG_TYPE_MISC (4), if any.

When the miscellaneous debugging record is not present, the fields of this MINIDUMP_LOCATION_DESCRIPTOR will be 0.

See also
CvRecord

◆ TimeDateStamp

uint32_t MINIDUMP_MODULE::TimeDateStamp

The module’s timestamp, in time_t units, seconds since the POSIX epoch, or 0 if unknown.

On Windows, this field comes from the TimeDateStamp field of the module’s IMAGE_FILE_HEADER structure. It reflects the timestamp at the time the module was linked.


The documentation for this struct was generated from the following file: