由其唯一标识符检索符号。
HRESULT symbolById (
DWORD id,
IDiaSymbol** ppSymbol
);
参数
id
[in] 唯一标识符。ppSymbol
[out] 返回表示检索的符号的 IDiaSymbol 对象。
返回值
如果成功,则返回; S_OK否则,返回错误代码。
备注
该指定的标识符是 DIA SDK 在内部用于的唯一值使所有符号唯一。
此方法可用于,例如,检索表示另一个符号的类型符号 (参见示例)。
示例
此示例检索表示另一个符号的类型 IDiaSymbol 。此示例在会话中演示如何使用 symbolById 方法。一种更简单的方法是调用 IDiaSymbol::get_type 方法直接检索该类型符号。
IDiaSymbol *GetSymbolType(IDiaSymbol *pSymbol, IDiaSession *pSession)
{
IDiaSymbol *pTypeSymbol = NULL;
if (pSymbol != NULL && pSession != NULL)
{
DWORD symbolTypeId;
pSymbol->get_typeId(&symbolTypeId);
pSession->symbolById(symbolTypeId, &pTypeSymbol);
}
return(pTypeSymbol);
}