web-dev-qa-db-fra.com

Comment créer un programme d'installation robuste et minimal pour Windows?

Je veux créer un fichier EXE d'installation avec certaines propriétés spécifiques:

  1. ce devrait être un seul fichier exe
  2. il doit être robuste (c'est-à-dire que la technique doit être connue pour bien fonctionner sur tout système Windows)
  3. il ne doit créer qu'un seul fichier (un fichier d'écran .scn) dans% systemroot%
  4. il devrait ajouter l'option permettant de désinstaller ce fichier particulier dans "Panneau de configuration -> Ajout/Suppression de programmes" mais sans créer de nouvelle entrée C:\Program Files ni copier un uninstaller.exe quelque part.

J'ai vu des installateurs qui fonctionnent comme ça - alors, comment faire ça?

36
Mat

Comme vous l'avez dit, il peut s'agir d'un MSI, je vous suggère de suivre cette voie.

Vous pouvez jouer avec les projets d’installateurs dans Visual Studio (si vous en avez, je ne sais pas si les éditions Express prennent en charge l’installation d’installateurs), car elles produiront avec plaisir un MSI qui fera ce que vous demandez. Il convient de noter qu’ils produiront un fichier EXE et un fichier MSI. Il vous suffira cependant de distribuer le fichier MSI.

Sinon, jetez un coup d'œil à Windows Installer XML (WiX) , car cela vous permettra de sculpter à la main un MSI qui fait exactement ce que vous voulez et qui répond aux cinq points ci-dessus.

Remarque: L'utilisation d'un fichier MSI signifie que Windows Installer doit être installé sur la machine sur laquelle vous effectuez l'installation. Il est disponible à partir de Windows 2000/ME.

21
Rob

Jetez un oeil à NSIS c'est assez simple et il est utilisé pour créer des installateurs pour Windows.

27
Otávio Décio

J'ai entendu de bonnes choses sur l'installateur gratuit Innosetup , et le site Web indique qu'il peut créer des installations EXE uniques.

11
MarkJ

Essayez Advanced Installer , Je pense qu’il peut faire tout ce que vous demandez. Je l'utilise pour des installateurs légèrement plus complexes, mais la version gratuite est facile à utiliser et puissante.

Il peut y avoir un problème avec les fichiers MSI, les ordinateurs plus anciens n’ayant pas la dernière version de Windows Installer, 3.1, vous devez d’abord l’installer ou demander à l’utilisateur de le faire! Avez-vous envisagé d'utiliser IExpress si vous souhaitez simplement copier un fichier?

6
Martin

NSIS et Inno Setup s’acquittera de toutes les tâches spécifiées. Inno Setup utilise un langage de type Pascal pour ses scripts, NSIS utilise son propre langage de script.

2
justadreamer

Vous pouvez créer un seul fichier d'installation à l'aide de Visual Studio 2017 Pro et Windows en 3 étapes:

  1. Pour avoir une entrée dans Ajout/Suppression de programmes, vous devez avoir un projet d'installation
  2. Le projet d'installation peut compiler en 2 fichiers: * .msi et Setup.exe
  3. Pour créer un package à extraction automatique, vous pouvez utiliser l'outil IExpress
1
user8228677

J'exprime

Vous pouvez utiliser l'assistant d'installation intégré de Microsoft Windows appelé "Iexpress". Pour y accéder, ouvrez «Exécuter» en appuyant simultanément sur les touches Windows et R (WindowsKey + R). Lorsque vous entrez dans "Exécuter", tapez la petite boîte "iexpress.exe". Puis appuyez sur Entrée. Tu es là! 

Notes: Uniquement disponible sous Microsoft Windows (Legit et NonLegit)

Explication de la configuration:
Page 1
- Créez un fichier de directive d’auto-extraction.
Crée un nouveau fichier d'installation
- Créez un fichier de directive d’auto-extraction.
Édite un fichier .SED
Page 2 (Créer un fichier de directive d’auto-extraction.)
- Regardez dans la "Description" en bas
Page 3
- Titre du colis
Le nom de votre installateur, comme indiqué en haut
Page 4
- Invite de confirmation
Que dire à l'utilisateur avant d'installer
Page 5
- Accord de licence
Passer si vous ne savez pas ce que c'est
Page 6
- Fichiers emballés
Quels fichiers vous devez installer
Page 7
- Afficher la fenêtre Comment la fenêtre est affichée
Page 8
- affiché en haut page 9
- Noms et options des packages Où enregistrer votre fichier - Masquer le fichier en extrayant la progression de l'utilisateur Masque l'animation - Stocke le fichier en utilisant Nom long dans le programme d'installation Ignorer si vous ne savez pas ce que c'est Page 10
- affiché en haut
Vous avez terminé!
Cliquez sur le titre pour télécharger le fichier, sans suivre ces instructions. S'il s'agit d'un virus, s'il a été infecté ou si vous pensez qu'il s'agit d'un virus, n'hésitez pas à supprimer le fichier.

1
MineCMD

Les ne copiant pas un programme d'installation quelque part et ajoutant une entrée dans Ajouter/Supprimer semblent être contre-actifs. D'après ce que je comprends, les programmes add-remove font nécessairement référence à une copie du programme de désinstallation qui se trouve dans un répertoire Windows (afin de ne pas en perdre l'accès).

Vous pourriez peut-être utiliser l’écran de veille comme programme de désinstallation si vous lui transmettez une sorte d’option de ligne de commande. Ensuite, dites simplement au MSI que le programme de désinstallation IS est l’économiseur d’écran (d’où l’absence de copie inutile dans un autre répertoire.)

1
Ape-inago

NSIS est le chemin à parcourir, très simple à apprendre. Il vous suffit d'écrire un simple fichier spécifiant les fichiers à installer par-dessus. Vous pouvez également ajouter des options QuickLaunch et ainsi de suite. Ensuite, exécutez le compilateur NSIS et vous obtenez le fichier exe.

1
Nikhil

InstallShield a une option de version appelée "Single .EXE". Il peut regrouper la charge utile à l'intérieur, branchez le registre avec les programmes Ajout/Suppression de votre choix.

1
William Leara

NSIS, MSI n’importe quel installateur peut le faire pour vous. 

NSIS est assez petit et compact.

0
dr. evil

Si vous souhaitez utiliser des méthodes de déploiement standard avec votre programme d'installation, vous devez probablement rester à l'écart de NSIS. Voir http://unattended.sourceforge.net/installers.php pour un aperçu.

0
ko-dos