Instalar o .NET no Windows

Neste artigo, você aprenderá a instalar o .NET no Windows. O .NET é composto pelo tempo de execução e pelo SDK. O tempo de execução é usado para executar um aplicativo .NET e pode ser incluído com o aplicativo. O SDK é usado para criar aplicativos e bibliotecas .NET. O runtime .NET é sempre instalado com o SDK.

A versão mais recente do .NET é 8.0.

Há dois tipos de versões suportadas: versões LTS (Long Term Support) e STS (Standard Term Support). A qualidade de todos os lançamentos é a mesma. A única diferença é a duração do apoio. As versões LTS recebem suporte e patches gratuitos por três anos. As versões STS recebem suporte e patches gratuitos por 18 meses. Para obter mais informações, consulte Política de suporte do .NET.

A tabela a seguir lista o status de suporte de cada versão do .NET (e do .NET Core):

✔️ Suportado ❌ Sem suporte
8 (LTS) 5
7 (STS) 3.1
6 (LTS) 3.0
2.1
2.0
1.1
1.0

Instalar com o Gerenciador de Pacotes do Windows (winget)

Você pode instalar e gerenciar o .NET através do serviço Gerenciador de Pacotes do Windows, usando a ferramenta winget . Para obter mais informações sobre como instalar e usar o winget, consulte Usar a ferramenta winget.

Se você estiver instalando o .NET em todo o sistema, instale com privilégios administrativos.

Instale o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não precisará instalar os tempos de execução correspondentes. Para instalar o SDK do .NET, execute o seguinte comando:

winget install Microsoft.DotNet.SDK.8

Instalar o tempo de execução

Há três tempos de execução .NET diferentes que você pode instalar, no entanto, você deve instalar o .NET Desktop Runtime e o ASP.NET Core Runtime para máxima compatibilidade com todos os tipos de aplicativos .NET. A tabela a seguir descreve o que está incluído em cada tempo de execução:

Inclui o .NET Runtime Inclui o .NET Desktop Runtime Inclui ASP.NET Core Runtime
Tempo de execução do .NET Sim No Não
Tempo de execução do .NET Desktop Sim Sim No
ASP.NET Core Runtime No No Sim

A lista a seguir fornece detalhes sobre cada tempo de execução, juntamente com os comandos winget para instalá-los:

  • Tempo de execução do .NET Desktop

    Esse tempo de execução oferece suporte a aplicativos Windows Presentation Foundation (WPF) e Windows Forms criados com .NET. Isso não é o mesmo que o .NET Framework, que vem com o Windows. Esse tempo de execução inclui o .NET Runtime, mas não inclui ASP.NET Core Runtime, que deve ser instalado separadamente.

    winget install Microsoft.DotNet.DesktopRuntime.8
    
  • Tempo de execução de .NET

    Este é o tempo de execução base e contém apenas os componentes necessários para executar um aplicativo de console. Normalmente, você instalaria o .NET Desktop Runtime e o ASP.NET Core Runtime em vez deste.

    winget install Microsoft.DotNet.Runtime.8
    
  • ASP.NET Core Runtime

    Esse tempo de execução executa aplicativos de servidor Web e fornece muitas APIs relacionadas à Web. ASP.NET Core Runtime permite executar aplicativos criados com o .NET que não forneciam o tempo de execução. Você deve instalar o .NET Runtime além desse tempo de execução. Os seguintes comandos instalam ASP.NET Core Runtime, No seu terminal, execute os seguintes comandos:

    winget install Microsoft.DotNet.AspNetCore.8
    

Você pode instalar versões de visualização dos tempos de execução substituindo o número da versão, como 6, pela palavra Preview. O exemplo a seguir instala a versão de visualização do .NET Desktop Runtime:

winget install Microsoft.DotNet.DesktopRuntime.Preview

Instalar junto com o Visual Studio Code

O Visual Studio Code é um editor de código-fonte poderoso e leve que é executado em sua área de trabalho. O Visual Studio Code está disponível para Windows, macOS e Linux.

