Пропатчить процессDelphi , Программа и Интерфейс , Процессы и СервисыПропатчить процесс
Оформил: DeeCo {....} var WindowName: Integer; ProcessId: Integer; ThreadId: Integer; buf: PChar; HandleWindow: Integer; Write: Cardinal; {....} const WindowTitle = 'a program name'; Address = $A662D6; PokeValue = $4A; NumberOfBytes = 2; {....} procedure TForm1.Button1Click(Sender: TObject); begin WindowName := FindWindow(nil, WindowTitle); if WindowName = 0 then begin MessageDlg('Program not running.', mtWarning, [mbOK], 0); end; ThreadId := GetWindowThreadProcessId(WindowName, @ProcessId); HandleWindow := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId); GetMem(buf, 1); buf^ := Chr(PokeValue); WriteProcessMemory(HandleWindow, ptr(Address), buf, NumberOfBytes, Write); FreeMem(buf); CloseHandle(HandleWindow); end; Программа на языке Delphi выполняет патчинг процесса Windows, модифицируя его память с помощью функций WriteProcessMemory и OpenProcess. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Процессы и Сервисы ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |