QEPcess를 사용하여 미리 빌드 된 C++ 바이너리를 실행할 수없는 곳이 있습니다. 동시에 사람들이 QProcess로 쉘 스크립트 등을 실행하는 다른 질문이있어서 혼란 스럽습니다. QProcess를 사용하여 미리 빌드 된 C++ 바이너리를 실행할 수 있습니까? 이 바이너리는 텍스트 파일을 읽고 두 개의 텍스트 파일을 생성합니다. GUI를 사용하여 기본 UI를 만들고 클릭하면 외부 바이너리를 호출하는 버튼이 있습니다. execute
으로 이것을 실행하면 QIODevice: read: device not open
의 오류가 발생합니다. start
을 사용할 때 오류가보고되지 않습니다. 그러나 출력 파일도 생성되지 않습니다. qt에서 허용되는지 아니면 다른 접근 방식에서 허용되는지에 대한 아이디어가 필요합니다.QProcess가 C++ 파일을 실행 중임
void MainWindow::on_startButton_clicked()
{
QString program = "./home/naveen/sdj";
QProcess *myProcess = new QProcess(this);
myProcess->start(program);
myProcess->waitForFinished();
qDebug() << myProcess->exitStatus();
qDebug() << myProcess->readAllStandardError();
}
물론 이것은 실행 경로가 아니라 빌드 경로입니다. – Smar
@Smar 사실, QtCreator가 앱을 실행하는 가장 일반적인 경우를 가정합니다. – MrEricSir
@MrEricSir, 나는 그것을/home/naveen/sdj로 바 꾸었습니다. 아직도 아무 실행도. 또한, 어떻게 '마침'을 기다릴 수 있습니까? 힌트를 주시겠습니까 –