|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.07.2009, 22:22 | #11 |
Пользователь
Регистрация: 14.06.2009
Сообщений: 53
|
Не могу решить задачку нужно считать строку из памяти процесса запущенной программы.
RVA строки $0036D0C8 нужен ведь RVA не VA Процедура выглядит следующим образом, для проверки значений заносил их в edit procedure TForm1.Button1Click(Sender: TObject); var hProc, PID, numberRead : DWORD; hWnd : THandle; // Хэндл окна чата IpBuf : string; // буфер куда поместиться наше значение ipBase: ^dword; // точка входа в памяти begin hWnd:=findwindow('TfChatClient',nil ); /// получаем хэндл окна программы Edit1.Text:=inttostr(hWnd); // заносим в edit Handle GetWindowThreadProcessId(hWnd, @PID); //получаем pid зная хэндл окошка интересующей нас программы Edit2.Text:=inttostr(PID); // заносим в edit ID hProc:=OpenProcess(PROCESS_VM_READ, False, PID); // подключаемся к процессу зная его ID try if hProc <> 0 then // условие проверки подключения к процессу begin Edit3.Text:=inttostr(hProc); // заносим в edit Process ipbuf:=' '; // очищаем буфер SetLength(ipbuf, 4); // устанавливаем длинну буфера ipBase:=ptr($0036D0C8); // RVA слова в памяти ReadProcessMemory(hProc, ipBase, Addr(ipbuf), 4, numberRead); // чтение из памяти строки Edit4.Text:=PCHAR(ipbuf); // заносим в edit Buffer end; finally CloseHandle(hProc); // отсоединяемся от процесса end; end; В результате получилось следующее хэндл, pid process считываються идеально, а вот переменная ipbuf куда должно занестись значение выдыдаёт какуето ерунду что не так где ошибки? Последний раз редактировалось DjDram; 19.07.2009 в 16:09. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема с памятью в С++ | rJIaBkoM | Помощь студентам | 1 | 14.06.2008 14:25 |
Что будет с выделенной памятью? | Sibedir | Общие вопросы Delphi | 9 | 18.01.2008 13:57 |
Работа с памятью | Shurik Hacker | Общие вопросы Delphi | 7 | 22.06.2007 20:51 |
Прямая работа с оперативной памятью | Alex_Vlad | Общие вопросы Delphi | 2 | 05.12.2006 16:29 |