IDebugSymbols3::GetSourceEntriesByLine-Methode (dbgeng.h)
Die GetSourceEntriesByLine-Methode fragt Symbolinformationen ab und gibt Speicherorte im Arbeitsspeicher 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 ausgeführt werden soll. Die Zahl 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 Bitflags an, die das Verhalten dieser Methode steuern. Flags können eine beliebige Kombination von Werten aus der folgenden Tabelle sein.
Wert | BESCHREIBUNG |
---|---|
DEBUG_GSEL_NO_SYMBOL_LOADS |
Die Debugger-Engine sucht nur nach der Datei unter den Modulen, deren Symbole bereits geladen wurden. Symbole für die anderen Module werden nicht geladen.
Wenn diese Option nicht festgelegt ist, lädt die Debugger-Engine die Symbole für alle Module, bis die in Datei angegebene Datei gefunden wird. |
DEBUG_GSEL_ALLOW_LOWER | Schließen Sie alle Zeilen in Datei vor Zeile in das Ergebnis ein. |
DEBUG_GSEL_ALLOW_HIGHER | Schließen 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 von Linie , aber nicht Zeile sein, wenn keine Symbolinformationen für diese Zeile vorhanden sind. |
Um den Standardsatz von Flags zu verwenden, legen Sie Flags auf DEBUG_GSEL_DEFAULT fest. Dadurch sind alle Flags in der vorherigen Tabelle deaktiviert.
[out, writes, optional] Entries
Empfängt die Speicherorte im Arbeitsspeicher 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 einem Speicherort im Speicher des Ziels.
[in] EntriesCount
Gibt die Anzahl der Einträge im Array Entries an.
[out, optional] EntriesAvail
Empfängt die Anzahl der Speicherorte, die mit der Abfrage im Speicher des Ziels übereinstimmen.
Rückgabewert
Diese Methoden können auch Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte .
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode war erfolgreich. |
|
Die Methode war erfolgreich. Das Array Entries war jedoch nicht groß genug, um alle Ergebnisse aufzunehmen, die mit der Abfrage übereinstimmten, und die zusätzlichen Ergebnisse wurden verworfen. |
|
Die Abfrage ergab keine Ergebnisse. Dies schließt den Fall ein, in dem die Symbolinformationen für die angegebene Datei nicht verfügbar waren. |
Hinweise
Diese Methoden können von Debuggeranwendungen verwendet werden, um Speicherorte im Speicher des Ziels zum Festlegen von Haltepunkten oder zum Abgleichen von Quellcode mit disassemblierten Anweisungen abzurufen. Wenn Sie beispielsweise die Flags DEBUG_GSEL_ALLOW_HIGHER und DEBUG_GSEL_NEAREST_ONLY festlegen, wird der Speicherspeicherort des Ziels für den ersten Codeabschnitt ab der angegebenen Zeile zurückgegeben.
Weitere Informationen zu Quelldateien finden Sie unter Verwenden von Quelldateien.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | dbgeng.h (einschließlich Dbgeng.h) |