Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: Datenübergabe Exe-DLL und unterschiedliche Delphi-Versionen

  Alt 2. Mai 2012, 13:31
Das Schlimmste was passieren kann, ist die VMT oder neue/alte Felder.

Diese ist ja nur ein Array, wo nacheinander virtuellen Methoden verlinkt sind.
Fällt auf einer Seite eine Methode weg, dann liegen die nachfolgenden Methoden einen Index höher.
Wird nun über den Index der falschen/anderen RTTI zugegriffen, dann wird ein falscher Index erwischt und somit auch eine falsche Methodenadresse.
Da soll z.B. Methode A aufgerufen werden, aber ausgeführt wird dann Methode B.

Genauso könnte falsche Felder/Speicherzellen erwischt werden ... es soll in Feld X was reingeschrieben werden, aber da X drüben nicht verwendet wurde oder noch nicht existierte, bzw. nicht mehr existiert oder weider Vorne etwas Anders ist, wird stattdessen in Feld Y rumgeschrieben.

...
$2B or not $2B
  Mit Zitat antworten Zitat