Как я могу запустить скрипт Powershell из моего приложения на C #, а затем отобразить данные LIVE powershell в форме Windows?

2

Я пытаюсь запустить скрипт powershell в моем приложении на С#. Сценарий powershell проверяет определенный компьютер каждые 0,5 секунды и отображает вывод до его завершения.

Я могу запустить скрипт и открыть его в powershell, но я хочу, чтобы вывод отображал результаты проверки LIVE в метке формы С# (или ritchtextBox, если это невозможно)

Вот код, который у меня сейчас есть, который запускает программу извне.

 private void Btn_Ping_Click(object sender, EventArgs e)

{
    ProcessStartInfo proc = new ProcessStartInfo();
proc.FileName = 
@"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe";
    proc.Arguments = 
@"//ctac.1800contacts.com/service/hd_image/tools/LatencyTest.bat " + 
Txt_Main.Text.Trim();
    Process.Start(proc);
    richTextBox1.AppendText("Started pinging " + Txt_Main.Text + 
 "\r\n");
    Txt_History.ScrollToCaret();
}

Я ожидаю, что код будет отображать выходные данные в моем приложении Windows Form, но не на самом деле подтянуть PowerShell. Это возможно?

  • 0
    Пакетные файлы не являются сценариями PowerShell; PowerShell в вашем коде не делает ничего значимого, он просто запускает командную строку, поэтому вы не можете использовать интеграцию между PS и C # для более непосредственного выполнения задач. Вы должны будете рассматривать его как запуск процесса и получение выходных данных, и вот что вам нужно сделать: получить прямой вывод от Process или stackoverflow.com/questions/4291912 или stackoverflow.com/questions / 285760
  • 0
    Недавно я написал пару статей о проектах кода, в которых показано, как это сделать: как запускать сценарии PowerShell из C # и асинхронно выполнять сценарии PowerShell из C #
Показать ещё 2 комментария
Теги:
powershell

1 ответ

0

Недавно я написал пару статей о кодах, которые показывают, как это сделать:

https://www.codeproject.com/Articles/18229/How-to-run-PowerShell-scripts-from-C и https://www.codeproject.com/Articles/18409/Asynchronously-Execute-PowerShell-Scripts- из-C

Ещё вопросы

Сообщество Overcoder
Наверх
Меню