Einzelnen Beitrag anzeigen

LarsMiddendorf

Registriert seit: 4. Sep 2003
Ort: Hemer
104 Beiträge
 
Turbo Delphi für Win32
 
#22

Re: Was sind Relocation Pointer Table und Overlaynumber (EXE

  Alt 17. Mär 2004, 10:09
Es reicht eigentlich wenn du die Daten direkt ans Ende anhängst. Danach schreibst du noch die Länge der Daten dahinter, damit du sie korrekt ausleste kannst. Der letzte Integer Wert in der Datei beschreibt dann die Länge der Daten. Dann kann man den Stream genau den Startpunkt berechnen.

So in etwa müßte das funktionieren (ungetestet):

Code:
var
 l:integer;
 Data:array of byte;
 st:TFileStream;
begin
st:=TFilestream.Create('',fmsharedenywrite);
st.Seek(-4,sofromend);
st.ReadBuffer(l,4);
st.Seek(-4-l,sofromend);
SetLength(Data,l);
st.ReadBuffer(Data[0],l);
st.Free;
end;
Irgendwo im Forum wurde auch mal beschrieben wie man eine Exe Datei aus dem Speicher laden kann. Die Exe Packer verändern aber tatsächlich den Einsprungspunkt aber die meisten Packer sind den Antivirenprogrammen bekannt.
  Mit Zitat antworten Zitat