你能从被调用者那里得到调用者DLL或可执行模块吗
Can you get the caller DLL or executable module from the callee
我只想允许特定的 DLL 执行我在挂接的函数上编写的代码。如果不执行堆栈跟踪,您如何获取调用者的模块名称?
获取堆栈跟踪以查找函数的 return 地址,例如使用 CaptureStackBackTrace
.
然后调用 GetModuleHandleEx
传递 GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS
以获得包含该代码的模块句柄。
最后,调用 GetModuleFileName
查找与该模块关联的文件名。
我只想允许特定的 DLL 执行我在挂接的函数上编写的代码。如果不执行堆栈跟踪,您如何获取调用者的模块名称?
获取堆栈跟踪以查找函数的 return 地址,例如使用 CaptureStackBackTrace
.
然后调用 GetModuleHandleEx
传递 GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS
以获得包含该代码的模块句柄。
最后,调用 GetModuleFileName
查找与该模块关联的文件名。