Partager via


IDiaSession::findLinesByVA

Récupère les informations de numéro de ligne pour les lignes contenues dans une plage d’adresses virtuelles (VA) spécifiée.

Syntaxe

HRESULT findLinesByVA (
    ULONGLONG             va,
    DWORD                 length,
    IDiaEnumLineNumbers** ppResult
);

Paramètres

va

[entrée] Spécifie l’adresse sous la forme d’une adresse virtuelle.

length

[entrée] Spécifie le nombre d’octets de la plage d’adresses à couvrir avec cette requête.

ppResult

[out] Retourne un IDiaEnumLineNumbers objet qui contient une liste de tous les numéros de ligne qui couvrent la plage d’adresses spécifiée.

Exemple

Cet exemple montre une fonction qui obtient tous les numéros de ligne contenus dans une fonction à l’aide de l’adresse virtuelle et de la longueur de la fonction.

IDiaEnumLineNumbers *GetLineNumbersByVA(IDiaSymbol *pFunc, IDiaSession *pSession)
{
    IDiaEnumLineNumbers* pEnum = NULL;
    ULONGLONG            va;
    ULONGLONG            length;

    if (pFunc->get_virtualAddress ( &va ) == S_OK)
    {
        pFunc->get_length( &length );
        pSession->findLinesByVA( va, static_cast<DWORD>( length ), &pEnum );
    }
    return(pEnum);
}

Voir aussi