IDiaSession::symbolById
Ruft ein Symbol anhand seines eindeutigen Bezeichners ab.
Syntax
HRESULT symbolById (
DWORD id,
IDiaSymbol** ppSymbol
);
Parameter
id
[in] Eindeutiger Bezeichner.
ppSymbol
[out] Gibt ein IDiaSymbol-Objekt zurück, das das abgerufene Symbol darstellt.
Rückgabewert
Wenn die Ausführung erfolgreich ist, wird S_OK
, andernfalls ein Fehlercode zurückgegeben.
Bemerkungen
Der angegebene Bezeichner ist ein eindeutiger Wert, der intern vom DIA SDK verwendet wird, um alle Symbole eindeutig zu machen.
Diese Methode kann beispielsweise verwendet werden, um das Symbol abzurufen, das den Typ eines anderen Symbols darstellt (siehe Beispiel).
Beispiel
In diesem Beispiel wird ein IDiaSymbol abgerufen, das den Typ eines anderen Symbols darstellt. In diesem Beispiel wird die Verwendung der symbolById
-Methode in dieser Sitzung veranschaulicht. Ein einfacherer Ansatz besteht darin, die IDiaSymbol::get_type-Methode aufzurufen, um das Typsymbol direkt abzurufen.
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);
}