Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C / C++

Выпуск № 510
от 22.05.2004, 17:20

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 1626
Отправлено ответов: 3241
Активность: 199.3 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

vitya
Статус: Профессиональный
Общий рейтинг: 109.2
[Подробней >>]
bocha
Статус: Начальный
Общий рейтинг: 176.92
[Подробней >>]
Sedric
Статус: Начальный
Общий рейтинг: 129.26
[Подробней >>]
 
CrackLab
Статус: Доверительный
Общий рейтинг: 156.14
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1617. Привет!! Как читать/писать память другой программы?... (ответов: 4)

Вопросов: 1, ответов: 4


 Вопрос № 1617

Привет!!
Как читать/писать память другой программы?



Вопрос отправлен: 18.05.2004, 22:45
Отправитель: qh

[Следующий вопрос >>] [Список вопросов]

Отвечает vitya

Приветствую Вас, qh!
read, write process memory. дальше ползем в мсдн.

Ответ отправлен: 19.05.2004, 14:50
Отправитель: vitya


Отвечает bocha

Приветствую Вас, qh!
Все зависит от задачи и ос, в которой это необходимо.Windows для того, чтобы залезть сапогами в чужой процесс, предоставляет механизм внедрения dll.Его использование нормально описывает Джеффри Рихтер в своей книжке "WINDOWS Cозданиеэффективных Win-32 приложений с учетом специфики 64-разрядной версии Windows".Скачать можно отсюда, но лучше иметь в бумажном варианте.
Если нужны будут исходники с нее - пиши.


Ответ отправлен: 20.05.2004, 08:58
Отправитель: bocha


Отвечает Sedric

Доброе время суток, qh!
Если у вас DOS, то нет такой проблемы!Вы можете писать по любым адресам, стоит только захотеть!
Если у вас Win9x, то тут тоже можно исхитриться, но при создании этой операционки Билл Гейтс, видимо, прочитал в словаре слово "безопасность".
Впрочем, похоже, не дочитал!
Если у вас WinNT2000XP, то фига!Каждому процессу по 4Гб, режь как хочешь, хоть вдоль, хоть поперек.
А для обмена данными между процессами придумано RPC.Читайте книги по WinAPI.


Ответ отправлен: 19.05.2004, 12:23
Отправитель: Sedric


Отвечает CrackLab

Добрый день, qh!
Нужно использовать API функции ReadProcessMemory и WriteProcessMemory, однако в них нужно указать ID процесса.
Его можно получить просто создав процесс самому (функция CreateProcess) или перебирая все процессы в системе и ища нужный (CreateToolhelp32Snapshot, Process32First, Process32Next)
Тебе остается только смотреть help по этим API.

Ответ отправлен: 19.05.2004, 00:26
Отправитель: CrackLab



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (24)
C / C++ (14)
Perl (2)
Builder / Delphi (14)
Pascal (18)
Basic / VBA (2)
Java / JavaScript (3)
PHP (11)
Криптография (5)
WinAPI (7)
Радиоэлектроника (5)
Пользователю
Windows 95/98/Me (35)
Windows NT/2000/XP (48)
"Железо" (28)
Поиск информации (16)
Администратору
Windows NT/2000/XP (24)
Linux / Unix (9)
Юристу
Гражданское право (9)
Семейное право (7)
Трудовое право (8)
КоАП (6)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2004 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное