很簡單的問題,因為不了解,愣是弄了好長時間,獻給新手們,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》