usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.IO;usingSystem.Diagnostics;usingMicrosoft.Win32;namespaceRarClass{publicclassunrar{publicvoidunCo...
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Diagnostics;
using Microsoft.Win32;
namespace RarClass
{
public class unrar
{
public void unCompressRAR(string unRarPatch, string rarPatch, string rarName)
{
string the_rar;
RegistryKey the_Reg;
object the_Obj;
string the_Info;
the_Reg = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe");
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(unRarPatch) == false)
{
Directory.CreateDirectory(unRarPatch);
}
the_Info = "x -y " + rarName + " " + unRarPatch ;
ProcessStartInfo the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_StartInfo.WorkingDirectory = rarPatch;//获取压缩包路径
Process the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
the_Process.WaitForExit();
the_Process.Close();
}
}
}
不知道哪出了问题,我从网上找的,总是不通过,我改了又改还是不行 高手帮帮忙
我是这样引用的
rar.unCompressRAR(Application.StartupPath + "\\s", Application.StartupPath , "ipmsg.rar"); 就是不管用
瞢和尚 你看没看代码? 那是路径么? 那是注册表, the_rar = the_Obj.ToString(); 这是winrar 的路径
展开