Ich habe eine Anwendung, die aus einem Dienst und einer ausführbaren Datei besteht. Im Wesentlichen ist es eine Formularanwendung, die für das Starten und Beenden eines Dienstes unter bestimmten Umständen zuständig ist.ServiceController Berechtigungen in Windows 7
Unter Windows XP die Anwendung dieses fein mit dem folgenden Code verwaltet:
ServiceController controller = new ServiceController();
controller.MachineName = ".";
controller.ServiceName = "XXXXXXXXXX";
controller.Stop();
controller.WaitForStatus(ServiceControllerStatus.Stopped, new TimeSpan(0, 0, 10));
controller.Start();
Aber auf Windows 7, auch wenn ich angefangen habe, die Anwendung als Administrator, erhalte ich die folgende Ausnahme:
System.InvalidOperationException: Cannot open XXXXXXXXXXXXX service on computer '.'. ---> System.ComponentModel.Win32Exception: Access is denied
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GetServiceHandle(Int32 desiredAccess)
at System.ServiceProcess.ServiceController.Start(String[] args)
at System.ServiceProcess.ServiceController.Start()
Gibt es irgendetwas, was ich programmatisch tun kann, um dies zu beheben?
Sorry war ein Idiot - ich benutze eine Verknüpfung zum Starten und hatte auf einer meiner Testmaschinen für diese Verknüpfung als Administrator ausgeführt werden (Und zur UAC aufgefordert), aber auf dem Rechner bekam ich diese Ausnahme ich hatte nicht t hat die Verknüpfung entsprechend geändert. –