2016-06-28 4 views
-1

Ich baue eine Windows-Dienstanwendung. Der Witwen-Dienst wird als Domänen-Dienstkonto ausgeführt.Der effektivste Weg für eine Windows-Formularanwendung, mit einem C# -Windows-Dienst zu kommunizieren

Ich mag GUI über der Anwendung, damit ich den Status der Arbeit in der Dienstanwendung überwachen kann.

Was wäre der effektivste Weg, um eine WinForms (oder WPF) -Anwendung mit meinem Windows-Service-Code interagieren zu lassen?

Im Idealfall möchte ich in meiner WiForms-Anwendung eine statische Methode in meiner Windows-Dienstanwendung aufrufen und Daten senden/abrufen.

Ich kann sehen, dass dies von einigen der Windows-Management-Dienste und MMC wie IIS-Management-UI getan wird.

Ein Link zu einem Online-Artikel oder Beispielcode wäre eine große Hilfe.

Danke,

Antwort

0

ich einen Blick auf WCF nehmen würde, und zwar einen WCF-Dienst in Ihrem Windows-Dienst Einbettung, dann können Sie einen Endpunkt anschließen, die es zu was auch immer Zugriff darauf muss aussetzt.

http://www.codeproject.com/Articles/566691/WCF-From-a-Beginners-perspective-a-Tutorial

+0

Ich kenne WCF. Allerdings würde es mehr Aufwand erfordern, den ich mir leisten kann. Gibt es einen einfacheren Weg für einen Prozess, eine statische Methode aufzurufen oder eine Nachricht an einen Windows-Dienst zu senden? –

+1

Sie können wählen: https://msdn.microsoft.com/en-us/library/windows/desktop/aa365574(v=vs.85).aspx –

+0

Ich würde sagen, dass wcf ist das einfachste, obwohl ich viele komplizierte gesehen habe Setups, aber es muss nicht sein, Sie können mit einer sehr einfachen Bindung und Schnittstelle kommen, ich habe einige Beispielcode, den ich für Sie ausfindig machen kann. –

0

Sie benutzerdefinierte Befehle verwenden können Ihren Dienst stecken, um etwas zu tun, ist aber nicht ein 2-Wege-Prozess, können Sie nur Befehle an den Service schicken. Also, in den meisten Fällen weniger als ideal, aber es ist einfach und Sie könnten es verwenden, um Ihren Dienst auszulösen, um einen Zustand in das Ereignisprotokoll oder eine Textdatei zu löschen, wenn Sie nicht mit WCF ...

https://arcanecode.com/2007/05/30/windows-services-in-c-sending-commands-to-your-windows-service-part-7/

Verwandte Themen