Я не могу заставить QProcess читать какие-либо выходные данные из моего VBScript. Сценарий выполняется как сам по себе, так и при вызове из QProcess, и выводится в вывод приложения QCreator, поэтому я знаю, что мой VBS выполняется. Для устранения неполадок я сократил свой VBS до:
WScript.StdOut.WriteLine("Hi")
Qt-сторона, которую я пробовал:
- Подключение готовых сигналов QProcess, readyReadStandardOutput, readyReadStandardError
- Я также пробовал setProcessChannelMode в QProcess::MergeChannels
В конструкторе MainWindow:
connect(Process,SIGNAL(readyReadStandardOutput()),this,SLOT(processDone()));
Слоты:
void MainWindow::processDone()
{
qDebug()<<"Out";
/*QString str;
str.append(Process->readAllStandardOutput());
qDebug()<<str;*/
}
void MainWindow::runProcess()
{
QString script = "cscript";
QStringList args;
args<<QString(QDir::currentPath()+ "/myVBs.vbs")<<"//NoLogo";
Process->execute(script,args);
}