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();
}
}
}