exe文件的输出内容无法重定向到winform窗口中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了exe文件的输出内容无法重定向到winform窗口中相关的知识,希望对你有一定的参考价值。
我把scrapy程序打包成的exe直接拖到控制台里运行无误,信息也能输出来,但当在winform中调用cmd运行exe文件时信息无法重定向出来。(注:其他C++写的小程序的输出程序也无法在这里重定向出来。)代码如下:
求高手指点一二!
try
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = name;//需要启动的程序名
p.StartInfo.WorkingDirectory = path;
p.Start();//启动
catch (Exception ex)
//调用
StartExe(D:\\Projects, "my.exe");
可以启动exe,cmd,dat,快捷方式追问
不是要启动,是要将exe运行时在cmd中输出的内容重定向到文本框中。你这里的代码除了启动就只有启动。
追答怪不得没人回答.实在看不懂你说的什么玩意.
追问我们的代码没区别吧?看不懂只是境界问题
追答对,你境界高.知道里没有一个人能看得懂.
参考技术A 方法一:用反射EXE、dll文件的方式,获取 PE文件中的信息并输出到richtextbox中。方法二:使用PyQt,用QT做界面,然后将信息输出到QT程序中,QT程序由.NET调用本回答被提问者采纳
linux 从入门到跑路–重定向 管道
linux 从入门到跑路
重定向 管道
Linux给程序提供三种I/O设备
标准输入(STDIN)-0默认接受来自键盘的输入
标准输出(STDOUT)-1默认输出到终端窗口
标准错误(STDERR)-2默认输出到终端窗口
I/O重定向:改变默认位置
重定向
重定向会覆盖原文件内容
> 把STDOUT重定向到文件
2> 把STDERR重定向到文件
&> 把所有输出重定向到文件
set –C 禁止将内容覆盖已有文件,但可追加
set +C 允许覆盖
>| file 强制覆盖
#多输出实例 [[email protected] ~]# ll /mytext/ 总用量 0 -rwxrwxrwx. 1 root root 0 7月 22 03:52 1 -rw-r--r--. 1 root root 0 7月 22 03:52 10 -rwxrwxrwx. 1 root root 0 7月 22 03:52 2 -rwxrwxrwx. 1 root root 0 7月 22 03:52 3 -rwxrwxrwx. 1 root root 0 7月 22 03:52 4 -rwxrwxrwx. 1 root root 0 7月 22 03:52 5 -rwxrwx---. 1 root root 0 7月 22 03:52 6 -rwxrwx---. 1 root root 0 7月 22 03:52 7 -rwxrwx---. 1 root root 0 7月 22 03:52 8 -rwxrwx---. 1 root root 0 7月 22 03:52 9 [francis@localhost ~]$ cp -vr /mytext/ /app/hello 1>correct.txt 2>error.txt [francis@localhost ~]$ cat correct.txt "/mytext/" -> "/app/hello/mytext" "/mytext/1" -> "/app/hello/mytext/1" "/mytext/2" -> "/app/hello/mytext/2" "/mytext/3" -> "/app/hello/mytext/3" "/mytext/4" -> "/app/hello/mytext/4" "/mytext/5" -> "/app/hello/mytext/5" "/mytext/6" -> "/app/hello/mytext/6" "/mytext/7" -> "/app/hello/mytext/7" "/mytext/8" -> "/app/hello/mytext/8" "/mytext/9" -> "/app/hello/mytext/9" "/mytext/10" -> "/app/hello/mytext/10" [francis@localhost ~]$ cat error.txt cp: 无法打开"/mytext/6" 读取数据: 权限不够 cp: 无法打开"/mytext/7" 读取数据: 权限不够 cp: 无法打开"/mytext/8" 读取数据: 权限不够 cp: 无法打开"/mytext/9" 读取数据: 权限不够 [francis@localhost ~]$ cp -vr /mytext/ /app/hello 1>correct.txt 2>error.txt &> both.txt [francis@localhost ~]$ cat both.txt "/mytext/1" -> "/app/hello/mytext/1" "/mytext/2" -> "/app/hello/mytext/2" "/mytext/3" -> "/app/hello/mytext/3" "/mytext/4" -> "/app/hello/mytext/4" "/mytext/5" -> "/app/hello/mytext/5" "/mytext/6" -> "/app/hello/mytext/6" cp: 无法打开"/mytext/6" 读取数据: 权限不够 "/mytext/7" -> "/app/hello/mytext/7" cp: 无法打开"/mytext/7" 读取数据: 权限不够 "/mytext/8" -> "/app/hello/mytext/8" cp: 无法打开"/mytext/8" 读取数据: 权限不够 "/mytext/9" -> "/app/hello/mytext/9" cp: 无法打开"/mytext/9" 读取数据: 权限不够 "/mytext/10" -> "/app/hello/mytext/10"
追加重定向
>> 原有内容基础上,追加内容
命令1 | tee[-a ] 文件名| 命令2
把命令1的STDOUT保存在文件中,做为命令2的输入
-a 追加
以上是关于exe文件的输出内容无法重定向到winform窗口中的主要内容,如果未能解决你的问题,请参考以下文章
报错笔记:linux 命令行中的print输出内容无法重定向到文件中
将命令提示符输出重定向到 Visual Studio 2012 中的输出窗口