2011-03-09 86 views
0

我目前正在编写一个程序,它必须编译一个简单的C++程序,运行它,输入内容并写入输出。 因此,让我们说我们有一个简单的C++源代码。我的程序将接收文件,编译它,运行生成的exe文件,一次输入保存在数组中的值,然后将结果输出写入标签或文本区域。C#控制一个控制台进程

好吧,我已经成功地写,将使用默认的编译器来编译程序的aplication,测试,如果有任何错误,警告,如果exe文件作出。

我启动的程序作为一个过程中,我还设法重定向标准输出,输入。

现在最大的问题是如何计算出来的时候,过程要求很高的用户输入。

有什么办法来控制过程,就像当程序要求苛刻的用户输入,动态地把每件事写的过程中吐出来检查,...?

我已经连接一个DataReceivedEventHandler我的过程,但它的作用有点滑稽。我认为它不会触发,直到我的过程输出一整行。但我真诚地希望看到每个角色都是立即书写的。尤其是,可能会发生控制台程序输出“按任意键继续...”,这不是一个完整的行,直到我不按任何键(输入内容)。

而关于检查我的过程是否需要用户输入: 我不能在输出中使用模式来确定是否需要输出某些内容。我将不得不编译和运行很多文件,输出结果不完全一样。

那么,有没有办法完全控制过程的控制?

任何答案都会是thpretiated。

回答

0

,如果你知道所有的输入开始与你为什么不提供所有这些,让新编译EXE使用它。

+0

Thx为您的答案,我想我没有选择,但没有确认输入数据。写一些输入,然后等待几个毫秒。 – itd 2011-03-09 10:47:47