我打开CMD写这个有效:
C:\Program Files (x86)\Winrar\Rar.exe" a -r -v10000k "%userprofile%\doc.rar" "D:\*.doc*
但是当我使用C#并写
时string PathWinrar ="C:\\Program Files (x86)\\Winrar\\Rar.exeWinrar\\Rar.exe";
ProcessStartInfo Info = new ProcessStartInfo();
Info.Arguments = (string.Format("/C \"{0}\" a -r -v10000k \"%userprofile%\\cdoc.tmp\" \"D:\\*.doc*\"", PathWinrar));
Info.WindowStyle = ProcessWindowStyle.Normal;
Info.CreateNoWindow = true;
Info.FileName = "cmd.exe";
Process.Start(Info);
它不起作用。
答案 0 :(得分:1)
此代码执行您的命令。您不必运行cmd
,只需使用参数直接运行rar.exe。
string PathWinrar = @"C:\Program Files (x86)\Winrar\Rar.exe";
string userProfile = Environment.GetEnvironmentVariable("USERPROFILE");
ProcessStartInfo Info = new ProcessStartInfo();
Info.Arguments = "a -r -v10000k \"" + userProfile + "\\doc.rar\" \"D:\\*.doc*\"";
Info.WindowStyle = ProcessWindowStyle.Normal;
Info.CreateNoWindow = true;
Info.FileName = PathWinrar;
Process.Start(Info);