IDiaSession::symbolById

Récupère un symbole par son identificateur unique.

Syntaxe

HRESULT symbolById (
    DWORD        id,
    IDiaSymbol** ppSymbol
);

Paramètres

id

[in] Identificateur unique.

ppSymbol

[sortie] Renvoie un objet IDiaSymbol qui représente le symbole récupéré.

Valeur renvoyée

En cas de réussite, retourne S_OK , sinon, retourne un code d'erreur.

Remarques

L’identificateur spécifié est une valeur unique utilisée en interne par le SDK DIA pour rendre tous les symboles uniques.

Cette méthode peut être utilisée, par exemple, pour récupérer le symbole représentant le type d’un autre symbole (voir l’exemple).

Exemple

Cet exemple récupère un IDiaSymbol représentant le type d’un autre symbole. Cet exemple montre comment utiliser la méthode symbolById dans la session. Une approche plus simple consiste à appeler la méthode IDiaSymbol::get_type pour récupérer directement le symbole de 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);
}

Voir aussi