Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
AntonTatu |
16.3.2009, 12:07
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 48 Регистрация: 27.11.2008 Пользователь №: 437 Спасибо сказали: 0 раз(а) Репутация: 0
|
Всем привет!
Возникла необходимость вызывать из одной программы другую, вот такой код не работает, как правильно ?
|
|
|
|
|
Litkevich Yuriy |
16.3.2009, 12:08
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AntonTatu @ 16.3.2009, 15:07) Link \1 слэш в языке С++ имеет специальный смысл, либо пишиC:/1.exe либо C:\\1.exe |
|
|
|
|
AntonTatu |
16.3.2009, 12:27
Сообщение
#3
|
|
Студент ![]() Группа: Участник Сообщений: 48 Регистрация: 27.11.2008 Пользователь №: 437 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(Litkevich Yuriy @ 16.3.2009, 12:08) Link Цитата(AntonTatu @ 16.3.2009, 15:07) Link \1 слэш в языке С++ имеет специальный смысл, либо пишиC:/1.exe либо C:\\1.exe да как я уже только не писал |
|
|
|
|
kwisp |
16.3.2009, 12:35
Сообщение
#4
|
|
астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23
|
Цитата(AntonTatu @ 16.3.2009, 12:27) Link да как я уже только не писал ну там же в классе есть куча всего, вывод ошибок, проверка в каком состоянии процесс. при старте объект высылает сигнал о старте. результатт всего этого какой??? есть статические функции запуска программ. проверял??? смотрел??? на форуме есть темы по QProcess. |
|
|
|
|
BRE |
16.3.2009, 12:38
Сообщение
#5
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(AntonTatu @ 16.3.2009, 12:27) Link да как я уже только не писал А что пишет? Что QProcess::error() возвращает? А ты случаем не так вызываешь? А то при выходе из функции, процесс 1.exe будет убит, не успев запуститься. |
|
|
|
|
AntonTatu |
16.3.2009, 13:15
Сообщение
#6
|
|
Студент ![]() Группа: Участник Сообщений: 48 Регистрация: 27.11.2008 Пользователь №: 437 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(BRE @ 16.3.2009, 12:38) Link Цитата(AntonTatu @ 16.3.2009, 12:27) Link да как я уже только не писал А что пишет? Что QProcess::error() возвращает? А ты случаем не так вызываешь? А то при выходе из функции, процесс 1.exe будет убит, не успев запуститься. ну вобщем да.... , а как же мне его тогда вызывать ? |
|
|
|
|
BRE |
16.3.2009, 13:21
Сообщение
#7
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(AntonTatu @ 16.3.2009, 13:15) Link ну вобщем да.... , а как же мне его тогда вызывать ? А ты QProcess не на стеке создавай: Только после завершения процесса, не забывай объект удалить. или, если надо, дожидайся завершения процесса в функции: bool QProcess::waitForFinished ( int msecs = 30000 )
Сообщение отредактировал BRE - 16.3.2009, 13:25 |
|
|
|
|
AntonTatu |
16.3.2009, 16:24
Сообщение
#8
|
|
Студент ![]() Группа: Участник Сообщений: 48 Регистрация: 27.11.2008 Пользователь №: 437 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(BRE @ 16.3.2009, 13:21) Link Только после завершения процесса, не забывай объект удалить. или, если надо, дожидайся завершения процесса в функции: bool QProcess::waitForFinished ( int msecs = 30000 ) в общем копался копался докапался: только почему то задержка myProc.waitForFinished(); не работает... почему ? |
|
|
|
|
BRE |
16.3.2009, 16:55
Сообщение
#9
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(AntonTatu @ 16.3.2009, 16:24) Link в общем копался копался докапался: только почему то задержка myProc.waitForFinished(); не работает... почему ? Что значит не работает, сразу выходит? Так это потому, что ты процесс отделяешь (detach). После выполнения myProc.startDetached процесс начинает жить своей жизнью. Даже если ты закроешь программу запустившую процесс, процесс будет работать дальше. Для таких процессов можно не ждать его завершения. |
|
|
|
|
Litkevich Yuriy |
16.3.2009, 17:58
Сообщение
#10
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
BRE, AntonTatu, не цитируйте целыми сообщениями, как цитировать по чуть-чуть написано Link
|
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 30.12.2025, 9:14 |