C 使用SevenZipSharp壓縮解壓檔案

2021-09-29 09:20:56 字數 1019 閱讀 9606

首先程式需要用到三個dll檔案,分別是:sevenzipsharp.dll、7z.dll、7z64.dll,其中sevenzipsharp.dll需要程式進行引用,而其他兩個檔案給**使用,其中7z.dll是32位,7z64.dll是64位的。(此處需要注意,這裡的32位與64位指的是程式,而不是作業系統,即指的是vs中右鍵專案屬性裡的目標平台,可由system.intptr.size判斷,4為32位,8為64位,當時因為這裡的歧義踩過坑)

偽**:

if

(intptr.size ==4)

//32位作業系統

else

//64位作業系統

using

(var tmp =

newsevenzipextractor

(「壓縮檔案全名稱」)

)//這裡的全名稱包含路徑

偽**:

if

(intptr.size ==4)

//32位作業系統

else

//64位作業系統

var compressor =

newsevenzipcompressor()

;//壓縮資料夾:

compressor.

compressdirectory

(目錄名,壓縮檔案名稱)

;//此處有多個過載,不一一列出。

//壓縮檔案:

var ziptool =

newsevenzipcompressor()

; ziptool.archiveformat = outarchiveformat.zip;

//壓縮檔案型別

string

filenames =

;//需要新增到壓縮檔案的檔案的全路徑陣列。

ziptool.

compressfiles

(「壓縮檔案名稱」, filenames)

;//傳遞壓縮檔案名稱,及檔案全路徑陣列。

使用c 包裝c

今天公司讓使用c 包裝c 提供c 的介面給客戶使用,現在記錄一下實現過程。對你的vs進行如上改動便可。3 註冊。關於註冊我上面說的那個部落格已經非常清楚了,這裡不再贅述。上面說的是一些硬性的條件。除了這些之外還有一些值得注意的是 dll檔案的存放位置以及需要的檔案。c 生成的dll檔案包括 dll和...

C 使用extern C 簡單使用

先說一下函式過載,c 之所以會進行函式過載,是因為對函式名進行二次修飾 重新命名 在c檔案中寫好的程式,c 引入過來,卻沒法使用提示 無法連線的外部符號,那是因為c 按照c 的函式命名機制來尋找函式的實現.第一種情況 檔案為 test.h void show 進行了函式宣告檔案 test.c inc...

c和c 混合使用

我們編寫 經常需要c和c 混合使用,為了使 c 和 c 保持互相相容的過程呼叫介面,需要,為了簡化,從而定義了兩個巨集方面我們使用 1.在 c 裡加上 extern c 作為符號宣告的一部分。2.begin decls 和 end decls 在c語言 中標頭檔案中,充斥著下面的 片段 begin ...