[No0000AD]7z源码完全移植至Visual Studio 2015

今天在上次的基础上(原文地址:[No0000AB]用Visual Studio 2015在 WIN10 64bit 上编译7-zip (32 bit)),将7Z的源码完全移植到了vs2015开发环境下开发。其中遇到一下几类问题,简要提及一下:

  1. 资源重复问题:

    代表项目:GUI项目FM项目

解决方法:点击菜单栏的项目------>属性------>清单工具------>输入输出------>嵌入清单------>选择否就行了,然后重新编译。

2.warning LNK4070问题:

exampleb.exp : warning LNK4070: .EXP 中的 /OUT:exampleba.dll 指令与输出文件名"...inexampleb.dll"不同

这个告警一定要改,不然程序存在隐患。

原因:对应的静态库exampleb.lib被其它工程以隐式链接的方式调用时,使用的还是exampleba.dll

解决办法:只需要改变.def文件中 LIBRARY 字段改为 "exampleb"即可。

最后,整个项目已经上传github,地址:https://github.com/charygao/7z1604-srcWithVs2015Up3/

下载好之后,放置源码的路径中不能有" "空格,或者中文,否则编译会出问题。

同时,以后如果7z官方的源码有更新,如果项目结构不变,用新源码直接覆盖vs2015的解决方案即可更新到最新源码。

原文地址:https://www.cnblogs.com/Chary/p/No0000AD.html