Я пытаюсь открыть командную строку Windows и запустить команду ping при нажатии кнопки ссылки. Кнопка Link выглядит что-то вроде:Запустить команду «ping» при нажатии кнопки ссылки
<asp:LinkButton runat="server" ID="lbFTPIP" OnCommand="lbFTPIP_OnCommand" CommandArgumnet="1.2.3.4" Text="1.2.3.4"/>
Я попытался это для OnCommand:
protected void lbFTPIP_OnCommand(object sender, CommandEventArgs e)
{
string sFTPIP = e.CommandArgument.ToString();
string sCmdText = @"ping -a " + sFTPIP;
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = sCmdText;
p.StartInfo.RedirectStandardOutput = false;
p.StartInfo.UseShellExecute = false;
p.StartInfo.CreateNoWindow = false;
p.Start();
}
Когда я нажимаю на ссылку, он открывает окно командной строки, но не отображается или выполнить команду, он просто показывает Текущий каталог. Не уверен, что мне здесь не хватает.
Это часть веб-страницы, если это имеет значение.
Что касается в 'cmd' команды: вам нужно иметь'/C' (или '/ k') в качестве первого аргумента (перед 'ping'), чтобы указать, что вы хотите запустить команду. –
Вот и все! Спасибо. Я отсутствовал/C. Есть ли способ разрешить пользователю закрыть окно? Сейчас он закрывается после отображения ответов на команду ping> Я пытался p.WaitForExit(), но это не хорошо. – NoBullMan