Russian Qt Forum
Июля 04, 2025, 16:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: опять запуск процесса/проги  (Прочитано 5359 раз)
SerjVarshavskiy
Гость
« : Ноября 16, 2007, 17:10 »

делаю QProcess.startDetached

всё аккурат запускается, но выполнение кода после запуска не продолжается  В замешательстве
а нужно запустить и "забыть" с продолжением выполнения последующего кода

подскажите как сделать и кросплатформенно
Записан
Kainit
Гость
« Ответ #1 : Ноября 16, 2007, 17:35 »

А можно поподробнее
когда я запускаю
QProcess::execute("iexplore"); всё нормально
Записан
Dodge
Гость
« Ответ #2 : Ноября 16, 2007, 23:54 »

делаю QProcess.startDetached

всё аккурат запускается, но выполнение кода после запуска не продолжается  В замешательстве
а нужно запустить и "забыть" с продолжением выполнения последующего кода

подскажите как сделать и кросплатформенно
"кросплатформенно" - прикольное слово  Смеющийся
если не использовать x11 api или win32 и тп то получится "кросплатформенно" )

а дальше... код в студию, проблема судя по всему в коде.
Записан
SerjVarshavskiy
Гость
« Ответ #3 : Ноября 17, 2007, 18:44 »

...
myProcess.startDetached( strProgName );
...
далее основная прогр прослушивает порт

strProgName содержит путь/имя утилитки
утилитка разбирает txt файлик и выводит в файл время/дата при каждой новой строке

вот получается, что пока утилита не закончит своё выполнение, основная программа
не делает ничего, походу ждёт возврата из myProcess.startDetached

как бы запустить утилиту и не ждать (кросплатформенно  Показает язык)?
Записан
SerjVarshavskiy
Гость
« Ответ #4 : Ноября 17, 2007, 18:49 »

А можно поподробнее
когда я запускаю
QProcess::execute("iexplore"); всё нормально

QProcess::execute
Starts the program program with the arguments arguments in a new process, waits for it to finish, and then returns the exit code of the process. Any data the new process writes to the console is forwarded to the calling process.

т.е. как бы не этого хотелось, оно ждёт, а ждать не нужно
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #5 : Ноября 17, 2007, 18:58 »

а почему не использовать
void QProcess::start ( const QString & program, const QStringList & arguments, OpenMode mode = ReadWrite )
запускает, не ждет. Можно получить от него сообщения
Записан
SerjVarshavskiy
Гость
« Ответ #6 : Ноября 17, 2007, 20:45 »

то что нужно
спасибо
Записан
SerjVarshavskiy
Гость
« Ответ #7 : Ноября 17, 2007, 21:22 »

хотя не то  Непонимающий

нужно что бы процесс не умирал при уничтожении "родителя" + не вводил его в ожидание
завершения запущенной утили в QProcess
« Последнее редактирование: Ноября 17, 2007, 21:38 от SerjVarshavskiy » Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #8 : Ноября 17, 2007, 22:00 »

НЕ умирает и не ввдит в ожидание:
QProcess * buildProcess = new QProcess();
buildProcess->start( strProgName );
Внимательно разберись
Записан
SerjVarshavskiy
Гость
« Ответ #9 : Ноября 17, 2007, 22:17 »

хех, а я его в стеке...
сенкс
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.023 секунд. Запросов: 19.