现在的位置: 首页 > 综合 > 正文

VC6的动态库工程dll,转成VS2008下可以使用

2017年11月08日 ⁄ 综合 ⁄ 共 398字 ⁄ 字号 评论关闭

在最近的工作中遇到这样一个情况。现在有一个外来动态库,是VC6的工程。这边调用是VS2008,所以需要将外来库转为VS2008工程。

因为外来库也是公司内部的,所以可以控制。便将VC6的工程外来库放到VS2008下编译,并修改一些语法。然后就编译通过,发给我来使用。

在我使用时,却发现,一旦运行程序,就会弹出 ”缺少MSVCRT90.dll“。这个库在系统里默认是有的,但是不知为何却提示缺少。即使在工程设置里添加忽略MSVCRT90.lib也不行。

通过查找了很多资料,发现问题的根源在外来库的编译上。于是在外来库的编译中,就在工程设置里设置了忽略特定库MSVCRT90.lib。然后再将新的库发给我使用。测试后,发现还是不行。

最后经过测试才找到正确的使用方法:那就是在外来库的编译工程中,将忽略特定库设置为MSVCRT.lib。就可以了,具体为什么,现在还没有理论支持,如果有高手知道,请不吝赐教。

抱歉!评论已关闭.