| imho.ws |
![]() |
|
|
|
# 1 |
|
Guest
Сообщения: n/a
|
Считывание данных с другой проги. Как?
Помогите разобраться, пожалуйста.
Нужно сделать следующее - запускается игрушка под виндовс, мне нужно запустить свое приложение (ориентировочно на VB) и считывать определенное текстовое поле с окна игры. Просто напишите, пожалуйста, саму идею - каким способом это можно организовать? Можно ли обойтись WIN API или нужно както считывать значения памяти? Может какието дополнительные проги нужно установить чтобы увидеть что там внутри этой игры делается? У меня нет даже и приблизительно никаких идей как это все реализовать Мне хотьбы понять где нужно искать...
|
|
|
# 2 |
|
Member
Регистрация: 10.01.2002
Адрес: Minsk
Сообщения: 289
![]() ![]() ![]() ![]() ![]() ![]() |
можно получить дескриптор окна HWND, а потом чо-то делать. Можно проверять где эта прога в памяти себя хранит и там искать. Но я думаю у тебя немножко другая ситуация и это не пройдёт. Может быть тебе надо что вроде ArtMoney
|
|
|
|
|
# 3 |
|
Guest
Сообщения: n/a
|
![]() Нет, мне не нужно сделать себе бессмертие или чтото типа того. Как раз наоборот, хочу сделать античит. Мне нужно просто вытягивать себе имена игроков из комнаты онлайн игры. Игрушка NFSU. Вопросы: 1. Если я получу дескриптор окна, можно ли будет затем вытягивать надписи на окне ? (если предположить что они используют стандартные компоненты типа button, label,...) 2. Если придется возится с памятью, то как узнать где именно хранится нужное мне значение? И ведь мне нужно будет это делать не один раз, а адреса ведь будут менятся постоянно... |
|
|
# 4 | |
|
Junior Member
Регистрация: 05.03.2003
Сообщения: 68
![]() |
Цитата:
__________________
Кто успел - того и тапки!!! |
|
|
|
|
|
# 5 |
|
::VIP::
Регистрация: 13.08.2003
Адрес: Москва
Сообщения: 1 137
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
serg472
Берешь ArtMoney или Detectiv Story и ищешь нужные имена как текст. Потом смотришь, постоянные ли у этих полей адреса. Если постоянные, то просто используешь метод чтения из памяти.
__________________
Makc aka Maximus (on other boards) |
|
|
|
|
# 6 |
|
Member
Регистрация: 10.03.2002
Адрес: Israel
Сообщения: 245
![]() ![]() |
По хендлу окна текст получить можно так :
TCHAR txt[255]; //hWnd - хендл окна из которого нужен техт. ::SendMessage(hWnd,WM_GETTEXT,254,(DWORD)txt); // txt - текст из окна или заголовок окна. Работает для едитов, сомбо, диалогов и главних окон аппликации (возвращает заголовок окна). Получение текста из ListCtrl, ListBox, TreeCtrl - несколько сложнее. Если нужно то напиши, я могу прислать пример.
__________________
Best Regards |
|
|
|
|
# 8 |
|
Member
Регистрация: 10.03.2002
Адрес: Israel
Сообщения: 245
![]() ![]() |
Давай адрес. Пришлю тебе код программы, я её иногда вместо Spyxx использую что - бы выяснить что можно сделать с окнами чужой аппликации. Там есть прицел, бросаешь его на какое нибудь окно и потом пытаешься что нибудь с ним сотворить. Код особо не распостраняй, я его для работы писал.
Вообще похожими методами можно не только текст получить но и например удалить в чужой программе закладку таба или елемент дерева или списка, нужно только соответствующие сообщения использовать.
__________________
Best Regards |
|
|