Embora o Visual Studio Code não venha com um instalador automatizado do .NET Core como o Visual Studio, adicionar suporte ao .NET Core é simples.

  1. Baixe e instale o Visual Studio Code.
  2. Baixe e instale o SDK do .NET.
  3. Instale a extensão C# do mercado Visual Studio Code.

A extensão C# For Visual Studio Code inclui o SDK do .NET mais recente e você não precisa instalar nenhum tempo de execução do .NET separadamente.

Instalar com o Windows Installer

Há três tempos de execução .NET diferentes que você pode instalar, no entanto, você deve instalar o .NET Desktop Runtime e o ASP.NET Core Runtime para máxima compatibilidade com todos os tipos de aplicativos .NET. A tabela a seguir descreve o que está incluído em cada tempo de execução:

Inclui o .NET Runtime Inclui o .NET Desktop Runtime Inclui ASP.NET Core Runtime
Tempo de execução do .NET Sim No Não
Tempo de execução do .NET Desktop Sim Sim No
ASP.NET Core Runtime No No Sim

O SDK do .NET permite que você crie aplicativos .NET e inclui todos os tempos de execução.

A página de download do .NET fornece executáveis do Windows Installer.

Se você quiser instalar o .NET silenciosamente, como em um ambiente de produção ou para oferecer suporte à integração contínua, use as seguintes opções:

  • /install
    Instala o .NET.

  • /quiet
    Impede que qualquer interface do usuário e prompts sejam exibidos.

  • /norestart
    Suppresses any attempts to restart.

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

Para obter mais informações, consulte Opções de linha de comando do instalador padrão.

Gorjeta

O instalador retorna um código de saída de 0 para sucesso e um código de saída de 3010 para indicar que uma reinicialização é necessária. Qualquer outro valor é geralmente um código de erro.

Instalar com automação do PowerShell

Os scripts dotnet-install são usados para automação de CI e instalações não administrativas do tempo de execução. Você pode baixar o script da página de referência de script dotnet-install.

O script assume como padrão a instalação da versão mais recente de suporte de longo prazo (LTS), que é o .NET 8. Você pode escolher uma versão específica especificando o Channel switch. Inclua o Runtime switch para instalar um tempo de execução. Caso contrário, o script instalará o SDK.

O comando a seguir instala os tempos de execução Desktop e ASP.NET Core para máxima compatibilidade.

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

Instale o SDK omitindo o -Runtime switch. A -Channel opção é definida neste exemplo como STS, que instala a versão mais recente do Standard Term Support, que é o .NET 7.

dotnet-install.ps1 -Channel STS

Instalar com o Visual Studio

Se você estiver usando o Visual Studio para desenvolver aplicativos .NET, a tabela a seguir descreve a versão mínima necessária do Visual Studio com base na versão de destino do SDK do .NET.

Versão do SDK do .NET Versão do Visual Studio
8 Visual Studio 2022 versão 17.8 ou superior.
7 Visual Studio 2022 versão 17.4 ou superior.
6 Visual Studio 2022 versão 17.0 ou superior.
5 Visual Studio 2019 versão 16.8 ou superior.
3.1 Visual Studio 2019 versão 16.4 ou superior.
3.0 Visual Studio 2019 versão 16.3 ou superior.
2.2 Visual Studio 2017 versão 15.9 ou superior.
2.1 Visual Studio 2017 versão 15.7 ou superior.

Se você já tiver o Visual Studio instalado, você pode verificar sua versão com as etapas a seguir.

  1. Abra o Visual Studio.
  2. Selecione Ajuda sobre o>Microsoft Visual Studio.
  3. Leia o número da versão na caixa de diálogo Sobre .

O Visual Studio pode instalar o SDK e o tempo de execução mais recentes do .NET.

Para obter mais informações, consulte SDK do .NET, MSBuild e controle de versão do Visual Studio.

Selecione uma carga de trabalho

Ao instalar ou modificar o Visual Studio, selecione uma ou mais das seguintes cargas de trabalho, dependendo do tipo de aplicativo que você está criando:

  • A carga de trabalho de desenvolvimento entre plataformas do .NET Core na seção Outros Conjuntos de Ferramentas.
  • A carga de trabalho de ASP.NET e desenvolvimento Web na seção Web & Cloud .
  • A carga de trabalho de desenvolvimento do Azure na seção Web & Cloud .
  • A carga de trabalho de desenvolvimento de desktop .NET na seção Desktop & Mobile.

