Ich verwende in meinem Programm den Event
UserHandleMessage der vom Typ
TOnUserInputEvent ist und dessen Deklaration sich zwischen verschiedenen LCL Versionen geändert hat.
Nun dachte ich mir so leichtsinnig: "Das kann man ja in eine bedingte Compilierung einbauen".
Geht aber net.
Code: Alles auswählen
{$if laz_fullversion >= 49900}
Procedure HandleMessage(Sender : TObject; Message : TLMessage);
{$else}
Procedure HandleMessage(Sender : TObject; Message : Cardinal);
{$endif}
Wenn ich das so compilieren will, meckert der Compiler, dass er einen String erwartet. Nehme ich die Unit lazversion mit hinein, meckert er zwar nicht mehr darüber, compiliert aber immer die erste Version.
Die einzige Lösung war jetzt ein
zu deklarieren und das je nach LCL Version ein- oder auszuschalten. Das kann doch aber nicht Sinn der Sache sein.