Forum: Win32/Win64 API (native code)
Delphi
by Apollonius,
14. Okt 2007
Der Punkt ist, dass eine Klasse, die auf die gleiche Art deklariert wird, immer auch die gleichen Methoden an den gleichen Slots haben wird, sofern, was auch für Interfaces gilt, auch die Vorfahren gleich deklariert wurden.
Forum: Win32/Win64 API (native code)
Delphi
by Apollonius,
14. Okt 2007
Gut, eigentlich ist deine Lösung ja fast identisch mit normalen virtuellen Methoden. Einziger Unterschied ist meiner Meinung nach, dass es bei dem Interface keine verschiedenen Versionen geben wird. Wenn dem aber so wäre, dann könnte selbiges Problem mit unterschiedlichen Methoden an gleichen Offsets auch auftreten.
Forum: Win32/Win64 API (native code)
Delphi
by Apollonius,
14. Okt 2007
Das verstehe ich jetzt nicht. Wichtig ist doch nur, dass das Format der VMTs identisch ist, und das ist doch gegeben. Dass die VMTs unterschiedlich sind, ist doch egal, solange immernoch an Offset x Methode y steht.
Forum: Win32/Win64 API (native code)
Delphi
by Apollonius,
12. Okt 2007
Das würde mich auch mal interessieren, wo genau da die Knaller sind. Rein intuitiv hätte ich jetzt gesagt, dass außer beim Aufruf dees is-Operators (wie z.B. in Assign oder beim as-operator) und dem Freigeben von Objekten in Modulen, in denen sie nicht erzeugt wurden (GetMem/FreeMem) gar nichts schief gehen kann.