В настоящее время я запускаю сценарий powershell для запуска очистки диска в С#. Я пытаюсь вернуть вывод скрипта и отобразить его в бот-фреймворке.
У меня уже есть переменная (ProcessLine), которая должна фиксировать выходные данные, но я не знаю, как указать платформе бота отображать ее. Скрипт тоже работает нормально.
using System;
using System.Diagnostics;
using CoreTechChatbot.Dialogs.GuidedMenu.Resources;
namespace CoreTechChatbot.Dialogs.Shared
{
public class PowerShell
{
public PowerShell()
{
var PSScript = @"DiskCleanUp.ps1";
var RunPSScript = new ProcessStartInfo();
var Process = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "powershell.exe",
Arguments = $"-NoProfile -ExecutionPolicy Unrestricted -file \"{PSScript}\"",
UseShellExecute = false,
RedirectStandardOutput = true,
}
};
Process.Start();
while (!Process.StandardOutput.EndOfStream)
{
string ProcessLine = Process.StandardOutput.ReadToEnd();
}
}
}
}
Я ожидаю, что бот захватит и отобразит вывод сценария powershell
Информация должна быть захвачена в строке «ProcessLine», но я не могу заставить бота ее отобразить.
Вы используете относительный путь к файлу скрипта — проверили ли вы, что его каталог является текущим и что PowerShell запускается из него?
Да, путь к файлу правильный. Мне удалось убедиться, что PS запускается с пути
Мне трудно понять дизайн/макет того, что у вас происходит. Приведенный выше код — это код, который запускается локально на каком-то компьютере или сервере, или запускает в пределах бота? Если первое; Ваш бот уже создан и настроен с базовой функциональностью?
Приведенный выше код работает внутри бота. Да, бот уже создан и работает





Вы захотите использовать метод SendActivityAsync. См. больше информации здесь. В этом вы можете отправить свой вывод в виде текста. Вы также можете использовать другие варианты, такие как адаптивная карта или карта героя (скажем, вы хотели показать диаграмму).
Пожалуйста, ознакомьтесь с образцы для получения дополнительной информации о том, как реализовать такие вещи.
Как вы передаете информацию боту?