![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Ситуация проста. Клепаю оверлей для упрощения некоторых действий в игре. Чтобы передать игре действия, достаточно просто передавать окну игры нужные комбинации клавиш - это не проблема.
Проблема в том, что мне нужно получить handle этого окна, чтобы что-то в него передать. По названию я его получить не могу: добрые и умные разработчики, видимо, тешатся каждым патчем, и добавляют его номер и цифровой код к названию окна игры. Очень желательно, чтобы прога могла ловить несколько версий игры без необходимости обновлять её руками. Просить пользователя ткнуть мышкой в окно или написать номер/код патча - неспортивно. Ок, обратимся к классу окна. Здесь нас тоже ждёт облом: класс - SDL_app, и у нас есть немаленький риск поймать совсем не то, что мы хотим. При разработке проги не для себя такая жирная вероятность проблем с программой - совершенно не вариант. Номер версии в файлах в папке с игрой нигде не встречается. В мета-данных exe-файла тоже нет этого номера. Единственное, что остаётся неизменно версия от версии - это название процесса. Проверено. Вопрос: как в таких условиях получить-таки злополучный handle искомого окна? Заранее спасибо. Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! |