c# 调用 WinRAR 实现文件压缩、文件解压,WinRAR命令行参数,不弹窗

//压缩程序安装路径
            string pathExe = Application.StartupPath + @"\WinRAR.exe";
            Process p = new Process();
            p.StartInfo.FileName = pathExe;
            p.StartInfo.Arguments = @"a -as -r -afzip -ed -hp123 -ibck -inul -m5 -mt5 d:\kldder d:\easyui";
            p.StartInfo.CreateNoWindow = true;
            p.StartInfo.RedirectStandardInput = true;
            p.StartInfo.RedirectStandardError = false;
            p.StartInfo.RedirectStandardOutput = true;
            p.StartInfo.UseShellExecute = false;
            p.StartInfo.ErrorDialog = false;
            p.Start();
            int idx = 1;
            while (!p.HasExited)
            {
                idx++;
                p.WaitForExit(500);
                if (idx == 5)
                {
                    p.Kill();
                }
            }
            p.Close();
            p.Dispose();
            /*
             * <命令> -<开关1> -<开关N> <压缩文件 > <文件...> <@列表文件...> <解压路径\>
             *压缩 a      a -as -ed -inul -afrar -df -ibck -m4 -mt3 -or -y -hp123 d:\aa d:\aa.txt
             *解压 x      x -hp123 -ibck -inul -y -mt5 d:\aa.rar a:\
             *a d:\Info.zip D:\easyui
             *-af 指定格式 -afzip -afrar
             *-as 在当前添加的文件列表中不存在的被压缩文件,将会从压缩文件中删除
             *-df 压缩后删除源文件
             *-dr 删除到回收站
             *-ed 不添加空文件夹
             *-hp 添加密码 -hp123456
             *-ibck 后台运行
             *-inul 禁止错误信息
             *-loff 压缩完成后 关闭电源
             *-m0 存储 添加文件到压缩文件但是不压缩  
             *-m1 最快 最快速的方法 ( 最低的压缩比) 
             *-m2 快速 快速压缩方法 
             *-m3 标准 标准 (默认 ) 压缩方法 
             *-m4 较好 较好的压缩方法 (较高的压缩比) 
             *-m5 最优 最优的压缩方法 (最高压缩比但是速度也最慢)
             *-mtN 线程 -mt5 1~32
             *-or 自动重命名文件
             *-r 连同子文件
             *-z 压缩后测试文件
             *-y 所有弹窗选择"是"
             */


*可以直接将winrar.exe 拷贝到 根目录下运行

*不弹窗只需要打开开光 -ibck -inul 即可


你可能感兴趣的:(c#(asp.net))