检索搜索符号以及搜索每个路径的结果路径的列表。
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
[out] 成员是用指定的信息填充的 MODULE_SYMBOL_SEARCH_INFO 结构。 如果是空值时,此方法返回 E_INVALIDARG。
返回值
如果方法成功,则返回; S_OK否则,它将返回错误代码。
备注
该返回的字符串 (在 MODULE_SYMBOL_SEARCH_INFO 结构) 可能为 null,即使 S_OK 返回。在这种情况下,不返回的搜索信息。
备注
如果 MODULE_SYMBOL_SEARCH_INFO 结构的 bstrVerboseSearchInfo 字段不为空,则它包含要搜索的路径列表以及该搜索结果。 列表格式与路径,后跟省略号 (… " "),后跟结果。 如果有多个路径结果匹配,则中的每一个对以 “\ r \ n”分隔 (回车/换行符) 对。 该模式如下所示:
path…result\ r \ npath…result\ r \ npath…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;
}
}
}