using System.Diagnostics; namespace AllBase { public class AdslHelper { /// /// 宽带名称 /// public static string Name; /// /// 宽带名称 /// public static string User; /// /// 宽带名称 /// public static string Pass; /// /// 宽带名称 /// public AdslHelper() { } /// /// 初始化 /// /// /// /// public AdslHelper(string name, string user, string pass) { Name = name; User = user; Pass = pass; } /// /// 链接 /// /// /// public void Connect(string user, string pass) { string arg = string.Format("rasdial \"{0}\" {1} {2}", Name, user, pass); InvokeCmd(arg); } /// /// 链接 /// public bool Connect() { string arg = string.Format("rasdial \"{0}\" {1} {2}", Name, User, Pass); string result = InvokeCmd(arg); if (result.Contains("已连接")|| result.Contains("已经连接")) return true; return false; } /// /// 关闭链接 /// public bool Disconnect() { string arg = string.Format("rasdial \"{0}\" /disconnect", Name); string result=InvokeCmd(arg); if (result.Contains("命令已完成")) return true; return false; } public static string InvokeCmd(string cmdArgs) { Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardInput = true; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.RedirectStandardError = true; p.StartInfo.CreateNoWindow = true; p.Start(); p.StandardInput.WriteLine(cmdArgs); p.StandardInput.WriteLine("exit"); return p.StandardOutput.ReadToEnd(); } } }