Russian Qt Forum

Qt => Вопросы новичков => Тема начата: CyclicBarrier от Декабрь 27, 2012, 12:03



Название: QProcess, двухстороннний обмен между процессами
Отправлено: CyclicBarrier от Декабрь 27, 2012, 12:03
Необходимо из приложения запустить другое приложение с GUI. Но столкнулся с проблемой, если я не закрываю в родительском процессе канал на запись то окно потомка не появляется, стоит вызвать QProcess::closeWriteChannel() всё работает. Но нужно осуществлять двухсторонний обмен, как исправить?

Делаю так:
Код:
QString program = "programm.exe";
QProcess proc;
proc.start(program);
if (!proc.waitForStarted())
return -1;

QByteArray bArr();                               // он проинициализирован и содержит данные
proc.write(bArr.data(), bArr.size());
proc.closeWriteChannel();                  // без этого окно не показывается
if (!proc.waitForFinished(-1))
return -2;


Название: Re: QProcess, двухстороннний обмен между процессами
Отправлено: Dancing_on_water от Декабрь 28, 2012, 15:47
Не пробывал, но может стоит взглянуть на D-Bus?