Überwachen eines benutzerdefinierten Diensts

stimmen
0

Ich habe einen Dienst für einen meines Apps erstellt. Wie kann ich eine System-Tray-Komponente in VB.net erstellen, die verwendet werden können, um den Fortschritt des Dienstes zu überwachen? Gibt es eine Möglichkeit, dies über tcpip auf mehreren Client-Rechnern wie diejenigen installiert zu haben, die für unsere Mitarbeiter sind?

Veröffentlicht am 09/12/2008 um 17:53
quelle vom benutzer
In anderen Sprachen...                            


5 antworten

stimmen
1

Sie könnten WCF für diese. Mit WCF Ihren Dienst würde eine EndPoint eröffnen, die Statusinformationen zu Anrufern aussetzen würde. Sie könnten dann ein Tray-Icon-Anwendung erstellen, die auf die Mitarbeiter-Arbeitsplätze eingesetzt werden können. Die Tray-Icon Anwendung könnte in regelmäßigen Abständen den WCF-Dienst abfragen der Ihr Windows-Dienst gehostet wird und Statusinformationen erhalten. Ich weiß, @Johan erwähnt Remoting bereits und dies ist ein ähnlicher Ansatz. Ich würde WCF empfehlen obwohl, wie die Programmierung API einfacher ist, meiner Meinung nach, und WCF wird Ihnen mehr Flexibilität in Bezug auf Netzwerk transportiert, usw.

Beantwortet am 24/04/2009 um 01:35
quelle vom benutzer

stimmen
1

Wir tun genau das hier mit dem Server einen wirklich grundlegenden HTTP-Server auf einem konfigurierbaren Port auf einem separaten Thread ausgeführt wird, den Status in einem XML-Format zurückzugibt (nichts anderes, nur das) - verwendet der Client nur eine Web-Anforderung die XML zu erhalten , bevor es das Parsen und entsprechend angezeigt wird.

Dieser Ansatz ermöglicht es auch für zukünftige Erweiterbarkeit (detaillierten Status, Dienststeuerbefehle senden, um eine Zuordnung zu einer XSLT-Datei an anderer Stelle des Hinzufügen Verwendung mit einem normalen Web-Browser, etc.)

Beantwortet am 31/12/2008 um 13:16
quelle vom benutzer

stimmen
0

Für den Komunikation Teil, habe ich vor Remoting verwendet wird, und das funktioniert sehr gut. Mit ein wenig von der Konfiguration können Sie es sogar auf eine andere Maschine arbeiten bekommen.

Beantwortet am 13/03/2009 um 11:52
quelle vom benutzer

stimmen
0

Ich werde die zweite Frage nehmen: Gibt es eine Möglichkeit, aus der Ferne Software auf Client-Rechnern installiert werden?

Ja. Allerdings ist es sehr abhängig von Ihrer Umgebung. Zum Beispiel, wenn Sie eine Active Directory-Domäne haben, können Sie Gruppenrichtlinien Installation von Software auf den Client-Boxen zu erzwingen.

Wenn Sie nicht, dass gefällt oder wenn Sie nicht auf Active Directory, können Sie so etwas wie Altiris kaufen installiert nach unten zu drücken.

Eine andere Möglichkeit wäre Anmeldeskripts zu verwenden, die ein benutzerdefiniertes Programm ausführen würde, um festzustellen, ob Ihr Programm installiert ist, und entsprechende Maßnahmen zu ergreifen. Aber dann sind Sie wahrscheinlich besser dran Altiris Kauf.

Beantwortet am 09/12/2008 um 18:13
quelle vom benutzer

stimmen
0

Ich glaube, Ihre Frage ist nicht, wie zu tun eigentlich die „traybar“ -Thing, aber wie mit dem Dienst zu kommunizieren, um die Informationen, die Sie auf dem Monitor / traybar-Programm zeigen wollen, zu bekommen?

Es kann auf vielfältige Weise geschehen, API ist eine Möglichkeit, die Verwendung von Sendmessage / Postmessage / GetMessage ein Weg ist, 2 laufende Programme miteinander kommunizieren zu lassen, ohne zuerst in Dateien oder Datenbanken zu speichern, alles mit.

DDE ist eine andere Art und Weise. Wenn es das Zeug über Netz tun muss, dann gibt es etwas namens NetDDE, aber ich habe alles getan, mit NetDDE ich dort etwas helfen kann nicht.

Aber über die API und DDE, fühlen sich frei, mehr Fragen zu stellen, wenn Sie eine Klarstellung soll.

Beantwortet am 09/12/2008 um 18:12
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more