Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Adresse von Prozess ändern

  Alt 20. Aug 2012, 08:19
Hallo,

Ich weiß nicht genau was du genau willst. Du kannst eine Adresse in eine Pointer-Variable laden (u.a.).

Delphi-Quellcode:
var p: Pointer;
    Rec: TIrgendeinRecord;
begin
  p := Pointer($12345678);
  p := @Rec;
  // oder irgendwie anders
end;
Diese Variable kannst du nun (je nach Einstellungen) (fast) wie eine Integer-Variable verändern. Also auch die darin gespeicherte Adresse.

Den Wert der hinter dieser Adresse steht kannst du entweder per MSDN-Library durchsuchenWriteProcessMemory ändern (meistens für Adressen in anderen Prozessen als dem eigenen verwendet) oder indem du einen typisierten Pointer dereferenzierst.

Bsp:

Delphi-Quellcode:
var Adresse: PInteger; // Pointer auf einen Integer;
    Wert: Integer;
begin
  Adresse:= Pointer($12345678);
  Wert := PInt^;
end;
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat