redirectstandardoutput相关内容

通过 C# 的 Process 类生成时,处理标准错误和程序输出的正确方法?

我阅读了 Process.StandardOutput 的文档,其中有这样的引用: 如果父进程在 p.StandardOutput.ReadToEnd 之前调用 p.WaitForExit 并且子进程写入足够的文本来填充重定向的流,则可能导致死锁情况. 所以我想知道.如果我还担心在某些情况下可能会填充 StandardError,那么正确的方法是什么? 我是否必须使用循环来交替读 ..
发布时间:2022-01-18 16:17:14 C#/.NET

StandardOutput.ReadToEnd() 挂起

我有一个经常使用外部程序并读取其输出的程序.使用您通常的进程重定向输出,它可以很好地工作,但是当我尝试读取它时,由于某种原因一个特定参数挂起,没有错误消息 - 没有例外,它只是在到达该行时“停止".我当然使用一个集中的函数来调用和读取程序的输出,就是这样: public string ADBShell(string adbInput){尝试{//创建空值字符串结果 = string.Empty; ..
发布时间:2022-01-07 19:43:04 C#/.NET

重定向进程输出 C#

我想将进程的标准输出重定向到一个字符串以供以后解析.我还想在进程运行时在屏幕上看到输出,而不仅仅是在运行完成时. 这可能吗? 解决方案 使用 重定向标准输出. 来自 MSDN 的示例: //启动子进程.进程 p = new Process();//重定向子进程的输出流.p.StartInfo.UseShellExecute = false;p.StartInfo.Redire ..
发布时间:2022-01-02 19:08:23 C#/.NET

C#在运行时获取进程输出

