public void RARsave(string rarPatch, string rarFiles,string  patch,string rarName)
                  {
                      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);
                          if (!Directory.Exists(patch))
                          Directory.CreateDirectory(patch);
                          //命令參數(shù)

                          //the_Info = " a  c:\\test.rar a.txt -r"; //文件壓縮

                          the_Info = string.Format(" a -df {0}\\{1}  {2}  -r", patch, rarName, rarFiles);// " a " + rarName + " " + patch;
                          the_StartInfo = new ProcessStartInfo();
                          the_StartInfo.FileName = the_rar;
                          the_StartInfo.Arguments = the_Info;
                          the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                          //打包文件存放目錄

                          the_StartInfo.WorkingDirectory = rarPatch;
                          the_Process = new Process();
                          the_Process.StartInfo = the_StartInfo;
                          the_Process.Start();
                          the_Process.WaitForExit();
                          the_Process.Close();
                      }
                      catch (Exception ex)
                      {
                          throw ex;
                      }
                  }

                  public string unRAR(string rarPath, string rarName, string unRarPath)
                  {
                      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);
                          if (!Directory.Exists(unRarPath + "\\" + rarName.Substring(0, rarName.LastIndexOf(".")-1)))
                              Directory.CreateDirectory(unRarPath + "\\" + rarName.Substring(0, rarName.LastIndexOf(".")-1));
                          the_Info = string.Format("x {0} {1}\\{2} -y", rarName, unRarPath, rarName.Substring(0, rarName.LastIndexOf(".")-1));
                          the_StartInfo = new ProcessStartInfo();
                          the_StartInfo.FileName = the_rar;
                          the_StartInfo.Arguments = the_Info;
                          the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                          the_StartInfo.WorkingDirectory = rarPath;//獲取壓縮包路徑

                          the_Process = new Process();
                          the_Process.StartInfo = the_StartInfo;
                          the_Process.Start();
                          the_Process.WaitForExit();
                          the_Process.Close();
                      }
                      catch (Exception ex)
                      {
                          throw ex;
                      }
                      return "";//Server.MapPath(unRarPatch);
                  }
                  public string unRAR(string rarPath, string rarName, string unRarPath, string unRarPathName)
                  {
                      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);
                          //if (!Directory.Exists(unRarPath + "\\" + unRarPathName))
                          //    Directory.CreateDirectory(unRarPath + "\\" + unRarPathName);
                          //the_Info = string.Format("x {0} {1}\\{2} -y", rarName, unRarPath, unRarPathName);

                          if (!Directory.Exists(unRarPath ))
                              Directory.CreateDirectory(unRarPath);
                          the_Info = string.Format("x {0} {1} -y", rarName, unRarPath);
                          the_StartInfo = new ProcessStartInfo();
                          the_StartInfo.FileName = the_rar;
                          the_StartInfo.Arguments = the_Info;
                          the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                          the_StartInfo.WorkingDirectory = rarPath;//獲取壓縮包路徑

                          the_Process = new Process();
                          the_Process.StartInfo = the_StartInfo;
                          the_Process.Start();
                          the_Process.WaitForExit();
                          the_Process.Close();
                      }
                      catch (Exception ex)
                      {
                          throw ex;
                      }
                      return "";//Server.MapPath(unRarPatch);
                  }

          RARsave("c:\\emrbs", "1.txt 2.txt", "c:\\test", "test.rar");

          unRAR("d:\\","f.rar","d:\\ftest");

          posted on 2009-12-28 17:14 sanmao 閱讀(758) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 揭西县| 浮梁县| 南丹县| 梁山县| 荣成市| 南投市| 隆德县| 弋阳县| 中西区| 剑阁县| 巴马| 棋牌| 富锦市| 通州区| 镶黄旗| 梧州市| 开江县| 重庆市| 襄汾县| 酒泉市| 山阳县| 桂平市| 樟树市| 额济纳旗| 古田县| 灯塔市| 达孜县| 贵溪市| 淮安市| 靖边县| 郑州市| 曲靖市| 辉南县| 资溪县| 夹江县| 治多县| 台东市| 大丰市| 柘荣县| 桦甸市| 阿巴嘎旗|