Название: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: neosapient от Ноябрь 17, 2008, 15:41 Добрый день.
Требуется запустить набор программ, при этом надо передать через командную строку параметры запуска и запретить показывать окно. Дать программам поработать и через некоторое время убить процесс. Делаю под Windows. Если запускать через CreateProcess (аля QProcess), то не получается скрыть запускающееся окно. Зато можно вызвать TerminateProcess. Если задействовать ShellExecute (аля QDesktopServices), то можно передать SW_HIDE. Но тогда как убить открывающееся окно? Чем можно запустить программу, передать ей параметры, как в командной строке, скрыть окно до его активации? Чем убить процесс? Название: Re: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: Rcus от Ноябрь 17, 2008, 15:53 В CreateProcess предпоследний параметр
Цитировать pStartupInfo Points to a STARTUPINFO structure that specifies how the main window for the new process should appear. STARTUPINFO Цитировать wShowWindow Ignored unless dwFlags specifies STARTF_USESHOWWINDOW. The wshowWindow member can be any of the SW_ constants defined in WINUSER.H. For GUI processes, wShowWindow specifies the default value the first time ShowWindow is called. The nCmdShow parameter of ShowWindow is ignored. In subsequent calls to ShowWindow, the wShowWindow member is used if the nCmdShow parameter of ShowWindow is set to SW_SHOWDEFAULT. Название: Re: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: neosapient от Ноябрь 17, 2008, 16:13 Вот только плохо, что нет инициализации этой структуры.
qprocess_win.cpp Код:
Название: Re: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: Rcus от Ноябрь 17, 2008, 17:47 Не понял, о чем вы. Мне казалось вам нужен способ запустить приложение под Windows не показывая его, и кроссплатфоменность вас не волнует. То что я цитировал это не документация Qt, а Windows SDK.
Название: Re: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: neosapient от Ноябрь 17, 2008, 18:33 Я понял, Вы всё верно ответили.
Просто я понадеялся, что есть готовый класс-оболочка. Придется по старинке всё писать Название: Re: Как запустить программу, со скрытым окном, а затем закрыть программу? Отправлено: Danila_Bagrofff от Июль 01, 2011, 17:41 Как скрыть:
Код: QString hidec = QApplication::applicationDirPath() +"/hidec.exe"; //про hidec отдельно Убиваю через: taskkill, /? в помощь =) Про hidec написано здесь: http://www.prog.org.ru/index.php?topic=12884.msg82817#msg82817 |