IDiaSession::symbolById
根據其唯一識別碼擷取符號。
語法
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);
}