2010-11-10 8 views
1

Je viens de créer un nouveau service Windows et j'ai des problèmes avec le programme d'installation.VS 2008 Windows Service Installer ne fonctionne pas

J'ai créé le programme d'installation via ce tutoriel: http://www.sarin.mobi/2008/08/c-windows-service-visual-studio-2008/

Quoi qu'il en soit, quand je lance le .msi généré par VS, l'exécutable pour ce projet est installé là où je pense que ce soit. Toutefois, le service n'apparaît pas dans les services Windows. Lorsque j'utilise l'outil de ligne de commande VS et installutil, tout fonctionne correctement.

J'ai créé des services dans le passé, j'ai donc comparé les fichiers ProjectInstaller et la configuration du programme d'installation avec des projets antérieurs et je ne vois aucune différence significative.

Un conseil?

+0

Je ne pense pas que ce tutoriel est correct, le programme d'installation générique ne fera que copier les fichiers, vous devrez toujours exécuter le installutil après la copie des fichiers. – CodingGorilla

+0

Ensuite, je suppose que ma question est, comment puis-je dire à l'installateur d'exécuter installutil dans le cadre du processus? –

+0

Avoir fait cela avant, mais cela fait un moment ... laissez-moi voir si je peux arriver à quelque chose –

Répondre

4

Pour installer un service, vous devez ajouter un ServiceInstaller et un ServiceProcessInstaller au projet de service, puis ajouter des actions personnalisées au programme d'installation pour les exécuter. Je suis à peu près sûr que c'est la partie des actions personnalisées qui vous manque.

  1. Créer un nouveau projet de service Windows
  2. Double-cliquez sur le fichier .svc pour ouvrir le concepteur.
  3. Faites un clic droit sur la surface de conception et choisissez 'Créer un installateur'. Cela va créer un de chaque.
  4. Définissez les propriétés ... accessoires clés sont les suivants:
    • ServiceInstaller: Nom et Type de démarrage
    • ServiceProcessInstaller: compte à courir sous.
  5. Créez votre projet d'installation
  6. Faites un clic droit sur le projet d'installation et choisissez Ajouter -> Sortie de projet
  7. Choisissez le projet de service de la liste déroulante et choisissez « Sortie primaire »
  8. Faites un clic droit sur le projet d'installation et choisissez Affichage -> Actions personnalisées
  9. Faites un clic droit sur l'arbre des actions personnalisées qui apparaît et choisissez Ajouter une action personnalisée
  10. Pick « dossier d'application »
  11. Sélectionnez 'Sortie primaire du service'
  12. Cliquez sur 'OK'. Quatre actions seront ajoutées, une sous chaque action d'installation

Maintenant, lorsque vous construisez le programme d'installation et que vous l'exécutez, les programmes d'installation que vous avez créés à l'étape 3 seront exécutés, en ajoutant votre service et en définissant toutes les propriétés.

HTH,
James

+0

Merci monsieur. J'ai laissé de côté les étapes 8-12. –

+0

Content de vous aider, merci pour le vote:) –

0

Instructions étape par étape pour la création d'un service Windows en C# en utilisant peut être trouvé Visual Studio 2008 here. Cela inclut l'ajout des installateurs nécessaires pour installer le service à l'aide de l'utilitaire InstallUtil.exe.

Si vous souhaitez que votre service s'installe via la ligne de commande, reportez-vous aux instructions pas à pas here.

Questions connexes