web-dev-qa-db-fra.com

Installer un service Windows à l'aide d'une invite de commande Windows?

Je souhaite installer un service Windows à l'aide d'une invite de commande Windows (et non de l'invite de commande Visual Studio).

Comment puis-je faire cela?

248
Vikash Pandey

Accédez au fichier installutil.exe de votre dossier .net (pour .net 4, par exemple, C:\Windows\Microsoft.NET\Framework\v4.0.30319) et utilisez-le pour installer votre service, comme ceci:

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe" "c:\myservice.exe"
422
hcb

Aucun problème avec la commande SC Create . Il vous suffit de connaître les arguments corrects: 

SC CREATE "MySVC" binpath= “D:\Me\Services\MySVC\MySVC.exe"
93
Sid

Si le nom du répertoire comporte un espace tel que c:\program files\abc 123, vous devez utiliser des guillemets doubles autour du chemin.

installutil.exe "c:\program files\abc 123\myservice.exe"

Install windows service from command Prompt

Cela facilite beaucoup les choses si vous configurez un fichier chauve-souris comme suit:

par exemple. Pour installer un service, créez un fichier "myserviceinstaller.bat" et " Exécuter en tant qu'administrateur "

@echo off
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
installutil.exe "C:\Services\myservice.exe"

if ERRORLEVEL 1 goto error
exit
:error
echo There was a problem
pause

désinstaller le service,

Ajoutez simplement un -u à la commande installutil.

cd C:\Windows\Microsoft.NET\Framework\v4.0.30319

C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe -u "C:\Services\myservice.exe"
75
Dhanuka777

Effectuer ce qui suit:

  1. Lancez la commande Invite (CMD) avec les droits d’administrateur.
  2. Tapez c:\windows\Microsoft.net\framework\v4.0.30319\installutil.exe [your windows service path to exe]
  3. Presse return et c'est ça!

Il est important d'ouvrir avec des droits d'administrateur, sinon vous risquez de rencontrer des erreurs qui n'ont pas de sens. Si vous en avez, vérifiez que vous l'avez ouvert en premier avec les droits d'administrateur!

Pour ouvrir avec des droits d'administrateur , cliquez avec le bouton droit de la souris sur 'Invite de commandes' et sélectionnez 'Exécuter en tant qu'administrateur'.

Source: http://coderamblings.wordpress.com/2012/07/24/how-to-install-a-windows-service-using-the-command-Prompt/

15
Base33

Install Service: -

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe" 
"C:\Services\myservice.exe"

UnInstall Sevice: -

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe" -u "C:\Services\myservice.Service.exe"
7

Je dois ajouter un point de plus dans ce fil. Pour installer/désinstaller la version 64 bits des assemblys, vous devez utiliser la version 64 bits de l'outil. Pour installer un service, la commande doit être:

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe"
"C:\YourFolder\YourService.exe"

et pour désinstaller la commande devrait être:

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe" -u
"C:\YourFolder\YourService.exe"
5
MKR

Si vous utilisez Powershell et que vous souhaitez installer le service .NET, vous pouvez utiliser Install-Service module. C'est un wrapper pour l'outil InstalUtil. 

Il expose 3 commandes

  • Install-Service - invoque la commande InstallUtil.exe pathToExecutable
  • Install-ServiceIfNotInstalled - vérifie d'abord si le service est installé S'il n'est pas exécuté, utilisez la méthode Install-Service 
  • Uninstall-Service- it désinstalle le service. ServiceName du chemin d'accès à l'exécutable peut être utilisé.

Le code de ce module peut être visualisé ici

2
Pawel Wujczyk

Créez un fichier *.bat à côté de votre service Windows fichier exe pour l'installation avec le contexte suivant:

CLS
ECHO Installing My Windows Service 

START %windir%\Microsoft.NET\Framework\v4.0.30319\installutil.exe "%~d0%~p0\YourWindowsServiceExeName.exe"

Créez un fichier *.bat à côté de votre service Windows fichier exe pour la désinstallation avec le contexte suivant:

CLS
ECHO Uninstalling My Windows Service 

START %windir%\Microsoft.NET\Framework\v4.0.30319\installutil.exe -u "%~d0%~p0\YourWindowsServiceExeName.exe"

Exécutez chaque fichier bat en tant qu’administrateur pour installer ou désinstaller votre service Windows.

2
Mohammad Dayyan
  1. Exécutez l'invite de commande Windows en tant que Administrateur
  2. coller ce code: cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\ pour aller au dossier
  3. éditez et lancez aussi ceci: installutil C:\ProjectFolder\bin\Debug\MyProject.exe

Remarque: Pour désinstaller: installutil /u C:\ProjectFolder\bin\Debug\MyProject.exe

2
Oguzhan KIRCALI
  1. lancez la commande Invite (CMD) avec les droits d’administrateur.
  2. Tapez c:\windows\Microsoft.net\framework\v4.0.30319\installutil.exe [votre chemin de service Windows à exe]
  3. Retour presse
1
what server

Suivez les étapes lors du déploiement du service Windows, ne perdez pas de temps

1- Exécuter l'invite de commande par le droit administrateur

2- S'assurer du mode release lors de la compilation dans votre IDE

3- Donnez un type à votre installateur de projet en mode conception

4- Sélectionnez le type d’authentification selon le cas

5- S'assurer des dépendances logicielles: Si vous utilisez un certificat, installez-le correctement

6- Allez votre console écrivez ceci:

C:\Windows\Microsoft.NET\Framework\yourRecentVersion\installutil.exe c:\yourservice.exe

il y a un argument -i caché avant le chemin exe -i c:\ vous pouvez utiliser -u pour la désinstallation

7- Regardez votre chemin d'accès .exe pour sembler fichier journal. Vous pouvez utiliser l'observateur d'événements pour observer dans la fonctionnalité

1
Hamit YILDIRIM

le code suivant, installez et désinstallez le service, 

Ouvrez le invite de commande et exécutez le programme en tant qu'administrateur, lancez la commande ci-dessous et appuyez sur Entrée.

Syntaxe

À installer

C:\windows\Microsoft.net\framework\v4.0.30319>InstallUtil.exe + Your copied path + \your service name + .exe

par exemple: notre chemin InstallUtil.exe C:\MyFirstService\bin\Debug\MyFirstService.exe

Pour désinstaller

 C:\windows\Microsoft.net\framework\v4.0.30319>InstallUtil.exe -u + Your copied path + \your service name + .exe

par exemple: notre chemin InstallUtil.exe -u C:\MyFirstService\bin\Debug\MyFirstService.exe

pour plus d'aide, vous pouvez voir le lien suivant: exemple de programme

1
Joji Thomas Eapen

lorsque votre version d’Assembly et votre projet Visual studio définissant Biuld sur Dot Net 2 ou 4 s’installent avec la même version.

installer le service avec installutil cette même version

si construit en dot net 4

Tapez c:\windows\Microsoft.net\framework\v4.0.30319\installutil.exe

si construit en dot net 2

Tapez c:\windows\Microsoft.net\framework\v2.0.11319\installutil.exe

Ouvrez Visual studio et sélectionnez un nouveau projet en sélectionnant Windows Service template dans l'onglet Windows Desktop. Ensuite, copiez le code suivant dans votre fichier service_name.cs.

using System.Diagnostics;
using System.ServiceProcess;
namespace TimerService
{
    public partial class Timer_Service : ServiceBase
    {
        public Timer_Service()
        {
            InitializeComponent();
        }
        static void Main()
        {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                Timer_Service service = new Timer_Service();
                service.OnStart(null);
            }
            else
            {
                ServiceBase[] ServicesToRun;
                ServicesToRun = new ServiceBase[]
                {
                    new Timer_Service()
                };
                ServiceBase.Run(ServicesToRun);
            }
        }
        protected override void OnStart(string[] args)
        {
            EventLog.WriteEvent("Timer_Service", new EventInstance(0, 0, EventLogEntryType.Information), new string[] { "Service start successfully." });
        }
        protected override void OnStop()
        {            
            EventLog.WriteEvent("Timer_Service", new EventInstance(0, 0, EventLogEntryType.Information), new string[] { "Service stop successfully." });
        }
    }
}

