2011-11-03 24 views
5

C# 7zip kullanmam gerek. Konsol olmadan, sadece 7zSharp.dll ile? + Burada bazı verilerözü C# kodunda 7zip

http://7zsharp.codeplex.com/releases/view/10305,

ama nasıl kullanılacağını bilmiyorum bulmak (- ı Bat (.cmd) dosyası oluşturmak olabilir, ama düşünce dll dosyasını gerekir) Tam: Anahtar ile birlikte .7z dosyasına ihtiyacım var)

+0

Zaten denediniz [DotNetZip] (http://dotnetzip.codeplex.com/):

public void ExtractFile(string sourceArchive, string destination) { string zPath = "7za.exe"; //add to proj and set CopyToOuputDir try { ProcessStartInfo pro = new ProcessStartInfo(); pro.WindowStyle = ProcessWindowStyle.Hidden; pro.FileName = zPath; pro.Arguments = string.Format("x \"{0}\" -y -o\"{1}\"", sourceArchive, destination); Process x = Process.Start(pro); x.WaitForExit(); } catch (System.Exception Ex) { //handle error } } 

bir arşiv oluşturun:

bir arşiv Özü? – Oliver

+1

Bu destek 7z mu? – CodesInChaos

+0

http://dotnetzip.codeplex.com/workitem/14034 –

cevap

0

Bu kütüphane şifreli dosyaları desteklemiyor gibi görünmüyor. Hiçbir yöntem bir anahtar olarak parametre alır.

+0

... ve anahtarlı .7z dosyasını nasıl çıkarabilirim? Bu lible ile değil –

+0

... Bir konsol işlemini başlatmak için System.Diagnostics'i kullanabilirsiniz, ancak bunu yapmak istemediğinizi görmek… SDK'yı okumaya başlayın :) –

0

7zSharp kitaplığı, yalnızca bir zip dosyası olan parola girişini desteklemiyor gibi görünüyor.

Kitaplık sadece 7zip dosyasının .exe'sini çağırır, böylece kaynağı yükleyebilir ve daha sonra yürütülebilir dosyaya ilettiğiniz bir parola parametresini kabul etmek için değiştirebilirsiniz.

+1

Evet, bu harika, nasıl olduğunu açıkladım bunu yapabilirsin. Kodu sana yazmayacağım. – CodeCaster

+0

Senden kod istemiyorum! Bunu yapabilirim! Yardımınız için teşekkürler! –

5

standalone console version from 7zip.com'u indirin ve projenize ekleyin.

Sen o 3 Dosyalar projesinde eklenen gerekir:

  1. 7za.exe
  2. 7za.dll dosyası
  3. 7zxa.dll

Çıktı kopyala söylemek unutma Dizin tercihleri.

public void CreateZip(string sourceName, string targetArchive) 
{ 
    ProcessStartInfo p = new ProcessStartInfo(); 
    p.FileName = "7za.exe"; 
    p.Arguments = string.Format("a -tgzip \"{0}\" \"{1}\" -mx=9", targetArchive, sourceName); 
    p.WindowStyle = ProcessWindowStyle.Hidden; 
    Process x = Process.Start(p); 
    x.WaitForExit(); 
}