Freigeben über


IDebugSymbols2::GetNearNameByOffset-Methode (dbgeng.h)

Die GetNearNameByOffset Methode gibt den Namen eines Symbols zurück, das sich in der Nähe des angegebenen Speicherorts befindet.

Syntax

HRESULT GetNearNameByOffset(
  [in]            ULONG64  Offset,
  [in]            LONG     Delta,
  [out, optional] PSTR     NameBuffer,
  [in]            ULONG    NameBufferSize,
  [out, optional] PULONG   NameSize,
  [out, optional] PULONG64 Displacement
);

Parameter

[in] Offset

Gibt die Position im virtuellen Adressraum des Ziels des Symbols an, von dem das gewünschte Symbol bestimmt wird.

[in] Delta

Gibt die Beziehung zwischen dem gewünschten Symbol und dem Symbol an, das sich in Offset-befindet. Wenn das Modul positiv ist, gibt das Modul das Symbol zurück, das Delta--Symbole ist, nachdem sich das Symbol am Offset-befindet. Wenn das Modul negativ ist, gibt das Modul das Symbol zurück, das Delta--Symbole ist, bevor sich das Symbol in Offset-befindet.

[out, optional] NameBuffer

Empfängt den Namen des Symbols. Der Name wird durch das Modul qualifiziert, zu dem das Symbol gehört (z. B. mymodule!main). Wenn NameBuffer-NULL-ist, werden diese Informationen nicht zurückgegeben.

[in] NameBufferSize

Gibt die Größe in Zeichen des Puffers NameBuffer-an. Diese Größe enthält den Abstand für das Endzeichen '\0'.

[out, optional] NameSize

Empfängt die Größe in Zeichen des Namens des Symbols. Diese Größe enthält den Abstand für das Endzeichen '\0'. Wenn NameSize-NULL-ist, werden diese Informationen nicht zurückgegeben.

[out, optional] Displacement

Empfängt den Unterschied zwischen dem Wert von Offset und der Position im Speicheradressraum des Ziels des Symbols. Wenn Verdrängungs-NULL-ist, werden diese Informationen nicht zurückgegeben.

Rückgabewert

Diese Methode kann auch andere Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte.

Rückgabecode Beschreibung
S_OK
Die Methode war erfolgreich.
S_FALSE
Die Methode war erfolgreich. Der Puffer war jedoch nicht groß genug, um den Namen des Symbols zu halten, sodass er abgeschnitten wurde.
E_NOINTERFACE
Es wurde kein Symbol gefunden, das den Spezifikationen von Offset- und Delta- entspricht.

Bemerkungen

Durch das Erhöhen oder Verringern des Werts von Deltakönnen diese Methoden verwendet werden, um die Symbole des Ziels zu durchlaufen, die an einer bestimmten Position beginnen.

Wenn Delta- null ist, verhalten sich diese Methoden genauso wie GetNameByOffset.

Weitere Informationen zu Symbol- und Symbolnamen finden Sie unter Symbole.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- dbgeng.h (include Dbgeng.h)

Siehe auch

GetNameByOffset-

GetOffsetByName-

IDebugSymbols

IDebugSymbols2

IDebugSymbols3