无法打开通过运行exe生成的输出文件

时间:2018-10-15 04:47:37

标签: c# streamreader

我必须通过C#代码运行exe文件,并打开由exe生成的输出文件,以进行一些预处理。

通过运行exe成功生成输出文件。但是,当我尝试在同一运行中打开输出文件时,出现File Not Found Exception,但是当我再次运行该程序时,代码读取了我的输出文件,并且能够进行预处理。

private static void launchExe()
{
    string filename = Path.Combine("//myPathToExe");
    string cParams = "argumentsToExe";
    var proc = System.Diagnostics.Process.Start(filename, cParams);
    proc.Close();
}

我现在需要打开exe生成的输出文件。

private static void openOutputFile()
{
    StreamReader streamReader = new StreamReader("//PathToOutputFile");
    string content = streamReader.ReadToEnd();

    /*
     * Pre Processing Code
     */            
}

在这个阶段,我收到File Not Found Exception,但是我在指定的路径中生成了输出文件。

请帮助我解决这个问题。

1 个答案:

答案 0 :(得分:4)

请勿关闭您的应用,但请关闭WaitForExit

string filename = Path.Combine("//myPathToExe");
string cParams = "argumentsToExe";
var proc = System.Diagnostics.Process.Start(filename, cParams);
proc.WaitForExit();