Ну что форумчане, у меня к вам три очень интересных вопроса:
1. Как найти окно в котором МОЖЕТ распологаться картинка (приложение написано фиг знает на чём, там даже у чекбоксов тип баттон!!!)?
2. Как получить адрес (возможно URL, а возможно и нет) этой картинки?
3. Как загрузить эту картинку в своё приложение?
Зарание всем спасибо...
В общем случае - никак. надо смотреть на конкретное приложение, например настроить ее через свой прокси, или попытаться внедрившись в процесс найти где битмап лежит.
SaNn
Так картинка грузится с сервера или генерится локально? Показывается всегда в одном и том же контроле/месте окна, или где попало?
Решение для картинки, загружаемой извне, написал grigsoft.
Для генерируемой локально самим приложением - по заголовку получаем хендл окна, потом - GetWindowDC, потом BitBlt себе в битмап.
В общем объясню что я хочу:
Мне захотелось написать свой spy для покера(Техас холдем), но как получить свои карты и карты флопа, тёрна и ривера я не знаю(((...
Мухлеж?
Нет это не развод и не браузерный веб клиент...
В общем картинки лежат в папке с игрой...
Посмотри Spy-ем есть ли окна для отображения карт. Если нет, то узнать какая карта была отрисована, ИМХО, нельзя. Аспекты сравнения картинок я не рассматриваю.
А хоть бы и были? не представляю разумную внутреннюю логику, по которой карты можно было бы прочитать из окна до того как будет необходимость отрисовать их лицом вверх. Попробовать, конечно, можно, но, на мой взгляд, единственный шанс здесь - как с любыми компьютерными игрушками - внедрение, поиск фрагментов памяти с текущей раскладкой, анализ окружения чтобы выделить правила.
Или речь здесь идет просто об автоматизации легальной игры, а не о взломе? Тогда да, окна могут помочь, но и без них - покер вроде игра с несложной логикой вполне можно выделять фрагменты окна с картами для стандартных ситуаций
Имя наверняка есть у родительского (ну или главного) окна, а у искомых дочерних есть фиксированные координаты. Существенно уменьшит объём работы функция EnumChildWindows.
Upd: для изучения структуры чужих окон удобно использовать Spy++ из комплекта Visual Studio.
Форум Invision Power Board (http://nulled.ws)
© Invision Power Services (http://nulled.ws)