Как в Windows осуществить данную вещь? С одной стороны, докуметация, как я ее понимаю, говорит, что это невозможно. С другой стороны, я сам использую утилиты, которые это делают — пишут что-то в данные другого процесса. Может, кто нибудь может объяснить, как это организовать? (Проимер читающей память другого процесса программы — Dr. Web, который в начале работы сканирует процессы в памяти на предмет вирусов).
Здравствуйте Vamp, Вы писали:
V>Как в Windows осуществить данную вещь? С одной стороны, докуметация, как я ее понимаю, говорит, что это невозможно. С другой стороны, я сам использую утилиты, которые это делают — пишут что-то в данные другого процесса. Может, кто нибудь может объяснить, как это организовать? (Проимер читающей память другого процесса программы — Dr. Web, который в начале работы сканирует процессы в памяти на предмет вирусов).
Как я понял из документации, эти функции применимы к процессам, открытым с помощью CreateProcess с указанием соотвтетствующих флагов (PROCESS_VM_READ and PROCESS_VM_WRITE ). А я говорю о доступе к памяти уже запущененного процесса. Или я не прав?
Здравствуйте Vamp, Вы писали:
V>Как в Windows осуществить данную вещь? С одной стороны, докуметация, как я ее понимаю, говорит, что это невозможно. С другой стороны, я сам использую утилиты, которые это делают — пишут что-то в данные другого процесса. Может, кто нибудь может объяснить, как это организовать? (Проимер читающей память другого процесса программы — Dr. Web, который в начале работы сканирует процессы в памяти на предмет вирусов).
CreateRemoteThread(...) — позволяет создать поток в другом процессе.
-------------------------------------------------------------------
Вызывает презедент к себе коров и говорит:
— Ну, что будем сдавать, молоко или мясо?
(с) Г. Явлинский TV6 — Герой дня (18.04.2002)
Здравствуйте Vamp, Вы писали:
V>Здравствуйте Vodka, Вы писали:
V>>WriteProcessMemory и ReadProcessMemory например.
V>Как я понял из документации, эти функции применимы к процессам, открытым с помощью CreateProcess с указанием соотвтетствующих флагов (PROCESS_VM_READ and PROCESS_VM_WRITE ). А я говорю о доступе к памяти уже запущененного процесса. Или я не прав?
Кроме CreateProcess существует ещё и OpenProcess.
Но прежде чем чего-то там читать/писать неплохо бы и узнать структуру адресного пространства процесса (какие диапазоны памяти у него имеются и какие операции над ними допустимы).