Здравствуйте,
Уважаемые Участники Форума!
Постараюсь не отнимать у Вас значительного количества времени и кратко сформулировать собственную задачу:
Преследую цель создания покерного робота. В настоящий момент нахожусь на самом первом этапе - получения информации о происходящем за столом.
Соответствующая часть схемы выглядит следующим образом:
code_36391.txt
Теперь перейду к вопросу: собственно, метод скриншота решил использовать не совсем по желанию, а исходя из обстоятельств. Дело в том, что все попытки использовать SendMessage и WM_GETTEXT провалились:
- Использовал как часть схемы из примера, так и собственные варианты
- Если это как-то поможет, то в ответ на GETTEXT программа отвечает значением "0" (выводил в окно и в список строк) - насколько могу понять, это отрицательный ответ?
- При всем вышеуказанном чат реагирует на сообщение WM_CLOSE и поддается скриншотингу, да и, кроме того, с него можно просто копировать вручную (Copy+Paste)
Собственно, вопросов два:
-Бывает ли так, что окно попросту не реагирует на сообщение GETTEXT, потому как не "научено" этому создателем или защищено от подобных действий?
-Не могли бы мне помочь "старшие" товарищи с реализацией схемы получения данных с помощью SendMessage?
P.S. Спасибо разработчиками за программу, и, как Вы, наверное, поняли, в программировании я впервые)
Спасибо!
Этот топик читают: Гость
Ответов: 4
Рейтинг: 1
|
|||
карма: 0 |
| ||
файлы: 1 | code_36391.txt [952B] [215] |
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 2 раз(а), последний 2025-01-12 08:42:37 |
|||
карма: 0 |
|
Ответов: 4
Рейтинг: 1
|
|||
91.230.25.65 писал(а): Из вышеизложенного кажется мне, что Вы неправильно пытались получить текст. Вот к примеру сюда заглянитеhttp://forum.hiasm.net/forum.html?q=3&p=87832 Большое спасибо за ответ! Сейчас внимательно изучу! ------------ Дoбавленo в 20.57: 91.230.25.65 писал(а): Из вышеизложенного кажется мне, что Вы неправильно пытались получить текст. Вот к примеру сюда заглянитеhttp://forum.hiasm.net/forum.html?q=3&p=87832
Да, все верно, данную конструкцию я и подразумевал в своем первом сообщении под названием "схема из примера" Пробовал использовать ее составляющие в собственной схеме - безрезультатно... Кроме того, скомпилировав ее и наведя курсор на чат я ничего не получил, остальные элементы игрового стола выдают в текстовое поле формы Handle Caption, а при наведении курсора на чат - тишина. Стоит также упомянуть, что мне доступны все сведения касательно нужного мне окна (чата): - ClassName: Internet Explorer_Server (может быть, все дело в классе элемента?) - Соответственно, известны размеры и координаты расположения (WinInfo) - Caption'а у окна нет( Все убедительнее в голове становится версия про "защиту"... Слышал, что все аналогичные программы (боты, онлайн-калькуляторы) используют скриншот. ------------ Дoбавленo в 21.29: Тема превращается в монолог, однако, я, похоже, нашел причину отсутствия возможности получить текст путем GETTEXT: На забугорном сайте пишут, что все дело в классе элемента (Internet Explorer_Server), и что к нему в данном случае нужно обращаться с помощью сообщения WM_HTML_GETOBJECT и получить нечто, что там называют "IHTMLDocument2 interface" - простите, я, честно говоря, попросту не знаю, что это) Наличие букв HTML приводит к мысли, что это HTML-код) Получается там будет находится искомый текст? Возможно ли реализовать подобное с помощью Hiasm? P.S. Все оказалось настолько заморочено, что я уже склоняюсь к простым манипуляциям со скриншотами) |
|||
карма: 0 |
|
3