共用方式為


IDebugModule3::GetSymbolInfo

擷取一份要搜尋的符號,以及搜尋每個路徑的結果的路徑。

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

參數

  • dwFields
    [in]從的旗標組合SYMBOL_SEARCH_INFO_FIELDS指定那一個欄位的列舉型別pInfo將會自動填入。

  • pInfo
    [] outA MODULE_SYMBOL_SEARCH_INFO結構,其成員的好填入這些指定的資訊。 如果這會是 null 值,則這個方法會傳回E_INVALIDARG。

傳回值

如果此方法將會成功,則會傳回S_OK。 否則,它會傳回錯誤碼。

注意事項注意事項

傳回的字串 (在MODULE_SYMBOL_SEARCH_INFO結構) 可以是空的即使S_OK會傳回。在此情況下,沒有傳回搜尋資訊。

備註

如果bstrVerboseSearchInfo欄位的MODULE_SYMBOL_SEARCH_INFO結構不是空的則它將包含的路徑搜尋和搜尋結果的清單。 清單的路徑,後面接著省略符號 ("..."),後面接著結果格式。 如果有一個以上的路徑結果組,以"\r\n"(「 換行字元復/換行 」) 對分隔每個配對。 此模式如下所示:

<path>...<result> \r\n <path>...<result> \r\n <path>...<result>

請注意最後一個項目沒有 \r\n 序列。

範例

在這個範例中,這個方法會傳回具有三個不同的搜尋結果的三個路徑。 每一行便會終止使用復位/換行組。 範例輸出只會列印為單一字串的搜尋結果。

注意事項注意事項

狀態結果是緊接的"..."回到行結尾的所有項目。

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

請參閱

參考

SYMBOL_SEARCH_INFO_FIELDS

MODULE_SYMBOL_SEARCH_INFO

IDebugModule3