很简单的问题,因为不了解,愣是弄了好长时间,献给新手们,ps:第一次发博 本人只测试了在qtcreate上的实现,在vs中没有尝试,流程应该是一样的,请大家自己发挥 跟着我一步步来: 1.souceforge下载地址:http:///projects/quazip/ 下载最新的quazip,我这次下载的是quazip-0.7.2 直接编译会报错,要做下面的修改: 2.打开刚刚下载的quazip.pro,把其中的 SUBDIRS=quazip qztest 改为 3.将qt安装目录下的两个头文件拷贝出来(zlib.h和zconf.h),不同版本路径可能有出入,可以搜索入下图 4.,将两个头文件拷贝到quazip项目路径中,路径:\quazip-0.7.2\quazip\,然后添加到项目程序中,编译--成功。 做了以上简单操作后,程序就不会报错了,会生成libquazip.a,quazip.dll。 5.新建一个自己的测试程序。 将quazip中用到的头文件拷贝到测试程序中,新建一个zip文件夹存放 6.在my_zip_test.pro中添加以下代码
INCLUDEPATH +=./zip CONFIG(debug, debug|release) { win32:win32-g++: PRE_TARGETDEPS += $$PWD/zip/libquazipd.a win32:win32-g++: LIBS += -L$$PWD/zip/ -l quazipd } else { win32:win32-g++: PRE_TARGETDEPS += $$PWD/zip/libquazip.a win32:win32-g++: LIBS += -L$$PWD/zip/ -l quazip }
7.使用示例:
#include <QCoreApplication> #include "JlCompress.h" int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); JlCompress::compressDir("d:\\test.zip", "d:\\test"); //压缩 JlCompress::extractDir("d:\\test.zip", "d:\\test");//解压缩 return a.exec(); }此时程序可以编译成功但是会报:异常退出
8.解决办法: 把quazip项目生成的quazip.dll和quazipd.dll分别放在release 和debug版本my_zip_test.exe的相同目录下,再编译运行就OK了。 如果有想直接使用已经编译好的dll和.a请前往链接去下载,还有一个简单的小例子: http://download.csdn.net/detail/jing332/9557338 有不明白的请留言! |
|
来自: 昵称52164085 > 《quazip》