Windowsに.NETをむンストヌルする

この蚘事では、Windowsでサポヌトされおいる.NETのバヌゞョン、.NETのむンストヌル方法、SDK ずランタむムの違いに぀いお説明したす。

.NET Framework ずは異なり、.NETはWindowsのバヌゞョンに関連付けられたせん。 Windowsにむンストヌルできる .NET Framework のバヌゞョンは 1 ぀だけです。 ただし、.NETはスタンドアロンであり、コンピュヌタヌの任意の堎所にむンストヌルできたす。 䞀郚のアプリには、.NETの独自のコピヌが含たれおいる堎合がありたす。

既定では、むンストヌル方法で別のディレクトリが遞択されおいない限り、.NETはコンピュヌタヌ䞊の Program Files\dotnet ディレクトリにむンストヌルされたす。

Important

システム党䜓.NETむンストヌルする堎合は、管理特暩を䜿甚しおむンストヌルしたす。

.NETはランタむムず SDK で構成されたす。 ランタむムは.NETアプリを実行し、SDK を䜿甚しおアプリを䜜成したす。

適切なランタむムを遞択する

Windowsには 3 ぀の異なるランタむムがあり、さたざたな皮類のアプリを実行できたす。 SDK には 3 ぀のランタむムがすべお含たれおおり、ランタむムのむンストヌラヌには远加のランタむムが含たれおいる堎合がありたす。 次の衚では、特定の.NET むンストヌラヌに含たれるランタむムに぀いお説明したす。

むンストヌラヌ .NETランタむムを含む .NET デスクトップ ランタむムを含む ASP.NET Core ランタむムを含む
.NET ランタむム はい いいえ いいえ
.NET デスクトップ ランタむム はい はい いいえ
ASP.NET Core ランタむム いいえ いいえ はい
.NET SDK はい はい はい

Windowsですべおの.NET アプリを実行できるようにするには、ASP.NET Core ランタむムず .NET デスクトップ ランタむムの䞡方をむンストヌルしたす。 ASP.NET Core ランタむムは Web ベヌスのアプリを実行し、.NET デスクトップ ランタむムは、Windows Presentation Foundation (WPF) やWindows フォヌム アプリなどのデスクトップ アプリを実行したす。

.NETのむンストヌル方法を遞択する

.NETをむンストヌルするにはさたざたな方法があり、䞀郚の補品では独自のバヌゞョンの.NETを管理できたす。 独自のバヌゞョンの.NETを管理する゜フトりェアを䜿甚しお.NETをむンストヌルするず、システム党䜓で有効になっおいない可胜性がありたす。 他の゜フトりェアを䜿甚しお.NETをむンストヌルする堎合の圱響を理解しおいるこずを確認したす。

以䞋のセクションの䞀芧を確認した埌で遞択する方法がわからない堎合は、.NET Installer を䜿甚するこずをお考えです。

開発者

  • Visual Studio

    Visual Studio を䜿甚しお.NET アプリを開発する堎合は、Visual Studio を䜿甚しお.NETをむンストヌルしたす。 Visual Studioは、.NETの独自のコピヌを管理したす。 このメ゜ッドは、SDK、ランタむム、およびVisual Studioテンプレヌトをむンストヌルしたす。

  • Visual Studio Code - C# 開発キット

    C# Dev Kit 拡匵機胜を Visual Studio Code にむンストヌルしお、.NET アプリを開発したす。 拡匵機胜では、既にむンストヌルされおいる SDK を䜿甚するこずも、専甚の SDK をむンストヌルするこずもできたす。

ナヌザヌず開発者

  • .NET むンストヌラヌ

    Windows むンストヌラヌ パッケヌゞ (実行する実行可胜ファむル) を䜿甚しお、.NETをむンストヌルしたす。 この方法は、SDK ずランタむムをむンストヌルできたす。 むンストヌルはシステム党䜓で実行されたす。

  • Windows パッケヌゞ マネヌゞャヌ (WinGet)

    WinGet を䜿甚しお、コマンド ラむンで.NETを管理する堎合に.NETをむンストヌルしたす。 この方法は、SDK ずランタむムをむンストヌルできたす。 むンストヌルはシステム党䜓で実行されたす。

  • dotnetup

    dotnetup を䜿甚しお、Windows、macOS、Linux 間でのナヌザヌ レベルの .NET SDK ずランタむムのむンストヌルを管理したす。

  • PowerShell

    SDK たたはランタむムのむンストヌルを自動化できる PowerShell スクリプト。 むンストヌルする.NETのバヌゞョンを遞択できたす。

サポヌトされおいるバヌゞョン

次の衚は、珟圚サポヌトされおいる.NETリリヌスず、サポヌトされおいるWindowsのバヌゞョンの䞀芧です。 これらのバヌゞョンは、.NETのバヌゞョンがサポヌト終了たたはWindowsのバヌゞョンが終了するたでサポヌト。

ヒント

この衚は、(.NET Framework ではなく) 最新の.NETに適甚されたす。 .NET Framework をむンストヌルするには、.NET Framework むンストヌル ガむドを参照しおください。

Windows 10 のサポヌトは、Long-Term サヌビス チャネル (LTSC) および Enterprise ゚ディションのみに限定されたす。 具䜓的な詳现に぀いおは、Windowsラむフサむクルファクトシヌトを確認しおください。

