我正在处理DLL中的方法。在我的方法中,我一直在写事件日志,以便确定事情是否如我预期的那样运行。我在该方法中所做的任务之一是创建一个进程并运行一个命令行应用程序,我希望能够捕获通常写入控制台的输出,并将其写入事件日志。
代码:
进程getNextIons=新进程();获取NextIons。StartInfo。FileName=@“”“C:\Program Files\OpenMS-1.6\PrecursorIonSelector.exe”“”;获取NextIons。StartInfo。Arguments=@“-ini”“C:\Program Files\OpenMS-1.6\precursorionselector.ini”“”;获取NextIons。开始信息。UseShellExecute=false;获取NextIons。StartInfo。重定向StandardOutput=true;获取NextIons。开始();获取NextIons。等待退出();系统。诊断。事件日志。WriteEntry(“FMANWiff”,“IPS:”+getNextIons.StandardOutput.ReadToEnd());
我有一个调用我的方法的控制台测试应用程序,当我这样做时,我能够看到进程已启动并正确运行,但是,当我实际尝试使用DLL,而不是使用测试应用程序时,我最终看到的只是一个条目:
IPS:没有输出。但是,我可以看出它正在运行,因为我可以看到许多输出文件正在更新。
为什么我没有得到任何输出,我该如何纠正?