Я пытаюсь запустить скрипт Python из моего приложения на C #.
Я прочел здесь множество тем и соединил следующий код:
private void RunPythonScript(string py1, string py2)
{
try
{
ProcessStartInfo start = new ProcessStartInfo
{
FileName = py1,
Arguments = py2,
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true
};
using (Process process = Process.Start(start))
{
using (StreamReader reader = process.StandardOutput)
{
string result = reader.ReadToEnd();
string stderr = process.StandardError.ReadToEnd();
Console.Write(stderr);
Console.Write(result);
}
}
}
catch (Exception ex)
{
Helpers.ReturnMessage(ex.ToString());
}
}
private void RunPythonScriptToolStripMenuItem_Click(object sender, EventArgs e)
{
string py1 = @"C:\Users\Graham\AppData\Local\Programs\Python\Python37-32\python.exe";
string py2 = @"C:\Users\Graham\Desktop\Files\programming\PaydayDreamsProgramming\Python\scripts\domain-seo-analyzer\domain_seo_analyzer.py";
RunPythonScript(py1, py2);
}
Это выглядит довольно просто.
Проблема в том, что консоль python.exe
выскакивает пусто, поэтому я предполагаю, что скрипт не запущен. Нет ошибок, из которых я могу выйти, просто пустое поле консоли.
Есть ли что-то в моем коде, который я пропустил? (Я предполагаю, что это ошибка C #) оба пути к .exe и .py абсолютно верны.
Я не уверен, что еще нужно проверить, любая помощь будет оценена.