其实这个主要是利用Windows 7系统下的命令启用虚拟路由器:- public class WifiHelper
- {
- const string WIFI_SET_CMD = "netsh wlan set hostednetwork mode=allow ssid={0} key={1}";
- const string WIFI_START_CMD = "netsh wlan start hostednetwork";
- const string WIFI_STOP_CMD = "netsh wlan stop hostednetwork";
- public static string Set(string name, string password)
- {
- return ExecDOS(string.Format(WIFI_SET_CMD, name, password), 0);
- }
- public static string Start()
- {
- return ExecDOS(WIFI_START_CMD, 0);
- }
- public static string Stop()
- {
- return ExecDOS(WIFI_STOP_CMD, 0);
- }
- /// <summary>
- /// 执行DOS命令,返回DOS命令的输出
- /// </summary>
- /// <param name="dosCommand">dos命令</param>
- /// <param name="milliseconds">等待命令执行的时间(单位:毫秒),如果设定为0,则无限等待</param>
- /// <returns>返回DOS命令的输出</returns>
- public static string ExecDOS(string dosCommand, int seconds)
- {
- string output = ""; //输出字符串
- if (dosCommand != null && dosCommand != "")
- {
- Process process = new Process();//创建进程对象
- ProcessStartInfo startInfo = new ProcessStartInfo();
- startInfo.FileName = "cmd.exe";//设定需要执行的命令
- startInfo.Arguments = "/C " + dosCommand;//设定参数,其中的“/C”表示执行完命令后马上退出
- startInfo.UseShellExecute = false;//不使用系统外壳程序启动
- startInfo.RedirectStandardInput = false;//不重定向输入
- startInfo.RedirectStandardOutput = true; //重定向输出
- startInfo.CreateNoWindow = true;//不创建窗口
- process.StartInfo = startInfo;
- try
- {
- if (process.Start())//开始进程
- {
- if (seconds == 0)
- {
- process.WaitForExit();//这里无限等待进程结束
- }
- else
- {
- process.WaitForExit(seconds); //这里等待进程结束,等待时间为指定的毫秒
- }
- output = process.StandardOutput.ReadToEnd();//读取进程的输出
- }
- }
- catch
- {
- throw;
- }
- finally
- {
- if (process != null)
- process.Close();
- }
- }
- return output;
- }
- }
复制代码 大家可以直接拿来用了。
|
|