我想走x64进程的堆栈
我读到为了这样做,我需要获取存储在exe或DLL中的展开信息
我已经看到有一个RtlAddFunctionTable
但是我可以找到任何方法来获得这个功能表... ...
我怎么能这样做?
答案 0 :(得分:0)
你见过StackWalk64吗?
答案 1 :(得分:0)
您还可以使用64位版本的WinDbg作为DDK / SDK http://msdn.microsoft.com/en-us/windows/hardware/gg463009的一部分。
一旦你附上,你就可以加载windows符号:
.symfix;.reload;
您也可以将它指向您的应用程序pdbs,只要您的pdbs没有从发布版本中删除私有符号,您就应该能够看到完整的调用堆栈。
答案 2 :(得分:0)
您可以使用RtlLookupFunctionEntry(https://docs.microsoft.com/en-us/windows/win32/api/winnt/nf-winnt-rtllookupfunctionentry)来获取与特定代码地址关联的功能表条目(结构RUNTIME_FUNCTION)。