Créer une Action Personnalisée pour Démarrer l'Application et Quitter le programme d'installation
Grâce à StackOverflow, je l'ai découvert hier comment ajouter une action personnalisée pour Visual Studio Installer pour démarrer mon programme après une mise à jour. Le problème que j'ai maintenant est qu'à la fin de l'installation, le programme n'est ouvert, mais le programme d'installation ne se termine jamais jusqu'à ce que je quitte mon application.
Est-il un moyen de s'assurer de l'application ne démarre qu'une fois que l'utilisateur clique sur terminer sur le package MSI?
Ou le programme commence à l'arrivée de l'installer mais le programme d'installation se termine et les sorties?
Je suis en cours d'exécution Visual Studio 2010 en cas de questions.
Question initiale de référence: stackoverflow.com/questions/3168782/...
BTW j'ai rencontré ce problème en essayant de rôle mon propre programme de mise à jour. Dans le cas où vous souhaitez faire de même, consultez ce lien: themech.net/2008/09/...
OriginalL'auteur ThaKidd KG5ORD | 2010-07-03
Vous devez vous connecter pour publier un commentaire.
Après quelques recherches sur Google, j'ai trouvé que l'action personnalisée pour Visual Studio Installer pourriez avoir besoin de point pour un Installateur de Classe. J'ai donc créé un nouveau projet de type class dans ma solution. J'ai supprimé la classe1.cs fichier et l'ajout d'une classe d'installation pour le nouveau projet avec le code suivant (note mentale: besoin de sécurité.des autorisations à un certain point):
Après la InstallerClass a été ajouté, j'ai cliqué avec le bouton droit sur le projet de l'installateur et sélectionné Ajouter > Projet de Sortie et ajout de la classe d'installation. J'ai ensuite cliqué avec le bouton droit sur le projet installé et n'a View > Action Personnalisée. J'ai ajouté à la classe d'installation à la fois de l'Installer et de Commettre des dossiers (si vous ne l'ajouter à Engager, vous obtiendrez un message d'Erreur 1001: impossible de trouver le fichier InstallState. en raison de la remplacer commettre, il ne fonctionnera que sur les commettre. apparemment InstallState est créé à l'étape 2 si si elle n'est pas dans les deux, il échouera lamentablement).
Vous devez ajouter un CustomActionData entrée. Pour ce faire, sélectionnez l'option "Sortie Principale de InstallerClass" et accédez à la Properites onglet. Collez le texte suivant dans CustomActionData:
Après qui a été ajouté à l'application s'exécute correctement lors de l'installation de finitions et vous pouvez fermer le programme d'installation au lieu d'attendre sur l'application à quitter!
Juste ce dont j'avais besoin. Merci Google pour l'enregistrement de mon bacon.
Le seul problème que j'ai remarqué, c'est le programme d'installation crée maintenant plusieurs .fichiers tmp et un .InstallState fichier dans mon ApplicationFolder. Je me demande si il y a quelque chose en plus qui doit être ajouté à la classe d'installation pour se débarrasser de ces fichiers inutiles?
Compris comment se débarrasser des fichiers temporaires. Code mis à jour avec Dispose().
merci beaucoup de temps!
InstallProject > clic Droit > Ajouter un Projet de Sortie > Choisir le Projet à partir de la liste Déroulante > Choisissez Principal de Sortie > OK. Afficher | CustomActions > à Droite, Cliquez sur Install > Ajouter une Action Personnalisée > Double-Cliquez sur le Dossier de l'Application > Choisissez " la production primaire de {CustomActionprojectname} (Actif)"
OriginalL'auteur ThaKidd KG5ORD
J'ai suivi les instructions ici:
http://msdn.microsoft.com/en-us/library/d9k65z2d.aspx
..Et a obtenu le "Erreur 1001: impossible de trouver le fichier InstallState" erreur.
Après la lecture de ThaKidd la réponse ci-dessus, j'ai réalisé qu'il me faudrait:
Ajouter le programme d'installation de la classe à la fois de l'Installer et de Commettre des dossiers.
Vraiment important. Juste laisser ça ici pour les futurs visiteurs (j'aurais ajouté un commentaire si DONC, m'a permis de...)
OriginalL'auteur yarone