Hoe u een Windows-service verwijdert via CMD of PowerShell

Na het verwijderen van bepaalde programma's of tools kunnen er nog steeds ongebruikte services aanwezig zijn in Windows. Dit artikel legt het uithoe u een service in Windows correct verwijdertmet behulp van de ingebouwde CMD- of PowerShell-tools.

De grafische beheermodule Services (services.msc) in Windows biedt alleen basisactieknoppen voor het starten, pauzeren of stoppen van een service. Deze console kan niet worden gebruikt om de service te verwijderen.

De taak is bijvoorbeeld om de ongebruikte Stunnel TLS-wrapperservice te verwijderen (in mijn geval werd deze service gebruikt om app-verkeer te versleutelen met Stunnel). Zoek eerst de servicenaam op. In dit geval is dat zostunnel(kopieer de naam uit het veld Servicenaam).

Ik raad u ten zeerste aan voorzichtig te zijn bij het verwijderen van services en het verwijderen van servicesBegrijp grondig de potentiële impact van uw acties. Om te voorkomen dat uw omgeving wordt verstoord, is het raadzaam de service uit te schakelen en de werking ervan enige tijd te observeren voordat u deze verwijdert. U kunt het automatisch opstarten van de service uitschakelen met de volgende PowerShell-opdracht:

Set-Service stunnel –startuptype disabled –passthru
Stop-Service stunnel

Voordat u een service verwijdert, controleert u ook de parameter DependentServices om te zien welke andere services ervan afhankelijk zijn.

Get-Service stunnel -DependentServices

U moet de service stopzetten voordat u deze kunt verwijderen. Klik op deStopknop in de Services-console of voer de opdracht uit:

net stop stunnel

Service-instellingen worden opgeslagen in het register onder deHKLMSYSTEMCurrentControlSetServicessleutel.

Voordat u een service verwijdert, maakt u een back-up van de instellingen door de serviceconfiguratie naar een REG-bestand te exporteren met de volgende opdracht:

reg export "HKLMSYSTEMCurrentControlSetServicesstunnel" "%HOMEPATH%Documentsstunnel_backup.reg" /y

Nu kunt u een service op naam verwijderen met behulp van de ingebouwdesc.exeopdracht (als de servicenaam spaties bevat, plaatst u deze tussen aanhalingstekens):

Aanbevolen lees:Hoe de productcode van Windows 10 te vinden met behulp van CMD, PowerShell en Windows Register?

sc delete stunnel

Er zou een bericht moeten verschijnen:

[SC] DeleteService SUCCESS

Met het hulpprogramma sc.exe kunt u services op externe computers beheren. Om de service op de M-FS01computer te stoppen en te verwijderen, voert u uit;

sc.ee \m-fs01 stop ServiceName1
sc.exe \m-fs01 delete ServiceName1

Of u kunt een service verwijderen met PowerShell:

Remove-Service stunnel

De Remove-Service-cmdlet is beschikbaar in PowerShell Core-versies 6.x en nieuwer.

In Windows PowerShell 5.1, dat niet hetVerwijderserviceopdracht kunt u WMI gebruiken om een ​​service te verwijderen:

$service = Get-WmiObject -Class Win32_Service -Filter "Name="stunnel""
$service.delete()

Als u een service wilt verwijderen, kunt u ook de registersleutel ervan verwijderen onderHKLMSYSTEMCurrentControlSetServices. Om er zeker van te zijn dat u de juiste service voor verwijdering target, zoekt u de service in de lijst en controleert u of deWeergavenaamEnAfbeeldingpadparameters bevatten de naam van de service en het volledige pad naar het uitvoerbare bestand. Verwijder de volledige servicesleutel.

Druk opF5om de Services-consolelijst te vernieuwen en te verifiëren dat de service is verwijderd en niet langer verschijnt. Het wordt doorgaans aanbevolen om Windows opnieuw op te starten na het verwijderen van een service. Na het opnieuw opstarten kunt u de uitvoerbare bestanden en mappen verwijderen waarnaar wordt verwezen door hetAfbeeldingpadregisterwaarde.

Wanneer u bepaalde services via de CMD verwijdert, kan er een bericht verschijnen dat de service is gemarkeerd voor verwijdering. Dit geeft aan dat verwijdering is gepland, maar dat het mogelijk is dat de bijbehorende hendels moeten worden gesloten of dat het systeem opnieuw moet worden opgestart om het proces te voltooien.

DeleteService FAILED 1072:
The specified service has been marked for deletion.

Deze service wordt automatisch verwijderd nadat de computer opnieuw is opgestart.

Als u een service wilt verwijderen zonder Windows opnieuw op te starten, gebruikt u detaskillopdracht geven of het actieve uitvoerbare proces van de service beëindigenTask Manager. Verwijder vervolgens de serviceregistersleutel met de volgende PowerShell-opdracht:

Get-Item HKLM:SYSTEMCurrentControlSetServicesstunnel | Remove-Item -Force -Verbose

Related Posts