2013-04-25 4 views
0

Я просто использовал QProcess для выполнения exe-файла в qt на Windows XP. Он работает нормально, а не на окнах 7. Я думаю, что это очевидно из-за проблемы UAC в Windows 7 (или Windows VISTA). Кто-нибудь может помочь мне решить эту проблему, пожалуйста? Заранее спасибо. И вот мой код:не может использовать класс QProcess в qt на окнах 7

QProcess p(0); 
p.start("cmd", QStringList()<<"/c"<<"copy .\\tmp\\GamesKoreClient.exe .\\GamesKoreClient.exe"); 
+0

у вас есть строка 'p.waitForFinished()' где-то после p.start? – Shf

+0

Вы проверили 'p.error()', 'p.exitCode()' или что-нибудь, что может привести вас к решению, прежде чем писать здесь? –

+0

@ Спасибо, это действительно проблема p.waitForFinished(), и она работает после добавления. – user2231578

ответ

0

Вы запускаете процесс правильно, но для получения результатов вам нужно подождать, пока этот процесс не будет завершен. Добавьте эту строку после того, как вы начали процесс:

p.waitForFinished(); 

и закройте прецессировать впоследствии:

p.close()