加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 检查运行时静态库或dll使用的是什么

发布时间:2020-12-13 22:43:02 所属栏目:Windows 来源:网络整理
导读:Windows SDK中是否有一个工具可以阻止库使用什么CRT? 例如,我有一个* .lib文件,如何检查是否使用/ MDd标志或/ MT编译? 还有如何检查dll或exe相同? 这可以用dumpbin完成吗? 如果它是一个.lib文件,一个静态链接库,那么你还不知道有关CRT的任何信息.它尚未
Windows SDK中是否有一个工具可以阻止库使用什么CRT?
例如,我有一个* .lib文件,如何检查是否使用/ MDd标志或/ MT编译?
还有如何检查dll或exe相同?
这可以用dumpbin完成吗?
如果它是一个.lib文件,一个静态链接库,那么你还不知道有关CRT的任何信息.它尚未联系.你可以找到原始程序员的意图,使用十六进制查看器查看.lib文件,记事本也可以.您将看到用于编译嵌入在.lib文件中的.obj文件的原始命令行.只需搜索“cl.exe”,您就可以从cl.exe的路径中了解使用的编译器版本.您可以看到命令行选项,以便您知道/ MD或/ MT是否生效.而O / O选项对于了解是否有Debug或Release版本非常重要.

如果是.dll文件,则dumpbin.exe / imports是您的最佳选择.将显示对msvcrxxx.dll文件的依赖性,xxx的版本号如“120”.如果你看到它然后名称告诉你是否使用/ MD或/ MDd,CRT的调试版本附加“d”如果它丢失,那么你知道使用了/ MT或/ MTd,没有提示建立味道.

根据图书馆老板的建议总是最好的,当图书馆的CRT版本或版本设置与您的版本不匹配时,您会遇到很多麻烦.有了非零赔率,你必须要求他更新,YMMV.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读