Share via


Procedure: Windows-services installeren en verwijderen

Notitie

Dit artikel is niet van toepassing op gehoste services in .NET. Zie voor de nieuwste inhoud van Windows-services die gebruikmaken van Microsoft.Extensions.Hosting.BackgroundService en de worker-servicesjabloon:

Als u een Windows-service ontwikkelt met .NET Framework, kunt u uw service-app snel installeren met behulp van het InstallUtil.exe opdrachtregelprogramma of PowerShell. Als u een Windows-service wilt vrijgeven die gebruikers kunnen installeren en verwijderen, gebruikt u de gratis WiX Toolset of commerciële hulpprogramma's zoals Advanced Installer en InstallShield. Zie Een installatiepakket maken (Windows-bureaublad) voor meer informatie.

Waarschuwing

Als u een service wilt verwijderen die u niet van uw computer hebt ontwikkeld , volgt u de stappen in dit artikel niet. Zoek in plaats daarvan uit welk programma of softwarepakket de service heeft geïnstalleerd en kies vervolgens Apps in Instellingen om dat programma te verwijderen. Veel services zijn integrale onderdelen van Windows; Als u ze verwijdert, kan dit systeeminstabiliteit veroorzaken.

Als u de stappen in dit artikel wilt gebruiken, moet u eerst een service-installatieprogramma toevoegen aan uw Windows-service. Zie Walkthrough: Een Windows-service-app maken voor meer informatie.

U kunt Windows-serviceprojecten niet rechtstreeks vanuit de Ontwikkelomgeving van Visual Studio uitvoeren door op F5 te drukken. Voordat u het project kunt uitvoeren, moet u de service in het project installeren.

Tip

U kunt Server Explorer gebruiken om te controleren of u uw service hebt geïnstalleerd of verwijderd.

Installeren met behulp van InstallUtil.exe hulpprogramma

  1. Open de opdrachtprompt voor ontwikkelaars voor VS.

    Selecteer In het menu Start alle apps, vouw de Visual Studio-versie>< uit en selecteer vervolgens De opdrachtprompt voor ontwikkelaars voor vs-versie.<>

  2. Navigeer naar de map waarin het gecompileerde uitvoerbare bestand van uw project zich bevindt.

  3. Voer InstallUtil.exe uit vanaf de opdrachtprompt met het uitvoerbare bestand van uw project als het argument:

    installutil <yourproject>.exe
    

    Als u de opdrachtprompt voor Visual Studio voor ontwikkelaars gebruikt, bevindt InstallUtil.exe zich al op het systeempad bevindt. Anders kunt u het toevoegen aan het pad of het volledig gekwalificeerde pad gebruiken om het aan te roepen. Dit hulpprogramma is geïnstalleerd met .NET Framework in %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.

Verwijderen met behulp van InstallUtil.exe hulpprogramma

  1. Open de opdrachtprompt voor ontwikkelaars voor VS.

    Selecteer In het menu Start alle apps, vouw de Visual Studio-versie>< uit en selecteer vervolgens De opdrachtprompt voor ontwikkelaars voor vs-versie.<>

  2. Voer InstallUtil.exe uit vanaf de opdrachtprompt met de /uninstall optie en het uitvoerbare bestand van uw project:

    installutil /uninstall <yourproject>.exe
    
  3. Nadat het uitvoerbare bestand voor een service is verwijderd, is de service mogelijk nog steeds aanwezig in het register. Als dat het geval is, gebruikt u de opdracht sc delete om de vermelding voor de service uit het register te verwijderen.

Installeren met Behulp van PowerShell

  1. Zoek in het menu Start naar Windows PowerShell en selecteer het.

  2. Navigeer naar de map waarin het gecompileerde uitvoerbare bestand van uw project zich bevindt.

  3. Voer de cmdlet New-Service uit met een servicenaam en het uitvoerbare bestand van uw project als argumenten:

    New-Service -Name "YourServiceName" -BinaryPathName <yourproject>.exe
    

Verwijderen met PowerShell

  1. Zoek in het menu Start naar Windows PowerShell en selecteer het.

  2. Voer de cmdlet Remove-Service uit met de naam van uw service als argument:

    Remove-Service -Name "YourServiceName"
    

    Notitie

    U moet PowerShell 6 of hoger hebben om deze cmdlet te kunnen gebruiken. Zie PowerShell installeren in Windows voor meer informatie over het bijwerken van PowerShell.

  3. Nadat het uitvoerbare bestand voor een service is verwijderd, is de service mogelijk nog steeds aanwezig in het register. Als dat het geval is, gebruikt u de opdracht sc delete om de vermelding voor de service uit het register te verwijderen.

    sc.exe delete "YourServiceName"
    

Zie ook