[Lazarus] Multiple LCL instances

Michael Schnell mschnell at lumino.de
Tue Jun 15 11:16:51 CEST 2010


On 06/12/2010 04:23 PM, Marco van de Voort wrote:

> I wouldn't waste time on that. Do it well (packages) or not.
>   
Thanks a lot for your suggestions!

Unfortunately there is no way to "do it well" right now. AFAIK, there is
no predefined way to create applications with multiple (kind of) "main
windows" yet. And supposedly there is not much request for such
nowadays, as applications so "demanding" as my colleagues are doing, are
quite seldom made in Pascal. I am just researching some way for them to
"do it well".

There are several options. The ones I found that seem "well" out off 
the box are (1) doing multiple applications and manually code the
communication between them and (2) coding the additional "main windows"
manually using the OS GUI APIs, instead of using the LCL.

The "hacks" include (1) doing multiple applications and modify the heap
management to have them use a common heap in a shared memory region to
allow for commonly used Pascal object and (2) to use a DLL/SO to allow
for multiple "main windows" / LCLs in a single memory space.

Regarding that any "creative" decent solution at some time was started
as a hack, we will see where we get :).

-Michael




More information about the Lazarus mailing list