Link to home
Start Free TrialLog in
Avatar of R_A_Martin
R_A_Martin

asked on

Delphi Pacifier Form

I have a system which uses Delphi dll's sat on a CAD engine. Ā On occasions the CAD engine lisp does a lot of processing.

I have an annimated icon on a form I use within the Delphi code but what I need is to be able to display this form from the Lisp code and then keep it displayed until the processing is complete.

Any ideas whether this 1) can be done and 2) how to do it.
Avatar of Emmanuel PASQUIER
Emmanuel PASQUIER
Flag of France image

why do it from the lisp code ? I have no idea about lisp calling external proc.
But couldn't you display/hide the form before/after running the lisp engine ?
Avatar of R_A_Martin
R_A_Martin

ASKER

You have to call the dll functions from the Lisp code, not the other way round.

I did try creating and displaying a form from the dll, but as soon as you exit the dll function the form closes.

At the moment I am going to use a separate exe which displays just my pacifier form, then control it with windows messages PostMessage ShowWindow etc.

This is not ideal but the tests so far seem to work.
SOLUTION
Avatar of Emmanuel PASQUIER
Emmanuel PASQUIER
Flag of France image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thanks for your help.

Lisp only loads the dll's once for each workspace (drawing), they are not unloaded until the CAD engine closes.

I agree with your suggestion to either have the pacifier on or off, only issue I have with that is that sometimes we have a user message part way through a process and in that situation it would be better to be able to hide and show either side of the messagedlg.
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
The problem I have here is that the Lisp code has a function to load and control the dll, so I cannot really give you the code you need as it's internal.

Perhaps I need to refer it back to the CAD vendor.

Thanks once again
Reason for not working was that I had Delphi open with the form in design mode, so the form was found