Moin Michael,
am besten packst Du CoInitialize in den initialization Abschnitt und CoUninitialize in den finalization Abschnitt der
Unit des Hauptformulares.
Diese beiden Funktionen müssen einmal je Thread aufgerufen werden, und das sollte dann möglichst früh (CoInitialize) bzw. möglichst spät (CoUninitialize) erfolgen.
Zitat von
Michael:
Wie könnte ich versuchen die Fehlerquelle weiter einzugrenzen?
Ich hoffe mal, dass Du die Stelle im Programm, an der der Fehler auftritt einigermassen wirst eingrenzen können.
An dieser "verdächtigen" Stelle setzt Du dann einen Breakpoint und gehst im Einzelschritt durch, bis der Fehler auftritt.
Dann hast Du zumindest schon mal die Stelle an der etwas unzulässiges passiert, und kannst Dir überlegen, was denn nun die Ursache ist.
Genauer geht's leider nicht, denn es gibt, wie Du schon selber gesagt hast, viele mögliche Ursachen.