2010-02-12 6 views
50

J'ai créé une application (C#, Windows Forms) sur Visual Studio 2008, et maintenant je veux faire l'installateur de cette application. Comment cela peut-il être fait?Comment créer un programme d'installation pour mon application C#?

Je veux que mon installateur

  • Copiez tous les fichiers que ma demande utilise un chemin choisi utilisateur (copier les fichiers élus, certains pour l'application côté serveur et certains pour le côté client).
  • installer également .NET 3.5
  • Vérifier SQL Server ou SQL Server Express Edition

Comment puis-je faire?

Répondre

59
  1. Ajoutez un nouveau projet d'installation à votre solution.
  2. Ajoutez des cibles de tous les projets que vous souhaitez installer.
  3. Configurez les pré-requis et choisissez l'option "Check for .NET 3.5 et SQL Express". Choisissez l'emplacement à partir duquel les composants manquants doivent être installés.
  4. Configurez les paramètres de votre installateur - nom de la société, version, copyright, etc.
  5. Créez et partez!
+0

Est-ce que cela permettra la fonctionnalité MSI? On dirait que c'est nécessaire - "copier les fichiers au choix ..." peut-être vous pouvez vous en sortir avec 2 installateurs différents? mais si le projet d'installation ne fournit pas de fonctionnalités, utilisez wix. – si618

+0

Si vous avez besoin d'une logique d'installation spécifique, vous pouvez écrire du code (et ajouter vos propres formulaires) qui fera le travail dont vous avez besoin. – sashaeve

+0

"Ajouter des cibles de tous les projets que vous souhaitez installer." comment l'homme .. je ne sais rien à ce sujet ... – Moon

11

D'une manière générale, il est recommandé d'utiliser des installations MSI sous Windows. Donc, si vous êtes prêt à investir un peu de temps, WiX est le chemin à parcourir.

Si vous voulez quelque chose qui est beaucoup plus simple, passez à InnoSetup.

8

Il existe plusieurs méthodes, dont deux sont les suivantes. Fournissez un programme d'installation personnalisé ou un projet d'installation.

Voici comment créer un programme d'installation personnalisé

[RunInstaller(true)] 
public class MyInstaller : Installer 
{ 
    public HelloInstaller() 
     : base() 
    { 
    } 

    public override void Commit(IDictionary mySavedState) 
    { 
     base.Commit(mySavedState); 
     System.IO.File.CreateText("Commit.txt"); 
    } 

    public override void Install(IDictionary stateSaver) 
    { 
     base.Install(stateSaver); 
     System.IO.File.CreateText("Install.txt"); 
    } 

    public override void Uninstall(IDictionary savedState) 
    { 
     base.Uninstall(savedState); 
     File.Delete("Commit.txt"); 
     File.Delete("Install.txt"); 
    } 

    public override void Rollback(IDictionary savedState) 
    { 
     base.Rollback(savedState); 
     File.Delete("Install.txt"); 
    } 
} 

Pour ajouter un projet d'installation

  • Menu fichier ->New ->Projet - ->Autres types de projets ->Configuration et déploiement

  • Définir les propriétés du projet, en utilisant la fenêtre des propriétés

L'article How to create a Setup package by using Visual Studio .NET fournit les détails.

+0

comment voulez-vous exécuter ce code lorsque .NET 3.5 va être installé dans votre insaller – Moon

+0

@Moon vous pourriez dire dans la description du programme qu'il a requis .NET XY – WiiMaxx

3

Pourquoi inventer vous-même des roues alors qu'il ya une voiture prête pour vous? Je trouve simplement ces outils super faciles et intuitifs à utiliser: Advanced Installer. Ce one minute video devrait être suffisant pour vous impressionner. Voici le illustrative user guide.

Questions connexes