Russian Qt Forum
Май 09, 2024, 02:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: активизировать запущенное приложение  (Прочитано 2904 раз)
Firefox
Гость
« : Июль 08, 2011, 16:49 »

Здравствуйте. у меня из программы запускаются внешние программы. но бывает что запущенная вновь программа сворачивается, а этого мне совсем не надо. Главная программа должна работать в фоне, просто координируя работу запускаемых приложений. Запускаю программы при помощи QProcess. Погуглила и поняла что активизировать окно программы можно сишной функцией ShowWindow(), но надо знать идентификатор окна приложения. функция start() в qt не возвращает идентификатор процесса. переделывать весь запуск на запуск сишной функцией CreateProcess, которая использует идентификатор объекта не очень хочется. подскажите может в qt 4 есть что-то подобное типа ShowWindow() или модно получить как-то идентификатор процесса.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Июль 11, 2011, 09:40 »

Цитировать
Q_PID QProcess::pid () const
Returns the native process identifier for the running process, if available. If no process is currently running, 0 is returned.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
brankovic
Гость
« Ответ #2 : Июль 11, 2011, 10:47 »

сишной функцией ShowWindow(), но надо знать идентификатор окна приложения ... идентификатор процесса.

если память не изменяет, идентификатор окна и процесса это разные вещи. Если уж мешать с winapi, то лучше воспользоваться findWindow, которая находит id _окна_ по его имени.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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