[Lazarus] Using event driven components in console application

Mark Morgan Lloyd markMLl.lazarus at telemetry.co.uk
Wed Nov 4 15:23:51 CET 2015

JuuS wrote:

> Excellent research, I see you've tracked this issue for a long time.

Not so much that, but my colleagues and I have a fairly wide range of OS 
versions etc. and there are one or two programs that I really do want to 
run on just about anything (e.g. one that handles cut-and-paste over the 

I've also written a very small amount of stuff that potentially I want 
to be able to send to anybody with confidence that any version of 
Lazarus will be able to read the forms and any version of FPC will be 
able to compile it. In most cases that's doable, provided that one's 
careful about exactly what gets put into svn.

In addition to form (.lfm etc.) compatibility, there's a couple of 
"gotchas" that's deserve comment. The first is that TNotebook (and 
related components) got a major workover somewhere around Lazarus 1.0, 
in general problems can be sorted by RTTI etc. It's worth noting as a 
related issue that the introduction of frames required a compiler 
facility that for a long time was only in a development version: if you 
put frames in a notebook, you'll have problems supporting really old 

The second is that SynEdit got some internal changes, and if you want to 
do anything that involves reaching below the surface I think you have to 
use compile-time conditionals rather than RTTI. That's one reason that I 
  did the work to find out what compiler versions worked with which 
LCLs, expect problems around 0.9.28.

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the Lazarus mailing list