imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 20.01.2004, 05:53     # 1
serg472
Guest
 
Сообщения: n/a

Считывание данных с другой проги. Как?

Помогите разобраться, пожалуйста.

Нужно сделать следующее - запускается игрушка под виндовс, мне нужно запустить свое приложение (ориентировочно на VB) и считывать определенное текстовое поле с окна игры.

Просто напишите, пожалуйста, саму идею - каким способом это можно организовать? Можно ли обойтись WIN API или нужно както считывать значения памяти? Может какието дополнительные проги нужно установить чтобы увидеть что там внутри этой игры делается?

У меня нет даже и приблизительно никаких идей как это все реализовать Мне хотьбы понять где нужно искать...
 
Старый 20.01.2004, 11:12     # 2
Alex_by
Member
 
Регистрация: 10.01.2002
Адрес: Minsk
Сообщения: 289

Alex_by Луч света в тёмном царствеAlex_by Луч света в тёмном царствеAlex_by Луч света в тёмном царствеAlex_by Луч света в тёмном царствеAlex_by Луч света в тёмном царствеAlex_by Луч света в тёмном царстве
можно получить дескриптор окна HWND, а потом чо-то делать. Можно проверять где эта прога в памяти себя хранит и там искать. Но я думаю у тебя немножко другая ситуация и это не пройдёт. Может быть тебе надо что вроде ArtMoney
Alex_by вне форума  
Старый 21.01.2004, 03:45     # 3
serg472
Guest
 
Сообщения: n/a


Нет, мне не нужно сделать себе бессмертие или чтото типа того. Как раз наоборот, хочу сделать античит.

Мне нужно просто вытягивать себе имена игроков из комнаты онлайн игры. Игрушка NFSU.

Вопросы:
1. Если я получу дескриптор окна, можно ли будет затем вытягивать надписи на окне ? (если предположить что они используют стандартные компоненты типа button, label,...)

2. Если придется возится с памятью, то как узнать где именно хранится нужное мне значение? И ведь мне нужно будет это делать не один раз, а адреса ведь будут менятся постоянно...
 
Старый 28.01.2004, 05:14     # 4
IPv6
Junior Member
 
Аватар для IPv6
 
Регистрация: 05.03.2003
Сообщения: 68

IPv6 Нуль без палочки
Цитата:
Первоначальное сообщение от serg472

Нет, мне не нужно сделать себе бессмертие или чтото типа того. Как раз наоборот, хочу сделать античит.

Мне нужно просто вытягивать себе имена игроков из комнаты онлайн игры. Игрушка NFSU.

Вопросы:
1. Если я получу дескриптор окна, можно ли будет затем вытягивать надписи на окне ? (если предположить что они используют стандартные компоненты типа button, label,...)

2. Если придется возится с памятью, то как узнать где именно хранится нужное мне значение? И ведь мне нужно будет это делать не один раз, а адреса ведь будут менятся постоянно...
ты сначала узнай - если игра работает на директ иксе, то никаких хендлов там нет и полей ввода в общем понимании также
__________________
Кто успел - того и тапки!!!
IPv6 вне форума  
Старый 28.01.2004, 11:02     # 5
Makc
::VIP::
 
Аватар для Makc
 
Регистрация: 13.08.2003
Адрес: Москва
Сообщения: 1 137

Makc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc ГуруMakc Гуру
serg472
Берешь ArtMoney или Detectiv Story и ищешь нужные имена как текст. Потом смотришь, постоянные ли у этих полей адреса. Если постоянные, то просто используешь метод чтения из памяти.
__________________
Makc aka Maximus (on other boards)
Makc вне форума  
Старый 29.01.2004, 19:21     # 6
alexey_ma
Member
 
Регистрация: 10.03.2002
Адрес: Israel
Сообщения: 245

alexey_ma Нимб уже пробиваетсяalexey_ma Нимб уже пробивается
По хендлу окна текст получить можно так :

TCHAR txt[255];
//hWnd - хендл окна из которого нужен техт.
::SendMessage(hWnd,WM_GETTEXT,254,(DWORD)txt);
// txt - текст из окна или заголовок окна.
Работает для едитов, сомбо, диалогов и главних окон аппликации (возвращает заголовок окна).

Получение текста из ListCtrl, ListBox, TreeCtrl - несколько сложнее. Если нужно то напиши, я могу прислать пример.
__________________
Best Regards
alexey_ma вне форума  
Старый 07.02.2004, 18:50     # 7
paradoxxx
Guest
 
Сообщения: n/a

Если не сложно, пришли мне пожалуйста пример....
Я как-то пытался проделать что-то подобное, текст получил, а потом посмотрел на всё это и забил!
А вообще, дело очень интересное

Последний раз редактировалось paradoxxx; 07.02.2004 в 18:53.
 
Старый 08.02.2004, 00:49     # 8
alexey_ma
Member
 
Регистрация: 10.03.2002
Адрес: Israel
Сообщения: 245

alexey_ma Нимб уже пробиваетсяalexey_ma Нимб уже пробивается
Давай адрес. Пришлю тебе код программы, я её иногда вместо Spyxx использую что - бы выяснить что можно сделать с окнами чужой аппликации. Там есть прицел, бросаешь его на какое нибудь окно и потом пытаешься что нибудь с ним сотворить. Код особо не распостраняй, я его для работы писал.
Вообще похожими методами можно не только текст получить но и например удалить в чужой программе закладку таба или елемент дерева или списка, нужно только соответствующие сообщения использовать.
__________________
Best Regards
alexey_ma вне форума  
Старый 14.02.2004, 17:00     # 9
paradoxxx
Guest
 
Сообщения: n/a

paradox@px.pereslavl.ru
Заранее спасибо!
 


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 00:29.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.