Je développe un service Windows sous VS2012 et la partie configuration/déploiement a été supprimée. Je ne peux donc pas créer de projet d'installation. J'aimerais savoir ce que vous pourriez recommander pour un bon installateur facile à utiliser. Je dois prendre quelques entrées, uniquement des chaînes, sous l'installation du service. Je me suis intéressé à WiX, mais cela me semble un peu complexe et je ne dispose que d’un ou deux jours pour réaliser cet installateur.
Alors, quel installateur devrais-je utiliser autre que Wix?
J'ai eu de très mauvaises expériences avec InstallShield LE (celui fourni avec Visual Studio 2012), en particulier pour Windows Services. Les fonctionnalités dont vous avez besoin pour installer un service (actions personnalisées, etc.) ne sont pas fournies avec la version allégée.
Ce que je prévois de faire pour le service Windows actuel sur lequel je travaille est de le construire avec Topshelf , ce qui signifie (entre autres) que l'installation de votre service est aussi simple que d'exécuter MyServiceApp.exe install
. Je suis certain que même InstallShield vous permettra d’exécuter votre application une fois qu’elle est installée, puis votre application/Topshelf pourra installer le composant de service.
Si InstallShield ne fonctionne pas pour vous, j’ai déjà obtenu de bons résultats avec NSIS . Documentation simple, puissante, gratuite et décente. On dirait un peu maladroit.
Voici une liste d'outils de configuration pouvant vous aider à démarrer: http://en.wikipedia.org/wiki/List_of_installation_software
Si vous n'avez pas beaucoup de temps pour créer le programme d'installation, je vous recommande d'utiliser un outil commercial comme Advanced Installer ou InstallShield. Vous avez besoin d'une licence, mais ils sont axés sur la convivialité (faire plus en moins de temps).
Vous pouvez le faire avec InstallShield LE ... Vous pouvez ajouter des actions personnalisées "Après l'enregistrement du produit" pour l'installation et pour "Après les modifications du système". Ces actions personnalisées peuvent exécuter un fichier EXE sur la machine.
Assurez-vous que vous exécutez les outils de ligne de commande "dans le contexte système".
Après avoir enregistré le produit, exécutez la version d’InstallUtil sur votre version de .NET Exemple: . Path = C:\Windows\Microsoft.NET\Framework\v4.0.30319 Command = InstallUtil.exe "C:\Fichiers de programme (x86)\XXX\YYY\ZZZ.exe " Remplaçant XXX YYY et ZZZ pour correspondre à votre installation
Après les modifications du système, pour supprimer votre nom de service, exécutez .__, par exemple. sc delete "nom_service"
Notez que vous avez besoin d'une assistance pour les actions personnalisées dans votre propre exécutable de service (vous en aviez aussi besoin dans les précédents VS).
Pour plus d'informations sur SC, cliquez ici: http://support.Microsoft.com/kb/251192