Form aus Dienst steuern?

18/01/2008 - 16:06 von jens m. guessregen | Report spam
Hallo,

ich habe folgendes Problem.

Ich habe einen Dienst geschrieben, der über eine serielle Schnittstelle
regelmàssig Daten von einem externen Geràt erhàlt.
Das funktioniert auch wunderbar.

Allerdings möchte ich jetzt, dass bei einer bestimmten Zeichenfolge der
Dienst eine Meldung auf den Bildschirm bringt.
Ich habe das ausprobiert mit einer MessageBox, auch das funktioniert.

Aber das ganze hat einen Fallstrick.
Die Sub, die das serielle Event DataReceive handelt und die MessageBox
initiert, steht solange auf der Stelle, bis der User sich bequemt, auf den
OK Button der MessageBox zu drücken.
Kommen aber in der Zwischenzeit neue Daten, geht das in die Hose, sprich
irgendwann ist der Buffer voll und nix geht mehr.

Also habe ich versucht, die MessageBox durch ein Form zu ersetzen. Ich habe
mit gedacht, ich erstelle ein Form, das normal versteckt ist ausserhalb des
sichtbaren Bildschirmbereich, und schiebe das, wenn benötigt, in den
sichtbaren Bereich. Aber ... alleine das hinzufügen einer Form zu dem
Projekt verhindert bereits, dass der Dienst nach dem Start weiterlàuft.
Stattdessen bekomme ich eine Meldung, dass der Dienst angehalten wurde, weil
er im Ruhezustand sei. Entferne ich die Form, geht alles wieder wie vorher.

Deshalb meine Frage, wie kann ich aus einem Dienst heraus ein Form steuern?

Gruss Jens
(mit VB.2005 Professional)
 

Lesen sie die antworten

#1 Peter Fleischer
18/01/2008 - 16:22 | Warnen spam
"jens m. guessregen" schrieb im Newsbeitrag
news:%

Deshalb meine Frage, wie kann ich aus einem Dienst heraus ein Form
steuern?



Hi Jens,
ein Dienst làuft üblicherweise unbeaufsichtigt und kann deshalb auch mit
keinem Anwender kommunizieren. Am einfachsten ist es, wenn der Dienst seine
Daten ablegt, z.B., in einer Datenbank, und eine andere Anwendung, die vom
Anwender bei Bedarf gestartet wird, die abgelegten Daten auswertet, ggf.
auch in Zeitintervallen.

Viele Gruesse

Peter

Ähnliche fragen