Chemin d’hôte x86 sur Windows 64 bits

Les versions x86 des programmes d’installation de .NET pour Windows ont été modifiées pour ne plus ajouter l’emplacement de l’hôte x86 (Program Files (x86)\dotnet) à la variable d’environnement PATH sur les systèmes Windows 64 bits.

Avec ce changement, si l’emplacement de l’hôte x86 a été ajouté à PATH par une version antérieure de .NET, les versions x86 des programmes d’installation .NET et des mises à jour .NET le suppriment lors de la mise à niveau.

Ce changement affecte .NET Core 3.1, .NET 6, .NET 7 et les versions ultérieures.

Ce changement affecte uniquement l’hôte dotnet. Il n’affecte pas les hôtes d’application 32 bits/x86, comme myapp.exe. Ces hôtes continuent de trouver correctement le runtime x86 (en supposant qu’il est installé).

Comportement précédent

L’emplacement de l’hôte x86 a été ajouté à PATH, même sur les systèmes x64/Arm64. Selon le programme d’installation de l’architecture .NET exécuté en premier, la machine d’un utilisateur peut avoir l’hôte natif (x64/Arm64) ou x86 qui apparaît en premier dans la liste PATH.

Nouveau comportement

À l’avenir, l’emplacement de l’hôte x86 est uniquement ajouté à la variable d’environnement PATH sur les systèmes x86, et sera supprimé lors de la mise à niveau de .NET ou de Visual Studio sur tous les systèmes x64 et arm64.

Version introduite

.NET 7

Raison du changement

Actuellement, l’emplacement de l’hôte x86 est ajouté à PATH, même sur les systèmes x64/Arm64. Selon le programme d’installation de l’architecture .NET exécuté en premier, la machine d’un utilisateur peut avoir l’hôte natif (x64/Arm64) ou l’hôte x86 comme premier emplacement dans la liste PATH. Cette ambiguïté entraîne des problèmes avec l’installation initiale de .NET et pendant les événements de maintenance .NET. N’importe lequel de ces scénarios d’installation peut modifier l’ordre des hôtes .NET dans PATH, ce qui le rend non déterministe. Il y a une grande chance de régression de comportement du runtime .NET.

Ce changement simplifie l’expérience de l’hôte dotnet sur les systèmes Windows 64 bits. Seuls les hôtes 64 bits sont disponibles dans la variable d’environnement PATH du système : l’hôte x64 sur les systèmes x64 et l’hôte Arm64 sur les systèmes Arm64. Nous avons supprimé l’ambiguïté de l’ordre des hôtes dotnet dans PATH, et un seul hôte est présent.

Si vous avez besoin de l’hôte x86 dans la variable d’environnement PATH sur les systèmes x64/Arm64, ajoutez manuellement l’emplacement de l’hôte dans PATH.

API affectées

Aucun.