web-dev-qa-db-fra.com

Comment ajouter les prérequis du framework .Net pour l'installation, l'installation

J'ai un projet C # WinForms dans MS Visual Studio 2017 . J'ai ajouté un programme d'installation de Visual Studio Wizard Projet pour créer un programme d'installation pour mon application. C'est la première fois que j'utilise un projet d'installation.

Le programme d'installation remplit correctement les conditions préalables pour .Net Framework 4.5.1. Cependant, je souhaiterais que le programme d'installation inclue l'installation du framework .Net au lieu de demander à l'utilisateur de le télécharger et de l'installer séparément au moment de l'installation (certaines machines des utilisateurs ne disposent pas de connexion Internet).

J'ai déjà défini les conditions préalables sur "Télécharger les conditions préalables du même emplacement que mon application" dans les pages de propriétés de l'installation, mais lorsque je crée l'installation, 3 erreurs se produisent, comme suit:

ERREUR: pour activer 'Télécharger les conditions préalables au même emplacement que mon application' dans la boîte de dialogue Conditions préalables, vous devez télécharger le fichier 'DotNetFX461\NDP461-KB3102436-x86-xOS-ENU.exe' pour l'élément 'Microsoft .NET Framework 4.6. .1 (x86 et x64) 'sur votre ordinateur local. Pour plus d'informations, voir http://go.Microsoft.com/fwlink/?LinkId=616018 .

Le lien inclus n’aide pas vraiment car il fait référence aux installations ClickOnce. J'ai aile fichier NDP461 mentionné, mais je ne sais pas où le mettre. Je vois d'autres questions mentionnant la création d'un paquet d'amorçage à l'aide du gestionnaire de paquets MS Bootstrapper, mais cela semble avoir disparu d'Internet avec la fermeture de MS. de code.msdn.Microsoft, avec apparemment, aucune information sur un remplacement . En outre, la plupart des questions de documentation et SO que je peux trouver à ce sujet concernent des versions plus anciennes de MSVS et ne font pas de corrélation. (du moins pas directement pour moi!) à MSVS 2017.

Comment puis-je obtenir réellement le projet d'installation pour trouver le fichier exe? Dois-je simplement le placer au bon endroit (j'ai déjà essayé quelques-uns qui figuraient sur différentes pages MSDN et sous des clés de registre)? Ou dois-je créer un package d'amorçage? Dans ce dernier cas, existe-t-il une documentation à jour sur ce processus quelque part? Merci!

PS: Le processus serait-il plus facile si je préférais utiliser le framework .Net (plus récent) déjà installé sur ma machine de développement? (Je suppose qu'il pourrait y avoir des informations d'installation pour cela déjà sur la machine quelque part)

Update J'ai donc essayé de cibler .NET 4.6 à la place, j'ai téléchargé NDP46-KB3045557-x86-x64-AllOS-ENU.exe et l'ai placé dans le répertoire C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX46. Le projet de configuration du programme d’installation est à présent construit mais donne l’avertissement suivant (à nouveau, 3 d’entre eux):

AVERTISSEMENT: la valeur de l'attribut 'PublicKey' dans 'Microsoft .NET Framework 4.6 (x86 et x64)' ne correspond pas à celle du fichier 'C:\Program Files (x86)\Microsoft SDK\ClickOnce Bootstrapper\Packages\DotNetFX46\NDP46 -KB3045557-x86-x64-AllOS-ENU.exe '.

Je suppose que cela signifie que je suis passupposé le faire de cette façon?

8
Toby

Il suffit de télécharger NDP461-KB3102436-x86-x64-AllOS-FRA.exe Fichier de Ce lien

et copier dans C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX461

14
Abolfazl Rastgou

Pour Microsoft Visual Studio 2017 le dossier correct pour ajouter les packages de démarrage est:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\

Les liens pour les différents packages .NET redistribuables peuvent être trouvés ici avec des informations sur différentes options de déploiement: https://docs.Microsoft.com/en-us/dotnet/framework/deployment/déploiement-guide-pour-développeurs

Les messages d'erreur vous indiquent les dossiers appropriés à ajouter au dossier des packages. Ainsi, le fichier NDP46-KB3045557-x86-x64-AllOS-ENU.exe doit être ajouté à un dossier "DotNetFX46" sous Packages.

Je ne comprends vraiment pas pourquoi Microsoft n'a pas pris les mesures nécessaires pour en faire un processus automatisé ou au moins fournir un guide étape par étape expliquant comment ajouter les packages d'amorçage à différentes versions de Visual Studio. La procédure et les dossiers ont changé plusieurs fois au fil des ans.

Cette erreur de clé publique est probablement due au fait qu'il existe au moins deux versions du fichier NDP46-KB3045557-x86-x64-AllOS-ENU.exe distribué avec le même nom de fichier, mais avec des clés publiques différentes. Vérifiez ce lien: https://connect.Microsoft.com/VisualStudio/feedback/details/1584164/bootstrapper-packages-have-broken-links-and-wrong-public-keys

2
prudentcoder

Pour moi (entreprise VS2017), le chemin correct est (pour 4.7.1) C:\Fichiers de programme (x86)\Microsoft SDK\ClickOnce Bootstrapper\Packages\DotNetFX471

espérons que cela aidera

Benoist LUGNIER

2
Benoist LUGNIER