如何得到调用本段代码的DLL的句柄 函数void funcA() 实现在A.dll 内, 当B.dll 调用 A.dll 内的 funcA 函数时, funcA 能否得到 B.dll 的句柄呢? 在不额外传递参数的情况下. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我猜测可以这样:获取 Ebp,获取 返回地址。从这个返回地址就可以知道 Call 的指令,这样就可以知道模块了。 没错,可以直接获取当前句柄,只是,谁调用的FuncA,得到的是谁的句柄,如果C调用的,得到就就是C的,不能够知道是否是B的。为什么不传参数呢?给funcA一个参数多好啊~ HMODULE GetModuleHandle( LPCTSTR lpModuleName); 使用方法见MSDN 确实可以得到句柄, 但funcA 无法知道那个DLL调用它 难道说根据地址区域来判断属于那个DLL, 这个也太奇技淫巧…… 传参数确实可以解决, 但是FuncA是一个导出函数, 加参数会无形的增加使用成本…… 用VS编写C++程序,VS的任务列表功能怎么用? socket的三个实际问题。 vc中能否实现这样的机制? 一个简单的数据转换的问题? 字符串的问题 类的函数中访问Directx的API回调函数出错?? 微软论坛的入口在哪?急!!急!!急!!急!!急!!急!!急!!急!!急!!急!!急!!急!! love_vc 两个很菜的问题,请一定看看 求教消息映射 急!!! queue队列问题? 关于mfc的调试
获取 Ebp,获取 返回地址。从这个返回地址就可以知道 Call 的指令,这样就可以知道模块了。
确实可以得到句柄, 但funcA 无法知道那个DLL调用它
传参数确实可以解决, 但是FuncA是一个导出函数, 加参数会无形的增加使用成本……