Windows Visual Studio 2019 with .NET Core workload

Versões suportadas

A tabela a seguir é uma lista das versões do .NET atualmente suportadas e as versões do Windows nas quais elas são suportadas. Essas versões permanecem com suporte até que a versão do .NET atinja o fim do suporte ou a versão do Windows atinja o fim da vida útil.

As datas de fim de serviço das versões do Windows 10 são segmentadas por edição. Apenas as edições Home, Pro, Pro Education e Pro for Workstations são consideradas na tabela a seguir. Consulte a ficha informativa do ciclo de vida do Windows para obter detalhes específicos.

Gorjeta

Um + símbolo representa a versão mínima.

Sistema operativo .NET 8 .NET 7 .NET 6
Windows 11 ✔️ ✔️ ✔️
Windows Server 2022 ✔️ ✔️ ✔️
Windows Server, Versão 1903 ou posterior ✔️ ✔️ ✔️
Windows 10, Versão 1607 ou posterior ✔️ ✔️ ✔️
Windows 8.1 ✔️
Windows 7 SP1 ESU ✔️
Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
✔️ ✔️ ✔️
Windows Server Core 2012 R2 ✔️ ✔️ ✔️
Núcleo do Windows Server 2012 ✔️ ✔️ ✔️
Nano Server, Versão 1809+ ✔️ ✔️ ✔️
Nano Server, Versão 1803

Para obter mais informações sobre sistemas operacionais, distribuições e políticas de ciclo de vida suportados pelo .NET 8, consulte Versões do sistema operacional suportadas do .NET 8.

Versões não suportadas

As seguintes versões do .NET não são ❌ mais suportadas:

  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Verificar binários baixados

Depois de baixar um instalador, verifique-o para certificar-se de que o arquivo não foi alterado ou corrompido. Você pode verificar a soma de verificação no seu computador e, em seguida, compará-la com o que foi relatado no site de download.

Quando você baixa um instalador ou binário de uma página de download oficial, a soma de verificação para o arquivo é exibida. Selecione o botão Copiar para copiar o valor da soma de verificação para a área de transferência.

The .NET download page with checksum

Você pode usar o PowerShell ou o Prompt de Comando para validar a soma de verificação do arquivo baixado. Por exemplo, o comando a seguir relata a soma de verificação do arquivo dotnet-sdk-8.0.100-win-x64.exe :

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

Compare a soma de verificação com o valor fornecido pelo site de download.

Usar o PowerShell e um arquivo de soma de verificação para validar

As notas de versão do .NET contêm um link para um arquivo de soma de verificação que você pode usar para validar o arquivo baixado. As etapas a seguir descrevem como baixar o arquivo de soma de verificação e validar um binário de instalação do .NET:

  1. A página de notas de versão do .NET 8 no GitHub em https://github.com/dotnet/core/tree/main/release-notes/8.0 contém uma seção chamada Releases. A tabela nessa seção vincula aos downloads e arquivos de soma de verificação para cada versão do .NET 8:

    The github release notes version table for .NET

  2. Selecione o link para a versão do .NET que você baixou. A seção anterior usou o .NET SDK 8.0.100, que está na versão .NET 8.0.0.

    Gorjeta

    Se você não tiver certeza de qual versão do .NET contém seu arquivo de soma de verificação, explore os links até encontrá-lo.

  3. Na página de versão, você pode ver a versão do .NET Runtime e do .NET SDK e um link para o arquivo de soma de verificação:

    The download table with checksums for .NET

  4. Copie o link para o arquivo de soma de verificação.

  5. Use o script a seguir, mas substitua o link para baixar o arquivo de soma de verificação apropriado:

    Invoke-WebRequest https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt -OutFile 8.0.0-sha.txt
    
  6. Com o arquivo de soma de verificação e o arquivo de versão do .NET baixados para o mesmo diretório, pesquise no arquivo de soma de verificação a soma de verificação do download do .NET:

    Quando a validação for aprovada, você verá True impresso:

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

    Se vir Falso impresso, o ficheiro que transferiu não é válido e não deve ser utilizado.

