Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2009, 07:16   #11
BaronTreep
Форумчанин
 
Регистрация: 29.05.2009
Сообщений: 320
По умолчанию

Организовав то что нашел на просторах инета, пришел к такому выводу:

0. В общем

Тут мы не используем асма, только функции, любезно придоставленные разработчиками виндоус.

Методы из user32.dll

1. EnumAllWindows через EnumChildWnd

Просто перечислим всех детей рабочего стола. Иногда не очевидно, какой у окна заголовок.

2. FindWindow

Получив дескриптор окна (HWND) можем делать с ним что угодно.

3. GetWindowThreadProcessId

Дает PID, уникальный идентификатор процесса в системе.

4. SetDebugPrivelage через AdjustTokenPrivileges из advapi32.dll

Иногда, чтобы двигаться дальше нужно получить привелегии отладчика, иначе некоторые процессы не удасться открыть.

методы kernell32.dll

5. OpenProcess

Дает дескриптор процесса

6. VirtualQueryex

Позволяет, просто зная дескриптор процесса, обращаться по относительному адресу в процессе! При этом память пишется в буфер

7. Наконец ReadProcessMemory и writeProcessMemory осуществляют чтение и запись в памяти чужого процесса.



Предполагаю, что большинство программ, занимающихся маппингом, используют эту последовательность.

Существует более сложный метод: напрямую испоьзовать ассамблер, а функции ядра вызывать постольку, поскольку нужно орентироваться в многопоточной карте windows...

Последний раз редактировалось BaronTreep; 31.05.2009 в 09:39.
BaronTreep вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск программы из оперативной памяти? G&R Win Api 2 22.12.2008 21:26
Доступ к интренет через другой комп Gromsky Свободное общение 2 19.10.2008 01:45
Доступ к обьектам другой формы? Ring0Sn Общие вопросы .NET 2 17.08.2008 10:41
Запуск программы на выполнение из другой программы. ViNcHeStEr Паскаль, Turbo Pascal, PascalABC.NET 6 18.06.2008 14:33