IDebugModule3:: GetSymbolInfo
Recupera un elenco dei percorsi che vengono trovati i simboli nonché i risultati di ricerca di ogni percorso.
HRESULT GetSymbolInfo(
SYMBOL_SEARCH_INFO_FIELDS dwFields,
MODULE_SYMBOL_SEARCH_INFO* pInfo
);
int GetSymbolInfo(
enum_SYMBOL_SEARCH_INFO_FIELDS dwFields,
MODULE_SYMBOL_SEARCH_INFO[] pinfo
);
Parametri
dwFields
[in] Una combinazione di flag SYMBOL_SEARCH_INFORMATION_FIELDS da specificare di enumerazione quali campi di pInfo devono essere riempiti.pInfo
[out] MODULE_SYMBOL_SEARCH_INFORMATION Una struttura dei cui membri devono essere riempiti con informazioni specificate. Se questo è un valore null, restituisce E_INVALIDARGdi questo metodo.
Valore restituito
Se il metodo ha esito positivo, restituisce S_OK; in caso contrario, restituisce un codice di errore.
Nota
La stringa restituita (nella struttura di MODULE_SYMBOL_SEARCH_INFO ) potrebbe essere vuota anche se S_OK viene restituito.In questo caso, non sono state trovate informazioni da restituire.
Note
Se il campo di bstrVerboseSearchInfo della struttura di MODULE_SYMBOL_SEARCH_INFO non è vuoto, quindi contiene un elenco di percorsi di ricerca e i risultati della ricerca. L'elenco viene formattato con un percorso, seguito dai puntini di sospensione ("… "), seguiti dal risultato. Se c " è maggiore di una coppia del risultato del percorso, ogni coppia è separata da una coppia “\ r \ n„ (ritorno a capo e avanzamento riga. Gli aspetti del modello analogo al seguente:
<percorso> … <risultato> \ r \ n <percorso> … <risultato> \ r \ n <percorso> … <risultato>
Si noti che l'ultima voce non ha un oggetto sequenza \ r \ n.
Esempio
In questo esempio, questo metodo restituisce tre percorsi con tre risultati della ricerca diversi. Ogni riga termina con una coppia avanzamento riga e di ritorno a capo. L'esempio restituito solo stampare i risultati della ricerca come un'unica stringa.
Nota
Un risultato dello stato è tutto subito dopo “…„ fino alla fine della riga.
void ShowSymbolSearchResults(IDebugModule3 *pIDebugModule3)
{
MODULE_SYMBOL_SEARCH_INFO ssi = { 0 };
HRESULT hr;
hr = pIDebugModule3->GetSymbolInfo(SSIF_VERBOSE_SEARCH_INFO,&ssi);
if (SUCCEEDED(hr)) {
CComBSTR searchInfo = ssi.bstrVerboseSearchInfo;
if (searchInfo.Length() != 0) {
std::wcout << (wchar_t *)(BSTR)searchInfo;
std::wcout << std::endl;
}
}
}
Vedere anche
Riferimenti
SYMBOL_SEARCH_INFORMATION_FIELDS