Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Alexis101 Гость
|
Добавлено: Вт Мар 26 2002 14:00 Заголовок сообщения: Как поиметь память другого процесса ? |
|
|
Задача заключается в обращении (чтении, записи) к памяти любого запущенного в системе (Win) процесса. Если знаете где можно об этом прочетать, оставьте ссылку. Заранее спасибо. |
|
Вернуться к началу |
|
|
яяя Гость
|
Добавлено: Вт Мар 26 2002 16:31 Заголовок сообщения: codeguru.com, rsdn.com, msdn, ... (-) |
|
|
- |
|
Вернуться к началу |
|
|
Alexis101 Гость
|
Добавлено: Вт Мар 26 2002 20:21 Заголовок сообщения: Re: codeguru.com, rsdn.com, msdn, ... (-) |
|
|
Спасибо за ответ. Буду искать. Но надеюсь, что Вы, обращаясь к врачу, юристу (например) со своей проблемой, получите более внятный результат |
|
Вернуться к началу |
|
|
Alexy
Зарегистрирован: 22.10.2003 Сообщения: 48
|
Добавлено: Ср Мар 27 2002 10:58 Заголовок сообщения: Re: Как поиметь память другого процесса ? |
|
|
Если речь идёт о каком-то известном процессе, то потребуется его HANDLE и пара API функций: ReadProcessMemory, WriteProcessMemory. Ограничения: нужно иметь права чтения/записи в процесс, код исполняющийся в user-mode не может писать в область памяти зарезервированную для OS. (user-mode - обычный код обычной аппликации. или user-mode: CS & 0x3 == 0x3,kernel-mode: CS & 0x3 == 0)
На сайте www.microsoft.com есть MSDN On Line, там можно найти описания всех нужных ф-й, в том числе как получить права чтения/записи
Если речь идёт о том, что нужно найти и изменить/посмотреть неизвестный процесс, то это посложнее. Есть полудокументированная библиотека psapi.dll Вот имена ф-ций, так как они описаны в таблице экспорта библиотеки:
const char* psAPI_Names[] = { "EmptyWorkingSet", "EnumDeviceDrivers", "EnumPageFilesA", "E.. "GetDeviceDriverBaseNameW", "GetDeviceDriverFileNameA", "GetDeviceD.. ф-й и многие используемые структуры неописаны в header-ах.
Удачи. |
|
Вернуться к началу |
|
|
Alexy
Зарегистрирован: 22.10.2003 Сообщения: 48
|
Добавлено: Ср Мар 27 2002 11:02 Заголовок сообщения: Oops |
|
|
/* Names from exports table of psapi.dll
"EmptyWorkingSet", "EnumDeviceDrivers", "EnumPageFilesA.. |
|
Вернуться к началу |
|
|
Alexy
Зарегистрирован: 22.10.2003 Сообщения: 48
|
Добавлено: Ср Мар 27 2002 11:09 Заголовок сообщения: Re: Oops |
|
|
Ok, имена ф-й можно посмотреть в самой библиотеке. Если будут затруднения - сообщите куда их сбросить. GetProcAddress нужно давать точное имя из таблицы экспортов, поскольку прототипы ф-й этой библиотеки не описаны в header-ах |
|
Вернуться к началу |
|
|
яяя Гость
|
Добавлено: Чт Мар 28 2002 08:29 Заголовок сообщения: более внятный результат этот форум проглатывает, могу намылить исходники, если надо, мыло только оставьте (-) |
|
|
- |
|
Вернуться к началу |
|
|
|