Descargue el standalone console version from 7zip.com y agréguelo a su proyecto.
Usted necesita los 3 archivos añadidos en el proyecto:
- 7za.exe
- 7za.dll
- 7zxa.dll
No olvides decir Copiar a la salida Directorio en sus preferencias.
extraer un archivo:
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
}
}
crear un archivo:
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();
}
ha intentado ya [DotNetZip] (http://dotnetzip.codeplex.com/)? – Oliver
¿Eso es compatible con 7z? – CodesInChaos
http://dotnetzip.codeplex.com/workitem/14034 –