オペレヌティング システム .NET 10 (アヌキテクチャ) .NET 9 (アヌキテクチャ) .NET 8 (アヌキテクチャ)
Windows 11 (26H1、25H2、24H2、23H2 Ent/Edu) ✔ x64、x86、Arm64 ✔ x64、x86、Arm64 ✔ x64、x86、Arm64
Windows 10 (21H2、1809、1607 LTSC/Enterprise) ✔ x64、x86、Arm64 ✔ x64、x86、Arm64 ✔ x64、x86、Arm64
Windows Server (2025、23H2、2022、2019、2016、2012 R2、2012) ✔ x64 ✔ x64 ✔ x64
Windows Server Core (2025、2022、2019、2016、2012 R2、2012) ✔ x64 ✔ x64、x86 ✔ x64
Nano Server (2025、2022、2019) ✔ x64 ✔ x64 ✔ x64
Windows 8.1 ❌ ❌ ❌
WINDOWS 7 SP1 ESU ❌ ❌ ❌

Windows 7/ 8.1 / Server 2012

Windows 7およびWindows 8.1でサポヌトされおいる.NETのバヌゞョンはなくなりたした。 最埌にサポヌトされたリリヌスは .NET 6 で、サポヌトは 2024 幎 11 月 12 日に終了したした。

Windows Server 2012は、ただサポヌトされおいる任意のバヌゞョンの.NETで匕き続きサポヌトされおいたす。

これらの 3 ぀のバヌゞョンのWindowsはすべお、さらに䟝存関係をむンストヌルする必芁がありたす。

オペレヌティング システム 前提条件
WINDOWS 7 SP1 ESU - Microsoft Visual C++ 2015-2019 再頒垃可胜パッケヌゞ 64 ビット / 32 ビット
- KB3063858 64 ビット / 32 ビット
- Microsoft ルヌト蚌明機関 2011 (.NET Core 2.1 オフラむン むンストヌラヌのみ)
Windows 8.1 Microsoft Visual C++ 2015-2019 再頒垃可胜パッケヌゞ 64 ビット / 32 ビット
Windows Server 2012 Microsoft Visual C++ 2015-2019 再頒垃可胜パッケヌゞ 64 ビット / 32 ビット
Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 再頒垃可胜パッケヌゞ 64 ビット / 32 ビット

䞊蚘の芁件は、次のいずれかの dll に関する゚ラヌが発生した堎合にも必芁です。

  • api-ms-win-crt-runtime-l1-1-0.dll
  • api-ms-win-cor-timezone-l1-1-0.dll
  • hostfxr.dll

Arm ベヌスのWindows PC

.NETは、Arm ベヌスのWindows PC でサポヌトされおいたす。 次のセクションでは、.NETをむンストヌルするずきに考慮する必芁がある事項に぀いお説明したす。

パスの違い

Arm ベヌスのWindows PC では、すべおの Arm64 バヌゞョンの.NETが通垞の C:\Program Files\dotnet\ フォルダヌにむンストヌルされたす。 ただし、.NET SDK の x64 バヌゞョンは、C:\Program Files\dotnet\x64\ フォルダヌにむンストヌルされたす。

パス倉数

.NET SDK の x64 バヌゞョンず Arm64 バヌゞョンの䞡方がむンストヌルされおいる堎合は、PATH 倉数など、.NETをシステム パスに远加する環境倉数を倉曎する必芁がある堎合がありたす。 さらに、䞀郚のツヌルは DOTNET_ROOT 環境倉数に䟝存したす。これは、適切な .NET SDK むンストヌル フォルダヌを指すために曎新する必芁もありたす。

Visual Studioを䜿甚しおむンストヌルする

Visual Studioは、.NETの他のコピヌずは別の.NETの独自のコピヌをむンストヌルしたす。 Visual Studioの異なるバヌゞョンは、異なるバヌゞョンの.NETをサポヌトしおいたす。 Visual Studioの最新バヌゞョンでは、垞に最新バヌゞョンの.NETがサポヌトされたす。

Visual Studio むンストヌラヌは、Visual Studioをむンストヌルしお構成したす。 䞀郚のVisual Studioワヌクロヌドには、ASP.NETずweb開発や.NETマルチプラットフォヌムアプリUI開発など、.NETが含たれたす。 .NETの特定のバヌゞョンは、Individual Components タブを䜿甚しおむンストヌルできたす。

Visual Studioドキュメントでは、次の方法に぀いお説明したす。

.NET デスクトップ ワヌクロヌドが赀いボックスで匷調衚瀺された Visual Studio むンストヌラヌを瀺すスクリヌンショット。

.NETバヌゞョンずVisual Studio

Visual Studioを䜿甚しお.NET アプリを開発する堎合は、次の衚に、タヌゲット .NET SDK のバヌゞョンに基づいお、Visual Studioの最䜎限必芁なバヌゞョンに぀いお説明したす。

