Question

J'ai créé un projet d'installation dans VS2008. Mon application WinForms utilise .NET 2.0. J'ai donc choisi .NET 2.0 Prerequisity et construit le projet d'installation.

Lorsque j'exécute mon fichier Setup.msi sur un ordinateur en mode minimal, il détecte correctement que le .NET est manquant et demande s'il doit être installé. Après une installation réussie de .NET, le programme d’installation se ferme simplement et ne continue pas avec l’installation de mon application (je pense que cela devrait être le cas).

Lorsque j'exécute le fichier MSI sur un PC sur lequel NET est déjà installé, mon application s'installe correctement.

Existe-t-il un moyen d'installer simultanément .NET 2.0 et mon application en une seule étape?

Était-ce utile?

La solution

Comment avez-vous installé le produit?

Le projet d'installation produira deux fichiers:

  • un package Windows Installer (.msi) et
  • un soi-disant bootstrapper (setup.exe)

Le programme d'amorçage vérifiera la présence de tout prérequis que vous avez spécifié et le téléchargera et l'installera éventuellement s'il n'est pas encore installé , puis poursuivra l'installation de votre application (en appelant le .msi. ). Par conséquent, vous devez toujours démarrer le fichier setup.exe pour installer votre application et non le fichier .msi (sauf si vous savez que tous les éléments requis sont sur le système cible).

Comme le dit Krakkos, le programme d’installation installera à la fois les conditions préalables et votre application (c’est-à-dire votre fichier .msi). Cependant, je ne connais aucun paramètre de configuration qui empêcherait le programme d'amorçage d'installer le fichier .msi.

Pour résoudre ce problème, vous pouvez créer un journal de votre installation et rechercher les problèmes éventuels dans le fichier journal.

Autres conseils

Merci Divo,

J'exécutais le fichier MSI.

Y at-il des limitations lors de l’exécution du fichier Setup.EXE? Si je me souviens bien, j'ai essayé une fois de l'exécuter sous Windows 2000 et cela ne fonctionnait pas. J'ai été en mesure d'exécuter uniquement le fichier MSI. Je vais vérifier sur un PC avec Win2000 propre et revenir.

EDIT: je l’ai essayé sous Windows 2000 SP4 et voici les résultats:

  • Setup.exe ne fonctionnera pas avec un message indiquant qu'il manque des informations HeapSetInformation dans Kernel32.dll
  • Setup.msi ne s'exécutera pas non plus (l'extension .msi est inconnue)

Ensuite, j'ai installé manuellement Windows Installer 3.1:

  • Setup.exe ne fonctionnera toujours pas avec le même message d'erreur
  • Setup.msi fonctionnera correctement (mais installera uniquement .NET sans mon application ... mon problème initial)

Sous Windows XP, le fichier Setup.exe s’exécute sans problème.

Il semble que les utilisateurs de Win2000 devront installer mon application manuellement en installant Windows Installer 3.1, .NET 2.0, puis mon application. Même si .NET est installé manuellement, Setup.exe affichera toujours le même message d'erreur sous Win2000 SP4.

EDIT: le problème Win 2000 peut être résolu en installant correctif cumulatif 1 pour Windows 2000 SP4 (KB891861) .

Cet épisode de Hanselminutes décrit en détail la façon dont Paint.Net est utilisé. organise le téléchargement & amp; installer le framework .NET requis à la demande et l'intégrer à l'installation de l'application. Certes, cela est probablement beaucoup plus complexe que la plupart des applications nécessitent, mais constitue néanmoins une discussion intéressante.

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