Also ich denke auch mal, dass du ein Designproblem hast. Normal würde ich die Fenster und die Arbeit (Comschnittstelle) in seperate Threads packen. Die Fenster entweder im VCL-Thread oder in einem Thread, der nur für das Fenster zuständig ist. Und die kompletten COM Sachen alle in einem eigenen Thread. Wenn dieser dann blockiert reagieren die anderen Threads noch wie gewohnt. Dann brauchst du auch nicht so etwas wie Application.ProcessMessages machen. Was ich persönlich für die schlechteste Alternative halte, da es auch Schwierigkeiten mit sich bringen kann.
_________________
Nur die Menschheit ist arrogant genug, um zu glauben sie sei die einzige intelligente Lebensform im All. Wo nicht mal das nachhaltig bewiesen wurde.