Vit*_*1ij 6 c# io process.start
我有pro1.exe从输入文件读取的程序,计算结果并将其写入输出文件.现在我正在编写程序test.exe,在不同的测试中测试它(填充输入,运行pro1使用Process.Start()和比较输出与假设)
问题如下:执行pro1.exe输出文件后为空.但是,如果我手动运行它,它会写入输出文件.
这是代码我如何执行pro1:
ProcessStartInfo processInfo = new ProcessStartInfo();
processInfo.FileName = _applicationName;
processInfo.ErrorDialog = true;
processInfo.UseShellExecute = false;
processInfo.RedirectStandardOutput = true;
processInfo.RedirectStandardError = true;
Process proc = Process.Start(processInfo);
Run Code Online (Sandbox Code Playgroud)
_applicationName 是exe文件的完整路径.
在调试中我看到,该进程正在启动,并以无错误结束.
这通常是由于有不同而造成的WorkingDirectory.您可能需要将WorkingDirectory属性设置为与可执行文件的路径匹配.
如果没有这个,UseShellExecute == false工作目录可能不是应用程序的本地路径.