你能从被叫方获得调用者DLL或可执行模块吗?

时间:2016-09-16 21:22:26

标签: c++ winapi reverse-engineering

我只想让特定的DLL执行我在我挂钩的函数上编写的代码。如果没有执行堆栈跟踪,您如何获得调用者的模块名称?

1 个答案:

答案 0 :(得分:4)

获取堆栈跟踪以查找函数的返回地址,例如使用CaptureStackBackTrace

然后调用GetModuleHandleEx传递GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS以获取包含该代码的模块句柄。

最后,调用GetModuleFileName以查找与该模块关联的文件名。