Windows 用 .NET インストーラーの x86 バージョンが変更され、64 ビット Windows システムの環境変数に PATH) が追加されなくなりました。
この変更により、以前のバージョンの .NET によって x86 ホストの場所が PATH に追加された場合、アップグレード時に x86 バージョンの .NET インストーラーと .NET 更新プログラムによって削除されます。
この変更は、.NET Core 3.1、.NET 6、.NET 7、および将来のバージョンに影響します。
この変更は、 dotnet ホストにのみ影響します。
myapp.exeなど、32 ビット/x86 アプリケーション ホストには影響しません。 これらのホストは、x86 ランタイムが正しく検出され続けます (インストールされている場合)。
以前の動作
x86 ホストの場所は、x64/Arm64 システムでも、 PATHに追加されました。 最初に実行された .NET アーキテクチャ インストーラーによっては、ユーザーのコンピューターにネイティブ (x64/Arm64) または x86 ホストが最初に一覧表示 PATH。
新しい動作
今後、x86 ホストの場所は x86 システムの PATH 環境変数にのみ追加され、x64 および arm64 システムの .NET または Visual Studio のアップグレード時に削除されます。
導入されたバージョン
.NET 7
変更の理由
現在、x86 ホストの場所は、x64/Arm64 システムでも、 PATHに追加されます。 最初に実行される .NET アーキテクチャ インストーラーに応じて、ユーザーのコンピューターはネイティブ (x64/Arm64) または x86 ホストを PATH リストの最初の場所として持つことができます。 このあいまいさが原因で、.NET の初回インストール時および .NET サービス イベント中に問題が発生します。 これらのインストール シナリオでは、 PATH内の .NET ホストの順序を変更できるため、決定論的ではありません。 .NET ランタイムの動作回帰の可能性が高くなります。
この変更により、Windows 64 ビット システムでの dotnet ホスト エクスペリエンスが効率化されます。 システムの PATH 環境変数では、x64 システムの x64 ホストと Arm64 システムの Arm64 ホストの 64 ビット ホストのみが使用できます。
dotnet内のPATHホストの順序であいまいさが削除され、1 つのホストのみが存在します。
推奨されるアクション
x64/Arm64 システムの PATH 環境変数に x86 ホストが必要な場合は、ホストの場所を手動で PATH に追加します。
影響を受ける API
なし。
.NET