protected void Button1_Click(object sender, EventArgs e)
   {
       //压缩
       String the_rar;
       RegistryKey the_Reg;
       Object the_Obj;
       String the_Info;
       ProcessStartInfo the_StartInfo;
       Process the_Process;
       try
       {
           the_Reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRAR.exe\Shell\Open\Command");
           the_Obj = the_Reg.GetValue("");
           the_rar = the_Obj.ToString();
           the_Reg.Close();
           the_rar = the_rar.Substring(1, the_rar.Length - 7);
           the_Info = " a -r -ep1 " + " a.rar " + @"1\*";
           the_StartInfo = new ProcessStartInfo();
           the_StartInfo.FileName = the_rar;
           the_StartInfo.Arguments = the_Info;
           the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
           the_StartInfo.WorkingDirectory = @"C:\rar";//进程的初始目录。
           //
           the_Process = new Process();
           the_Process.StartInfo = the_StartInfo;
           the_Process.Start();
           Response.Write("压缩成功");
       }
       catch (Exception ex)
       {
           Response.Write(ex.ToString());
       }
   }
   protected void Button2_Click(object sender, EventArgs e)
   {
       //解压缩
       String the_rar;
       RegistryKey the_Reg;
       Object the_Obj;
       String the_Info;
       ProcessStartInfo the_StartInfo;
       Process the_Process;
       try
       {
           the_Reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRar.exe\Shell\Open\Command");
           the_Obj = the_Reg.GetValue("");
           the_rar = the_Obj.ToString();
           the_Reg.Close();
           the_rar = the_rar.Substring(1, the_rar.Length - 7);
           the_Info = @" x " + @" a.rar " + " " + @"a\";
           the_StartInfo = new ProcessStartInfo();
           the_StartInfo.FileName = the_rar;
           the_StartInfo.Arguments = the_Info;
           the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
           the_StartInfo.WorkingDirectory = @"C:\rar";//获取或设置要启动的进程的初始目录。
           the_Process = new Process();
           the_Process.StartInfo = the_StartInfo;
           the_Process.Start();

            while (!the_Process.HasExited)         //等待解压的完成  
           {
           }
           //File.Delete(filePath + fileName);

           Response.Write(@"解压缩成功");
       }
       catch (Exception ex)
       {
           Response.Write(ex.ToString());
       }
   }