Freigeben über


IDebugSymbols3::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 den Speicherort im virtuellen Adressraum des Ziels des Symbols an, aus 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. Bei positivem Wert gibt die Engine das Symbol Delta-Symbole nach dem Symbol zurück, das sich in Offset befindet. Wenn der Wert negativ ist, gibt das Modul das Symbol zurück , das deltasymbole 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!Standard). Wenn NameBufferNULL ist, werden diese Informationen nicht zurückgegeben.

[in] NameBufferSize

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

[out, optional] NameSize

Empfängt die Größe des Symbolnamens in Zeichen. Diese Größe enthält den Platz für das "\0"-Endzeichen. Wenn NameSizeNULL ist, werden diese Informationen nicht zurückgegeben.

[out, optional] Displacement

Empfängt den Unterschied zwischen dem Wert von Offset und dem Speicherort im Speicheradressraum des Ziels des Symbols. Wenn VerschiebungNULL 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 aufzunehmen, sodass er abgeschnitten wurde.
E_NOINTERFACE
Es wurde kein Symbol gefunden, das den Spezifikationen von Offset und Delta entspricht.

Hinweise

Durch Erhöhen oder Verringern des Werts von Delta können diese Methoden verwendet werden, um die Symbole des Ziels ab einer bestimmten Position zu durchlaufen.

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

Weitere Informationen zu Symbolen und Symbolnamen finden Sie unter Symbole.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (einschließlich Dbgeng.h)

Weitere Informationen

GetNameByOffset

GetOffsetByName

IDebugSymbols

IDebugSymbols2

IDebugSymbols3