Visual Studio Installer > Comment lancer L'application à la fin de L'installateur

c'est probablement une question stupide et mon Googling ne fonctionne pas aujourd'hui.

j'ai une application à laquelle j'ai ajouté un installateur Visual Studio > Setup Wizard project. Je me demande comment ajouter un bouton ou une case à cocher qui devrait lancer l'application après installation réussie. Ceci serait situé sur la dernière page du paquet de L'installateur MSI. Je suis à l'aide de Visual Studio 2010 Ultimate.

j'en ai besoin pour que lorsque l'application fait une mise à jour automatique, il lance automatiquement l'installateur. J'ai juste besoin de l'installer pour relancer l'application après la mise à jour.

c'est probablement très simple, mais pour ma vie, je ne peux pas le comprendre. Merci d'avance pour votre aide.

43
demandé sur ThaKidd KG5ORD 2010-07-03 00:01:36

5 réponses

pour exécuter n'importe quelle application après l'installation est complète,

  1. faites un clic droit sur votre projet d'installation, cliquez sur Actions personnalisées.
  2. puis cliquez avec le bouton droit de la souris sur Commit, ajoutez une action personnalisée et choisissez le fichier que vous souhaitez lancer. (Notez qu'il doit déjà être dans votre dossier d'application, ce qui ne devrait pas être un problème dans votre cas puisque vous exécutez votre programme de toute façon.
  3. il suffit de choisir la sortie de votre projet.
  4. ensuite, cliquez sur ce qui a été ajouté .exe, et changez InstallerClass En false. C'est crucial, car il va chercher un programme d'installation autrement.
  5. vous pourriez même passer des paramètres à votre .exe en les ajoutant à la propriété Arguments
82
répondu sbenderli 2017-02-10 08:27:25

dans Visual Studio 2010 ici, c'est facile...

Step1: ajouter une nouvelle classe d'installateur au projet d'application que vous souhaitez exécuter après l'installation, appelez-le comme vous voulez.

Step2: ajouter le code suivant à la classe Installer vous venez d'ajouter replcaing MyApplication.exe avec le nom de la vôtre.

Public Overrides Sub Commit(ByVal savedState As System.Collections.IDictionary)

    MyBase.Commit(savedState)
    System.Diagnostics.Process.Start(System.IO.Path.GetDirectoryName(Me.Context.Parameters("AssemblyPath")) + "\MyApplication.exe")

End Sub

compilez et partez...

7
répondu Jarrod 2013-03-14 16:05:32

essayez de vérifier ce billet de blog: http://blogs.msdn.com/b/astebner/archive/2006/08/12/696833.aspx

Je ne peux pas certifier si cela fonctionne pour 2010 ou Non; Je suis toujours bloqué en utilisant 2008 jusqu'à ce que mon serveur TFS soit mis à jour. En outre, J'utilise WiX pour mes installateurs. Mais, c'est juste une action personnalisée, donc je pense qu'elle devrait encore être supportée.

Espérons que cette aide!

(soit dit en passant, tout en m'entraînant à trouvez votre question était apparaître sur la première page de Google pour cette question.)

3
répondu fire.eagle 2010-07-02 20:55:08

dans mon cas, je me suis battu avec cela pendant un certain temps et la solution était juste là. La solution fournie en utilisant l'action personnalisée directement à la sortie primaire de l'application n'était pas bonne pour moi, puisque l'application d'installation reste jusqu'à ce que vous quittiez l'application principale. Ainsi, le problème pourrait être résolu en utilisant la prochaine approche:

  1. ajouter une classe D'installation à votre projet;
  2. dans la nouvelle classe, outrepasser la méthode de propagation, comme Jarrod a parlé au-dessus de .

    System.Diagnostics.Process.Start(System.IO.Path.GetDirectoryName(this.Context.Parameters["AssemblyPath"]) + @"\MyApplication.exe") ;

  3. maintenant l'astuce: allez dans le volet" Actions personnalisées "du projet D'installateur et ajoutez la sortie principale de votre projet aux dossiers" Commit "et" Install". Ne changez rien dans les propriétés. Il va travailler comme ça. Par défaut, il obtiendra la classe installer où vous avez inséré le code, au point précédent;
  4. Construisez votre paquet d'installation et de l'installer. Vous devriez noter que l'application va commencer à la fin;
  5. il suffit de fermer l'avertissement d'installation réussie et allez-y.

pour en savoir plus à ce sujet et où je l'ai eu, s'il vous plaît visitez ce .

PS.: Je l'ai fait en utilisant VS2017 et Framework 2.0.

3
répondu Artur Gomes 2017-05-23 11:55:19

ajout d'une autre réponse parce qu'aucune des réponses précédentes n'aborde la case à cocher ou la question sur le bouton dans le message original.

vous ajouteriez une boîte de dialogue à votre projet d'installation, quelque chose comme des cases à cocher(A) en cliquant avec le bouton Démarrer dans la vue de L'Interface utilisateur. Cliquez-droit sur la boîte de dialogue ajouter pour le déplacer vers le haut. Vous n'avez besoin que d'une case à cocher pour la question à poser sur l'exécution du programme afin d'éliminer les autres. Le nom de la propriété par défaut est CHECKBOXA1, donc ajouter une condition à l'action personnalisée qui déclenche votre code CHECKBOXA1=1 ce qui signifie qu'il a été vérifié.

0
répondu PhilDW 2015-12-06 21:27:20