Wenn du den SplashScreen im Thread erstellst (nicht im Hauptthread) und im Threrad natürlich eine MessageLoop (Nachtichtenverarbeitung) enthalten ist, dann läuft das Fenster vollkommen unabhängig von der
VCL und es gibt auch keine Probleme mit dem Multithreading und vorallem nicht mit eventuellen langen Pausen im Huptthread.
Mit dem Thread wo das CrerateWindow aufgerufen wurde, wird die Messagebehandlung des Controls verbunden und alles was über die MessageQueue läuft, läuft dann in der MessageQueue dieses Threads und auch die ganzen internen Prozesse deiser Komponente laufen dann in diesem Thread.
VCL-Komponenten müssen nur im Hauptthread laufen, da sie intern gemeinsame und nicht threadsichere Resourcen der
VCL verwenden, wie z.B. irgendwelche Listen wo sie sich registrieren oder gemeinsam genutzte Fonts usw.