C++ 检测 是不是 com组件 的办法 已解决
2023-12-23 18:56:31
????????
?????????在日常开发中,遇到动态库和? com组件库的调用 无法区分。检测是否com组件的办法
在头部文件,引入文件 如果能编译成功说明是 com组件,至于动态库如何引入,还在观察中
? ? ? ? 最简单办法
regsvr32 ?TerraExplorerX.dll? ?是com 组件
regsvr32 ?3DML.Api.dll? 非com组件
????????https://zhidao.baidu.com/question/272470471.html?
#import "TerraExplorerX.dll" no_namespace, named_guids, no_namespace
dumpbin -exports TerraExplorerX.dll?
我需要处理一个文件夹中的一些dll和exe文件,并确定我正在处理的文件类型:.NET,COM,Win32或其他一些外来生命形式.
我一直在尝试确定检测DLL类型的最简单方法,你怎么看待这个:
-
COM dll?=>我做了一个LoadLibrary,然后是"?DllRegisterServer?"的GetProcAddress .如果我得到有效的回报,那就是一个COM文件.
-
.NET dll?=>如果dll依赖于MSCOREE.DLL,它总是一个.NET dll?
-
Win32 dll?=>如果上述测试都失败了,那就是Win32 dll?
当然必须有更好的方法来检测我们正在处理的dll类型.以上是非常笨重的,并不适用于EXE文件?必须有一些我没想到的其他方式.
理想情况下,我希望能够让解析器确定编译文件的编译器,以及它使用的功能,如MFC,Atl,Stl等......但我怀疑在预反射时代是否可行?
文章来源:https://blog.csdn.net/vcit102/article/details/135165258
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!