Zitat von
Elvis:
Da Delphi-Interfaces immer
COM-interfaces[1] sind ....
Stimmt nicht. Man kann in Delphi Interfaces nach Lust und laune verwenden ohne das man mit
COM von Windows zu tun hat. Es stimmt aber das die Delphi-Interfaces zu ausgelegt sind das sie mit
COM harmonisch agieren. (Wer
COM-Interfaces mit C++ verwendet weis was ich meine). Also kann Borland hier sehrwohl im hintergrund änderungen vornehmen.
Deshalb deshalb glaube ich nicht das es erlaubt ist zwischen unterschiedlichen Delphi-Versionen interfaces zwischen Exe und
DLL auszutauchen. Ich denke hier gibt es die gleichen Probleme wie mit "richtigen" Referenzen.
Wenn Du unterschiedliche Versionen von Delphi in Exe und
DLL einsetzen willst bleibt dir nichts übrig als nur das zu nehmen was jede andere nicht Delphi-Sprache auch versteht. Eine C-Kompatible schnittstelle. Und wie du schon geschrieben hast willst Du auch Strings übertragen. Und da wird es krachen. Du wirst auf PChar's umsteigen müssen damit es klappt (Ich glaube nicht das Sharemem von D3 (gab das damals schon?) mit Sharemem von D7 kompatible ist.
Windows Vista - Eine neue Erfahrung in Fehlern.