A.EXE调用B.DLL,再调用C.DLL,C.DLL中如何获得B.DLL的句柄或其他标识
时间:2011-12-02
来源:互联网
如题,用GetModuleHandle(NULL),只能得到A.EXE的句柄,请教高人?目的是为了检查C.DLL的接口是被B调用,还是被A调用。因为动态库的调用中,A调用B,再调用C和A直接调用C得到的C的句柄是一样的??
作者: lldtcn 发布时间: 2011-12-02
GetModuleHandle(_T("B.DLL"));
作者: WaistCoat06 发布时间: 2011-12-02
这样可以吗?有没有路径问题?如果延伸一下,A调用B,B调用C;同时A调用C会怎么样?因为C可能是个算法库。
作者: lldtcn 发布时间: 2011-12-02
没有路径问题,这里只看名字。加载的时候会检查当前进程是不是已经加载过了这个dll,如果已经加载就不再加载了。
作者: zhanshen2891 发布时间: 2011-12-02
如何知道DLL被加载过?另外,有没有不同过名字获得的。如可能动态加载一系列类似的设备库,都要用到公用算法库C,但是C并不知道到底有几个设备库调用它,可能有个设备库是被非法替换过的。这种情况怎么办?如果能够直接获得调用者,则可以检查其合法性。
作者: lldtcn 发布时间: 2011-12-02
有没有遇到这种情况,望不吝指教。
作者: lldtcn 发布时间: 2011-12-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28