Выполнение командной строки через C# не работает
Привет,
Я новичок в C# и пытаюсь разработать приложение, которое будет работать...
1. Откройте командную строку при нажатии кнопки
2. Перейдите в определенную папку (где XYZ.exe копируется)
3. выполните некоторые команды на XYZ.exe.
Я искал в google и написал какой-то код, который открывает командную строку, но ничего не выполняет. Я вижу только пустую командную строку.
Вот код...
private void btn_Merge_Click(object sender, EventArgs e) { ProcessStartInfo commandInfo = new ProcessStartInfo(); /// ("cmd.exe", "/K"); commandInfo.WorkingDirectory = @"D:\TOOLS\" ; ///@"c:\"; commandInfo.UseShellExecute = false; commandInfo.RedirectStandardInput = true; commandInfo.RedirectStandardOutput = true; commandInfo.FileName = "cmd.exe"; commandInfo.Arguments = "srecord - 1.63 - win32\\srec_cat D:\\FLASH\\BOOT123.hex"; Process process = Process.Start(commandInfo); command.Close(); }
Пожалуйста, скажите мне, где я ошибаюсь.
Что я уже пробовал:
СВУ, выполняющее только commandInfo.Аргументы = "/ C ipconfig"; но даже это не сработало.
Я тоже пробовала, создание экземпляра процесса...
Process Command = new Process(); Command.start(); Command.StandardInput.WriteLine("srecord - 1.63 - win32\\srec_cat D:\\FLASH\\BOOT123.hex"); Console.WriteLine(command.StandardOutput.ReadToEnd()); // string result = command.StandardOutput.ReadToEnd(); // Display the command output. // Console.WriteLine(result);
Kornfeld Eliyahu Peter
Почему вы должны открывать командную строку (cmd.exe), перейдите непосредственно к вашему собственному исполняемому файлу...
PIEBALDconsult
Может быть, вам понравится мой
https://www.codeproject.com/Articles/70864/ProcessCommunicator