我想使用7zG.exe的命令行压缩文件夹,但是我的代码只适用于文件而不是文件夹。能否有人展示一下正确使用7z命令行压缩文件夹的方式?这里是一个仅适用于文件的示例代码。每当我尝试运行此代码时,7zip会显示一个消息框,上面写着"无效参数"。
string sourceName = "Folder\Folder1";
string targetName = "Example.gz";
// 1
// Initialize process information.
//
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = "7zG.exe";
// 2
// Use 7-zip
// specify a=archive and -tgzip=gzip
// and then target file in quotes followed by source file in quotes
//
p.Arguments = "a -tgzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9";
p.WindowStyle = ProcessWindowStyle.Hidden;
// 3.
// Start process and wait for it to exit
//
Process x = Process.Start(p);
x.WaitForExit();
7zG
呢?难道不应该使用7za
,也就是只有命令行版本吗? - gunr21717zG.exe
是 7zip 的图形用户界面模块,而7z.exe
是命令行版本。7za.exe
是7z.exe
的独立版本(基本上不依赖于任何 DLL,比如7z.dll
)。 - digEmAll7za.exe
(例如版本9.22的存档文件名为7z922_extra.7z)。我认为它是针对x86编译的,因此与x86和x64系统完全兼容。 - digEmAll