Condividi tramite


Procedura: Installare e disinstallare i servizi Windows

Nota

Questo articolo non si applica ai servizi ospitati in .NET. Per i contenuti più recenti sui servizi Windows che usano Microsoft.Extensions.Hosting.BackgroundService e il modello worker service, vedere:

Se si sta sviluppando un servizio Windows con .NET Framework, è possibile installare rapidamente l'app del servizio usando l'utilità della riga di comando InstallUtil.exe o PowerShell. Se si vuole rilasciare un servizio Windows che gli utenti possono installare e disinstallare, usare il set di strumenti WiX gratuito o strumenti commerciali come Advance Installer e InstallShield. Per altre informazioni, vedere Creare un pacchetto di installazione (desktop Windows).

Avviso

Se si vuole disinstallare un servizio che non è stato sviluppato dal proprio computer, non seguire la procedura descritta in questo articolo. Individuare invece il programma o il pacchetto software che ha installato il servizio e quindi scegliere App in Impostazioni per disinstallare tale programma. Molti servizi sono parte integrante di Windows. Se vengono rimossi, il sistema potrebbe diventare instabile.

Per usare i passaggi descritti in questo articolo, è necessario prima aggiungere un programma di installazione del servizio al servizio Windows. Per altre informazioni, vedere Procedura dettagliata: Creare un’app di servizio di Windows.

Non è possibile eseguire i progetti del servizio Windows direttamente dall'ambiente di sviluppo di Visual Studio premendo F5. Prima di eseguire il progetto, è necessario installare il servizio nel progetto.

Suggerimento

È possibile usare Esplora server e verificare se il servizio è stato installato o disinstallato.

Eseguire l'installazione con l'utilità InstallUtil.exe

  1. Aprire il Prompt dei comandi per gli sviluppatori per Visual Studio.

    Dal menu Start, selezionare Tutte le app, espandere <versione> di Visual Studio e quindi selezionare <versione> del Prompt dei comandi per gli sviluppatori per Visual Studio.

  2. Passare alla directory in cui si trova il file eseguibile compilato del progetto.

  3. Eseguire InstallUtil.exe dal prompt dei comandi con l’eseguibile del progetto come argomento:

    installutil <yourproject>.exe
    

    Se si usa il Prompt dei comandi per gli sviluppatori di Visual Studio, InstallUtil.exe è già nel percorso di sistema. In caso contrario, è possibile aggiungerlo al percorso o usare il percorso completo per richiamarlo. Questo strumento viene installato con .NET Framework in %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.

Eseguire la disinstallazione con l'utilità InstallUtil.exe

  1. Aprire il Prompt dei comandi per gli sviluppatori per Visual Studio.

    Dal menu Start, selezionare Tutte le app, espandere <versione> di Visual Studio e quindi selezionare <versione> del Prompt dei comandi per gli sviluppatori per Visual Studio.

  2. Eseguire InstallUtil.exe dal prompt dei comandi con l’opzione /uninstall e l’eseguibile del progetto:

    installutil /uninstall <yourproject>.exe
    
  3. Dopo avere eliminato il file eseguibile di un servizio, è possibile che il servizio sia ancora presente nel Registro di sistema. In questo caso usare il comando sc delete per rimuovere la voce per il servizio dal Registro di sistema.

Eseguire l’installazione con PowerShell

  1. Dal menu Start, cercare Windows PowerShell e quindi selezionarlo.

  2. Passare alla directory in cui si trova il file eseguibile compilato del progetto.

  3. Eseguire il cmdlet New-Service con un nome di servizio e l’eseguibile del progetto come argomenti:

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

Eseguire la disinstallazione usando PowerShell

  1. Dal menu Start, cercare Windows PowerShell e quindi selezionarlo.

  2. Eseguire il cmdlet Remove-Service con il nome del servizio come argomento:

    Remove-Service -Name "YourServiceName"
    

    Nota

    Per usare questo cmdlet, è necessario avere PowerShell 6 o versione successiva. Per informazioni sull'aggiornamento di PowerShell, vedere Installazione di PowerShell in Windows.

  3. Dopo avere eliminato il file eseguibile di un servizio, è possibile che il servizio sia ancora presente nel Registro di sistema. In questo caso usare il comando sc delete per rimuovere la voce per il servizio dal Registro di sistema.

    sc.exe delete "YourServiceName"
    

Vedi anche