Freigeben über


IDebugSymbols3::GetSourceEntriesByLine-Methode (dbgeng.h)

Die GetSourceEntriesByLine Methode fragt Symbolinformationen ab und gibt Speicherorte im Speicher des Ziels zurück, die Zeilen in einer Quelldatei entsprechen.

Syntax

HRESULT GetSourceEntriesByLine(
  [in]                    ULONG                      Line,
  [in]                    PCSTR                      File,
  [in]                    ULONG                      Flags,
  [out, writes, optional] PDEBUG_SYMBOL_SOURCE_ENTRY Entries,
  [in]                    ULONG                      EntriesCount,
  [out, optional]         PULONG                     EntriesAvail
);

Parameter

[in] Line

Gibt die Zeile in der Quelldatei an, für die eine Abfrage abfragt werden soll. Die Nummer für die erste Zeile ist 1.

[in] File

Gibt die Quelldatei an. Die Symbole für jedes Modul im Ziel werden für diese Datei abgefragt.

[in] Flags

Gibt Bitkennzeichnungen an, die das Verhalten dieser Methode steuern. Flags kann eine beliebige Kombination von Werten aus der folgenden Tabelle sein.

Wert Beschreibung
DEBUG_GSEL_NO_SYMBOL_LOADS Das Debuggermodul sucht nur nach der Datei in den Modulen, deren Symbole bereits geladen wurden. Symbole für die anderen Module werden nicht geladen.

Wenn diese Option nicht festgelegt ist, lädt das Debuggermodul die Symbole für alle Module, bis sie die in Dateiangegebene Datei findet.

DEBUG_GSEL_ALLOW_LOWER Fügen Sie alle Zeilen in Datei- vor Zeile in das Ergebnis ein.
DEBUG_GSEL_ALLOW_HIGHER Fügen Sie alle Zeilen in Datei nach Zeile in das Ergebnis ein.
DEBUG_GSEL_NEAREST_ONLY Gibt höchstens ein Ergebnis zurück. Wenn DEBUG_GSEL_ALLOW_LOWER oder DEBUG_GSEL_ALLOW_HIGHER festgelegt sind, wird das zurückgegebene Ergebnis für eine Zeile in der Nähe Zeile, aber nicht Zeile, wenn keine Symbolinformationen für diese Zeile vorhanden sind.

Um den Standardsatz von Flags zu verwenden, legen Sie Flags auf DEBUG_GSEL_DEFAULT fest. Dies hat alle Flags in der vorherigen Tabelle deaktiviert.

[out, writes, optional] Entries

Empfängt die Speicherorte im Speicher des Ziels, die den abgefragten Quellzeilen entsprechen. Jeder Eintrag in diesem Array ist vom Typ DEBUG_SYMBOL_SOURCE_ENTRY und enthält die Quellzeilennummer zusammen mit einer Position im Speicher des Ziels.

[in] EntriesCount

Gibt die Anzahl der Einträge im Entries Array an.

[out, optional] EntriesAvail

Empfängt die Anzahl der Speicherorte, die der Abfrage entsprechen, die im Speicher des Ziels gefunden wurde.

Rückgabewert

Diese Methoden können auch 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. Die Einträge Arrays waren jedoch nicht groß genug, um alle Ergebnisse zu enthalten, die mit der Abfrage übereinstimmen, und die zusätzlichen Ergebnisse wurden verworfen.
E_NOINTERFACE
Die Abfrage hat keine Ergebnisse zurückgegeben. Dies schließt den Fall ein, in dem die Symbolinformationen für die angegebene Datei nicht verfügbar waren.

Bemerkungen

Diese Methoden können von Debuggeranwendungen verwendet werden, um Speicherorte im Speicher des Ziels abzurufen, um Haltepunkte festzulegen oder Quellcode mit demontierten Anweisungen abzugleichen. Wenn Sie z. B. die Flags DEBUG_GSEL_ALLOW_HIGHER festlegen und DEBUG_GSEL_NEAREST_ONLY den Speicherort des Ziels für den ersten Codeabschnitt zurückgeben, der an der angegebenen Zeile beginnt.

Weitere Informationen zu Quelldateien finden Sie unter Verwenden von Quelldateien.

Anforderungen

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

Siehe auch

DEBUG_SYMBOL_SOURCE_ENTRY

GetSourceFileLineOffsets-

IDebugSymbols3