Mir ist noch etwas dazu eingefallen: Du hast den Service aus Sicherheitsgründen bestimmt so konfiguriert, dass er keinen Desktop-Zugriff hat (nicht interaktiv). Sollte die
VCL jetzt einen Fehler ausgeben, so wird die Messagebox dennoch aufgebaut, allerdings in einem für den User unsichtbaren Bereich. Daraufhin scheint die Anwendung zu hängen. Vielleicht kannst Du den Dienst zur Fehlersuche zweitweilig als "interaktiv" konfigurieren:
Services.msc->Dienst Eigenschaften->Register "Anmelden"->"Datenaustausch zwischen Dienst uznd Desktop zulassen"