Question

J'ai un projet d'installation de Visual Studio que j'utilise pour installer une application WinForms assez simple.À la fin de l'installation, j'ai une page d'interface utilisateur personnalisée qui affiche une seule case à cocher qui demande à l'utilisateur s'il souhaite exécuter l'application.J'ai vu d'autres installateurs faire cela assez souvent.Mais je ne trouve pas de moyen pour que le projet d'installation exécute un exécutable une fois l'installation terminée.Une idée ?

NOTE:Vous ne pouvez pas utiliser d'actions personnalisées car elles sont utilisées dans le cadre du processus d'installation. Je souhaite exécuter mon application installée une fois que l'utilisateur appuie sur le bouton « Fermer » à la fin de l'installation.

Était-ce utile?

La solution

Je pense que c'est l'une des véritables limites du projet d'installation de Visual Studio.Vous devez pouvoir modifier la dernière page de l'interface utilisateur d'installation, mais VS.NET ne vous permet pas de le faire.Vous pouvez modifier les tables du .MSI après sa construction, mais VS.NET écraserait probablement ces modifications à chaque fois qu'il serait construit.Vous pourrez peut-être remplacer la dernière page à l'aide d'un module de fusion que vous incluez dans le projet d'installation.Quoi qu'il en soit, vous devrez vous familiariser avec la façon dont les boîtes de dialogue de l'interface utilisateur sont créées dans un .MSI et ce n'est pas anodin.

Vous voudrez peut-être envisager de passer à un programme d'installation gratuit basé sur un script ou d'acheter une application de création d'installation commerciale (n'achetez tout simplement pas InstallShield pour l'amour de Pete).Jetez un œil à InstallAware (même si je ne l'ai pas utilisé).

Autres conseils

Vous pouvez également utiliser des actions personnalisées

Je viens de trouver un moyen très simple qui ne nécessite pas d'outils externes.Il vous suffit d'ajouter un fichier de classe au projet principal et une action personnalisée au projet d'installation.

http://www.codeproject.com/KB/install/Installation.aspx

J'ai fait cela pour les applications internes en créant un harnais VB Script qui lance l'exécutable d'installation, attend sa fermeture, puis lance le deuxième programme.

Vous pouvez également accomplir cela avec un peu plus de peaufinage en utilisant quelques appels d'API Win dans un exécutable C.

Vous pouvez utiliser MSILAUNCH (même si je ne l'ai que pour fonctionner avec MSICREATE).

http://www.cornerhouse.ca/en/msi.html

Je l'ai réussi en appelant la méthode Main de l'assembly en utilisant la ligne suivante :

(typeof(ClassWithinAssemblyToExecute)).Assembly.EntryPoint.Invoke(null, new Object[] {} )

vous pouvez le faire par un installateur personnalisé.ajoutez simplement la classe d'installation et vous verrez de nombreux événements comme après l'installation, avant l'installation.connectez-vous simplement après l'installation et à partir de là, exécutez votre exe par classe de processus.je vous suggère de rechercher sur Google pour en savoir plus sur l'installateur personnalisé.voici un bon lien qui pourrait vous aider http://www.codeproject.com/Articles/19560/Launching-Your-Application-After-Install-using-Vis

merci

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top