Не работает программа exe, запускаемая из проекта - C#
Формулировка задачи:
Мне нужно запустить файл midi2ascii.exe из C#-проекта, который конвертирует midi-файл в txt-файл, пыталась сделать это следующими способами:
1)
2)
3) Такой же, как и предыдущий, но вместо
написала
4)
(Сделано, но не записывает данные в txt-файл).
5) Поменяла строку
Но ни один из этих способов не сработал так, как мне было нужно. Подскажите, что с этим делать.
string midi2asciiProgramName = @"D:\midi2ascii.exe";
string midiFileName = @"D:\81979.mid";
string textFileName = @"D:\81979.txt";
string commands = "-c -s";
string bigger = ">";
System.Diagnostics.Process.Start(midi2asciiProgramName, midi2asciiProgramName + commands + midiFileName + bigger + textFileName);string standard = @"C:\Documents and Settings\ADMIN>"; string midi2asciiProgramName = @"D:\midi2ascii.exe"; string midiFileName = @"D:\81979.mid"; string textFileName = @"D:\81979.txt"; string commands = "-c -s"; string bigger = ">"; System.Diagnostics.Process.Start(midi2asciiProgramName, standard + midi2asciiProgramName + " " + commands + " "+ midiFileName + " " + bigger + " " + textFileName);
System.Diagnostics.Process.Start(midi2asciiProgramName, standard + midi2asciiProgramName + " " + commands + " "+ midiFileName + " " + bigger + " " + textFileName);
System.Diagnostics.Process.Start(standard + midi2asciiProgramName + " " + commands + " "+ midiFileName + " " + bigger + " " + textFileName);
string midiFileName = @"D:\81979.mid"; string textFileName = @"D:\81979.txt"; ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.CreateNoWindow = false; startInfo.UseShellExecute = false; startInfo.FileName = @"D:\midi2ascii.exe"; startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.Arguments = "-c -s" + midiFileName + " > " + textFileName; System.Diagnostics.Process.Start(startInfo);
System.Diagnostics.Process.Start(startInfo);
на
try
{
// Start the process with the info we specified.
// Call WaitForExit and then the using statement will close.
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch
{
// Log error.
}Решение задачи: «Не работает программа exe, запускаемая из проекта»
textual
Листинг программы
string midiFileName = @"D:\81979.mid"; string textFileName = @"D:\81979.txt"; Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.FileName = @"D:\midi2ascii.exe"; p.StartInfo.Arguments = "-c -s" + midiFileName; p.StartInfo.RedirectStandardOutput = true; p.Start(); string output = p.StandardOutput.ReadToEnd(); p.WaitForExit(); File.WriteAllText(textFileName, output);