C# - Запустить приложение с аргументами.

Здравствуйте, я запускаю программное обеспечение CFast для параметрического анализа. Для этого я хочу создать приложение на C#, которое запускает ядро ​​CFast.exe. Если я хочу запустить программное обеспечение из cmd.exe и запустить его в файле INPUTFILENAME.in, я пишу в приглашении:

CFast.exe INPUTFILENAME

В C# я написал следующий код:

Process firstProc = new Process();
firstProc.StartInfo.FileName = @"C:\Users\Alberto\Desktop\Simulazioni Cfast\D\C\N\A3B1\CFAST.exe";
firstProc.StartInfo.Arguments = @"INPUTFILENAME";
firstProc.EnableRaisingEvents = true;
firstProc.Start();
firstProc.WaitForExit();

С этим кодом CFast запускается, но ничего не анализирует... Похоже, не принимать аргумент. Намек на эту неприятность?

1 ответ

Решение

Решаемые. Ошибка в имени файла и в синтаксисе команды

// setup cmd process
        var command = @"CFAST.exe C:\Users\Alberto\Desktop\Simulazioni_Cfast\D\C\N\A3B1\A3B1";
        ProcessStartInfo procStartInfo = new ProcessStartInfo("cmd", "/c " + command);
        procStartInfo.RedirectStandardOutput = true;
        procStartInfo.UseShellExecute = false;
        procStartInfo.RedirectStandardError = true;
        procStartInfo.CreateNoWindow = true;

        // start process
        Process proc = new Process();
        proc.StartInfo = procStartInfo;
        proc.Start();

        proc.WaitForExit();

        // read process output
        string cmdError = proc.StandardError.ReadToEnd();
        string cmdOutput = proc.StandardOutput.ReadToEnd();

где A3B1 - имя файла.IN

Другие вопросы по тегам