Команда netsh с помощью C#

Я хочу создать приложение C# для создания сети WLAN. В настоящее время я использую netsh с помощью командной строки. Мое приложение должно делать это нажатием кнопки. Вот команда, которую я использую в командной строке в режиме администратора «netsh wlan set hostednetwork mode=allow ssid=sha key=12345678», после чего я ввожу «netsh wlan start hostednetwork». Когда я это сделаю, я могу создать локальную сеть Wi-Fi. В С# я закодировал, как показано ниже

private void button1_Click(object sender, EventArgs e)
{
     Process p = new Process();
     p.StartInfo.FileName = "netsh.exe";
     p.StartInfo.Arguments = "wlan set hostednetwork mode=allow ssid=sha key=12345678"+"netsh wlan start hostednetwork";            
     p.StartInfo.UseShellExecute = false;
     p.StartInfo.RedirectStandardOutput = true;
     p.Start();                       
}

person Shavindra Manathunga    schedule 23.08.2013    source источник


Ответы (1)


Вы не должны делать это: +"netsh wlan start hostednetwork" к аргументам первого процесса. Это будет означать, что вы вводите это в консоли:

netsh wlan set hostednetwork mode=allow ssid=sha key=12345678netsh wlan start hostednetwork

Вместо этого создайте новый процесс для второй строки:

private void button1_Click(object sender, EventArgs e)
{
     Process p1 = new Process();
     p1.StartInfo.FileName = "netsh.exe";
     p1.StartInfo.Arguments = "wlan set hostednetwork mode=allow ssid=sha key=12345678";            
     p1.StartInfo.UseShellExecute = false;
     p1.StartInfo.RedirectStandardOutput = true;
     p1.Start();

     Process p2 = new Process();
     p2.StartInfo.FileName = "netsh.exe";
     p2.StartInfo.Arguments = "wlan start hostednetwork";            
     p2.StartInfo.UseShellExecute = false;
     p2.StartInfo.RedirectStandardOutput = true;
     p2.Start();
}
person Timo    schedule 23.08.2013