gedebuggt hab ich den Dienst noch nicht, aber ich hab einfach in die entsprechende Prozedur in jede zweite Zeile ein EventLogger.LogMessage eingebaut. Und in der Ereignisanzeige hören die Einträge an dem Punkt auf, bevor eine Zeichenkette über den
COM-Port gesendet wird.
@Reinhard
Ich glaube nicht, das es an soetwas liegt. Die Komponente wird ja innerhalb einer
DLL erzeugt und benutzt. Da gibts ja auch keine Fenster oder ähnliches. Testweise hatte ich den Dienst auch schon auf interaktiv gesetzt, hat aber nix gebracht.
Was mich noch wundert (und mir grade just eingefallen ist), dass ich am Anfang, wenn der Dienst geladen wird, für jeden verfügbaren
COM-Port einen Thread erzeuge und kurz einen Befehl sende und warte ob eine passende Antwort zurückkommt. Diese Threads beenden sich dann entweder nach einer kurzen Zeitspanne oder wenn die passende Antwort gekommen ist. Das ganze ist als eine Art Autoerkennung gedacht und funktioniert wunderbar.
Je länger ich darüber nachdenke, desto wahrscheinlicher ist, das diese Threads (bzw. der eine, der das Gerät gefunden hat) sich nicht richtig beenden und den
COM-Port noch in Beschlag nehmen.