2010-12-13 67 views
0

Cela peut être une évidence pour la plupart des utilisateurs, mais j'ai du mal à le voir ou à comprendre comment le faire.Exécuter la commande sur la validation dans le programme d'installation de Windows Project

J'ai un projet d'installation dans Visual Studio. Le projet installe un service Windows, mais j'ai besoin de lancer un utilitaire de configuration avant le démarrage du service.

J'ai traité le bit de configuration dans la méthode onStart() du projet de service, mais je n'arrive pas à comprendre comment démarrer le service une fois le programme d'installation terminé.

Existe-t-il un moyen d'émettre une commande système, telle qu'un NET START, une fois l'installation terminée avec succès?

Répondre

1

Vous pourriez vouloir reconsidérer en utilisant le projet d'installation il est très limité dans la capacité et Microsoft a annoncé qu'il ne sera pas disponible dans les futures versions de Visual Studio.

J'ai deux suggestions si vous voulez le meilleur installateur possible:

1) Reconsidérer en utilisant l'action personnalisée InstallUtil pour créer et démarrer votre service. Windows Installer le prend en charge de manière native. La seule raison pour laquelle vous êtes obligé d'utiliser l'action personnalisée est que les projets d'installation Visual Studio n'exposent pas la fonctionnalité sous-jacente de MSI pour créer des services. Passer à un outil comme InstallShield 2010 Limited Edition de Windows Installer XML résoudrait ce problème.

2) Réorganisez votre service pour ne pas exiger l'exécution de la configuration avant son démarrage. Laissez-le entrer dans un état inactif jusqu'à ce que l'utilitaire de configuration soit exécuté et notifiez le service qu'il peut maintenant commencer le traitement. Placez l'utilitaire dans le menu Démarrer et/ou exécutez-le à la fin de l'installation.

+0

Je pense que je vais me pencher sur l'utilisation d'un autre programme d'installation, car il s'agit d'un projet pour une application qui sera déployée sur les clients, le client restant à installer et à configurer. Si l'utilitaire de configuration n'est pas utilisé, la probabilité que le client termine réellement le processus est assez limitée. – Skudd

+0

J'ai fini par aller avec NSIS pour ça. C'est un peu difficile à démarrer, mais je pense que ça marchera très bien pour ce projet. Merci de m'avoir informé de la faiblesse d'un projet d'installation! – Skudd