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);
                          //命令參數

                          //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 閱讀(759) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 攀枝花市| 沈阳市| 双城市| 博兴县| 仁怀市| 武功县| 大足县| 吉林市| 习水县| 万荣县| 绥化市| 江油市| 镇安县| 轮台县| 乡宁县| 秦皇岛市| 德化县| 岱山县| 虎林市| 昌黎县| 崇文区| 科尔| 乌恰县| 盐亭县| 庆安县| 门头沟区| 呼和浩特市| 漾濞| 蓬安县| 洮南市| 温宿县| 当阳市| 浑源县| 衡山县| 普洱| 林甸县| 洞头县| 缙云县| 利川市| 涟源市| 裕民县|