Форум программистов, компьютерный форум CyberForum.ru

Прочитать память по заданному адресу. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функции в C++ http://www.cyberforum.ru/cpp-beginners/thread61487.html
Помогите решить 2 задачки :) 1 Написать программу с функцией которая вводить число n и вычисляет n-ый член последовательности Фибоначи 2 функция которая вычисляет e^x с точность до n ( n вводится с клавиатуры) буду очееень благодарна Добавлено через 35 минут :(
C++ Сложность с потоками: программа виснет LPVOID u1=new LPVOID(); Param* pStruct1 = reinterpret_cast<Param*>(u1); LPVOID u2=new LPVOID(); Param* pStruct2 = reinterpret_cast<Param*>(u2); pStruct1 = p1; pStruct2 = p2; DWORD dwThreadId; for (i=0; i<1999;i++) http://www.cyberforum.ru/cpp-beginners/thread61485.html
C++ Надо найти ошибку в коде
Вот сообствено ошибка в коде,но немогу найти ее #include <iostream> #include <cstdio> #include <cstring> using namespace std; void main() { int a,x; cout<<"vvedite vozrast(v diapazone 20-69)\n"; cin>>a;
Кодировка в C C++
Есть некая функция, написаная мною POS(аргумент), она делает транслит, т.е. например аргумент= Машина, то она преобразует ее => Mashina. НО! Всё это хорошо когда аргумент, тобиш переменная, задается в самом коде: char st="Машина"; // POS(st) переведет ее в Mashina А нужно, чтобы само слово вводил чел, skanf() ом или gets() ом или еще как.. Здесь и начинается проблема...грубо говоря...
C++ Бесплатные среды (IDE) для программирования на С/С++ http://www.cyberforum.ru/cpp-beginners/thread61467.html
Наиболее актуальная информация находятся в конце темы. Убедительная просьба дочитывать тему до конца. Microsoft В целом IDE от Microsoft довольно удобные и простые, но все же начинать именно с них не очень желательно. Много всего, поэтому новичку легко потеряться. Экспресс-версия Microsoft Visual Studio 2008(MS VS 9 EE) включающая в себя среды Visual C++, Visual C# и Visual Basic Visual...
C++ Что лучше для работы с файлами? Подскажите пожалуйста, в разной литературе применяется в основном два метода ввода и ввывода из файла . 1.FILE *file = fopen("file.txt", "w"); 2. #include <fstream> in.open("input.txt"); out.open("output.txt");Скажите в чем разница? что лучше на ваш взгляд и дает большую гибкость по своим функциональностям ? подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304
06.11.2009, 18:47     Прочитать память по заданному адресу.
Гугли.
Вот для почина тебе как перечислить все процессы в системе
А необходимый ищешь по имени (получаешь PID прцесса)

Потом возможны вариации. Я бы попробовал что попроще:

1) Нашёл полный путь к имени процесса

2) Загрузил этот процесс в память МОЕГО процесса с помощью API-функции :
C++
1
LoadLibrary ("C:\\...ima_modula");
3) Эта функия вернёт адрес в памяти МОЕГО процесса, куда будет загружен нужный процесс (ну, то есть он исполняется в системе сам по себе и ещё один его экземляр просто загружен в память МОЕГО процесса.) Какая часть процесса будет находиться по адресу, возвращённому LoadLibrary?
Заголовок PE-файла

4) Вот анализируй PE-заголовок, набраешь в google "От зелёного к красному", идёшь туда и читаешь ВТОРУЮ часть. Ссылку не даю, ибо там вирусный ресурс, меня забанят. Там бояться не надо, ничё страшного.
В заголовке тебе необходимо найти: адрес, по которому ПРЕДПОЧТИТЕЛЬНО загружается процесс и его размер. Ну, там разберёшься.

5) Этих двух данных хватит, чобы сделать снимок нужного участка памяти необходимого процесса.
Да, ещё хэндл нужено будет. Ну, это ерунда. Находится на раз.
...То есть ситуация такая на данный момент будет: имеешь процесс, снимок которого можешь сделать и имеешь дубликат процесса (этот загружен в твою собственную память)

Хочешь,то дампируй, хочешь, это.
Я бы попробовал дампровать оригинал, конечно же.
Ну, смотря какой сложности процесс. Если он изменяется (патчится) в прроцессе работы и загрузки и тебе адо все эти изменения увидеть, тогда оригинал дампируй, а если он простенький и не патчится, тогда дубликат дампируй.

Хотя таблица импорта патчится или нет независимо от его сложности. Но нужна ли на тебе? Что она из себя предсавляет найдёшь в "От зелёного к красному"

6) Если процесс загрузился не по своему родному адресу, сам думай, чё делать.
 
Текущее время: 00:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru