Kann nicht öffnen Sie Servicename-Dienst auf computer '.'. Fehler beim Starten Windows-Dienst ein Programm mit c#
Ich habe einen Windows-Dienst installiert und auf meinem system.Jetzt nach meiner Anforderung habe ich zum starten und beenden dieser windows-Dienst verwenden von Schaltflächen klicken Sie vom Windows Form-Anwendung.
Hier ist mein Code ..
public partial class Form1 : Form
{
string svcStatus;
ServiceController myService;
public Form1()
{
InitializeComponent();
myService = new ServiceController();
myService.ServiceName = "ServiceName";
svcStatus = myService.Status.ToString();
}
private void button1_Click(object sender, EventArgs e)
{
if (svcStatus == "Stopped")
{
myService.Start(); //START the service if it is already Stopped
string svcStatusWas = "";
while (svcStatus != "Running")
{
if (svcStatus != svcStatusWas)
{
Console.WriteLine("Status: " + svcStatus);
}
svcStatusWas = svcStatus;
myService.Refresh();
svcStatus = myService.Status.ToString();
}
Console.WriteLine("Service Started!!");
}
}
private void button2_Click(object sender, EventArgs e)
{
if (svcStatus == "Running")
{
myService.Stop(); //STOP the service if it is already Running
string svcStatusWas = "";
while (svcStatus != "Stopped")
{
svcStatusWas = svcStatus;
myService.Refresh();
svcStatus = myService.Status.ToString();
}
Console.WriteLine("Service Stopped!!");
}
}
}
}
Erhalte ich die Fehlermeldung "kann Nicht geöffnet werden Servicename-Dienst auf computer '.'." in dieser Zeile myService.Start();
Bitte helfen Sie mir.
- Ist der Dienst, den Sie starten wollten wirklich als "ServiceName"?
- Ist der Dienst auf dem Rechner? Sind Sie sicher, dass Sie mit dem service-Namen, nicht den Dienst ausführbare Datei?
- Sie haben die Berechtigung zum starten/beenden von Diensten unter dem Benutzer läuft bist du da?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist wahrscheinlich nicht ein Problem, wenn Sie auf einem XP-Rechner oder unter dem debugger des Visual Studios, aber nur wenn Sie stellen Ihr Programm auf einem Windows 7-Rechner die Fehlermeldung:
Dies ist sehr wahrscheinlich, weil die Berechtigungen ändern, die es seit Vista über das User Account Control.
Können Sie überprüfen, dass dies in der Tat, was das Problem verursacht, wenn Sie versuchen, die Anwendung als administrator und das Problem nicht auftreten.
, Um zu Starten oder Beenden eines Windows-services, die Sie benötigen, um ausführen Ihre C# - Programm mit Administratorrechten.
Diese kann entweder manuell, durch einen Rechtsklick auf die Anwendung und klicken Sie dann auf 'als administrator Ausführen'
Oder diese kann getan werden, programmgesteuert durch eine entsprechende Einstellung Ihrer Programm immer ausführen, die mit der Verwaltung Recht, wenn Sie fügen Sie den untenstehenden code in Ihre app.- manifest-Datei befindet sich im Ordner Eigenschaften in Ihr Projekt im Projektmappen-Explorer:
Finden Sie weitere Informationen zum Erstellen und Einbetten eines Application Manifest (UAC) hier:
https://msdn.microsoft.com/en-us/library/bb756929.aspx
Pranav, Sie müssen führen Sie Ihre Anwendung mit Administratorrechten an. Wenn Sie Visual Studio als administrator, sollte die Anwendung ordnungsgemäß funktionieren im debug-Modus.
Wenn Sie kommen, um die Anwendung bereitzustellen, können Sie entweder führen Sie es im Administratormodus standardmäßig, oder weisen Sie die entsprechenden Berechtigungen für Ihre Anwendung zu aktivieren, zu starten und zu stoppen, die bestimmte Dienste (ich glaube, dies erfolgt auf der Kommandozeile). Ich habe das getan vor einer Weile, und eine schnelle Google-Suche wird Ihnen helfen.