• 7452阅读
  • 5回复

[提问]Qprocess 如何实时显示 标准输出 [复制链接]

上一主题 下一主题
离线cookinful
 
只看楼主 倒序阅读 楼主  发表于: 2011-05-05
Qprocess 好像都是在所调用的程序执行完后才发出readyReadStandardOutput()信号,才能得到输出,
没有办法在所调用的程序执行过程中进行实时读取。
离线jdwx

只看该作者 1楼 发表于: 2011-05-05
你可以用QProcess调用mingw32-make试试。
还可以看看QtCreator的编译输出窗口,是实时的。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线cookinful
只看该作者 2楼 发表于: 2011-05-05
是的,我也看了这个http://www.qtcn.org/bbs/read.php?tid=31666调用mplayer的代码,它是可以用readyReadStandardOutput实时输出的,可能是要所调用的程序的输出方式所控制的吧。
离线cookinful
只看该作者 3楼 发表于: 2011-05-05
引用第1楼jdwx于2011-05-05 11:29发表的  :
你可以用QProcess调用mingw32-make试试。
还可以看看QtCreator的编译输出窗口,是实时的。
刚试了下,用QProcess调用mingw32-make是可以实时输出地,但是不知道mingw32-make究竟是怎么输出的。
离线dbzhang800

只看该作者 4楼 发表于: 2011-05-05
引用第3楼cookinful于2011-05-05 12:19发表的  :
刚试了下,用QProcess调用mingw32-make是可以实时输出地,但是不知道mingw32-make究竟是怎么输出的。


正常的程序应该都没问题,就怕你调用的那个程序 文件操作不怎么地道 ^_^ :

比如,很多人:文件打开后不知道及时关闭,不知道flush()、endl 等有什么用等等
离线cookinful
只看该作者 5楼 发表于: 2011-05-05
引用第4楼dbzhang800于2011-05-05 12:28发表的  :
正常的程序应该都没问题,就怕你调用的那个程序 文件操作不怎么地道 ^_^ :
比如,很多人:文件打开后不知道及时关闭,不知道flush()、endl 等有什么用等等
.......


好吧,是调用的程序的问题,现在可以实时输出了,
多谢 jdwxdbzhang800!
快速回复
限100 字节
 
上一个 下一个