Caminho do host x86 no Windows de 64-bit
As versões x86 dos instaladores do .NET para Windows foram modificadas para não adicionar mais o local do host x86 (Arquivos de Programas (x86)\dotnet) à PATH
variável de ambiente em sistemas Windows de 64-bit.
Com essa alteração, se o local do host x86 tiver sido adicionado a PATH
por uma versão anterior do .NET, as versões x86 dos instaladores do .NET e das atualizações do .NET o removerão na atualização.
Essa alteração afeta o .NET Core 3.1, .NET 6, .NET 7 e versões futuras.
Essa alteração afeta somente o host dotnet
. Ele não afeta hosts de aplicativo x86 de 32 bits, como myapp.exe. Esses hosts continuarão a encontrar o runtime x86 corretamente (supondo que ele esteja instalado).
Comportamento anterior
O local do host x86 foi adicionado a PATH
, mesmo nos sistemas x64/Arm64. Dependendo de qual instalador de arquitetura do .NET foi executado primeiro, o computador de um usuário pode ter o host nativo (x64/Arm64) ou x86 listado primeiro em PATH
.
Novo comportamento
Daqui para frente, o local do host x86 só é adicionado à variável de ambiente PATH
em sistemas x86 e será removido na atualização do .NET ou do Visual Studio em qualquer sistema x64 e arm64.
Versão introduzida
.NET 7
Motivo da alteração
Atualmente, o local do host x86 está adicionado a PATH
, mesmo nos sistemas x64/Arm64. Dependendo de qual instalador de arquitetura do .NET é executado primeiro, o computador de um usuário pode ter o host nativo (x64/Arm64) ou o host x86 como o primeiro local da lista PATH
. Essa ambiguidade causa problemas com a instalação inicial do .NET e durante eventos de manutenção do .NET. Qualquer um desses cenários de instalação pode modificar a ordem dos hosts NET em PATH
, tornando-a não determinística. Há uma grande chance de regressão de comportamento do runtime do .NET.
Essa alteração simplifica a experiência do host dotnet
em sistemas Windows de 64-bit. Somente hosts de 64-bit estarão disponíveis na variável de ambiente do sistema PATH
: o host x64 em sistemas x64 e o host Arm64 em sistemas Arm64. Removemos a ambiguidade na ordem dos hosts dotnet
e PATH
, e apenas um host estará presente.
Ação recomendada
Se você precisar do host x86 na variável de ambiente PATH
em sistemas x64/Arm64, adicione o local do host a PATH
manualmente.
APIs afetadas
Nenhum.