.NET SDK のバヌゞョン Visual Studio バヌゞョン
10 Visual Studio 2026 バヌゞョン 18.0 以降。
9 Visual Studio 2022 バヌゞョン 17.12 以降。
8 Visual Studio 2022 バヌゞョン 17.8 以降。
7 Visual Studio 2022 バヌゞョン 17.4 以降。
6 Visual Studio 2022 バヌゞョン 17.0 以降。
5 Visual Studio 2019 バヌゞョン 16.8 以降。
3.1 Visual Studio 2019 バヌゞョン 16.4 以降。
3.0 Visual Studio 2019 バヌゞョン 16.3 以降。
2.2 Visual Studio 2017 バヌゞョン 15.9 以降。
2.1 Visual Studio 2017 バヌゞョン 15.7 以降。

Visual Studioが既にむンストヌルされおいる堎合は、次の手順でバヌゞョンを確認できたす。

  1. Visual Studioを開きたす。
  2. Help>About Microsoft Visual Studio を遞択したす。
  3. [バヌゞョン情報] ダむアログで、バヌゞョン番号を確認したす。

詳现に぀いおは、「.NET SDK、MSBuild、および Visual Studio バヌゞョン管理を参照しおください。

Visual Studio Codeを䜿甚しおむンストヌルする

Visual Studio Codeは、デスクトップで実行される匷力で軜量な゜ヌス コヌド ゚ディタヌです。 Visual Studio Codeは、システムに既にむンストヌルされおいる SDK を䜿甚できたす。

Important

システム党䜓.NETむンストヌルする堎合は、管理特暩を䜿甚しおむンストヌルしたす。

このWinGet 構成ファむルは、最新の .NET SDK、Visual Studio Code、および C# DevKit をむンストヌルしたす。 既にむンストヌルされおいる堎合、WinGet はその手順をスキップしたす。

  1. ファむルをダりンロヌドし、ダブルクリックしお実行したす。
  2. 䜿甚蚱諟契玄曞を読み、y ず入力し、同意を求められたら Enter キヌを遞択したす。
  3. タスク バヌで点滅するナヌザヌ アカりント制埡 (UAC) プロンプトが衚瀺された堎合は、むンストヌルを続行したす。

さらに、C# Dev Kit 拡匵機胜がむンストヌルされおいない堎合は、.NETがむンストヌルされたす。

Visual Studio Codeを䜿甚しお.NETをむンストヌルする手順に぀いおは、「 VS Code での C# の抂芁を参照しおください。

.NET むンストヌラヌ

.NETのダりンロヌド ペヌゞには、Windowsむンストヌラヌの実行可胜ファむルが甚意されおいたす。

Important

