Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

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

Re: SetLength Ersatz? ASM? Ohne Delphi spezifische Typen ..

  Alt 11. Sep 2007, 09:08
Zitat von Zacherl:
Ja das ist natürlich am einfachsten. Doch ist wirklich so .. wenn man im RemoteThread beispielsweise nur eine String Variable deklariert stürzt das ganze ab. Ist in C für die spezifischen Datentypen aber sicher auch so. Muss halt entweder ASM sein, oder pure API Aufrufe.
Das soll auch so sein. Denn Delphi benutzt für die Stringverwaltung ein paar Funktionen aus der Unit System. Und wenn du keine DLL injezierst, sondern nur deine Funktion kommt es irgendwann zum Aufruf von irgendeiner _LStr***-Funktion . Der funktioniert in deinem Remotethread allerdings nicht mehr, da der Aufruf ja nur ein relativer Sprung von deiner aktuellen Position ist. Und der gilt nur für deinen Prozess. Die Wahrscheinlichkeit, dass in dem anderen Prozess (selbst wenn er mit Delphi compiliert wurde) genau an dieser relativen Adresse von deinem alloziierten Speicherplatz aus (für deine RemoteFunktion) genau diese Funktion (_Lstr***) steht, ist geringer als ein Lottogewinn.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat