Metodo IDebugSymbols3::GetSourceEntriesByLine (dbgeng.h)

Il metodo GetSourceEntriesByLine esegue una query sulle informazioni sui simboli e restituisce i percorsi nella memoria della destinazione che corrispondono alle righe di un file di origine.

Sintassi

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
);

Parametri

[in] Line

Specifica la riga nel file di origine per cui eseguire una query. Il numero della prima riga è 1.

[in] File

Specifica il file di origine. I simboli per ogni modulo nella destinazione vengono sottoposti a query per questo file.

[in] Flags

Specifica i flag di bit che controllano il comportamento di questo metodo. I flag possono essere qualsiasi combinazione di valori della tabella seguente.

Valore Descrizione
DEBUG_GSEL_NO_SYMBOL_LOADS Il motore del debugger cercherà solo il file tra i moduli i cui simboli sono già stati caricati. I simboli per gli altri moduli non verranno caricati.

Se questa opzione non è impostata, il motore del debugger caricherà i simboli per tutti i moduli fino a quando non trova il file specificato in File.

DEBUG_GSEL_ALLOW_LOWER Includere tutte le righe in File prima della riga nel risultato.
DEBUG_GSEL_ALLOW_HIGHER Includere tutte le righe in File dopo riga nel risultato.
DEBUG_GSEL_NEAREST_ONLY Restituisce al massimo un risultato. Se DEBUG_GSEL_ALLOW_LOWER o DEBUG_GSEL_ALLOW_HIGHER sono impostati, il risultato restituito sarà per una riga vicina a Line , ma non può essere Line se non sono presenti informazioni sui simboli per tale riga.

Per usare il set predefinito di flag, impostare Flag su DEBUG_GSEL_DEFAULT. Tutti i flag nella tabella precedente sono disattivati.

[out, writes, optional] Entries

Riceve i percorsi nella memoria della destinazione che corrispondono alle righe di origine sottoposte a query. Ogni voce in questa matrice è di tipo DEBUG_SYMBOL_SOURCE_ENTRY e contiene il numero di riga di origine insieme a una posizione nella memoria della destinazione.

[in] EntriesCount

Specifica il numero di voci nella matrice di voci.

[out, optional] EntriesAvail

Riceve il numero di posizioni che corrispondono alla query trovata nella memoria della destinazione.

Valore restituito

Questi metodi possono anche restituire valori di errore. Per altri dettagli, vedere Valori restituiti .

Codice restituito Descrizione
S_OK
Il metodo è stato eseguito correttamente.
S_FALSE
Il metodo è stato eseguito correttamente. Tuttavia, la matrice di voci non è sufficientemente grande per contenere tutti i risultati corrispondenti alla query e i risultati aggiuntivi sono stati eliminati.
E_NOINTERFACE
La query non ha restituito risultati. Ciò include il caso in cui le informazioni sul simbolo non erano disponibili per il file specificato.

Commenti

Questi metodi possono essere usati dalle applicazioni debugger per recuperare i percorsi nella memoria della destinazione per l'impostazione di punti di interruzione o la corrispondenza del codice sorgente con istruzioni disassemblate. Ad esempio, l'impostazione dei flag DEBUG_GSEL_ALLOW_HIGHER e DEBUG_GSEL_NEAREST_ONLY restituirà la posizione di memoria della destinazione per la prima parte di codice a partire dalla riga specificata.

Per altre informazioni sui file di origine, vedere Uso dei file di origine.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione dbgeng.h (include Dbgeng.h)

Vedi anche

DEBUG_SYMBOL_SOURCE_ENTRY

GetSourceFileLineOffsets

IDebugSymbols3