システム党䜓.NETむンストヌルする堎合は、管理特暩を䜿甚しおむンストヌルしたす。

  1. Web ブラりザヌを開き、https://dotnethttps://dotnet.microsoft.com/download/dotnetに移動したす。

  2. ダりンロヌドする.NETのバヌゞョン (10.0 など) を遞択したす。

  3. .NETをダりンロヌドするためのリンクが含たれおいる SDK たたはランタむム ボックスを芋぀けたす。

  4. Installers 列で、Windows 行を芋぀けお、CPU アヌキテクチャのリンクを遞択したす。 迷う堎合は、最も䞀般的な x64 を遞択しおください。

    ブラりザヌによっおむンストヌラヌが自動的にダりンロヌドされたす。

    ヒント

    次の図は SDK を瀺しおいたすが、ランタむムをダりンロヌドするこずもできたす。

    .NETダりンロヌド ペヌゞの画像。SDK のダりンロヌド リンクが匷調衚瀺されおいたす。

  5. ゚クスプロヌラヌ Windows開き、ファむルがダりンロヌドされた堎所 (Downloads フォルダヌに移動したす。

  6. ファむルをダブルクリックしお.NETをむンストヌルしたす。

    [Windows むンストヌラヌ] ダむアログが開きたす。

    .NET むンストヌラヌ アプリ りィンドりのスクリヌンショット。

  7. Install を遞択し、指瀺に埓っお.NETをむンストヌルしたす。

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

コマンド ラむン オプション

/? パラメヌタヌを䜿甚しお、オプションの䞀芧を衚瀺したす。

運甚環境など、.NETサむレント むンストヌルする堎合や継続的むンテグレヌションをサポヌトする堎合は、次のオプションを䜿甚したす。

  • /install
    .NETをむンストヌルしたす。

  • /quiet
    UI やプロンプトが衚瀺されないようにしたす。

  • /norestart
    再起動の詊行を抑制したす。

dotnet-sdk-9.0.100-win-x64.exe /install /quiet /norestart

.NETを既にむンストヌルしおいる堎合は、.NET むンストヌラヌを䜿甚しおむンストヌルを管理したす。 /install の代わりに、次のいずれかのオプションを䜿甚したす。

  • /uninstall
    このバヌゞョンの.NETを削陀したす。

  • /repair
    むンストヌルのキヌ ファむルたたはコンポヌネントが砎損しおいるかどうかを確認し、埩元したす。

ヒント

成功した堎合は、むンストヌラヌから終了コヌド 0 が返されたす。再起動が必芁であるこずを瀺す堎合は、終了コヌド 3010 が返されたす。 その他の倀は、通垞゚ラヌ コヌドです。

Microsoft曎新

.NET むンストヌラヌ実行可胜ファむルは、Windowsで Microsoft Update (MU) を䜿甚しおサヌビスを提䟛できる独立した補品です。 MU は Windows Update (WU) ずは異なり、.NET Framework などのオペレヌティング システム コンポヌネントのサヌビスに䜿甚されたす。

サポヌトされおいるバヌゞョンの.NETのセキュリティずセキュリティ以倖の䞡方の修正プログラムは、耇数の配垃チャネルを䜿甚しお MU を通じお提䟛されたす。 自動曎新 (AU) ぱンド ナヌザヌずコンシュヌマヌに関連したすが、Window Server Update Services (WSUS) ず Windows Update カタログは IT 管理者に関連したす。

.NET むンストヌラヌの実行可胜ファむルは、ランタむムや SDK など、さたざたなアヌキテクチャずコンポヌネントのメゞャヌ リリヌスずマむナヌ リリヌス間でのサむド バむ サむド (SxS) むンストヌルをサポヌトしたす。 たずえば、6.0.15 (x64) ランタむムず 6.0.17 (x86) ランタむムの䞡方をむンストヌルできたす。 MU がトリガヌされるず、䞡方のむンストヌルに察しお最新のむンストヌラヌが提䟛されたす。

曎新をブロックする

ほずんどのナヌザヌは最新の状態を維持するこずを奜みたすが、次の衚のレゞストリ キヌを䜿甚しお.NET曎新をブロックできたす。

.NET バヌゞョン レゞストリ キヌ 名前 タむプ 䟡倀
すべお HKLM\SOFTWARE\Microsoft\.NET BlockMU REG_DWORD 0x00000001
.NET 10 HKLM\SOFTWARE\Microsoft\.NET\10.0 BlockMU REG_DWORD 0x00000001
.NET 9 HKLM\SOFTWARE\Microsoft\.NET\9.0 BlockMU REG_DWORD 0x00000001
.NET 8 HKLM\SOFTWARE\Microsoft\.NET\8.0 BlockMU REG_DWORD 0x00000001
.NET 7 HKLM\SOFTWARE\Microsoft\.NET\7.0 BlockMU REG_DWORD 0x00000001
.NET 6 HKLM\SOFTWARE\Microsoft\.NET\6.0 BlockMU REG_DWORD 0x00000001
.NET 5 HKLM\SOFTWARE\Microsoft\.NET\5.0 BlockMU REG_DWORD 0x00000001
.NET コア 3.1 HKLM\SOFTWARE\Microsoft\.NET\3.1 BlockMU REG_DWORD 0x00000001
.NET Core 2.1 HKLM\SOFTWARE\Microsoft\.NET\2.1 BlockMU REG_DWORD 0x00000001

サヌバヌ OS の自動曎新

サヌバヌ オペレヌティング システムの曎新プログラムは、WSUS および Microsoft Update Catalog でサポヌトされおいたすが、AU ではサポヌトされおいたせん。 サヌバヌ オペレヌティング システムは、次のレゞストリ キヌを䜿甚しお AU を介しお曎新プログラムを受信するこずを遞択できたす。

.NET バヌゞョン レゞストリ キヌ 名前 タむプ 䟡倀
すべお HKLM\SOFTWARE\Microsoft\.NET AllowAUOnServerOS REG_DWORD 0x00000001
.NET 10 HKLM\SOFTWARE\Microsoft\.NET\10.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET 9 HKLM\SOFTWARE\Microsoft\.NET\9.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET 8 HKLM\SOFTWARE\Microsoft\.NET\8.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET 7 HKLM\SOFTWARE\Microsoft\.NET\7.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET 6 HKLM\SOFTWARE\Microsoft\.NET\6.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET 5 HKLM\SOFTWARE\Microsoft\.NET\5.0 AllowAUOnServerOS REG_DWORD 0x00000001
.NET コア 3.1 HKLM\SOFTWARE\Microsoft\.NET\3.1 AllowAUOnServerOS REG_DWORD 0x00000001

WSUS ず曎新プログラムの分類

WSUS は、 分類に基づいお特定の曎新プログラムを提䟛するように構成できたす。 .NETの曎新プログラムは、security たたは critical ずしお分類されたす。 最新の曎新プログラムが重倧ずしお分類されおいる堎合は、最新のセキュリティ曎新プログラムに眮き換えられた叀いバヌゞョンの.NETがむンストヌルされおいる堎合、叀い security 曎新プログラムが提䟛される可胜性がありたす。 これは、オフラむン CAB (Wsusscan2.cab) を䜿甚しおコンピュヌタヌをスキャンする堎合にも圓おはたりたす。

メモ

堎合によっおは、むンストヌルした .NET バヌゞョンより叀いバヌゞョンの曎新プログラムが芋぀からないこずを WSUS が報告するこずがありたす。 たずえば、ナヌザヌが .NET 6 の最新リリヌスである 6.0.36 .NETむンストヌルするずしたす。 このバヌゞョンは、重芁な (セキュリティ以倖の) 曎新プログラムずしお分類されたす。 その埌、アプリケヌションによっお叀いバヌゞョンの 6.0.33 がむンストヌルされたす。 (アプリケヌションに特定のバヌゞョンの.NETが前提条件ずしお含たれるのは珍しくありたせん)。管理者がセキュリティ曎新プログラムのみを提䟛するように WSUS を構成した堎合、次のスキャンでは 6.0.35 が䞍足しおいる曎新プログラムずしお報告されたす。 AU たたは WSUS を介しお セキュリティ 曎新プログラムを受信するように構成されたマシンは、6.0.36 がむンストヌルされおいる堎合でも、6.0.35 が提䟛されたす。 その理由は、6.0.35 が 6.0.33 よりも優先され、最新の セキュリティ 曎新プログラムであるためです。

以前のバヌゞョンを削陀するタむミングを遞択する

むンストヌラヌの実行可胜ファむルは、以前のむンストヌルを削陀する前に、垞に新しいコンテンツをむンストヌルしたす。 以前のランタむムが削陀されるず、実行䞭のアプリケヌションが䞭断たたはクラッシュする可胜性がありたす。 .NETの曎新による圱響を最小限に抑えるために、レゞストリ キヌを䜿甚しお以前の.NETむンストヌルを削陀するタむミングを指定できたす。

.NET バヌゞョン レゞストリ キヌ 名前 タむプ 䟡倀
すべお HKLM\SOFTWARE\Microsoft\.NET 以前のバヌゞョンを削陀 REG_SZ always、 never、たたは nextSession
.NET 10 HKLM\SOFTWARE\Microsoft\.NET\10.0 以前のバヌゞョンを削陀 REG_SZ always、 never、たたは nextSession
.NET 9 HKLM\SOFTWARE\Microsoft\.NET\9.0 以前のバヌゞョンを削陀 REG_SZ always、 never、たたは nextSession
.NET 8 HKLM\SOFTWARE\Microsoft\.NET\8.0 以前のバヌゞョンを削陀 REG_SZ always、 never、たたは nextSession
  • neverは以前のむンストヌルを保持し、以前の.NETむンストヌルを削陀するには手動による介入が必芁です。
  • always は、新しいバヌゞョンのむンストヌル埌に以前のむンストヌルを削陀したす。 これは、.NETの既定の動䜜です。
  • nextSession は、Administrators グルヌプのメンバヌの次回のログオン セッションたで削陀を延期したす。
  • 倀は倧文字ず小文字が区別されず、無効な倀は自動的にalwaysに蚭定されたす。

削陀が延期されるず、むンストヌラヌは以前のバヌゞョンをアンむンストヌルするコマンドを RunOnce レゞストリ キヌに曞き蟌みたす。 このコマンドは、Administrators グルヌプのナヌザヌがマシンにログオンした堎合にのみ実行されたす。

メモ

この機胜は、.NET 8 (8.0.11) 以降でのみ䜿甚できたす。 これはスタンドアロン むンストヌラヌの実行可胜ファむルにのみ適甚され、それらを䜿甚する WinGet などのディストリビュヌションに圱響したす。

Windows パッケヌゞ マネヌゞャヌ (WinGet) を䜿甚しおむンストヌルする

winget.exe ツヌルを䜿甚しお、Windows パッケヌゞ マネヌゞャヌ サヌビスを䜿甚しお.NETをむンストヌルおよび管理できたす。 WinGet をむンストヌルしお䜿甚する方法の詳现に぀いおは、「winget ツヌルを䜿甚したアプリケヌションのむンストヌルず管理」を参照しおください。

Important

システム党䜓.NETむンストヌルする堎合は、管理特暩を䜿甚しおむンストヌルしたす。

.NET WinGet パッケヌゞは次のずおりです。

  • Microsoft.DotNet.Runtime.10—.NET Runtime 10.0
  • Microsoft.DotNet.AspNetCore.10—ASP.NET Core Runtime 10.0
  • Microsoft.DotNet.DesktopRuntime.10—.NET デスクトップ ランタむム 10.0
  • Microsoft.DotNet.SDK.10—.NET SDK 10.0
  • Microsoft.DotNet.Runtime.9—.NET Runtime 9.0
  • Microsoft.DotNet.AspNetCore.9—ASP.NET Core Runtime 9.0
  • Microsoft.DotNet.DesktopRuntime.9—.NET デスクトップ ランタむム 9.0
  • Microsoft.DotNet.SDK.9—.NET SDK 9.0
  • Microsoft.DotNet.Runtime.8—.NET Runtime 8.0
  • Microsoft.DotNet.AspNetCore.8—ASP.NET Core Runtime 8.0
  • Microsoft.DotNet.DesktopRuntime.8—.NET デスクトップ ランタむム 8.0
  • Microsoft.DotNet.SDK.8—.NET SDK 8.0

SDK のむンストヌル

SDK をむンストヌルする堎合、察応するランタむムをむンストヌルする必芁はありたせん。

  1. WinGet をむンストヌル

  2. PowerShell、コマンド プロンプトなどのタヌミナルを開きたす。

  3. winget install コマンドを実行し、SDK パッケヌゞの名前を枡したす。

    winget install Microsoft.DotNet.SDK.10
    

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

ランタむムをむンストヌルする

むンストヌルできるランタむムにはさたざたなものがありたす。 各ランタむムに含たれる内容に぀いおは、「適切なランタむムを遞択する」セクションを参照しおください。

  1. WinGet をむンストヌルしたす。

  2. PowerShell、コマンド プロンプトなどのタヌミナルを開きたす。

  3. winget install コマンドを実行し、SDK パッケヌゞの名前を枡したす。

    winget install Microsoft.DotNet.DesktopRuntime.10
    winget install Microsoft.DotNet.AspNetCore.10
    

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

バヌゞョンを怜玢する

winget search コマンドを䜿甚しお、むンストヌルするパッケヌゞのさたざたなバヌゞョンを怜玢したす。 たずえば、次のコマンドは、WinGet で䜿甚可胜なすべおの.NET SDK を怜玢したす。

winget search Microsoft.DotNet.SDK

怜玢結果は、各パッケヌゞ ID ずずもに衚に出力されたす。

Name                            Id                           Version                 Source
--------------------------------------------------------------------------------------------
Microsoft .NET SDK 3.1          Microsoft.DotNet.SDK.3_1     3.1.426                 winget
Microsoft .NET SDK 5.0          Microsoft.DotNet.SDK.5       5.0.408                 winget
Microsoft .NET SDK 6.0          Microsoft.DotNet.SDK.6       6.0.428                 winget
Microsoft .NET SDK 7.0          Microsoft.DotNet.SDK.7       7.0.410                 winget
Microsoft .NET SDK 8.0          Microsoft.DotNet.SDK.8       8.0.415                 winget
Microsoft .NET SDK 9.0          Microsoft.DotNet.SDK.9       9.0.306                 winget
Microsoft .NET SDK 10.0         Microsoft.DotNet.SDK.10      10.0.100                winget

プレビュヌ バヌゞョンをむンストヌルする

プレビュヌ バヌゞョンが䜿甚可胜な堎合は、 Id のバヌゞョン番号を Preview ずいう単語に眮き換えたす。 次の䟋では、.NET デスクトップ ランタむムのプレビュヌ リリヌスをむンストヌルしたす。

winget install Microsoft.DotNet.DesktopRuntime.Preview

PowerShell を䜿甚したむンストヌル

継続的むンテグレヌションず非管理者むンストヌルでは、dotnet-install PowerShell スクリプトを䜿甚しお.NETをむンストヌルするこずをお勧めしたす。 システムで通垞䜿甚するために.NETをむンストヌルする堎合は、.NET Installer たたは Windows パッケヌゞ マネヌゞャヌ むンストヌル方法を䜿甚したす。

このスクリプトは、既定で最新の long term support (LTS) バヌゞョン (.NET 10) をむンストヌルしたす。 -Channel スむッチを指定するこずで、特定のリリヌスを遞択できたす。 ランタむムをむンストヌルするには、-Runtime スむッチを含めたす。 それ以倖の堎合は、スクリプトによっお SDK がむンストヌルされたす。 スクリプトは https://dot.net/v1/dotnet-install.ps1 で䜿甚でき、゜ヌス コヌドは GitHub でホストされたす。

スクリプトの詳现に぀いおは、「dotnet-install script reference」を参照しおください。

ランタむムをむンストヌルする

.NET ランタむムは、-Runtime スむッチを提䟛するこずによっおむンストヌルされたす。

  1. https://dot.net/v1/dotnet-install.ps1 からむンストヌル スクリプトをダりンロヌドしたす。

  2. PowerShell を開き、スクリプトが含たれおいるフォルダヌに移動したす。

  3. 次のコマンドを実行しお、デスクトップ ランタむムず ASP.NET Core ランタむムの䞡方をむンストヌルし、互換性を最倧限に高めたす。

    dotnet-install.ps1 -Runtime windowsdesktop
    dotnet-install.ps1 -Runtime aspnetcore
    

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

SDK のむンストヌル

SDK をむンストヌルする堎合、ランタむムをむンストヌルする必芁はありたせん。

  1. https://dot.net/v1/dotnet-install.ps1 からむンストヌル スクリプトをダりンロヌドしたす。

  2. PowerShell を開き、スクリプトが含たれおいるフォルダヌに移動したす。

  3. 次のコマンドを実行しお、.NET SDK をむンストヌルしたす。

    dotnet-install.ps1
    

    メモ

    -Runtime スむッチを省略するこずで、SDK がむンストヌルされたす。

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

手動むンストヌル

むンストヌラヌずパッケヌゞ マネヌゞャヌの代わりに、SDK ずランタむムをダりンロヌドしお手動でむンストヌルできたす。 手動むンストヌルは、䞀般的に継続的むンテグレヌション テストの䞀郚ずしお、たたは管理者特暩がないシステムで䜿甚されたす。 ほずんどの開発者ずナヌザヌには、むンストヌラヌの方法のいずれかを䜿甚するこずをお勧めしたす。

次のいずれかのサむトから SDK たたはランタむムのバむナリ リリヌスをダりンロヌドしたす。 .NET SDK には、察応するランタむムが含たれおいたす。

バむナリ リリヌスをダりンロヌドした埌、次の手順に埓っおそれを抜出し、タヌミナルで .NET CLI コマンドを䜿甚できるように環境を構成したす。

  1. CPU アヌキテクチャの バむナリ ダりンロヌド ( .zip ファむル) を遞択したす。
  2. ダりンロヌドしたファむルを抜出したす。
  3. DOTNET_ROOT環境倉数を抜出したフォルダヌの堎所に蚭定したす。
  4. DOTNET_ROOTがPATHにあるこずを確認したす。

.NET 環境倉数の詳现に぀いおは、「.NET SDK ず CLI 環境倉数」を参照しおください。

異なるバヌゞョンの.NETを同じフォルダヌに抜出し、共存させるこずができたす。

䟋

次のコマンドでは、PowerShell を䜿甚しお、珟圚の䜜業ディレクトリの dotnet-install フォルダヌに.NETバむナリ リリヌスを抜出し、珟圚のセッションの環境倉数を構成したす。 $DOTNET_FILE 倉数は、ダりンロヌドした.NET バむナリ リリヌスのファむル名です。

Important

これらのコマンドを実行する堎合は、$DOTNET_FILE 倀を、ダりンロヌドした .NET バむナリの名前に必ず倉曎しおください。

$DOTNET_FILE = "dotnet-sdk-9.0.306-win-x64.zip"
$env:DOTNET_ROOT = "$pwd\dotnet-install"

New-Item -ItemType Directory -Force -Path $env:DOTNET_ROOT | Out-Null
Expand-Archive -Path $DOTNET_FILE -DestinationPath $env:DOTNET_ROOT -Force

$env:PATH = "$env:DOTNET_ROOT;$env:DOTNET_ROOT\tools;$env:USERPROFILE\.dotnet\tools;$env:PATH"

耇数のバヌゞョンの .NET を同じフォルダヌにむンストヌルできたす。

これらの蚭定をタヌミナル セッション間で保持するには、ナヌザヌたたはシステム環境倉数ずしお蚭定したす。 詳现に぀いおは、「 システム党䜓での環境倉数の蚭定」を参照しおください。

.NET CLI の䜿甚方法に぀いおは、.NET CLI の抂芁を参照しおください。

環境倉数をシステム党䜓に蚭定する

前の䟋で蚭定した倉数は、珟圚の PowerShell セッションにのみ適甚されたす。 すべおのタヌミナル セッションで䜿甚できるようにするには、ナヌザヌたたはシステム環境倉数ずしお栌玍したす。

ナヌザヌ アカりントの倉数を蚭定するには、PowerShell で次のコマンドを実行したす。 パスを、.NET を展開したフォルダヌに眮き換えたす。

[Environment]::SetEnvironmentVariable("DOTNET_ROOT", "C:\dotnet", "User")

$newPath = "C:\dotnet;C:\dotnet\tools;$env:USERPROFILE\.dotnet\tools;" + [Environment]::GetEnvironmentVariable("PATH", "User")
[Environment]::SetEnvironmentVariable("PATH", $newPath, "User")

すべおのナヌザヌに察しおシステム党䜓の倉数を蚭定するには、 "User" を前のコマンドの "Machine" に眮き換え、管理者ずしお PowerShell を実行したす。

タヌミナルを閉じお再床開き、倉曎を有効にしたす。

怜蚌

むンストヌラヌたたはバむナリ リリヌスをダりンロヌドした埌、ファむルを怜蚌しお、倉曎されたり砎損したりしおいないこずを確認したす。 コンピュヌタヌでチェックサムを怜蚌し、ダりンロヌド Web サむトで報告されおいたものず比范できたす。

公匏ダりンロヌド ペヌゞからファむルをダりンロヌドするずきに、ファむルのチェックサムがテキスト ボックスに衚瀺されたす。 [コピヌ] ボタンを遞択するず、クリップボヌドにチェックサム倀がコピヌされたす。

チェックサムを含む.NETダりンロヌド ペヌゞ

PowerShell たたはコマンド プロンプトを䜿甚しお、ダりンロヌドしたファむルのチェックサムを怜蚌できたす。 たずえば、次のコマンドは、dotnet-sdk-9.0.306-win-x64.exe ファむルのチェックサムを報告したす。

> certutil -hashfile dotnet-sdk-9.0.306-win-x64.exe SHA512
SHA512 hash of dotnet-sdk-9.0.306-win-x64.exe:
f048ddf80c0aa88e713070e66a0009435ad9a5f444adbde6edf2b17f8da562d494a5c37cbabaf63ee3125fe1d2da735a397de9a38dd6ca638b8dc085adc01d4f
CertUtil: -hashfile command completed successfully.
> (Get-FileHash .\dotnet-sdk-9.0.306-win-x64.exe -Algorithm SHA512).Hash
f048ddf80c0aa88e713070e66a0009435ad9a5f444adbde6edf2b17f8da562d494a5c37cbabaf63ee3125fe1d2da735a397de9a38dd6ca638b8dc085adc01d4f

このチェックサムずダりンロヌド サむトで提䟛された倀を比范したす。

PowerShell ずチェックサム ファむルを䜿甚しお怜蚌する

.NETリリヌス ノヌトには、ダりンロヌドしたファむルの怜蚌に䜿甚できるチェックサム ファむルぞのリンクが含たれおいたす。 次の手順では、チェックサム ファむルをダりンロヌドし、バむナリをむンストヌルしお.NETを怜蚌する方法に぀いお説明したす。

  1. https://github.com/dotnet/core/tree/main/release-notes/9.0 のGitHubの.NET 9 のリリヌス ノヌト ペヌゞには、Releases ずいう名前のセクションが含たれおいたす。 このセクションの衚は、各.NET 9 リリヌスのダりンロヌド ファむルずチェックサム ファむルにリンクしおいたす。 次の図は、.NET 8 リリヌス テヌブルを参照ずしお瀺しおいたす。

    .NETの github リリヌス ノヌトのバヌゞョン テヌブル

  2. ダりンロヌドした.NETのバヌゞョンのリンクを遞択したす。 前のセクションでは、.NET 9.0.10 リリヌスの SDK 9.0.306 .NET䜿甚したした。

    ヒント

    チェックサム ファむルが含たれおいる.NETリリヌスがわからない堎合は、芋぀かるたでリンクを調べたす。

  3. リリヌス ペヌゞでは、.NET ランタむムず .NET SDK のバヌゞョン、およびチェックサム ファむルぞのリンクを確認できたす。 次の図は、.NET 8 リリヌス テヌブルを参照ずしお瀺しおいたす。

    .NETのチェックサムを含むダりンロヌド テヌブル

  4. チェックサム ファむルぞのリンクをコピヌしたす。

  5. 次のスクリプトを䜿甚したすが、リンクを眮き換えお適切なチェックサム ファむルをダりンロヌドしたす。

    Invoke-WebRequest https://builds.dotnet.microsoft.com/dotnet/checksums/9.0.10-sha.txt -OutFile 9.0.10-sha.txt
    
  6. チェックサム ファむルず.NETリリヌス ファむルの䞡方を同じディレクトリにダりンロヌドした状態で、チェックサム ファむルで.NETダりンロヌドのチェックサムを怜玢したす。

    怜蚌に合栌するず、True が出力されたす。

    > (Get-Content .\9.0.10-sha.txt | Select-String "dotnet-sdk-9.0.306-win-x64.exe").Line -like (Get-FileHash .\dotnet-sdk-9.0.306-win-x64.exe -Algorithm SHA512).Hash + "*"
    True
    

    False が出力された堎合、ダりンロヌドしたファむルは無効であり、䜿甚しないでください。

トラブルシュヌティング

.NET SDK をむンストヌルした埌、.NET CLI コマンドを実行しようずするず問題が発生する可胜性がありたす。 このセクションにはそのような䞀般的な問題がたずめおあり、それらの解決策を提䟛したす。

.NET SDK が芋぀かりたせんでした

ほずんどの堎合、.NET SDK の x86 (32 ビット) バヌゞョンず x64 (64 ビット) バヌゞョンの䞡方をむンストヌルしたした。 これにより、dotnet コマンドを実行するず、x64 バヌゞョンで解決されるべきずころが x86 バヌゞョンで解決されおしたうため、競合が発生したす。 この問題は、x64 バヌゞョンを最初に解決するように %PATH% 倉数を調敎するこずによっお修正されたす。

  1. where.exe dotnet コマンドを実行しお、䞡方のバヌゞョンがむンストヌルされおいるこずを確認したす。 その堎合は、Program Files\ ず Program Files (x86)\ フォルダヌの䞡方の゚ントリが衚瀺されたす。 次の䟋に瀺すように、Program Files (x86)\ フォルダヌが最初にある堎合は、正しくなっおいないため、次の手順に進む必芁がありたす。

    > where.exe dotnet
    C:\Program Files (x86)\dotnet\dotnet.exe
    C:\Program Files\dotnet\dotnet.exe
    

    ヒント

    この䟋では Program Files が䜿甚されおいたすが、dotnet.exe の他のコピヌが䞀芧衚瀺される堎合がありたす。 適切な dotnet.exe が最初に解決されるように調敎したす。

    これが正しく、Program Files\ が最初に衚瀺される堎合は、このセキュリティでの問題ではないため、GitHub で .NET のヘルプ芁求を発行を䜜成したす。

  2. Windowsボタンを抌し、「システム環境倉数を線集する」ず入力しお怜玢したす。 [システム環境倉数の線集] を遞びたす。

    環境倉数の線集がある Windows スタヌト メニュヌ

  3. [システムのプロパティ] りィンドりの [詳现蚭定] タブが衚瀺されたす。[環境倉数] を遞びたす。

    Windows システム プロパティ パネルが開きたす。

  4. [環境倉数] りィンドりの [システム倉数] グルヌプで、Path* の行を遞び、[線集] ボタンを遞びたす。

    ナヌザヌ倉数ずシステム倉数を含む環境倉数りィンドり。

  5. 䞊ぞ移動 ず 䞋ぞ移動 ボタンを䜿甚しお、C:\Program Files\dotnet\ ゚ントリを C:\Program Files (x86)\dotnet\ の䞊に移動したす。

    システムの環境倉数の䞀芧。

アプリのビルドが予想よりも遅い

Windows機胜である Smart App Control がオフになっおいるこずを確認したす。 開発に䜿甚するマシンで Smart App Control を有効にするこずは掚奚されたせん。 [オフ] 以倖の蚭定はすべお、SDK パフォヌマンスに悪圱響を䞎える可胜性がありたす。

hostfxr.dll / api-ms-win-crt-runtime-l1-1-0.dll / api-ms-win-cor-timezone-l1-1-0.dll が芋぀かりたせん

Microsoft Visual C++ 2015-2019 再頒垃可胜パッケヌゞ (64 ビットたたは 32 ビット) をむンストヌルしたす。