Partager via


IDebugModule3 : : GetSymbolInfo

Extrait une liste de chemins d'accès qui se trouvent les symboles ainsi que les résultats de la recherche chaque chemin d'accès.

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

Paramètres

  • dwFields
    [in] Une combinaison des balises de spécifier d'énumération de SYMBOL_SEARCH_INFORMATION_FIELDS les champs d' pInfo doivent être effectués.

  • pInfo
    [out] Une structure de MODULE_SYMBOL_SEARCH_INFORMATION dont les membres doivent être effectués avec les informations spécifiées. S'il s'agit d'une valeur NULL, retourne E_INVALIDARGde cette méthode.

Valeur de retour

Si la méthode réussit, elle retourne S_OK; sinon, elle retourne un code d'erreur.

Notes

La chaîne retournée (dans la structure d' MODULE_SYMBOL_SEARCH_INFO ) peut être vide même si S_OK est retourné.Dans ce cas, il n'y avait aucune information de recherche à retourner.

Notes

Si le champ d' bstrVerboseSearchInfo de la structure d' MODULE_SYMBOL_SEARCH_INFO n'est pas vide, il contient une liste de chemins d'accès trouvés et les résultats de cette recherche. La liste est mise en forme avec un chemin d'accès, suivi des points de suspension ("… "), puis le résultat. S'il existe plusieurs paires de résultat de chemin d'accès, chaque paire est séparée par une paire « \ r \ n » (retour chariot/saut de ligne). le modèle ressemble à ceci :

<path> … <result> … \ r \ <path> n <result> \ r \ n <path> … <result>

Notez que la dernière entrée n'a pas une séquence de \ r \ n.

Exemple

Dans cet exemple, cette méthode retourne trois chemins d'accès avec trois résultats de la recherche différents. chaque ligne est terminée avec une paire de retour chariot/saut de ligne. La sortie de l'exemple imprime uniquement des résultats de la recherche comme une chaîne unique.

Notes

Le résultat d'état est tout immédiatement après « … » jusqu'à la fin de la ligne.

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

Voir aussi

Référence

SYMBOL_SEARCH_INFORMATION_FIELDS

MODULE_SYMBOL_SEARCH_INFORMATION

IDebugModule3