本文转自:http://blog.csdn.net/dzyssssss/article/details/6609086
近日给其他组同事开发了一个控件,使用vs2008作为开发工具,完成后别人注册时居然不成功,经查发现居然是依赖库不全问题。
1、ATL库
2、msvcr90.dll库
对于第一个问题直接在工程中设置静态链接atl库即可解决该问题,但是对于第二个没有想明白怎么弄,难道非得发布msvcr90.dll文件吗,太麻烦了。后来一查居然有人说是vs2008的bug,不知道是不是,不过之总解决了上面依赖的库,不用带那么多"尾巴"了,呵呵。
具体处理过程如下:
1、在Project\Properties\Configuration Properties\Project Defaults\Use of MFC中,选择Use MFC in a Static Library
2、编译,编译不通过没关系(但是我做的库是编译通过了)
3、在Project\Properties\Configuration Properties\Project Defaults\Use of MFC中,选择Use Standard Windows Libraries(就是把设置改回去)
4、再次编译
再使用dependency工具查看,果然不依赖于上面提到的msvcr90.dll了,但是问题是再选择回去后,编译出来的库确实比以前大了不少,具体内部原因多半还得问微软是怎么回事了!