dbgeng.symbols

The symbols functions are accessible from the global dbgeng.symbols table, and represent the functions from the IDebugSymbols interfaces of the dbgeng COM API.

Functions

dbgeng.symbols.create_symbol_group() → dbgeng.symbolgroup

Creates a new symbol group. See CreateSymbolGroup2.

Return type:dbgeng.symbolgroup
dbgeng.symbols.get_module_name_string(which, index, base) → string

Returns the name of the specified module. See GetModuleNameString.

Parameters:
  • which (integer) – which of the module’s names to return; should be a value from the modname table
  • index (integer) – index of the module; if set to dbgeng.ANY_ID, the base parameter is used instead
  • base (integer) – if the index paramate is dbgeng.ANY_ID, specifies the module base address; otherwise, it’s ignored
Returns:

name of the specified module

dbgeng.symbols.get_symbol_type_id(symbol) → integer, integer

Returns the module and type id for a symbol. See GetSymbolTypeId.

Parameters:symbol (string) – expression of the symbol whose type id is requested
Returns:two values, the first being the module base address containing the symbol; the second being the type id for the given expression
dbgeng.symbols.get_type_id(module, name) → integer

Returns the type id for a type given its module and name. See GetTypeId.

Parameters:
  • module (integer) – module base address of the module to which the type belongs
  • name (string) – type name or symbol expression whose type id is requested
Returns:

type id of the symbol

dbgeng.symbols.get_type_name(module, typeid) → string

Returns the name of a type specified by its module and type id. See GetTypeName.

Parameters:
  • module (integer) – module base address of the module to which the type belongs
  • typeid (integer) – specifies the type id of the type
Returns:

name of the type

dbgeng.symbols.get_type_size(module, typeid) → integer

Returns the size of a type specified by its module and type id. See GetTypeSize.

Parameters:
  • module (integer) – module base address of the module to which the type belongs
  • typeid (integer) – specifies the type id of the type
Returns:

number of bytes of memory an instance of the specified type requires

Other

dbgeng.symbols.modname

Table containing values that control the operation of get_module_name_string(). Contains the following values:

  • IMAGE : image name; this is the name of the executable file, including the extension
  • MODULE : module name; this is usually just the file name without the extension
  • LOADED_IMAGE : loaded image name; unless Microsoft CodeView symbols are present, this is the same as the image name
  • SYMBOL_FILE : symbol file name; the path and name of the symbol file; if no symbols have been loaded, this is the name of the executable file instead
  • MAPPED_IMAGE : mapped image name; in most cases, this is NULL; if the debugger is mapping an image file (for example, during minidump debugging), this is the name of the mapped image

See table in the documentation for GetModuleNameString.