base
' 创建一个子进程,运行“程序” (在Windows不可以直接使用dir等命令) '
// 当前你的qt项目目录是: G:\Qt_test\debug\qt_test.exe
// 在qt_test的同级目录(G:\Qt_test\debug)下,还有1.exe
// 1.exe里有(cout << "111"; 和 cerr << "222" )
QProcess cmd; ' 这只是个对象, 并没有创建新的进程!! '
' 设置,我们从哪个(输出流)读数据 '
cmd.setReadChannel(QProcess::StandardError); // cerr / clog
cmd.setReadChannel(QProcess::StandardOutput);
' 此时,才是真正的创建了 新的进程 '
cmd.start( "1.exe" );
if( cmd.waitForStarted(5000) == false ){
DE << "进程未能在5内开启";
return;
}
DE << "进程启动成功";
DE << cmd.processId(); // 进程id
if( cmd.waitForFinished(10000) == false ){
DE << "进程未能在10s内结束";
return;
}
' 必须是在(该进程
DE<< QString::fromLocal8Bit