Informações sobre o tempo de execução

O tempo de execução é usado para executar aplicativos criados com .NET. Quando um autor de aplicativo publica um aplicativo, ele pode incluir o tempo de execução com seu aplicativo. Se eles não incluírem o tempo de execução, caberá ao usuário instalá-lo.

Há três tempos de execução .NET diferentes que você pode instalar, no entanto, você deve instalar o .NET Desktop Runtime e o ASP.NET Core Runtime para máxima compatibilidade com todos os tipos de aplicativos .NET. A tabela a seguir descreve o que está incluído em cada tempo de execução:

Inclui o .NET Runtime Inclui o .NET Desktop Runtime Inclui ASP.NET Core Runtime
Tempo de execução do .NET Sim No Não
Tempo de execução do .NET Desktop Sim Sim No
ASP.NET Core Runtime No No Sim

A lista a seguir fornece detalhes sobre cada tempo de execução:

  • Tempo de execução da área de trabalho
    Executa aplicativos de área de trabalho .NET WPF e Windows Forms para Windows. Inclui o tempo de execução do .NET.

  • ASP.NET Core Runtime
    Executa ASP.NET aplicativos principais.

  • Tempo de execução do .NET
    Este tempo de execução é o tempo de execução mais simples e não inclui nenhum outro tempo de execução. Instale o ASP.NET Core Runtime e o Desktop Runtime para obter a melhor compatibilidade com aplicativos .NET.

Informações do SDK

O SDK é usado para criar e publicar aplicativos e bibliotecas .NET. A instalação do SDK inclui os três tempos de execução: ASP.NET Core, Desktop e .NET.

PCs Windows baseados em Arm

As seções a seguir descrevem coisas que você deve considerar ao instalar o .NET em um PC Windows baseado em Arm.

O que é suportado

A tabela a seguir descreve quais versões do .NET são suportadas em um PC Windows baseado em Arm:

Versão .NET Arquitetura SDK Runtime Conflito de caminho
8 Braço64 Sim Sim No
8 x64 Sim Sim No
7 Braço64 Sim Sim No
7 x64 Sim Sim No
6 Braço64 Sim Sim No
6 x64 Sim Sim No
5 Braço64 Sim Sim Sim
5 x64 Não Sim Sim

As versões x64 e Arm64 do SDK do .NET existem independentemente uma da outra. Se uma nova versão for lançada, cada instalação de arquitetura precisará ser atualizada.

Diferenças de caminho

Em um PC Windows baseado em Arm, todas as versões Arm64 do .NET são instaladas na pasta normal C:\Program Files\dotnet\ . No entanto, a versão x64 do SDK do .NET é instalada na pasta C:\Program Files\dotnet\x64\ .

Conflitos de caminho

O x64 .NET SDK é instalado em seu próprio diretório, conforme descrito na seção anterior. Isso permite que as versões Arm64 e x64 do SDK do .NET existam na mesma máquina. No entanto, qualquer SDK x64 anterior ao 6 não é suportado e é instalado no mesmo local da versão Arm64, a pasta C:\Program Files\dotnet\ . Se você quiser instalar um SDK x64 não suportado, você deve desinstalar a versão Arm64 primeiro. O oposto também é verdadeiro, você deve desinstalar o SDK x64 não suportado para instalar a versão Arm64.

Variáveis de caminho

As variáveis de ambiente que adicionam o .NET ao caminho do sistema, como a PATH variável, podem precisar ser alteradas se você tiver as versões x64 e Arm64 do SDK do .NET instaladas. Além disso, algumas ferramentas dependem da variável de DOTNET_ROOT ambiente, que também precisaria ser atualizada para apontar para a pasta de instalação apropriada do SDK do .NET.

Dependências

As seguintes versões do Windows são suportadas com o .NET 8:

Nota

Um + símbolo representa a versão mínima.

SO Versão Arquiteturas
Windows 11 22000+ x64, x86, braço64
Cliente Windows 10 1607+ x64, x86, braço64
Windows Server 2012+ x64, x86
Núcleo do Windows Server 2012+ x64, x86
Servidor Nano 1809+ x64

