草庐IT

OutputDataReceived

全部标签

c# - 我正在为 cmd 编写包装器,但在重定向标准输入时遇到问题

好的,这就是我正在做的事情——我想编写一个将标准输出/输入重定向到富文本框的.net应用程序。我已经让它工作得很好,但是一旦我将标准输入添加到混合中,我的读取命令就会卡住。这是我表单中的相关代码。Shell=newProcess();Shell.StartInfo.FileName="cmd";Shell.StartInfo.UseShellExecute=false;Shell.StartInfo.WindowStyle=ProcessWindowStyle.Hidden;Shell.StartInfo.CreateNoWindow=true;//Shell.StartInfo.Re

c# - 通过 OutputDataReceived 事件捕获进程输出

我正在尝试“实时”(在运行时)捕获流程输出。我使用的代码相当简单(见下文)。由于某些奇怪的原因,永远不会调用OutputDataReceived事件。为什么?privatevoidbutton2_Click(objectsender,EventArgse){//SetuptheprocessstartinfovarprocessStartInfo=newProcessStartInfo("ping.exe","-t-n3192.168.100.1"){UseShellExecute=false,RedirectStandardOutput=true};//Setuptheprocess

c# - 通过 OutputDataReceived 事件捕获进程输出

我正在尝试“实时”(在运行时)捕获流程输出。我使用的代码相当简单(见下文)。由于某些奇怪的原因,永远不会调用OutputDataReceived事件。为什么?privatevoidbutton2_Click(objectsender,EventArgse){//SetuptheprocessstartinfovarprocessStartInfo=newProcessStartInfo("ping.exe","-t-n3192.168.100.1"){UseShellExecute=false,RedirectStandardOutput=true};//Setuptheprocess

c# - 我如何知道最后一个 OutputDataReceived 何时到达?

我在一个针对.NetFramework3.5的程序中有一个System.Diagnostics.Process对象我已经重定向了StandardOutput和StandardError管道,并且我从它们异步接收数据。我还为Exited事件设置了一个事件处理程序。调用Process.Start()后,我想在等待引发事件的同时离开并做其他工作。不幸的是,对于返回大量信息的进程,Exited事件似乎在最后一个OutputDataReceived事件之前触发。我如何知道何时收到最后一个OutputDataReceived?理想情况下,我希望Exited事件是我收到的最后一个事件。这是一个示例程