Wie deinstalliere ich einen Windows-Dienst, wenn auf dem System keine ausführbare Datei mehr vorhanden ist? Ich kann nicht ausgeführt werden, installutil -u
da auf dem System keine ausführbare Datei mehr vorhanden ist. Ich kann immer noch einen Eintrag für den Dienst in der Dienstekonsole sehen.
Der Grund für diesen Status liegt wahrscheinlich in einem Problem im msi-Paket, das den Dienst nicht korrekt entfernt. Wie kann ich ihn jedoch beheben, wenn sich der Dienst in diesem Status befindet?
windows
windows-services
uninstall
Magnus Lindhe
quelle
quelle
Antworten:
Sie sollten in der Lage sein, es mit sc.exe zu deinstallieren (ich glaube, es ist im Windows Resource Kit enthalten), indem Sie an einer Eingabeaufforderung "Administrator" Folgendes ausführen:
Wo
<service name>
ist der Name des Dienstes selbst, wie Sie ihn in der Dienstverwaltungskonsole sehen, nicht der Exe?Sie finden sc.exe im Ordner System und es benötigt Administratorrechte, um ausgeführt zu werden. Weitere Informationen finden Sie in diesem Microsoft KB-Artikel .
Alternativ können Sie die API DeleteService () direkt aufrufen . Dieser Weg ist etwas komplexer, da Sie über OpenSCManager () usw. einen Handle an den Service Control Manager senden müssen , andererseits aber mehr Kontrolle darüber haben, was passiert.
quelle
Entfernen Sie den Windows-Dienst über die Registrierung
Es ist sehr einfach, einen Dienst aus der Registrierung zu entfernen, wenn Sie den richtigen Pfad kennen. So habe ich das gemacht:
Führen Sie Regedit oder Regedt32 aus
Gehen Sie zum Registrierungseintrag "HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services".
Suchen Sie nach dem Dienst, den Sie löschen möchten, und löschen Sie ihn. Sie können sich die Schlüssel ansehen, um zu erfahren, welche Dateien der Dienst verwendet hat, und sie auch löschen (falls erforderlich).
Löschen Sie den Windows-Dienst über das Befehlsfenster
Alternativ können Sie auch die Eingabeaufforderung verwenden und einen Dienst mit dem folgenden Befehl löschen:
sc löschen
Sie können den Dienst auch mit dem folgenden Befehl erstellen
sc create "MorganTechService" binpath = "C: \ Programme \ MorganTechSPace \ myservice.exe"
Hinweis: Möglicherweise müssen Sie das System neu starten, um die Liste im Service Manager zu aktualisieren.
quelle
sc delete
?hier gefunden
Ich habe gerade Windows XP ausprobiert, es hat funktioniert
lokaler Computer: sc \\. lösche [Dienstname]
quelle
Hier ist das Powershell-Skript zum Löschen eines Dienstes
foo
quelle
Am liebsten verwende ich dazu die Anwendung Sysinternals Autoruns . Wählen Sie einfach den Dienst aus und drücken Sie Löschen.
quelle
sc delete
?Erstellen Sie eine Kopie der ausführbaren Dateien desselben Dienstes, fügen Sie sie in denselben Pfad des vorhandenen Dienstes ein und deinstallieren Sie sie anschließend.
quelle
Ich würde dafür PowerShell verwenden
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/remove-service
quelle