Para obter mais informações sobre sistemas operacionais, distribuições e políticas de ciclo de vida suportados pelo .NET 8, consulte Versões do sistema operacional suportadas do .NET 8.

Windows 7 / 8.1 / Servidor 2012

Mais dependências serão necessárias se você estiver instalando o SDK ou o tempo de execução do .NET nas seguintes versões do Windows:

Sistema operativo Pré-requisitos
Windows 7 SP1 ESU - Microsoft Visual C++ 2015-2019 Redistribuível 64-bit / 32-bit
- KB3063858 64-bit 32-bit /
- Microsoft Root Certificate Authority 2011 (somente instalador offline do .NET Core 2.1)
Windows 8.1 Microsoft Visual C++ 2015-2019 Redistribuível de 64 bits / de 32 bits
Windows Server 2012 Microsoft Visual C++ 2015-2019 Redistribuível de 64 bits / de 32 bits
Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 Redistribuível de 64 bits / de 32 bits

Os requisitos anteriores também são necessários se você receber um erro relacionado a uma das seguintes dlls:

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

Docker

Os contêineres fornecem uma maneira leve de isolar seu aplicativo do resto do sistema host. Contêineres na mesma máquina compartilham apenas o kernel e usam recursos fornecidos ao seu aplicativo.

O .NET pode ser executado em um contêiner do Docker. As imagens oficiais do .NET Docker são publicadas no Microsoft Container Registry (MCR) e podem ser detetadas no repositório do Microsoft .NET Docker Hub. Cada repositório contém imagens para diferentes combinações do .NET (SDK ou Runtime) e do SO que você pode usar.

A Microsoft fornece imagens adaptadas para cenários específicos. Por exemplo, o repositório ASP.NET Core fornece imagens criadas para executar aplicativos ASP.NET Core em produção.

Para obter mais informações sobre como usar o .NET em um contêiner do Docker, consulte Introdução ao .NET e Docker e exemplos.

Resolução de Problemas

Depois de instalar o SDK do .NET, você pode ter problemas ao tentar executar comandos da CLI do .NET. Esta secção recolhe esses problemas comuns e fornece soluções.

Nenhum SDK .NET foi encontrado

Muito provavelmente você instalou as versões x86 (32 bits) e x64 (64 bits) do SDK do .NET. Isso está causando um conflito porque quando você executa o dotnet comando, ele está resolvendo para a versão x86 quando deveria resolver para a versão x64. Isso geralmente é corrigido ajustando a %PATH% variável para resolver a versão x64 primeiro.

  1. Verifique se você tem ambas as versões instaladas executando o where.exe dotnet comando. Se o fizer, deverá ver uma entrada para as pastas Program Files\ e Program Files (x86)\ . Se a pasta Program Files (x86)\ for a primeira, como demonstrado pelo exemplo a seguir, ela está incorreta e você deve continuar para a próxima etapa.

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

    Se estiver correto e o Program Files\ for o primeiro, você não tem o problema que esta seção está discutindo e você deve criar um problema de solicitação de ajuda do .NET no GitHub

  2. Pressione o botão Windows e digite "Edit the system environment variables" na pesquisa. Selecione Editar as variáveis de ambiente do sistema.

    Windows start menu with edit environment variable

  3. A janela Propriedades do sistema é aberta na guia Avançado. Selecione Variáveis de ambiente.

    The Windows system properties panel open.

  4. Na janela Variáveis de Ambiente, no grupo Variáveis do sistema, selecione a linha Caminho* e, em seguida, selecione o botão Editar.

    The environment variables window with user and system variables.

  5. Use os botões Mover para cima e Mover para baixo para mover a entrada C:\Program Files\dotnet\ acima de C:\Program Files (x86)\dotnet\.

    The environment variables list for the system.

A criação de aplicativos é mais lenta do que o esperado

Certifique-se de que o Smart App Control, uma funcionalidade do Windows, está desativado. O Smart App Control não é recomendado para ser ativado em máquinas usadas para desenvolvimento. Qualquer configuração diferente de "off" pode afetar negativamente o desempenho do SDK.

Próximos passos