57得票9回答
StandardOutput.ReadToEnd() 卡住了

我有一个经常使用外部程序并读取其输出的程序。 通常使用进程重定向输出它可以很好地工作,但是当我尝试读取一个特定的参数时却出现了挂起的情况,没有错误消息-没有异常,当它到达那一行时就会“停止”。 当然,我使用了一个集中式函数来调用和读取程序的输出,如下:public string ADBShel...

35得票6回答
重定向 System.out.println

我的应用程序中有许多System.out.println()语句。 我想捕获来自println的消息并将它们发送到标准记录器(Log4j,JUL等)。 如何做到这一点?

32得票6回答
ProcessInfo和RedirectStandardOutput

我有一个应用程序,在命令行窗口中调用另一个进程,该进程具有输出到控制台窗口的更新统计信息。我认为这是一个相当简单的操作,但似乎无法使其正常工作。我是否漏掉了什么?string assemblyLocation = Assembly.GetExecutingAssembly().Location...

17得票2回答
C#重定向进程输出

我希望将进程的标准输出重定向到一个字符串中,以便稍后进行解析。同时,在进程运行时,我想在屏幕上看到输出内容,而不仅仅是等到它运行完毕后才能看到。这是否可能?

13得票2回答
C#运行时获取进程输出

有没有办法重定向一个衍生进程的标准输出并在它发生时捕获它。我看到的所有内容都是在进程完成后使用ReadToEnd。我想要能够在输出正在打印时获取它。 编辑: private void ConvertToMPEG() { // Start the child pr...

11得票1回答
在Python2.7中的contextlib.redirect_stdout

我使用的是Python2.7,想要使用以下函数:contextlib.redirect_stdout。我的意思是,我只想重定向特定函数(而不是整个程序)的输出。 问题在于,只有Python3支持"context.redirect_stdout",而Python2.7不支持。请问有没有办法在P...

10得票1回答
逐行读取标准输出的方法是什么?

我想逐行检查进程的标准输出。在读取第二行后,myProcess.StandardOutput.EndofStream 从false变为true。因此它退出了while循环。也许我应该使用其他东西?Process myProcess = new Process(); try { myPr...

8得票4回答
C#关闭标准输出

我希望能够像wget -b一样将我的程序与控制台分离。代码片段可能如下: static void Main(string[] args) { var settings = new Settings(args); if (settings.Background) { ...

8得票1回答
当重定向输出相对较大时,启动的进程会挂起。

我今天遇到了一个问题,花费了我很长时间才弄明白。我正在IIS中启动一个进程,将其标准输出和错误输出重定向,使得当进程退出时,我可以生成日志。在我的机器上一切运行正常,但发布后就不是那么顺利了。 该进程应该只运行一段时间然后退出,但它却不能退出,停止响应,占用了像套接字这样的资源。经过一段时间...

7得票2回答
使用C#的Process类生成程序时,处理标准错误和输出的正确方法是什么?

我阅读了有关Process.StandardOutput的文档,其中包含以下引用: “如果父进程在p.StandardOutput.ReadToEnd之前调用p.WaitForExit并且子进程写入足够多的文本以填充重定向流,则可能会导致死锁条件。” 因此,我想知道。 如果我还担心在某些情...