winapi从函数的地址中获取受损的名称

时间:2014-11-19 11:15:46

标签: c++ winapi name-mangling

在我的c ++应用程序中,我有函数的虚拟地址,我想获得受损的名称。 现在我只能通过使用winapi SymFromAddr函数获得未编号的名称。 有没有办法获得受损的名字呢?

1 个答案:

答案 0 :(得分:5)

使用SymSetOptions()。您想要关闭SYMOPT_UNDNAME选项以查看损坏的名称。

所以,粗略地说:

  DWORD options = SymGetOptions();
  SymSetOptions(options & ~SYMOPT_UNDNAME);
  if (SymFromAddr(hProcess, dwAddress, &dwDisplacement, pSymbol))
  {
      // etc...
  }
  SymSetOptions(options);