Méthode IDebugSymbols2 ::GetNearNameByOffset (dbgeng.h)
La méthode GetNearNameByOffset retourne le nom d’un symbole situé près de l’emplacement spécifié.
Syntaxe
HRESULT GetNearNameByOffset(
[in] ULONG64 Offset,
[in] LONG Delta,
[out, optional] PSTR NameBuffer,
[in] ULONG NameBufferSize,
[out, optional] PULONG NameSize,
[out, optional] PULONG64 Displacement
);
Paramètres
[in] Offset
Spécifie l’emplacement dans l’espace d’adressage virtuel de la cible du symbole à partir duquel le symbole souhaité est déterminé.
[in] Delta
Spécifie la relation entre le symbole souhaité et le symbole situé dans Décalage. Si la valeur est positive, le moteur retourne le symbole delta après le symbole situé dans Décalage. S’il est négatif, le moteur retourne le symbole delta avant le symbole situé dans Décalage.
[out, optional] NameBuffer
Reçoit le nom du symbole. Le nom est qualifié par le module auquel le symbole appartient (par exemple, mymodule !main). Si NameBuffer a la valeur NULL, ces informations ne sont pas retournées.
[in] NameBufferSize
Spécifie la taille en caractères de la mémoire tampon NameBuffer. Cette taille inclut l’espace pour le caractère de fin « \0 ».
[out, optional] NameSize
Reçoit la taille en caractères du nom du symbole. Cette taille inclut l’espace pour le caractère de fin « \0 ». Si NameSize a la valeur NULL, ces informations ne sont pas retournées.
[out, optional] Displacement
Reçoit la différence entre la valeur Offset et l’emplacement dans l’espace d’adressage mémoire de la cible du symbole. Si Déplacement a la valeur NULL, ces informations ne sont pas retournées.
Valeur retournée
Cette méthode peut également retourner d’autres valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour .
Code de retour | Description |
---|---|
|
La méthode a réussi. |
|
La méthode a réussi. Toutefois, la mémoire tampon n’étant pas assez grande pour contenir le nom du symbole, elle a été tronquée. |
|
Aucun symbole correspondant aux spécifications de Offset et Delta n’a été trouvé. |
Remarques
En augmentant ou en diminuant la valeur de Delta, ces méthodes peuvent être utilisées pour itérer sur les symboles de la cible à partir d’un emplacement particulier.
Si Delta est égal à zéro, ces méthodes se comportent de la même façon que GetNameByOffset.
Pour plus d’informations sur les symboles et les noms de symboles, consultez Symboles.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dbgeng.h (inclure Dbgeng.h) |