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

另请参阅