Metodo IDebugAdvanced2::GetSymbolInformation (dbgeng.h)
Il metodo GetSymbolInformation restituisce informazioni specificate su un simbolo.
Sintassi
HRESULT GetSymbolInformation(
[in] ULONG Which,
[in] ULONG64 Arg64,
[in] ULONG Arg32,
[out, optional] PVOID Buffer,
[in] ULONG BufferSize,
[out, optional] PULONG InfoSize,
[out, optional] PSTR StringBuffer,
[in] ULONG StringBufferSize,
[out, optional] PULONG StringSize
);
Parametri
[in] Which
Specifica la parte delle informazioni da restituire. Che può accettare uno dei valori nella tabella seguente.
Valore | Informazioni restituite |
---|---|
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE | Restituisce il nome del file del codice sorgente e il numero di riga per un punto di interruzione specificato. Il numero di riga viene restituito al buffer come ULONG. Il nome del file viene restituito a StringBuffer. |
DEBUG_SYMINFO_IMAGEHLP_MODULEW64 |
Restituisce una struttura IMAGEHLP_MODULEW64 che descrive un modulo specificato. Per informazioni dettagliate su questa struttura, vedere l'argomento IMAGEHLP_MODULE64 nella documentazione della libreria della Guida di debug (dbghelp.chm).
Nessuna stringa viene restituita e StringBuffer, StringBufferSize e StringSize devono essere impostati su zero. |
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE | Restituisce il nome Unicode del simbolo specificato dalla posizione nel tipo di tag PDB e memoria. Il nome viene restituito al buffer. StringBuffer non viene usato. |
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS | Restituisce un elenco di nomi di simboli e offset per i simboli nel modulo specificato con il tipo di tag PDB specificato. Gli offset vengono restituiti come matrice di valori ULONG in Buffer. I nomi vengono restituiti nello stesso ordine degli offset in StringBuffer. Alcuni nomi possono contenere zero incorporati perché le annotazioni possono avere nomi a più parti; di conseguenza, ogni nome viene terminato con due caratteri Null. |
[in] Arg64
Specifica un argomento a 64 bit. Questo parametro include le seguenti interpretazioni a seconda del valore di Quale:
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE
Ignorato.
DEBUG_SYMINFO_IMAGEHLP_MODULEW64
Indirizzo di base del modulo la cui descrizione viene richiesta.
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE
Specifica l'indirizzo nella memoria del simbolo di destinazione il cui nome viene richiesto.
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS
Specifica il modulo i cui simboli sono richiesti. Arg64 è una posizione all'interno dell'allocazione di memoria del modulo.
[in] Arg32
Specifica un argomento a 32 bit. Questo parametro include le seguenti interpretazioni a seconda del valore di Quale:
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE
ID punto di interruzione del motore del punto di interruzione desiderato.
DEBUG_SYMINFO_IMAGEHLP_MODULEW64
Imposta su zero.
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE
Classificazione PDB del simbolo. Arg32 deve essere uno dei valori dell'enumerazione SymTagEnum definita in Dbghelp.h. Per altre informazioni, vedere la documentazione di PDB.
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS
Classificazione PDB del simbolo. Arg32 deve essere uno dei valori dell'enumerazione SymTagEnum definita in Dbghelp.h. Per altre informazioni, vedere la documentazione di PDB.
[out, optional] Buffer
Riceve le informazioni sul simbolo richiesto. Il tipo dei dati restituiti dipende dal valore di Quale. Se buffer è NULL, queste informazioni non vengono restituite.
[in] BufferSize
Specifica le dimensioni, in byte, del buffer.
[out, optional] InfoSize
Se questo metodo restituisce S_OK, InfoSize riceve le dimensioni, in byte, delle informazioni sul simbolo restituite nel buffer. Se questo metodo restituisce S_FALSE, il buffer fornito non è abbastanza grande e InfoSize riceve le dimensioni del buffer necessarie. Se InfoSize è NULL, queste informazioni non vengono restituite.
[out, optional] StringBuffer
Riceve la stringa richiesta. L'interpretazione di questa stringa dipende dal valore di Quale. Se StringBuffer è NULL, queste informazioni non vengono restituite.
[in] StringBufferSize
Specifica le dimensioni, in caratteri, della stringa di buffer StringBuffer.
[out, optional] StringSize
Riceve le dimensioni, in caratteri, della stringa restituita a StringBuffer. Se StringSize è NULL, queste informazioni non vengono restituite.
Valore restituito
Questo metodo può anche restituire valori di errore. Per altre informazioni, vedere Valori restituiti .
Codice restituito | Descrizione |
---|---|
|
Il metodo è stato eseguito correttamente. |
|
Il metodo è stato eseguito correttamente. Tuttavia, le informazioni non si adattano al buffer buffer o la stringa non si adatta al buffer StringBuffer, quindi le informazioni o il nome sono stati troncati. |
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | dbgeng.h (includere Dbgeng.h) |