Update zur seriellen Komponente:
Ich habe das Package "Serial44" in Lazarus installiert und ausprobiert, läuft auch.

Es gibt ein Ereignis OnCOMRemoved.

Wenn bei geöffneter Schnittstelle nun der USB Stecker gezogen wird,
verzweigt die Software in dieses Ereignis.

Ich hab mir das mal im Source Code angesehen.
Hier wird die Windows Message WM_DEVICECHANGE ausgewertet.
Eine Beschreibung gibt es hier:
https://docs.microsoft.com/en-us/win...m-devicechange

Man muss aber die WindowsProg irgendwie umgeleitet werden, damit diese Message auch abgefangen werden kann.

Ich denke aber, Du solltest vorerst bei deiner Variante bleiben.

Siro