Метод IDebugSymbols::GetTypeId (dbgeng.h)

Метод GetTypeId ищет указанный тип и возвращает его идентификатор типа.

Синтаксис

HRESULT GetTypeId(
  [in]  ULONG64 Module,
  [in]  PCSTR   Name,
  [out] PULONG  TypeId
);

Параметры

[in] Module

Указывает базовый адрес модуля, которому принадлежит тип. Дополнительные сведения см. в модулях. Если имя содержит имя модуля, модуль игнорируется.

[in] Name

Указывает имя типа, идентификатор типа которого необходим. Если имя является именем модуля (например, mymodule!main), параметр module игнорируется.

[out] TypeId

Получает идентификатор типа символа.

Возвращаемое значение

Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в возвращаемых значений.

Возвращаемый код Описание
S_OK
Метод был успешным.

Замечания

Если указанный символ является типом, эти методы возвращают идентификатор типа для этого типа; в противном случае они возвращают идентификатор типа для типа символа.

Переменная, тип которой определен с помощью typedef имеет идентификатор типа, который определяет исходный тип, а не тип, созданный typedef. В следующем примере идентификатор типа MyInstance соответствует имени MyStruct (это соответствие можно увидеть путем передачи идентификатора типа GetTypeName):

struct MyStruct { int a; };
typedef struct MyStruct MyType;
MyType MyInstance;

Кроме того, вызов этих методов для MyStruct и MyType выдает идентификаторы типов, соответствующие MyStruct и MyTypeсоответственно.

Дополнительные сведения о символах и именах символов см. в символов.

Требования

Требование Ценность
целевая платформа Настольный
заголовка dbgeng.h (include Dbgeng.h)

См. также

GetOffsetTypeId

GetSymbolTypeId

IDebugSymbols

IDebugSymbols2

IDebugSymbols3