我正在尝试从从堆栈中获取的地址中获取符号,但 SymFromAddr 一直失败并出现系统错误 126(找不到指定的模块。)
我正在使用
SymInitialize(m_processHandle, NULL, TRUE);
(最后一个参数 == true ==> 它会自动加载 PDB)
我像这样使用 SymFromAddr :
SYMBOL_INFO_PACKAGE sym = { sizeof(sym) };
sym.si.MaxNameLen = MAX_SYM_NAME;
DWORD64 displacement = 0;
bool ok = SymFromAddr(m_processHandle, address, &displacement, &sym.si);
代码在 Windows 上的 C++ 中。并且 PDB 文件在 EXE 的目录中!我究竟做错了什么?谢谢 :)