64 位 Windows 上的 x86 主机路径

适用于 Windows 的 x86 版本的 .NET 安装程序已修改为不再将 x86 主机位置 (Program Files (x86)\dotnet) 添加到 64 位 Windows 系统上的 PATH 环境变量中。

实施此更改后,如果 x86 主机位置由以前版本的 .NET 添加到 PATH,则 x86 版本的 .NET 安装程序和 .NET 更新将在升级时将其删除。

此更改会影响 .NET Core 3.1、.NET 6、.NET 7 和未来版本。

此更改仅影响 dotnet 主机。 它不会影响 32 位/x86 应用程序主机,如 myapp.exe。 这些主机还能像继续正确地找到 x86 运行时(假设已安装)。

旧行为

x86 主机位置已添加到 PATH,即使在 x64/Arm64 系统上也是如此。 根据首先运行的 .NET 体系结构安装程序,用户的计算机可能会在 PATH 中首先列出本机 (x64/Arm64) 或 x86 主机。

新行为

今后,x86 主机位置仅添加到 x86 系统上的 PATH 环境变量中,并且将在升级任何 x64 和 arm64 系统上的 .NET 或 Visual Studio 时删除。

引入的版本

.NET 7

更改原因

目前,x86 主机位置已添加到 PATH,即使在 x64/Arm64 系统上也是如此。 根据首先运行的 .NET 体系结构安装程序,用户的计算机可能会在将本机 (x64/Arm64) 或 x86 主机置于 PATH 列表的首位。 此不定性会导致初始 .NET 安装和 .NET 服务事件期间出现问题。 这些安装方案中的任何一种都可以修改 .NET 主机在 PATH 中的顺序,使其具有不确定性。 .NET 运行时行为回归的可能性很高。

此更改简化了 Windows 64 位系统上的 dotnet 主机体验。 系统的 PATH 环境变量中仅提供 64 位主机:x64 主机(x64 系统)和 Arm64 主机(Arm64 系统)。 我们消除了 dotnetPATH 主机顺序的不定性,将仅存在一个主机。

如果需要 x64/Arm64 系统上 PATH 环境变量中的 x86 主机,请将主机位置手动添加到 PATH

受影响的 API

无。