Задача в следующем:
1.При нажатии на кнопку, запустить стороннее приложение (редактор).
2.Если приложение уже запущено, развернуть его окно.
С первым пунктом никаких проблем. Использую QProcess.
Но как развернуть окно уже запущенного приложения, не знаю.
Дело происходит в Windows 7.
Я так поняла, мне надо выполнить какую-то консольную команду винды, имея на руках только Q_ID запущенного мной процесса.
Анна, можно попробовать так - потрясти за винапи
найти главное окно процесса, вот тут есть пример
http://forums.codeguru.com/showthread.php?392273-RESOLVED-How-to-get-window-s-HWND-from-it-s-process-handle
достать адрес оконной процедуры (параметр GWL_WNDPROC)
https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms633584(v=vs.85).aspx
и при помощи функции
https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms633571(v=vs.85).aspx
отправить сообщение WM_SHOWWINDOW
https://msdn.microsoft.com/en-us/library/windows/desktop/ms632645(v=vs.85).aspx
Анна, а что приунывать то, команды и утилиты эти же функции используют. Поэтому и таскать ничего не надо - просто вызываешь сама, если программа скомпилирована под винду
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)