IDebugSymbols3::GetTypeId 方法 (dbgeng.h)
GetTypeId 方法查找指定的类型并返回其类型 ID。
语法
HRESULT GetTypeId(
[in] ULONG64 Module,
[in] PCSTR Name,
[out] PULONG TypeId
);
参数
[in] Module
指定类型所属模块的基址。 有关详细信息,请参阅 模块。 如果 名称 包含模块名称,则忽略 模块。
[in] Name
指定需要其类型 ID 的类型的名称。 如果 名称 是模块限定的名称(例如 mymodule!main),则忽略 Module 参数。
[out] TypeId
接收符号的类型 ID。
返回值
此方法也可能返回错误值。 有关详细信息,请参阅 返回值。
返回代码 | 描述 |
---|---|
|
该方法成功。 |
言论
如果指定的符号是一种类型,这些方法将返回该类型的类型 ID;否则,返回符号类型的类型 ID。
使用 typedef 定义类型的变量具有标识原始类型的类型 ID,而不是 typedef创建的类型。 在以下示例中,MyInstance 的类型 ID 对应于 myStruct 的名称(通过将类型 ID 传递给 GetTypeName可以看到此通信):
struct MyStruct { int a; };
typedef struct MyStruct MyType;
MyType MyInstance;
此外,为 myStruct 和 My Type 调用这些方法会分别生成对应于 MyStruct 和 MyType的类型 ID。
有关符号和符号名称的详细信息,请参阅 符号。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | dbgeng.h (包括 Dbgeng.h) |