Представьте, что у меня есть Firefox, и я открываю стартовую страницу Firefox, тогда у меня должно быть окно с заголовком: «Начальная страница Mozilla Firefox - Mozilla Firefox».Как найти ручку окна из имени файла exe
я могу найти дескриптор окна с кодом ниже
HWND hwnd = ::FindWindow(0, _T("Mozilla Firefox Start Page - Mozilla Firefox"));
Но что я хочу найти дескриптор окна от имени еха окна в этом, как
HWND hwnd = FindWindowFromExe(_T("firefox.exe"));//How to make this function?
делает окно Апи имеет функцию как FindWindowFromExe()? Если это не так, как лучше всего найти окно из своего exe?
Спасибо за чтение :)
Что вы просматриваете в [MSDN] (http://msdn.microsoft.com) о существовании функций, начинающихся с 'FindWindow'? –
Должно быть возможно перечислить * все * открытые окна из запущенного процесса с достаточными привилегиями. Но получить только одно окно из «exe-файла» невозможно. (Пример: что, если процесс открыт с несколькими окнами? Кроме того, вы знаете, что программа может быть загружена * несколько раз?) Этот комментарий также содержит пару советов: О * запуске процесса ** es *** и примерно * перечисление *. –
[Вот сообщение] (http://stackoverflow.com/q/6806911/62576), в котором показано, как это сделать с помощью WinAPI. Это код Delphi, но API-вызовы также используют работу на C++. –