作者mimicyh (秘密客)
看板C_Sharp
标题[问题]C#执行.exe,并显示於视窗程式
时间Fri Apr 6 20:03:56 2012
小弟最近刚开始触碰C#来做GUI,
我是用一个button去开启一个VC++的.exe档,
但我现在想在执行.exe档的时候不要另外开启cmd的视窗来执行,
想把它写在GUI里面,让.exe的执行过程以及结果全部都用视窗程式显示出来,
就等於是将cmd视窗会显示的东西,都透过GUI将它显示就好了,
可能很多不懂的关系,所以看了好久还是试不出来,
希望有高手可解答,感谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.127.18.246
1F:→ pico2k:google "c# redirect io" 04/07 00:20
2F:推 yeo1987:像↑说的, 上MSDN看看Process.StandardOutput的范例吧 04/07 09:35
3F:→ mimicyh:感谢你们的提示,现在已经可以显示在GUI上面了,只是, 04/08 01:57
4F:→ mimicyh:我的.exe档应该数值要输入才会往下执行,怎会一次就直接 04/08 01:57
5F:→ mimicyh:就执行完到结束? 04/08 01:58
6F:→ yeo1987:查查StandardInput的范例 & 检查.exe档的输入部分 04/08 02:46
7F:→ yeo1987:喂完数值, 一行一行读, 直到空字串; 慢慢抓问题罗 04/08 02:48
8F:→ mimicyh:请问是用readLine来读吗?只是现在我程式有在执行但是却 04/08 21:47
9F:→ mimicyh:却没print出来output在我的GUI,而且跑一下子就当掉了, 04/08 21:47
10F:→ mimicyh:请问这跟.exe档output太快有关吗?谢谢 04/08 21:48
11F:→ yeo1987:抱歉, 要改用EndOfStream来判断结尾才对@@ 04/09 01:48
12F:→ yeo1987:读的方法, 看你要一个一个字读还是一次读一行 04/09 01:48
13F:→ mimicyh:我那个.exe档开始执行就不会结束,直到我下指令给它它才会 04/09 01:54
14F:→ mimicyh:结束,所以我希望GUI在这时候依旧一直print出来message 04/09 01:54
15F:→ mimicyh:但这时候.exe档还是仍然在执行 04/09 01:54
16F:→ mimicyh:我是希望.exe output一行,我GUI就print一行 04/09 01:56
17F:→ yeo1987:这样不会影响到的, 可以用Sleep间隔传讯息测试 04/09 02:27