我试图使用7-Zip压缩作为例子 http://www.dotnetperls.com/7-zip 作为URL给创建示例文件的ZIP说,“你必须指定”如果复制更新“或”始终复制“将可执行文件等文件复制到输出目录。”7-zip压缩
我发现,当我在VS项目使用此代码,我得到指定“复制,如果新”当我看到在属性窗口
7za.exe的属性选项,但我在使用一个VS网站,我无法找到这个选项。其结果是,当我调试这个程序时,它说,它无法找到7za.exe
string sourceName = "pdfSample.pdf";
string targetName = "pdfSample.gz";
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = "7za.exe";
p.Arguments = "a -tgzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9";
p.WindowStyle = ProcessWindowStyle.Hidden;
try
{
Process x = Process.Start(p);
x.WaitForExit();
}
catch (Exception ex)
{
Console.Write(ex.ToString());
}
任何想法,为什么没有选择在VS的网站的情况下,“如果新的复制”?
谢谢!
是否有特定的7zip需求?我发现在dotnet 4.5中的zip库非常容易。否则,我会在4.5之前使用sharpziplib。 – tgolisch
已经发现7zip可以达到更好的压缩效果,即dotnet zip库 –
除非您有非常特殊的需求,否则使用System.IO.Compression会简单得多。此外,如果你真的需要更好的压缩,并且你愿意调用一个exe,为什么不使用.7z格式?这会给你额外的一些额外的压缩。 –