无论如何,是否可以重定向衍生进程的标准输出并在其发生时捕获它.我所看到的一切只是在过程完成后执行 ReadToEnd.我希望能够在打印时获得输出. 编辑: private void ConvertToMPEG(){//启动子进程.进程 p = new Process();//重定向子进程的输出流.p.StartInfo.UseShellExecute = false;p.StartInf ..
发布时间:2022-01-02 19:04:17 C#/.NET

使用 HTACCESS 将斜杠后的文本转换为变量

我需要使用 URL 传递 3 个变量,但使用斜杠.例如,我会使用这个 URL: http://www.example.com/variable1/variable2/variable3 我的 HTACCESS 中有这个,它允许传递第一个变量之后的文本,但我无法通过其他两个变量,即使我添加了 &$2 重写引擎开启RewriteCond %{REQUEST_FILENAME} !-fRe ..
发布时间:2021-12-10 08:48:18 PHP

重定向 System.out.println

我的应用程序有很多 System.out.println() 语句. 我想从 println 捕获消息并将它们发送到标准记录器(Log4j、JUL 等). 怎么做? 解决方案 System 类有一个 setOut 和 setErr 可用于将输出流更改为,例如,一个带有支持 File 的新 PrintStream,或者,在这种情况下,可能是另一个使用您选择的日志子系统的流. ..
发布时间:2021-11-25 18:27:52 Java开发

捕获标准io编码的输出?

我正在将应用程序的输出传递到我的.NET应用程序中. 编码有点奇怪.字母ÅÄÖ显示为├Ñ├ñ├ 我试图从各种不同的编码来回转换而没有成功.有人知道如何在此处正确转换字符串吗? 例如该应用程序的文档说输出为UTF8,所以我已经尝试过了: byte [] encodeBytes = Encoding.UTF8.GetBytes(theOutput);var res = Encod ..
发布时间:2021-04-18 20:46:28 C#/.NET

RedirectStandardOutput和批处理文件中的pause命令

在我的C#代码中,我必须运行一些外部进程.这些可能是批处理文件或可执行文件.通过将 ProcessStartInfo 的 RedirectStandardOutput 设置为true,可以将输出重定向到我自己的窗口.这样,即使在外部过程完成后,用户也可以查看输出.我还重定向输入,以便用户在必要时可以按键.一般而言,这很好. 但是,我有一个问题.一些批处理文件使用 PAUSE 命令.显然,直到 ..
发布时间:2021-04-01 21:49:24 C#/.NET

在使用控制台应用程序进行测试时,为什么在DLL文件中启动的进程可以工作,而在被另一个DLL文件调用时却不起作用?

上周,我发布了问题 在C#DLL文件中将其作为进程运行时,如何获取控制台应用程序输出? ,因为我试图找出问题的原因,曾经有。但是,我无法找到出现错误的原因,因此我想问一个跟我直接有关的问题。 我正在工作DLL文件中的on方法,我必须在其中启动一个进程。用于执行此操作的代码是: ProcessStartInfo psi = new ProcessStartInfo(); psi.U ..
发布时间:2020-10-24 01:58:06 C#/.NET

为什么从我的python脚本写入文件被覆盖

这可能是一个简单的操作系统问题,而不是编程问题,因此我们可能需要将其迁移到另一个社区. 我犯了一个错误,遇到了一些奇怪的行为,我想了解正在发生的事情. 在我的python脚本中,我调用了某人编写的Java程序.他们使用Logger记录一些消息,而我正在将Java程序输出写入outfile.我也想将脚本的输出重定向到另一个文件b/c,我不想从Java程序中搜索大量的msgs. out ..
发布时间:2020-07-05 20:01:08 其他开发

重定向标准输出,不引发事件

我正在尝试启动一个程序并读取它的标准输出.但是,该事件从未引发过. 我启动的进程正在运行,并且在控制台中使用相同的参数创建输出. 有什么想法,我在做什么错了? public void StartProcess(string Filename, string Arguments) { currentProcess = new Process(); ..
发布时间:2020-07-05 20:01:06 C#/.NET

捕获python程序的标准输出

我正在尝试编写一个C#程序,以捕获python程序中的标准输出.我的问题是所有输出都在程序执行之后而不是实际发生时发出.例如,对于此python程序: print "Hello" time.sleep(2) print "Hello" 我希望得到"Hello",两秒钟的间隔,然后再得到"Hello".实际结果是两秒钟的间隔,然后是"Hello","Hello". 如果我从命令行运行 ..
发布时间:2020-07-05 20:01:01 C#/.NET

获取.NET Process对象以连续刷新输入流?

我正在尝试更改与Mercurial命令行客户端通信的类库,而1.9客户端的新功能是能够启动服务器并通过标准输入/输出管道与之对话.这确实是有希望的,因为使用Mercurial命令行客户端的主要麻烦之一是,由于它是用Python编写的,因此即使只是询问其版本,该客户端也有一些开销. 但是,有一个问题.到目前为止,我已经通过读取标准输出/错误从命令行客户端检索了输出,并且当进程退出时,流将刷新, ..
发布时间:2020-07-05 20:00:59 C#/.NET

C#和Python之间的进程间通信

我可以理解,有关此主题的问题很多,但没有一个能够真正解决我的问题.因此,在这里我介绍了我的代码,并希望在这里指出我的错误. 我有一个用C#编写的程序,该程序将调用python可执行文件/文件.第一个要求是我已经通过输入流将一个参数传递给python文件.我能做的.我现在面临的真正问题是,我必须查看我的python文件是否正在打印"Please enter arguments_x",我必须在C ..
发布时间:2020-07-05 20:00:56 C#/.NET

Python2.7中的contextlib.redirect_stdout

我使用Python2.7,并且需要该功能: contextlib.redirect_stdout . 我的意思是,我想重定向特定功能(而不是整个程序)的输出. 问题是-只有Python3支持"context.redirect_stdout",而没有Python2.7. 有人知道我该如何在Python2.7中使用相同的功能或实现相同的想法? 预先感谢 解决方案 如果您不担心重用同 ..
发布时间:2020-07-05 20:00:54 Python

从控制台应用程序异步获取标准输出,而无需等待控制台退出

我的应用程序产生了一个小型的长时间运行的控制台应用程序,无法获得一些控制台标准输出的问题. 我的应用程序启动了控制台应用程序,并且控制台应用程序将在我的应用程序生命周期内(或直到被明确终止)一直保持监听端口状态. 启动控制台应用程序时,它将输出正在监听的端口号,我需要异步获取该端口号,并在应用程序中的其他位置使用它.问题是,我的事件处理程序从未获取输出数据.我敢肯定,我一定会忘记一些琐 ..
发布时间:2020-07-04 18:43:16 C#/.NET

复制和重定向System.err流

我目前在我的应用程序中使用java.util.logger。它将其输出发送到System.err。我需要它继续这样做,但我还需要将该输出发送到其他东西。 有没有办法复制System.err流以便它可以发送到两个不同的来源吗? 解决方案 一如既往注意人们引用 java.util.logger 我倾向于至少建议查看另一个日志库,例如 logback 和 slf4j 。 此博客文章描 ..
发布时间:2018-12-24 12:52:29 Java开发