Fehler 1001: Der angegebene Service ist bereits vorhanden. Der vorhandene Dienst kann nicht entfernt werden

9

Ich habe einen Service. Ich habe es vor einiger Zeit installiert. Ich muss ein Update für den Dienst durchführen. Ich ging zu den Add / Remove-Programmen und suchte nach meinem Dienst, der dort nicht installiert ist. Ich schaute auf services.msc und es ist dort, gestoppt. Ich konnte es beginnen und es stoppen. Ich habe eine Eingabeaufforderung als Administrator ausgeführt und sc löschte [Dienstname] und erhielt "Der angegebene Dienst existiert nicht als installierter Dienst." Ich habe eine SC-Abfrage in der Eingabeaufforderung durchgeführt, und es wird nicht zurückgegeben. Ich habe mit der rechten Maustaste auf das Installationsprogramm geklickt, auf Deinstallation geklickt und erhalten "Diese Aktion gilt nur für Produkte, die derzeit installiert sind." Ich habe auch versucht, die Reparatur zu machen und habe die gleiche Nachricht bekommen.

Ich habe den Rechner einige Male neu gestartet, und es ist kein Glück, dass dieser Dienst deinstalliert wird. Ich verwende die grundlegende Setup-Projektvorlage, die mit Visual Studio installiert wurde. Ich habe versucht, den Namen des Programms zu ändern und die Versionsnummer zu erhöhen.

Wie deinstalliere ich den scheinbar vorhandenen Dienst und verhindere, dass dies in Zukunft geschieht?

    
Larry Gasik 27.03.2012, 18:41
quelle

6 Antworten

7

Wenn Sie die .exe mit dem Service-Installationsprogramm verwenden, verwenden Sie InstallUtil.exe /u <process.exe> InstallUtil.exe wird in \Windows\Microsoft.Net\Framework\v4.0.30319

gefunden

Fügen Sie im Setup-Projekt Ihren Service in alle benutzerdefinierten Aktionen ein, auch die Deinstallation

(Rechtsklick auf das Projekt, Benutzerdefinierte Aktion)

hth

Mario

    
Mario The Spoon 27.03.2012 19:55
quelle
4

** Wenn nur das Setup verwendet werden soll, folgen Sie bitte:

Dies kann durch explizite Implementierung der bestehenden Dienstentfernung (Deinstallation) und anschließende Installation einer neueren Version geschehen. Dafür müssen wir ProjectInstaller.Designer.cs wie folgt aktualisieren:

Fügen Sie am Anfang von InitializeComponent () die folgende Zeile hinzu, die ein Ereignis zum Deinstallieren des vorhandenen Dienstes auslöst, bevor Ihr aktuelles Installationsprogramm versucht, den Dienst erneut zu installieren. Hier deinstallieren wir den Dienst, falls dieser bereits existiert.

Fügen Sie folgende Namespaces hinzu:

%Vor%

Fügen Sie die folgende Codezeile wie zuvor beschrieben hinzu:

%Vor%

Beispiel:

%Vor%

Der unten stehende vom Ereignis aufgerufene Code wird den Dienst dann deinstallieren, wenn er existiert.

%Vor%

PS: Zusätzlich zu den oben genannten Änderungen sollten Sie auch die Setup-Version, ProductCode (und optionall UpgradeCode) für eine gute Vorgehensweise, bessere Versionsverwaltung, Verfolgung und Wartung aktualisieren

    
ShivanandSK 22.03.2016 13:11
quelle
3

Es ist völlig normal, dass der Dienst nicht unter "Programme hinzufügen / entfernen" aufgeführt ist. Dieser Eintrag bezieht sich auf Softwarepakete und nicht auf Dienste. (Ein Paket oder Programm kann mehrere Dienste enthalten, installiert aber normalerweise keine.)

Offenbar wurde der Dienst manuell installiert, nicht als Teil des Produkts, selbst wenn dieser normalerweise mit einem Produkt installiert würde, dessen Installationspaket Sie erhalten haben.

Die Verwendung von sc delete ist korrekt. Sie müssen den (kurzen) Namen des Service in doppelte Anführungszeichen setzen (es sei denn, es handelt sich nur um ein einzelnes Wort), aber nichts anderes.

Wenn dies nicht der Fall ist, besuchen Sie HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services in Ihrer Registrierung, sowohl 32 Bit als auch 64 Bit ( regedt32.exe bzw. regedit.exe ). Sie können sogar den Dienst dort direkt löschen, aber Sie sollten natürlich mit reversiblen Änderungen beginnen, um zu diagnostizieren, wie Ihr Dienst genau benannt ist und warum sc seinen Namen nicht sieht und nur den direkten Registrierungszugriff verwendet, nachdem alles andere fehlgeschlagen ist und Sie danach haben Sichern Sie Ihre Registrierung (googlen Sie diese Prozedur nach Angabe Ihres Betriebssystems).

    
Jirka Hanika 27.03.2012 20:28
quelle
1

Das ist mir heute auch passiert. Die einzige Lösung bestand darin, die Setup-Datei über das Windows Add / Remove-Tool zu reparieren. Nach der Reparatur Ihrer Setup-Datei deinstallieren und erneut installieren.

    
tanzer 25.02.2014 14:21
quelle
0

Falls jemand anderes auf dieses Problem stößt:

Was für mich funktionierte, war die Aktualisierung des Namens, der Version und des ProductCode meines Installers. Sollte unbedingt der guten Praxis der Versionierung folgen.

    
Ryan Den-Kaat 20.11.2017 05:51
quelle
0

Haben Sie versucht, in der Windows-Registrierung nach einem Papierkorb für diesen Dienst zu suchen?

Sie sollten sich diesen Ordner ansehen: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \

    
NicoRiff 27.03.2012 18:55
quelle