Cliquez avec le bouton droit sur le fichier service_name.cs et ouvrez le concepteur de service. que de faire un clic droit et sélectionnez Add Installer. Cliquez avec le bouton droit sur serviceProcessInstaller1 et modifiez sa valeur de propriété de Account de User à Local System.

Supprimez la méthode static void main du fichier Program.cs . Ensuite, enregistrez et construisez votre projet.

NOTE: goto bin\Ddebug du dossier de votre projet. Puis ouvrez Propriétés de votre fichier service_name.exe. Than goto Compatibility tab. Puis cliquez sur Change Settings For All Users.

Sélectionnez l'option Run this program as an administrator.

Maintenant, vous devez ouvrir CommandPromt en tant qu’administrateur . Après l’ouverture, définissez le répertoire dans lequel votre fichier InstallUtil.exe est placé . Pour ex: C:\Windows\Microsoft.NET\Framework64\v4.0.30319. Écrivez maintenant la commande suivante:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>InstallUtil.exe -i C:\TimerService\TimerService\bin\Debug\TimerService.exe

Remarque: -i est pour installer le service et -u pour Unsinstall.

after -i définit l'écriture du chemin où vous voulez installer votre service.

écrivez maintenant la commande dans CommandPromt comme suit:

C:\TimerService\TimerService\bin\Debug>net start service_name

Remarque: utilisez stop pour arrêter le service.

Maintenant, ouvrez ViewEventLog.exe. Sélectionnez Journaux Windows> Application. Là, vous pouvez consulter le journal de votre service en démarrant et en arrêtant le service.

0
Karan Raiyani