Thema: Delphi RTTI SetProc umschreiben

Einzelnen Beitrag anzeigen

Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#1

RTTI SetProc umschreiben

  Alt 19. Nov 2014, 19:39
Delphi-Version: 5
Warum bekomme ich, wenn ich den Pointer in der RTTI SetProc umändern will, eine EA?

Delphi-Quellcode:
    x := TMT.Create;

    TypeInf := x.ClassInfo;

    if TypeInf <> nil then begin
        temp := GetPropInfo(TypeInf, 'ID');
        xptr := integer(@TMT.SetID);
        CopyMemory(@temp.SetProc, @xptr, sizeof(xPtr));
    end;
SetID ist eine funktion der Klasse, ich möchtenun zur Laufzeit den Setter also die SetProc umschreiben, nur lässt mich das nun mit einen primitiven CopyMemory nicht ...
die Speicherzellen sind alle soweit richtig was ich im Debuger sehe.

Muss ich da zuvor den Speicherbereich irgendwie freigeben oder so?

und ja ich weiss das ist nicht schön was ich hier mache, aber muss so sein ...

trotzdem danke für alle infos
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat