Page 1 of 1

wxExecute怎样一边运行一边输出

Posted: Tue Jan 03, 2017 9:40 am
by JacquesChen
我有个程序是命令行的,运行过程会有很多的屏幕输出(就是下面代码里面Error的部分),我现在用wx写了个GUI来调用这个程序,现在的调用代码如下,但是有个问题,就是必须在命令行程序运行完了才能看到输出,请问我要怎么修改才能一边运行一边输出呢?

Code: Select all

        wxArrayString Output, Errors;
        wxExecute( Cmd, Output, Errors );
        LogBox->Clear();

        for( int i = 0; i < Errors.GetCount(); ++i )
        {
            LogBox->AppendText( Errors[i] + "\n" );
        }

Re: wxExecute怎样一边运行一边输出

Posted: Sat Jan 07, 2017 10:49 am
by ollydbg23
根据wxExecute - WxWiki里面介绍的内容,推荐你使用wxProcess,可以截获子进程的console输入输出流。

Re: wxExecute怎样一边运行一边输出

Posted: Tue Jan 10, 2017 2:41 pm
by JacquesChen
ollydbg23 wrote:根据wxExecute - WxWiki里面介绍的内容,推荐你使用wxProcess,可以截获子进程的console输入输出流。
谢谢,按照你的提示我解决了这个问题了

Re: wxExecute怎样一边运行一边输出

Posted: Wed Jan 11, 2017 12:00 am
by ollydbg23
不客气,这个论坛我不太来,难得来一次,能帮你解决问题也不错 :)

Re: wxExecute怎样一边运行一边输出

Posted: Sun Jun 11, 2017 11:53 am
by JacquesChen
ollydbg23 wrote:不客气,这个论坛我不太来,难得来一次,能帮你解决问题也不错 :)
我现在遇到了个新的问题,我用 wxExecute调用外部程序,补做结果这些都成功了,但是,有时候外部程序崩溃,连带着把我的主程序一起搞崩溃了啊,这个我要怎么解决呢?我应该查阅哪个资料呢?