Füge mal ein
ts.HandleNeeded;
vor der
TempWindowParent:=TCEFWindowParent.Create(ts);
Zeile ein, vielleicht hilft das.
Die
VCL erzeugt Windows-Handles erst, wenn ein
Handle wirklich gebraucht wird, also spätestens, wenn ein TWinControl angezeigt wird. Das kann manchmal zu Problemen mit externen Componenten führen, die ursprünglich nicht für die
VCL gedacht waren.
Du solltest auch konsequent darin sein, welche Komponente Du als Owner für im Kode erzeugte Komponenten verwendest. Das hat einen Einfluß darauf, in welcher Reihenfolge die Komponenten später zerstört werden. Versuch mal, immer das Hostform als Owner zu verwenden, vielleicht funktioniert das besser.
Falls Du den Fehler so nicht in den Griff bekommst könnte es notwendig sein, die Chromium-Komponenten explizit zu free-en, bevor das Form geschlossen wird. Du hast da eine ziemlich tiefe Staffelung von Controls, da kann die Sequenz des Abbaus etwas unintuitiv werden