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

前端之家收集整理的这篇文章主要介绍了windows – 检查运行时静态库或dll使用的是什么前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
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.

原文链接:https://www.f2er.com/windows/365424.html

猜你在找的Windows相关文章