共用方式為


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);
}

另請參閱