Partager via


IDebugSymbols3 ::GetNearNameByOffset, méthode (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é à Décalage. S’il est positif, le moteur renvoie le symbole symboles Delta après le symbole situé à Offset. S’il est négatif, le moteur renvoie le symbole symboles Delta avant le symbole situé à Offset.

[out, optional] NameBuffer

Reçoit le nom du symbole. Le nom est qualifié par le module auquel appartient le symbole (par exemple, mymodule !main). Si NameBuffer est 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 du caractère de fin « \0 ».

[out, optional] NameSize

Reçoit la taille en caractères du nom du symbole. Cette taille inclut l’espace du caractère de fin « \0 ». Si NameSize est NULL, ces informations ne sont pas retournées.

[out, optional] Displacement

Reçoit la différence entre la valeur de offset et l’emplacement dans l’espace d’adressage mémoire de la cible du symbole. Si de déplacement est NULL, ces informations ne sont pas retournées.

Valeur de retour

Cette méthode peut également retourner d’autres valeurs d’erreur. Pour plus d’informations, consultez valeurs de retour.

Retourner le code Description
S_OK
La méthode a réussi.
S_FALSE
La méthode a réussi. Toutefois, la mémoire tampon n’était pas suffisamment grande pour contenir le nom du symbole afin qu’elle soit tronquée.
E_NOINTERFACE
Aucun symbole correspondant aux spécifications de offset de et Delta a été trouvé.

Remarques

En augmentant ou en réduisant 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.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête dbgeng.h (include Dbgeng.h)

Voir aussi

GetNameByOffset

GetOffsetByName

IDebugSymbols

IDebugSymbols2

IDebugSymbols3