IDiaSession::findLinesByAddr
Récupère les lignes d’une compilation spécifiée et qui contiennent une adresse spécifiée.
Syntaxe
HRESULT findLinesByAddr (
DWORD seg,
DWORD offset,
DWORD length,
IDiaEnumLineNumbers** ppResult
);
Paramètres
seg
[in] Spécifie le composant de section de l’adresse spécifique.
offset
[in] Spécifie le composant de décalage de l’adresse spécifique.
length
[in] Spécifie le nombre d’octets de la plage d’adresses à couvrir avec cette requête.
ppResult
[sortie] Renvoie un objet IDiaEnumLineNumbers qui contient une liste de tous les numéros de ligne qui couvrent la plage d’adresses spécifiée.
Valeur renvoyée
En cas de réussite, retourne S_OK
, sinon, retourne un code d'erreur.
Exemple
Cet exemple montre une fonction qui obtient tous les numéros de ligne contenus dans une fonction à l’aide de l’adresse et de la longueur de la fonction.
IDiaEnumLineNumbers* GetLineNumbersByAddr(IDiaSymbol *pFunc,
IDiaSession *pSession)
{
IDiaEnumLineNumbers* pEnum = NULL;
DWORD seg;
DWORD offset;
ULONGLONG length;
if (pFunc->get_addressSection ( &seg ) == S_OK &&
pFunc->get_addressOffset ( &offset ) == S_OK)
{
pFunc->get_length ( &length );
pSession->findLinesByAddr( seg, offset, static_cast<DWORD>( length ), &pEnum );
}
return(pEnum);
}
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour