Hallo,
ich weiß nicht mehr weiter:
Nachdem ich jetzt zu meinem Programm (siehe „Prozessname zu einer .exe-Datei herausfinden“ weiter unten im Brett) jetzt endlich den Dienst soweit fertiggestellt habe, tun sich mir schon wieder 2 schwerwiegende Probleme auf. Und zwar:
1: Ich habe, um den Dienst seine Aufgaben zuzuweisen und ein paar Stati abzufragen, eine GUI entwickelt (Windows-Form, in der selben Projektmappe und dem selben Namespace), die mithilfe von Events, die der Dienst abonniert hat, mit dem Dienst kommunizieren soll.
Zum Beispiel: Der Benutzer drückt einen Knopf, damit der Dienst sofort prüft, ob das angegebene Programm noch läuft und es ggf. neu startet.
Umsetzung in einer Unterklasse der GUI:
public delegate void CheckNow(object sender, EventArgs e);
public static event CheckNow OnCheckNow;
internal static void RaiseCheckNowEvent()
{
if (OnCheckNow != null)
OnCheckNow(GUI.ActiveForm, new EventArgs());
}
Umsetzung im Service:
GUIEvents.OnCheckNow += new GUIEvents.CheckNow(CheckProcess);
Theoretisch sollte also durch Knopfdruck >>RaiseCheckNowEvent() ausgeführt werden, und der Service sollte darauf reagieren, indem er >>CheckProcess ausführt.
Nur klappt dies leider gar nicht, der Service reagiert auf nichts.
Das einzige, was meine GUI bis jetzt kann, ist also, den Dienst zu installieren und zu starten.
2: Um das Problem zu lösen, möchte ich den Dienst gerne debuggen und habe mir dazu schon alle möglichen Anleitungen im Microsoft-msdn durchgelesen, aber es klappt bei mir einfach nicht.
Nachdem ich den Visual Studio-Debugger an den Service angehangen habe, werden nur alle Haltepunkte im Code als nicht erreichbar angezeigt und Informationen, welche Zeilen überhaupt abgearbeitet werden, erhalte ich auch nicht.
Kann mir dabei jemand helfen?
Dankend im Vorraus und mit freundlichen Grüßen,
Bluesky787