Thema: Delphi Prozess aneignen

Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Prozess aneignen

  Alt 28. Feb 2008, 13:09
Zur Bestimmung der Länge nimmst du eine Hilfsprocedure (oder einfach die darunter liegende)
Delphi-Quellcode:
procedure ToCopy; //achte darauf, dass sie den Parametern einer ThreadFunc entsprechen muss.
  ...
end;
procedure nothing;
asm nop end;

...
size_toCopy:=integer(@nothing)-integer(@toCopy);
Du darfst dann aber in ToCopy keine dynamischen Variablen und keine Funktionen verwenden.

Besser ist, du lädst eine DLL in den anderen Speicher:
Schau mal hier In der DP gibt es da auch ne Menge.

Edit:
Um nur ein oder zwei Funktionen zu kopieren, kannst du einen record zusammenbasteln mit Code und "globalen" Variablen, so wie ich es hier im Record TMemory gemacht habe.

Edit2: Und die openGL.pas brauchst du nicht zu kopieren, da die OpenGL-Befehle in jedem Process existieren, du musst dir das Handle zum Modul opengl32 (getmodulehandle) holen und mit getprocaddress die Einsprungadressen. Aber wenn es zu viele Funktionen sind, ist der Aufwand viel zu groß um nicht gleich auf eine DLL umzusteigen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat