Metodo IDebugAdvanced4::GetSymbolInformationWideEx (dbgeng.h)

Il metodo GetSymbolInformationWideEx restituisce informazioni specificate su un simbolo.

Sintassi

HRESULT GetSymbolInformationWideEx(
  [in]            ULONG           Which,
  [in]            ULONG64         Arg64,
  [in]            ULONG           Arg32,
  [out, optional] PVOID           Buffer,
  [in]            ULONG           BufferSize,
  [out, optional] PULONG          InfoSize,
  [out, optional] PWSTR           StringBuffer,
  [in]            ULONG           StringBufferSize,
  [out, optional] PULONG          StringSize,
  [out, optional] PSYMBOL_INFO_EX pInfoEx
);

Parametri

[in] Which

Specifica la parte di 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 a 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).

Non viene restituita alcuna stringa e StringBuffer, StringBufferSize e StringSize devono essere tutti 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 a 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 zeri incorporati perché le annotazioni possono avere nomi in più parti; di conseguenza, ogni nome viene terminato con due caratteri Null.

[in] Arg64

Specifica un argomento a 64 bit. Questo parametro ha le interpretazioni seguenti a seconda del valore di Which:

DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE

Ignorato.

DEBUG_SYMINFO_IMAGEHLP_MODULEW64

Indirizzo di base del modulo di cui viene richiesta la descrizione.

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 ha le interpretazioni seguenti a seconda del valore di Which:

DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE

ID del 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 nell'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 nell'enumerazione SymTagEnum definita in Dbghelp.h. Per altre informazioni, vedere la documentazione di PDB.

[out, optional] Buffer

Riceve le informazioni sul simbolo richieste. Il tipo dei dati restituiti dipende dal valore di Which. Se Buffer è NULL, queste informazioni non vengono restituite.

[in] BufferSize

Specifica le dimensioni, in byte, del buffer buffer.

[out, optional] InfoSize

Se questo metodo restituisce S_OK, InfoSize riceve le dimensioni, in byte, delle informazioni sul simbolo restituite a Buffer. Se questo metodo restituisce S_FALSE, il buffer fornito non è sufficientemente 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 Which. Se StringBuffer è NULL, queste informazioni non vengono restituite.

[in] StringBufferSize

Specifica le dimensioni, in caratteri, del buffer stringa StringBuffer.

[out, optional] StringSize

Riceve le dimensioni, in caratteri, della stringa restituita a StringBuffer. Se StringSize è NULL, queste informazioni non vengono restituite.

[out, optional] pInfoEx

Puntatore a una struttura SYMBOL_INFO_EX .

Valore restituito

Questo metodo può 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, le informazioni non rientrano nel buffer Buffer o la stringa non rientra nel buffer StringBuffer, quindi le informazioni o il nome sono stati troncati.

Requisiti

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