Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Достать данные из уже запущенного процесса [help] (https://forum.antichat.xyz/showthread.php?t=211125)

login999 12.06.2010 23:14

Достать данные из уже запущенного процесса [help]
 
Собственно сабж, имеется процесс и из него необходимо вытянуть данные, если подробнее то это онлайн игруха, в которую нужно внести немного автоматизации.
Все бы ничего, но ...
AutoIt Info Tool говорит о окне как :
Код:

>>>> Window <<<<
Title:        ...
Class:        ...
Position:        109, 68
Size:        806, 632
Style:        0x14CA0000
ExStyle:        0x00040100
Handle:        0x004208F4

>>>> Control <<<<
Class:        ViewPort Window
Instance:        1
ClassnameNN:        ViewPort Window1
Name:       
Advanced (Class):        [CLASS:ViewPort Window; INSTANCE:1]
ID:       
Text:       
Position:        0, 0
Size:        800, 600
ControlClick Coords:        523, 112
Style:        0x56000000
ExStyle:        0x00000000
Handle:        0x005A08B4

>>>> Mouse <<<<
Position:        635, 209
Cursor ID:        0
Color:        0xD2FFFF

>>>> StatusBar <<<<

>>>> ToolsBar <<<<

>>>> Visible Text <<<<


>>>> Hidden Text <<<<

Получить идентификатор какой-либо кнопки хз как, ибо тулза их не видит вообще. Необходимо тыкать по кнопкам, и (очень хотелось бы) ловить всплывающие подсказки.
Просьба ногами не пинать, ибо с такими вещами не сталкивался и слабо представляю как оно работает.
Ткните в нужном направлении плиз...
Просьба описать как это необходимо сделать именно в принципе, так как код на компиллируемых ЯП мне многого не скажет.

Sunzer 13.06.2010 11:16

ReadProcessMemory, WriteProcessMemory ?

Gifts 13.06.2010 11:39

login999 Несколько вариантов:
1) редкоработающий метод: c помощью ArtMoney найти области памяти с интересующими данными, а дальше ReadProcessMemory - недостатком является то, что смещение может быть всегда разным, а найти указатель на эту область не всегда получается быстро
2) Написать аналог UOpilot - читаем цвета пикселей на экране, и в зависимости от этого посылаем клики в приложение, с помощью винапи SendMessage PostMessage - тут сложно получать эффективные и точные данные
3) Ну и самый очевидный для онлайн игр - расковырять хотя бы частично сетевой протокол игры, а дальше - промежуточный сокс прокси с правкой пакетов на лету. Получаем полный контроль над всеми действиями

Ra$cal 13.06.2010 18:50

у игр интерфейс реализован своими руками, без виндовых окон, поэтому об аутоит по сути можешь забыть. прокатят протокол или реверсинг и патчинг самого ехе.

login999 13.06.2010 22:02

Всем откликнувшимся спасибо :)


Время: 09:54