1.操作如题,在主线程中调用QPRocess启动cmd,调试的时候cmd可以在进程中查看到,利用QProcess的write向Cmd输入命令,命令为启动第三方exe,运行之后第三方的exe没有在进程中查看到,说明启动失败。按照我的理解应该启动cmd之后,执行命令,调试的控制台窗口应该会变成第三方的控制台的状态。而且应该在代进程管理器中可以查看到第三方exe的。代码如下:
QString argument = QString("-od G:/test -aet DCMTKTEST 666 -fe .dcm");// .arg(savestrpath);
QString fullpath = QString("%1/%2").arg(QString("G:/Utilities/Debug/DCMTK/bin")).arg(QString("storescp.exe "));
QString argv(fullpath + argument);
QString program;
program.append("cmd.exe");
prog = new QProcess(this);
prog->start(program);
char* ch;
QByteArray ba = argv.toLatin1(); // must
ch = ba.data();
prog->write(ch);
prog->write("\n\r");