9
votes

Comment installer un service Windows développé dans .NET 3.5?

J'ai développé un service Windows à l'aide de Visual Studio 2008. Je souhaite installer ce service dans une machine où Visual Studio n'est pas installé, mais .NET 3.5 est installé.

généralement installutil.exe doit être utilisé pour installer un service Windows, mais l'utilitaire d'installationTil.exe n'est pas disponible dans .NET 3.5. Lorsque j'ai essayé d'installer ce service à l'aide de .NET 2.0, le service s'affiche dans la liste des services, mais lors du démarrage du service Windows Service Error 1053 arrive. Comment pouvons-nous éviter ce problème et installer avec succès le service?


0 commentaires

4 Réponses :


4
votes

Il y a un Microsoft Ko sur ceci pour .NET 2.0 et VS2005. La procédure est exactement la même dans .NET 3.5 et VS2008.

http://support.microsoft.com/kb/317421

Et voici un article plus agréable avec des images pour le rendre plus clair. (Parfois, les KB ne sont pas aussi amicaux que des tutoriels que vous pouvez trouver ailleurs.)

http://aspalliance.com/1316_service_with_windows_service_utilisation_visual_studio_2005.3


2 commentaires

Lorsque VS est disponible sur la machine, il n'y a aucun problème à installer le service. Si VS n'est pas disponible comment nous pouvons installer le service développé dans .NET.NET3.5?


Le projet de configuration, lors de la construction, crée un installateur (fichier .msi). Copiez-le (et le setup.exe qui sera également dans le dossier de ce projet) à la machine que vous souhaitez l'installer et exécutez-la comme n'importe quel programme d'installation. Une chose à noter est que vous devrez peut-être avoir besoin de cliquer avec le bouton droit de la souris sur le projet de configuration et choisissez "Construire". Par défaut, les projets de configuration ne construisent pas lorsque vous choisissez "Build Solution". Cette défaillance gênante peut être remplacée dans le gestionnaire de configuration.



1
votes

Si vous utilisez installutil.exe pour installer votre service Windows, cela signifie que vous avez ajouté un composant ProjectInstaller à votre service. Toutes les installutil.exe utilisent la réflexion pour rechercher le composant d'installateur intégré à votre service et exécuter des méthodes dessus. Pour cela, vous pouvez modifier votre service Windows à installer et à désinstaller lui-même, Vous n'avez plus besoin de dépendre de l'installationTil.exe étant disponible sur la machine cible . J'utilise cela avec succès depuis plusieurs mois maintenant. Suivez simplement la belle étape que j'ai fournie Ici . L'idée appartient à l'origine à Marc Gravell et à ce POST . < / p>


0 commentaires

8
votes

C'est vraiment très simple que je viens de le faire il y a quelques jours pour quelque chose que j'ai fait.

Donc, dans votre projet de service, vous souhaitez:

  1. Dans l'explorateur de la solution double-cliquez sur votre fichier de services .cs. Il devrait apparaître un écran qui est tout gris et parle de glisser des trucs de la boîte à outils.
  2. Puis cliquez avec le bouton droit de la souris sur la zone grise et sélectionnez Ajouter un programme d'installation. Cela ajoutera un fichier de projet d'installateur à votre projet.
  3. Ensuite, vous aurez 2 composants sur la vue de conception du projetInstaller.cs (ServiceProcessinstaller1 et ServiceInstaller1). Vous devez ensuite configurer les propriétés dont vous avez besoin.

    Maintenant, vous devez faire un projet de configuration. La meilleure chose à faire est d'utiliser l'assistant d'installation.

    1. Faites un clic droit sur votre solution et ajoutez un nouveau projet: Ajouter> Nouveau projet> Projets de configuration et de déploiement> Assistant de configuration
    2. à la deuxième étape Sélectionnez "Créer une configuration pour une application Windows".
    3. à la 3ème étape, sélectionnez "Sortie principale de ..."
    4. Cliquez sur pour terminer.

      Maintenant, vous devez modifier votre installateur pour vous assurer que la sortie correcte est incluse.

      1. Cliquez avec le bouton droit de la souris sur le projet de configuration de votre Solution Explorateur.
      2. Sélectionnez Afficher> Editeur> Actions personnalisées.
      3. Cliquez avec le bouton droit de la souris sur l'action d'installation dans l'arborescence d'actions personnalisée et sélectionnez 'Ajouter une action personnalisée ...'
      4. Dans la boîte de dialogue "Sélectionner l'élément dans Project", sélectionnez Dossier d'application et cliquez sur OK.
      5. Cliquez sur OK pour sélectionner l'option "Sortie principale de ...". Un nouveau nœud devrait être créé.
      6. Répétez les étapes 4 - 5 pour les actions de commit, de restauration et de désinstallation.

        Il suffit de construire votre installateur et il produira un MSI et une SETUP.EXE. Choisissez que vous souhaitez utiliser pour déployer votre service.


0 commentaires

0
votes

Le message:

"Erreur 1053: Le service n'a pas répondu au démarrage ou au contrôle demande en temps opportun. "

est typiquement une réponse générique à un problème de démarrage du service Windows. Ce que vous devriez faire, c'est vérifier le journal des événements et vous trouverez probablement l'erreur réelle empêchant le service de départ.


0 commentaires