Aracılığıyla paylaş


IDebugModule3::GetSymbolInfo

Semboller için arama yapılan yolların listesini ve her yolu aramanın sonuçlarını alır.

Sözdizimi

int GetSymbolInfo(
    enum_SYMBOL_SEARCH_INFO_FIELDS dwFields,
    MODULE_SYMBOL_SEARCH_INFO[]    pinfo
);

Parametreler

dwFields
[in] SYMBOL_SEARCH_INFO_FIELDS numaralandırmasından hangi alanların pInfo doldurulacağını belirten bayrakların birleşimi.

pInfo
[out] Üyeleri belirtilen bilgilerle doldurulacak bir MODULE_SYMBOL_SEARCH_INFO yapısı. Bu bir null değerse, bu yöntem döndürür E_INVALIDARG.

İade Değeri

Yöntem başarılı olursa S_OKdöndürür; aksi takdirde bir hata kodu döndürür.

Dekont

Döndürülen dize (yapıda MODULE_SYMBOL_SEARCH_INFO ) döndürülse S_OK bile boş olabilir. Bu durumda, döndürülecek arama bilgisi yoktu.

Açıklamalar

bstrVerboseSearchInfo Yapının alanı MODULE_SYMBOL_SEARCH_INFO boş değilse, arama yapılan yolların listesini ve bu aramanın sonuçlarını içerir. Liste bir yol, ardından üç nokta ("...") ve ardından sonuç ile biçimlendirilir. Birden fazla yol sonuç çifti varsa, her çift "\r\n" (satır başı/satır besleme) çifti ile ayrılır. Desen şöyle görünür:

<yol>...<result>\r\n<path>...<result>\r\n<path>...<Sonuç>

Son girdinin \r\n dizisi olmadığını unutmayın.

Örnek

Bu örnekte, bu yöntem üç farklı arama sonucu içeren üç yol döndürür. Her satır bir satır başı/satır besleme çifti ile sonlandırılır. Örnek çıktı, arama sonuçlarını tek bir dize olarak yazdırır.

Dekont

Durum sonucu, "..." öğesinin hemen ardından gelen her şeydir satırın sonuna kadar.

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

c:\symbols\user32.pdb... Dosya bulunamadı.c:\winnt\symbols\user32.pdb... Sürüm eşleşmiyor.\\symbols\symbols\user32.dll\0a8sd0ad8ad\user32.pdb... Simgeler yüklendi.

Ayrıca bkz.