Notas sobre a versão do Visual Studio 2019 versão 16.7Visual Studio 2019 version 16.7 Release Notes
Developer Community | Requisitos do Sistema | Compatibilidade | Código Distribuível | Termos da Licença | Blogs | Problemas Conhecidos da Última VersãoDeveloper Community | System Requirements | Compatibility | Distributable Code | License Terms | Blogs | Latest Release Known Issues
Clique no botão para baixar a versão mais recente do Visual Studio 2019.Click a button to download the latest version of Visual Studio 2019. Para conferir instruções sobre a instalação e a atualização do Visual Studio 2019, consulte Atualizar o Visual Studio 2019 para a versão mais recente.For instructions on installing and updating Visual Studio 2019, see the Update Visual Studio 2019 to the most recent release. Além disso, consulte as instruções em como instalar offline.Also, see instructions on how to install offline.
Novidades no Visual Studio 2019 versão 16.7What's New in Visual Studio 2019 version 16.7
Período de suporteSupport Timeframe
O Visual Studio 2019 versão 16.7 é a terceira linha de base de serviço com suporte para o Visual Studio 2019.Visual Studio 2019 version 16.7 is the third supported servicing baseline for Visual Studio 2019. Os clientes Enterprise e Professional que precisam adotar um ambiente de desenvolvimento estável e seguro de longo prazo são incentivados a padronizar para essa versão.Enterprise and Professional customers needing to adopt a long term stable and secure development environment are encouraged to standardize on this version. Conforme explicado detalhadamente em nossa política de suporte e ciclo de vida, a versão 16.7 terá suporte com correções e atualizações de segurança por um ano após o lançamento da próxima linha de base de serviço.As explained in more detail in our lifecycle and support policy, version 16.7 will be supported with fixes and security updates for one year after the release of the next servicing baseline.
Além disso, agora que a versão 16.7 está disponível, a versão 16.4, que foi a última linha de base de serviço, terá suporte por mais 12 meses e ele será encerrado em outubro de 2021.In addition, now that version 16.7 is available, version 16.4, which was the last servicing baseline, will be supported for an additional 12 months and will go out of support in October 2021. Observe também que as versões 16,5 e 16,6 não estão mais em suporte.Note as well that versions 16.5 and 16.6 are no longer under support either. Essas versões intermediárias receberam correções de serviço somente até o lançamento da próxima atualização secundária.These intermediary releases received servicing fixes only until the next minor update released.
Você pode adquirir a versão mais recente e segura do Visual Studio 2019 versão 16.7 na seção de downloads de my.visualstudio.com.You can acquire the latest most secure version of Visual Studio 2019 version 16.7 in the downloads section of my.visualstudio.com. Para obter mais informações sobre as linhas de base com suporte do Visual Studio, confira a política de suporte do Visual Studio 2019.For more information about Visual Studio supported baselines, please review the support policy for Visual Studio 2019.
Lançamentos do Visual Studio 2019 versão 16.7Visual Studio 2019 version 16.7 Releases
- 12 de janeiro de 2021 — Visual Studio 2019 versão 16.7.10January 12, 2021 — Visual Studio 2019 version 16.7.10
- 08 de dezembro de 2020 — Visual Studio 2019 versão 16.7.9December 08, 2020 — Visual Studio 2019 version 16.7.9
- 10 de novembro de 2020 — Visual Studio 2019 versão 16.7.8November 10, 2020 — Visual Studio 2019 version 16.7.8
- 27 de outubro de 2020 — Visual Studio 2019 versão 16.7.7October 27, 2020 — Visual Studio 2019 version 16.7.7
- 13 de outubro de 2020 — Visual Studio 2019 versão 16.7.6October 13, 2020 — Visual Studio 2019 version 16.7.6
- 29 de setembro de 2020 — Visual Studio 2019 versão 16.7.5September 29, 2020 — Visual Studio 2019 version 16.7.5
- 21 de setembro de 2020 — Visual Studio 2019 versão 16.7.4September 21, 2020 — Visual Studio 2019 version 16.7.4
- 8 de setembro de 2020 — Visual Studio 2019 versão 16.7.3September 8, 2020 — Visual Studio 2019 version 16.7.3
- 18 de agosto de 2020 — Visual Studio 2019 versão 16.7.2August 18, 2020 — Visual Studio 2019 version 16.7.2
- 11 de agosto de 2020 — Visual Studio 2019 versão 16.7.1August 11, 2020 — Visual Studio 2019 version 16.7.1
- 5 de agosto de 2019 — Visual Studio 2020 versão 16.7.0August 5, 2020 — Visual Studio 2019 version 16.7.0
Notas sobre a versão arquivadas do Visual Studio 2019Visual Studio 2019 Archived Release Notes
- Notas sobre o lançamento do Visual Studio 2019 versão 16.6Visual Studio 2019 version 16.6 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.5Visual Studio 2019 version 16.5 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.4Visual Studio 2019 version 16.4 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.3Visual Studio 2019 version 16.3 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.2Visual Studio 2019 version 16.2 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.1Visual Studio 2019 version 16.1 Release Notes
- Notas sobre a versão do Visual Studio 2019 versão 16.0Visual Studio 2019 version 16.0 Release Notes
Blog do Visual Studio 2019Visual Studio 2019 Blog
O Blog do Visual Studio 2019 é a fonte oficial de insights do produto da equipe de engenharia do Visual Studio.The Visual Studio 2019 Blog is the official source of product insight from the Visual Studio Engineering Team. É possível encontrar informações detalhadas sobre as versões do Visual Studio 2019 nas seguintes postagens:You can find in-depth information about the Visual Studio 2019 releases in the following posts:
- Visual Studio 2019 v16.8 e v16.9, Versão prévia 1, disponível hojeVisual Studio 2019 v16.8 and v16.9 Preview 1 Available Today
- O Visual Studio 2019 v16.7 e v16.8 Versão Prévia 1 será lançado hoje.Visual Studio 2019 v16.7 and v16.8 Preview 1 Release Today!
- O Visual Studio 2019 v16.7 Versão Prévia 2 está disponível hoje.Visual Studio 2019 v16.7 Preview 2 Available Today!
- Novas atualizações incríveis na experiência do Git no Visual StudioExciting new updates to the Git experience in Visual Studio
- Em lançamento hoje! Visual Studio 2019 versões 16.6 e 16.7 Versão Prévia 1Releasing Today! Visual Studio 2019 v16.6 & v16.7 Preview 1
- O Visual Studio 2019 versão 16.6 versão prévia 2 lança novos recursos para vocêVisual Studio 2019 version 16.6 Preview 2 Releases New Features Your Way
- O Visual Studio 2019 versão 16.5 já está disponível!Visual Studio 2019 version 16.5 is now available!
- Esta é a temporada de lançamento do Visual Studio 2019 v 16.4'Tis the Season for Visual Studio 2019 v16.4 Release
- Visual Studio 2019 v16.4 versão prévia 2, esportes de outono e pumpkin spiceVisual Studio 2019 v16.4 Preview 2, Fall Sports, and Pumpkin Spice
- Suporte do .NET Core e muito mais no Visual Studio 2019 versão 16.3 – atualize agora.NET Core Support and More in Visual Studio 2019 version 16.3 - Update Now!
- Visual Studio 2019 versão 16.3 versão prévia 2 e Visual Studio 2019 para Mac versão 8.3 versão prévia 2 lançados.Visual Studio 2019 version 16.3 Preview 2 and Visual Studio 2019 for Mac version 8.3 Preview 2 Released!
- Visual Studio 2019 versão 16.2 e 16.3 versão prévia 1 agora disponíveisVisual Studio 2019 version 16.2 and 16.3 Preview 1 now available
- Visual Studio 2019 versão 16.2 versão prévia 2Visual Studio 2019 version 16.2 Preview 2
- Visual Studio 2019 versão 16.1 e versão prévia 16.2Visual Studio 2019 version 16.1 and Preview 16.2 Preview
- Visual Studio 2019: Code faster. Work smarter. Create the future. (Visual Studio 2019: Escreva códigos mais rapidamente. Trabalhe de forma mais inteligente. Crie no futuro.)Visual Studio 2019: Code faster. Work smarter. Create the future.
Visual Studio 2019 versão 16.7.10Visual Studio 2019 version 16.7.10 
lançada em 12 de janeiro de 2021released January 12, 2021
Neste lançamento do Visual Studio 2019 versão 16.7.10In this Release of Visual Studio 2019 version 16.7.10
Aviso de Consultoria de SegurançaSecurity Advisory Notice
CVE-2021-1651 / CVE-2021-1680 Vulnerabilidade de elevação de privilégio do serviço Coletor Padrão do Hub de Diagnóstico CVE-2021-1651 / CVE-2021-1680 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability
Há uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector incorrectly handles data operations.
CVE-2020-26870 Vulnerabilidade de execução remota de código do Instalador do Visual Studio CVE-2020-26870 Visual Studio Installer Remote Code Execution Vulnerability
Existe uma vulnerabilidade de execução remota de código quando o Instalador do Visual Studio tenta mostrar um markdown mal-intencionado.A remote code execution vulnerability exists when the Visual Studio Installer attempts to show malicious markdown.
CVE-2021-1723 Vulnerabilidade de negação de serviço do .NET Core e do Visual Studio CVE-2021-1723 .NET Core and Visual Studio Denial of Service Vulnerability
Existe uma vulnerabilidade de negação de serviço na implementação de Kestrel.A denial of service vulnerability exists in the implementation of Kestrel.
Visual Studio 2019 versão 16.7.9Visual Studio 2019 version 16.7.9
lançado em 08 de dezembro de 2020released December 08, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.9In this Release of Visual Studio 2019 version 16.7.9
Aviso de Consultoria de SegurançaSecurity Advisory Notice
CVE-2020-17156 Vulnerabilidade de execução de código remoto do Visual Studio CVE-2020-17156 Visual Studio Remote Code Execution Vulnerability
Existe uma vulnerabilidade de execução remota de código quando o Visual Studio clona um repositório mal-intencionado.A remote code execution vulnerability exists when Visual Studio clones a malicious repository.
- Erro interno do compilador no VS 16.7.0Internal compiler error VS 16.7.0
- Regressão do erro interno do compilador da versão 16.4Internal compiler error regression from 16.4
- O MSVC 16.7 gera C2355 incorretamente para uso desse ponteiro na inicialização para um membro não estático na classeMSVC 16.7 incorrectly throwing C2355 for use of this pointer on initialization for in class non-static member
- Saída de código anexado incorreta na versão x86 do VS2019 atualWrong Output of attached Code in x86-release current VS2019
- Atualização dos conjuntos de ferramentas do MSVC 14.16, 14.20, 14.24, 14.27 e 14.28 para corresponder às versões de manutenção mais recentes.Update of MSVC 14.16, 14.20, 14.24, 14.27, and 14.28 toolsets to match latest servicing releases.
Visual Studio 2019 versão 16.7.8Visual Studio 2019 version 16.7.8
lançada em 10 de novembro de 2020released November 10, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.8In this Release of Visual Studio 2019 version 16.7.8
Aviso de Consultoria de SegurançaSecurity Advisory Notice
CVE-2020-17100 Vulnerabilidade de adulteração do Visual Studio CVE-2020-17100 Visual Studio Tampering Vulnerability
Há uma vulnerabilidade de adulteração quando as Ferramentas Python para Visual Studio criam a pasta python27.A tampering vulnerability exists when the Python Tools for Visual Studio creates the python27 folder. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.An attacker who successfully exploited this vulnerability could run processes in an elevated context.
- ICE durante a análise de cppcorecheck com a versão 16.4.9 do compiladorICE during cppcorecheck analysis with compiler version 16.4.9
- Erro fatal C1001 do OACR: erro interno do compiladorOACR fatal error C1001: Internal compiler error
- ICEs durante a análise de cppcorecheck com a versão 16.7.1 do compiladorICEs during cppcorecheck analysis with compiler version 16.7.1
- ICE no PREfast 16.7.1 em execução no código do Office (ppt)ICE in PREfast 16.7.1 running against Office code (ppt)
- O pré-requisito do ClickOnce VC++ 14 não será instalado devido à chave pública diferente.ClickOnce prerequisite VC++ 14 wont install due to different public key. Essa correção pode ter uma maior possibilidade de exigir uma reinicialização do computador para instalar um pacote redistribuível do VC++ atualizado.This fix may have an increased chance of requiring a reboot of the machine in order to install an updated VC++ Redistributable package.
- O otimizador remove de forma incorreta informações de EH, gerando falha em algumas exceçõesOptimizer incorrectly removes EH information causing some exceptions to crash
- _InterlockedExchangeAdd64 não está resolvido no x86_InterlockedExchangeAdd64 is unresolved on x86
- Correção de um bug no compilador C++ de inicialização incorreta de uma agregação com um campo de bits de alinhamentoFixed a bug in the C++ compiler of incorrect initialization of an aggregate with an alignment bitfield
Visual Studio 2019 versão 16.7.7Visual Studio 2019 version 16.7.7 
lançado em 27 de outubro de 2020released October 27, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.7In this Release of Visual Studio 2019 version 16.7.7
- Suporte para Xcode 12.1 GM adicionado.Added Xcode 12.1 GM support.
- Atualização dos conjuntos de ferramentas MSVC 14.16, 14.20, 14.24 e 14.26 para corresponder às versões de manutenção mais recentes.Update of MSVC 14.16, 14.20, 14.24, and 14.26 toolsets to match latest servicing releases.
- Correção de um bug que causou uma falha ao renomear um tipo e um arquivo não abertos no editor atualmente.Fixed a bug that caused a crash when renaming a type and file currently not open in the editor.
Visual Studio 2019 versão 16.7.6Visual Studio 2019 version 16.7.6
lançado em 13 de outubro de 2020released October 13, 2020
Nesta versão do Visual Studio 2019 versão 16.7.6In this Release of Visual Studio 2019 version 16.7.6
- Recebo a mensagem "Trabalhando nisso" quando alterno para uma guiaGet the message "Working on it" when switching to a tab
- Comentários sobre o Visual Studio – a nova versão baseada em navegador da Web falha devido a um problema de proxyVisual Studio Feedback - new Web-Browser based Version crashes due to proxy failure
- Não é possível compilar o projeto de biblioteca xamarin.ios com a declaração de interface .xib em uma versão específica do VSUnable to build xamarin.ios library project with .xib interface declaration on specific version of VS
- Não é possível gerar shim para System.DateTimeCannot generate shim for System.DateTime
- Sugestão de IntelliCode, filtragem de erros de compilaçãoIntelliCode suggestion, filtering compilation errors
- Como inserir o SDK do .NET Core 3.1.403 no Visual Studio 2019Inserting .NET Core SDK 3.1.403 into Visual Studio 2019
- Correção de um bug que afeta a depuração do aplicativo Service Fabric habilitado para https.Fixed a bug that affects debugging https enabled Service Fabric Application.
- Suporte a pacotes NuGet do Service Fabric com dependências externas.Support Service Fabric nuget packages with external dependencies.
Visual Studio 2019 versão 16.7.5Visual Studio 2019 version 16.7.5
lançado em 29 de setembro de 2020released September 29, 2020
Nesta versão do Visual Studio 2019 versão 16.7.5In this Release of Visual Studio 2019 version 16.7.5
- Geração de código incorreta em ARM64 com matemática de vetor (DirectXMath.h)Incorrect code gen on ARM64 with vector math (DirectXMath.h)
- Conversões de tipos com falha: VS.2019 V16.7.1, nativo C++Faulty type casts : VS.2019 V16.7.1, native C++
- Falha dos builds do C++ com SDK do Windows 8.1 após a atualização para o Visual Studio 16.7C++ builds with Windows SDK 8.1 fail after upgrade to Visual Studio 16.7
- Com VC+ + 16.7, a ABI é alterada para vtable.With VC++ 16.7 ABI change in vtable.
- Erro fatal C1001: Erro interno do compilador com 16.7.0fatal error C1001: Internal compiler error with 16.7.0
- Os metadados de manipulação de exceção CET/EHCONT estão quebrados em vcruntime140.dll.CET/EHCONT Exception handling metadata is broken in vcruntime140.dll. Essa correção pode ter uma maior possibilidade de exigir uma reinicialização do computador para instalar um pacote redistribuível do VC++ atualizado.This fix may have an increased chance of requiring a reboot of the machine in order to install an updated VC++ Redistributable package.
- Compatibilidade de PGO com MEMMAX parece não ser respeitadaPGO switch MEMMAX seems not respected
- [19.26.28900] Novo compilador causando possível codegen inválido[19.26.28900] New compiler causing possible bad codegen
- A análise de código falhou com o estouro negativo de bufferCode analysis crashed with buffer underflow
- Foi corrigido um bug no compilador C++ ao importar classes com métodos que contêm uma combinação de argumentos padrão e a lista de argumentos [params]/[ParamArray].Fixed a bug in the C++ compiler when importing classes with methods containing a combination of default arguments and [params] / [ParamArray] argument list.
Visual Studio 2019 versão 16.7.4Visual Studio 2019 version 16.7.4
lançado em 21 de setembro de 2020released September 21, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.4In this Release of Visual Studio 2019 version 16.7.4
- Será adicionado um suporte para Xcode 12.0 GM.Adds Xcode 12.0 GM support.
- Será adicionado um suporte para configurar uma Cor definida como Cor de Destaque no editor Info.plist.Adds support for setting a Color set as Accent Color in the Info.plist editor.
Visual Studio 2019 versão 16.7.3Visual Studio 2019 version 16.7.3
lançada em 8 de setembro de 2020released September 08, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.3In this Release of Visual Studio 2019 version 16.7.3
Aviso de Consultoria de SegurançaSecurity Advisory Notice
CVE-2020-1130 Vulnerabilidade de elevação de privilégio do Coletor Padrão do Hub de Diagnóstico CVE-2020-1130 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability
Há uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles data operations. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.An attacker who successfully exploited this vulnerability could run processes in an elevated context.
CVE-2020-1133 Vulnerabilidade de elevação de privilégio do Coletor Padrão do Hub de Diagnóstico CVE-2020-1133 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability
Há uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de arquivo.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles file operations. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.An attacker who successfully exploited this vulnerability could run processes in an elevated context.
CVE-2020-16856 Vulnerabilidade de execução de código remoto do Visual Studio CVE-2020-16856 Visual Studio Remote Code Execution Vulnerability
Existe uma vulnerabilidade de execução remota de código no Visual Studio quando ele manipula incorretamente os objetos na memória.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código arbitrário no contexto do usuário atual.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.
CVE-2020-16874 Vulnerabilidade de execução de código remoto do Visual Studio CVE-2020-16874 Visual Studio Remote Code Execution Vulnerability
Existe uma vulnerabilidade de execução remota de código no Visual Studio quando ele manipula incorretamente os objetos na memória.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código arbitrário no contexto do usuário atual.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.
CVE-2020-1045 Vulnerabilidade de bypass do recurso de segurança do Microsoft ASP.NET Core CVE-2020-1045 Microsoft ASP.NET Core Security Feature Bypass Vulnerability
Há uma vulnerabilidade de bypass do recurso de segurança no modo como o Microsoft ASP.NET Core analisa nomes de cookies codificados.A security feature bypass vulnerability exists in the way Microsoft ASP.NET Core parses encoded cookie names. O analisador de cookies do ASP.NET Core decodifica cadeias de caracteres inteiras de cookies que poderão permitir que um invasor mal-intencionado defina um segundo cookie usando o nome que está sendo codificado por porcentagem.The ASP.NET Core cookie parser decodes entire cookie strings which could allow a malicious attacker to set a second cookie with the name being percent encoded.
Problemas adicionais corrigidos nesta versãoAdditional Issues Fixed in this Release
- Corrigida uma falha do compilador em instruções switch ou expressões switch que usam correspondência de padrões.Fixed a compiler crash for switch statements or switch expressions that use pattern matching.
- Restaurado o fluxo de trabalho "Parar depuração (Shift + F5)" no teste de unidade pelo encerramento da execução de teste.Restored the "Stop Debugging(Shift +F5)" workflow for Unit Testing by terminating the test run.
- Impedir que o VS falhe ao alternar a configuração do projeto quando o designer .NET Core WinForms tiver alterações não salvas.Prevent VS crash on switching project configuration when WinForms .NET Core designer has unsaved changes.
- As versões sem suporte do .NET Core não serão mais reinstaladas durante um reparo ou upgrade se tiverem sido removidas fora da instalação do VS.Out of support versions of .NET Core will no longer be reinstalled during a repair or upgrade if they were removed outside of VS setup.
- Corrigido um problema em que as dependências externas não eram pesquisadas com precisão na opção Localizar nos Arquivos.Fixed an issue where External Dependencies weren't accurately searched in Find in Files.
- Reintroduzido o botão "Confirmar..." no submenu Git do menu de contexto de Gerenciador de Soluções.Reintroduced the "Commit..." button in the Git submenu in Solution Explorer's context menu.
- Corrigido um bug que fazia com que o rótulo Observações de Check-In do TFVC ficasse invisível.Fixed a bug that caused the TFVC Check-in Notes label to be invisible.
- Corrigida a falha ao usar o designer WinForms no csproj de estilo SDK com várias estruturas de destino.Fix crash when using WinForm designer in SDK-style csproj with multiple target frameworks.
- Corrigido o problema em que <d:Style.DataContext> relatava um erro de marcação inválido.Fixed issue where <d:Style.DataContext> was reporting an invalid markup error.
Principais problemas do Visual Studio 2019 versão 16.7.3 corrigidos pela Developer CommunityTop Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.3
- O VS 2019 não é capaz de localizar a função de código de confirmação depois que o código de confirmação é modificado VS 2019 cannot find the commit code function after the modified commit code
- O designer WinForms não carrega formulários com herança visual. FALHA NO VS! WinForms Designer not load Forms with visual inheritance. VS CRASH!
- Localizar em Arquivos: alguns arquivos *. h não são incluídos na pesquisa, mesmo quando pertencem claramente a um projeto Find in Files--Some *.h files are not included in the search even though they clearly belong to a project
- O IntelliSense em segundo plano de C++ de regressão trava em opensslconf. h de um caminho UNC em 16.7 Regression c++ background intellisense hangs on opensslconf.h fron a unc path in 16.7
- A refatoração de C++ a refatoração por assinatura de alteração esquece os arquivos de cabeçalho C++ refactoring by change signature forgets header files
- Observações de check-in do TFVC não exibidas no VS 2019 TFVC check-in notes not displayed in vs 2019
- Designer XAML do WFP – tempo de design do contexto de dados do estilo WPF XAML Designer - Style Data Context Design Time
- Parar depuração (Shift + F5) não interrompe a execução de teste Atualização do VS 2019 16.7.2. Stop Debugging (Shift+ F5) does not stop the test run VS 2019 update 16.7.2.
- O VS2019 não abre a pasta com o projeto CMake VS2019 won't open folder with CMake project
Visual Studio 2019 versão 16.7.2Visual Studio 2019 version 16.7.2
lançado em 18 de agosto de 2020released August 18, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.2In This Release of Visual Studio 2019 version 16.7.2
Principais problemas do Visual Studio 2019 versão 16.7.2 corrigidos pela Developer CommunityTop Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.2
- Barra de ouro após a exceção de RPC em StreamPipeReader.AdvanceTo: Nenhuma operação de leitura a ser concluídaGold bar following RPC exception in StreamPipeReader.AdvanceTo: No reading operation to complete
- Resolvemos um problema de falha que ocorria ao digitar a vírgula que separa os registros posicionais, mas antes digitar o próximo caractere.We have resolved a crashing issue that would occur when typing the comma separating positional records, but before having typed the next character.
- Falha na inicialização do Visual Studio 2019 v16.7 para Xamarin Android na depuração.Visual Studio 2019 v16.7 Xamarin Android crash on start up in debug.
O Visual Studio 2019 versão 16.7.1Visual Studio 2019 version 16.7.1
lançado em 11 de agosto de 2020released August 11, 2020
Neste lançamento do Visual Studio 2019 versão 16.7.1In This Release of Visual Studio 2019 version 16.7.1
Principais problemas do Visual Studio 2019 versão 16.7.1 corrigidos pela Developer CommunityTop Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.1
- O projeto do SQL Server falha ao editar colunas usando o painel de design.SQL Server Project is crashing when editing columns using design panel.
- Projeto de banco de dados do SQL Server: há falha no VS quando ocorre a rolagem rápida de uma tabela no Modo de Exibição de DesignSQL Server Database project : Fast scrolling in Design View of a table crashes VS
- CImage::Draw() tem chamada ambígua para DrawImage() na 16.7.0 Preview1CImage::Draw() has ambiguous call to DrawImage() in 16.7.0 Preview1
- Erro do compilador ao reduzir as instruções do comutador x86Compiler Error when lowering x86 switch statements
- arm64: função muito grande após a atualização de 15.9.16 para 16.4.11arm64: function too large after upgrade from 15.9.16 to 16.4.11
- Arm64: o registro indireto (x8) contém um valor inválido no início da funçãoArm64: Indirect register (x8) contains invalid value at start of function
- Erro inesperado C2027: uso de tipo indefinido ao usar modelos com /permissive-Unexpected error C2027: use of undefined type when using templates with /permissive-
- Correção de um bug que fazia com que o compilador de C++ falhasse ao compilar NanoRangeFixed a bug causing the C++ compiler to crash when building NanoRange
Visual Studio 2019 versão 16.7.0Visual Studio 2019 version 16.7.0
lançado em 5 de agosto de 2020released August 5, 2020
Nesta versão do Visual Studio 2019 versão 16.7.0In This Release of Visual Studio 2019 version 16.7.0
C++C++
- Nosso suporte remoto ao C++ agora é compatível com uma maior variedade de distribuições e shells do Linux, incluindo sh, csh, bash, tsch, ksh, zsh e dash.Our remote C++ support now supports a wider range of Linux distros and shells, including sh, csh, bash, tsch, ksh, zsh, and dash. Você pode substituir a escolha de um shell para uma conexão remota modificando a nova propriedade "shell" por meio de ConnectionManager.exe.You can override the choice of a shell for a remote connection by modifying the new "shell" property via ConnectionManager.exe. Esse suporte foi testado com projetos do Linux baseados no MSBuild e projetos CMake visando um sistema Linux remoto ou WSL.This support has been tested with both MSBuild-based Linux projects and CMake projects targeting a remote Linux system or WSL.
- Agora você pode usar o Ninja (um sistema de build que avalia builds incrementais muito rapidamente) para aprimorar tempos de build incrementais para projetos do Linux baseados em MSBuild.You can now use Ninja (a build system that evaluates incremental builds very quickly) to improve incremental build times for MSBuild-based Linux projects. Você pode aceitar esse recurso definindo "Habilitar Build Incremental" como "Com o Ninja" na Página de Propriedades Gerais.You can opt into this feature by setting "Enable Incremental Build" to "With Ninja" in the General Property Page. O Ninja (ninja-build) precisa ser instalado em seu sistema Linux remoto ou WSL.Ninja (ninja-build) must be installed on your remote Linux system or WSL.
- Novos recursos de biblioteca padrão do C++20 foram implementados.New C++20 Standard Library features have been implemented. Veja o Log de mudanças de STL no GitHub para uma lista detalhada.Please refer to the STL Changelog on GitHub for a detailed list.
- Agora você pode editar e definir conexões SSH remotas padrão no Gerenciador de Conexões.You can now edit and set default remote SSH connections in the Connection Manager. Isso significa que você pode editar uma conexão remota existente (por exemplo, se seu endereço IP foi alterado) e definir conexões padrão para serem consumidas em CMakeSettings.json e launch.vs.json.This means you can edit an existing remote connection (e.g. if its IP address changed) and set default connections to be consumed in CMakeSettings.json and launch.vs.json. As conexões SSH remotas permitem que você compile e depure projetos C++ em um sistema Linux remoto diretamente do Visual Studio.Remote SSH connections allow you to build and debug C++ projects on a remote Linux system directly from Visual Studio.

- Suporte aprimorado do IntelliSense para Clang no Windows (clang-cl) no Visual Studio.Enhanced IntelliSense support for Clang on Windows (clang-cl) in Visual Studio. O caminho de inclusão do Clang agora inclui as bibliotecas do Clang. Aprimoramos a exibição de rabiscos no editor ao usar a biblioteca padrão e adicionamos suporte para C++2a no modo de Clang.The clang include path now includes the clang libraries, we've improved in-editor squiggle display when using the std library, and we've added support for C++2a in clang mode.
- agora você pode testar os erros de código subjacentes e ver as correções rápidas mais sugeridas em projetos C++.You can now try out underlining code errors and see more suggested quick fixes in C++ projects. Habilite esse recurso em Ferramentas > Opções > Editor de Texto > C/C++ > Experimental > Definir "Desabilitar o Linter de Código Experimental" como falso.Enable this feature under Tools > Options > Text Editor > C/C++ > Experimental > Set 'Disable Experimental Code Linter' to false. Saiba mais no Blog da Equipe do C++.Learn more on the C++ Team Blog.

- Adicionamos quatro novas regras de análise de código para incorporar recursos de segurança adicionais em C++ : C26817, C26818, C26819 e C26820.We've added four new code analysis rules to incorporate additional safety features into C++: C26817, C26818, C26819, and C26820.
- Adicionamos suporte de primeira classe para depurar projetos CMake em sistemas remotos com gdbserver.We've added first-class support for debugging CMake projects on remote systems with gdbserver.
- Encontre erros de corrupção de memória facilmente com uma implementação experimental do AddressSanitizer para C++ no Visual Studio, agora disponível para projetos nativos x64.Find memory corruption errors easily with an experimental implementation of AddressSanitizer for C++ in Visual Studio, now available for x64 native projects. Agora, também damos suporte ao uso de runtimes de depuração (/MTd,/MDd,/LDd).We also now support the use of debug runtimes (/MTd, /MDd, /LDd).
- O IntelliSense agora tem suporte básico para conceitos, inicializadores designados e vários outros recursos do C++20.IntelliSense now has basic support for Concepts, designated initializers, and several other C++20 features.
- Os arquivos .ixx e .cppm agora são reconhecidos como C++ e serão tratados como tal pelo realce de sintaxe e pelo IntelliSense..ixx and .cppm files are now recognised as C++ and will be treated as such by the syntax highlighter and IntelliSense.
Definir playlists dinamicamenteDefine playlists dynamically
Agora você pode definir playlists dinamicamente com base no projeto, na classe ou no namespace.You can now define playlists dynamically based on Project, Class, or Namespace. Isso significa que você pode configurar uma playlist para incluir tudo em um determinado projeto/classe/namespace; qualquer teste novo adicionado a esse grupo será incluído automaticamente em sua playlist!This means you can configure a playlist to include everything in a certain project/class/namespace; any new test added to that group will automatically be included in your playlist!
- Crie uma playlist clicando com o botão direito do mouse em um projeto, namespace ou agrupamento de classes no Gerenciador de Testes.Create a playlist by right clicking on a project, namespace, or class grouping in the Test Explorer.

- Edite quais grupos estão incluídos na playlist clicando no botão editar na barra de ferramentas.Edit what groups are included in the playlist by clicking on the edit button in the tool bar. As caixas de seleção serão exibidas.Check boxes will appear. Edite os grupos conforme desejado.Edit groups as desired.

- Em vez de ser uma lista estática de testes, essas playlists são atualizadas dinamicamente com base em regras.Instead of being a static list of tests these playlists dynamically update based on rules. Se deseja entender melhor quais regras estão gerando sua playlist dinâmica, salve o arquivo de playlist em disco com o botão salvar e exiba as regras geradas no xml.If you want to better understand what rules are generating your dynamic playlist, save the playlist file to disk with the save button and view the rules generated in the xml.

- Você pode continuar incluindo/excluindo testes individuais e a playlist poderá atualizar as regras dinâmicas dela ou voltar a acompanhar os testes como uma lista estática.You can continue to include/exclude individual tests and the playlist will be able to either update its dynamic rules or switch back to keeping track of tests as a static list. Você pode usar características para definir um grupo dinâmico editando o arquivo xml de playlist diretamente.You can also use traits to define a dynamic group by editing the playlist xml file directly.
Produtividade do GitGit Productivity
Alterne a versão prévia do recurso na 'Nova experiência do usuário do Git' em Ferramentas | Opções | Ambiente para usar essa experiência.Toggle on the 'New Git user experience' Preview Feature in Tools | Options | Environment to use this experience.
- Criar um repositório Git começando de qualquer pasta ou de uma pasta totalmente novaCreate a new Git repository, starting from any folder or a brand new folder
- Salvar e fechar uma pasta ou solução aberta antes de iniciar uma nova operação de clonagemSave and close an open folder or solution before starting a new clone operation
- Exibir erros de mensagem de confirmação ou de stash claramente na caixa de texto de confirmaçãoView commit or stash message errors clearly in the commit text box
- Ver e gerenciar Git branches no modo de exibição de árvore em uma nova janela do repositório GitView and manage Git branches in a tree view within a new Git Repository window
- Alternar entre o grafo de histórico de cada branch na janela do Repositório Git e interagir com eleSwitch between and interact with the history graph of each branch in the Git Repository window
- Exibir confirmações de saída e de entrada na janela do Repositório GitView incoming and outgoing commits in the Git Repository window
- Blog da equipe de produtividade do Git com mais detalhes sobre os recursos recentesGit Productivity team blog with more details of recent features

Resolver conflitos de mesclagem com um editor de mesclagem focado no Git usando:Resolve merge conflicts with a Git focused merge editor using:
- Uma barra de informações em arquivos que contêm conflitos de mesclagem que solicitam que você abra o editor de mesclagemAn info bar in files containing merge conflicts that prompts you to open the merge editor
- Quanto mais títulos informativos e legendas, menos desordem no editor de mesclagemMore informative titles and captions, and less clutter in the merge editor
- Comparações em conflitos que alinham linhas correspondentes, mostram diferenças no nível da palavra e exibem um espaço em branco visível quando é a única diferença.Diffs within conflicts that align matching lines, show word level differences, and display visible whitespace when it is the only difference.
- Mesclagens bidirecionais para adição de nível de arquivo/conflitos de adiçãoTwo-way merges for file level add/add conflicts
- A capacidade de resolver todos os conflitos de um lado ou outro com um único cliqueThe ability to resolve all conflicts to one side or the other with a single click
- Uma alternância para se concentrar apenas em conflitos, ignorando diferenças não conflitantesA toggle to focus on just conflicts, ignoring non-conflicting differences

JavaScript/TypeScriptJavaScript/TypeScript
- As implementações de Conclusão e Informações Rápidas foram atualizadas para melhorar o suporte a cenários LiveShare.The implementations of Completion and Quick Info have been updated to better support LiveShare scenarios.
Processo Local com o KubernetesLocal Process with Kubernetes

O Processo Local com o Kubernetes permite que você escreva, teste e depure seu código do .NET na estação de trabalho de desenvolvimento enquanto está conectado ao cluster do Kubernetes com o restante dos aplicativos ou serviços.Local Process with Kubernetes allows you to write, test and debug your .NET code on your development workstation while connected to your Kubernetes cluster with the rest of your application or services. Ao conectar sua estação de trabalho de desenvolvimento ao cluster, você elimina a necessidade de executar e configurar manualmente os serviços dependentes em seu computador de desenvolvimento.By connecting your development workstation to your cluster, you eliminate the need to manually run and configure dependent services on your development machine. Variáveis de ambiente, cadeias de conexão e volumes do cluster estão disponíveis para o código de microsserviço em execução localmente.Environment variables, connection strings and volumes from the cluster are available to your microservice code running locally. Não há necessidade de ativos extras, como Dockerfile ou manifestos do Kubernetes.There is no need for extra assets, such as a Dockerfile or Kubernetes manifests. Execute, depure e teste seu código do .NET como faria normalmente.Run, debug, and test your .NET code as you normally would.
Para habilitar o Processo Local com o Kubernetes, acesse Ferramentas > Opções > Ambiente > Versão Prévia dos Recursos e selecione “Habilitar depuração local para serviços de Kubernetes”.To enable Local Process with Kubernetes, go to Tools > Options > Envrionment > Preview Features and select "Enable local debugging for Kubernetes services".

Para aplicativos de console do .NET, é necessária uma etapa adicional.For .NET console applications, an additional step is required. Instale o pacote NuGet "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets".Install the "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets" Nuget Package.
Produtividade do .NET.NET Productivity
Agora há um aviso e uma correção de código quando um operador de supressão está presente, mas não tem nenhum efeito.There is now a warning and code fix when a suppression operator is present but has no effect. Uma segunda correção de código, que sugere a expressão de negação correta, também está disponível.A second code fix suggesting the correct negating expression is also available. Coloque o cursor no operador de supressão.Place your cursor on the suppression operator. Pressione (Ctrl + . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Em seguida, selecione de um dos seguintes:Next, select from one of the following:
- Para remover completamente o operador, selecione Remover o operador (preservar semântica) :To remove the operator completely, select Remove operator (preserves semantics):

- Para negar a expressão, selecione Negar expressão (alterar a semântica) :To negate the expression, select Negate expression (change semantics):

- Você também poderá negar a expressão com o novo padrão
not
de C# 9 se ele estiver disponível em seu projeto:You can also negate the expression with the new C# 9not
pattern if it is available in your project:

Agora você pode gerar propriedades ao gerar um construtor em um tipo.You can now generate properties when generating a constructor in a type. Coloque o cursor na instância.Place your cursor on the instance. Pressione (Ctrl + . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Selecione Gerar o construtor em <QualifiedName> (com propriedades) .Select Generate constructor in <QualifiedName> (with properties).

- As informações rápidas agora exibem a ID de diagnóstico junto com um link de ajuda com o qual você pode navegar facilmente para a nossa documentação para saber mais sobre avisos e erros em seu código.Quick Info now displays the diagnostic ID along with a help link where you can easily navigate to our documentation to learn more about warnings and errors in your code.

- Agora há uma ação rápida para adicionar um atributo de exibição do depurador a uma classe.There is now a quick action to add a debugger display attribute to a class. Isso permite que você fixe propriedades dentro do depurador programaticamente em seu código.This allows you to pin properties within the debugger programmatically in your code. Coloque o cursor no nome de classe.Place your cursor on the class name. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selecione Adicionar atributo “DebuggerDisplay” .Select Add ‘DebuggerDisplay` attribute. Isso adicionará o atributo de exibição do depurador à parte superior da sua classe e gerará um método auto que retorna ToString() que pode ser editado para retornar o valor da propriedade que você deseja fixar no depurador.This will add the debugger display attribute to the top of your class and generate an auto method that returns ToString() which you can edit to return the property value you want pinned in the debugger.

- Agora há uma correção de código para atribuições acidentais ou comparações com a mesma variável.There is now a code fix for accidental assignments or comparisons to the same variable. Coloque o cursor no aviso.Place your cursor on the warning. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Para atribuições acidentais, selecione Atribuir a
.value .For accidental assignments, select Assign to.value . Para comparações acidentais, selecione Comparar com.value .For accidental comparisons, select Compare to.value .


- Agora você pode gerar operadores de comparação para tipos que implementam IComparable.You can now generate comparison operators for types that implement IComparable. Coloque seu cursor dentro da classe ou em IComparable.Place your cursor either inside the class or on IComparable. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selecione Gerar operadores de comparação.Select Generate comparison operators. Uma placa de texto clichê será gerada para você com os operadores de comparação.A boiler plate will be generated for you with the comparison operators.

- Agora você pode gerar operadores IEquatable ao gerar .Equals para structs.You can now generate IEquatable operators when generating .Equals for structs. Já tínhamos uma refatoração para Gerar Equals e GetHashCode para tipos de valor.We already had a refactoring to Generate Equals and GetHashCode for value types. Agora, com structs, adicionaremos automaticamente o IEquatable, assim como os operadores equals e not equals para você.Now with structs we will automatically add the IEquatable as well as the equals and not equals operators for you. Coloque o cursor dentro do struct.Place your cursor within the struct. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selecione Gerar Equals(object) .Select Generate Equals(object).

- Agora você pode criar e atribuir propriedades ou campos para todos os parâmetros de construtor não utilizados.You can now create and assign properties or fields for all unused constructor parameters. Já tínhamos uma ação rápida que permitia fazer isso em um parâmetro individual, mas agora você pode fazer isso para todos os parâmetros não utilizados de uma só vez.We already had a quick action that allowed you to do this on an individual parameter, but now you can do it for all unused parameters at once. Coloque o cursor em qualquer um dos parâmetros restantes.Place your cursor on any of the remaining parameters. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Para criar e inicializar propriedades, selecione Criar e atribuir os restantes como propriedades.To create and initialize properties, select Create and assign remaining as properties. Para criar e inicializar campos, selecione Criar e atribuir os restantes como campos.To create and initialize fields, select Create and assign remaining as fields.


- Agora há uma conclusão do IntelliSense em literais de cadeia de caracteres DateTime e TimeSpan.There is now IntelliSense completion in DateTime and TimeSpan string literals. Coloque o cursor dentro do literal de cadeia de caracteres DateTime ou TimeSpan e pressione (Ctrl+Espaço).Place your cursor inside the DateTime or TimeSpan string literal and press (Ctrl+Space). Em seguida, você verá as opções de conclusão e uma explicação sobre o que significa cada caractere.You will then see completion options and an explanation as to what each character means. Serão fornecidos o formato de data e hora e um exemplo.Both the date time format and an example will be provided.

- Agora você pode adicionar um parâmetro dentro da caixa de diálogo Alterar Assinatura.You can now add a parameter within the Change Signature dialog. Coloque o cursor dentro da assinatura do método.Place your cursor within the method’s signature. Pressione (Ctrl+ . ) para acionar o menu Ações Rápidas e Refatorações.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selecione Alterar assinatura.Select Change signature. A caixa de diálogo a seguir será aberta, em que você pode selecionar Adicionar para adicionar um parâmetro.The following dialog will open where you can now select Add to add a parameter. Depois de selecionar Adicionar, a nova caixa de diálogo Adicionar Parâmetro será aberta.Once you select Add, the new Add Parameter dialog will open. A caixa de diálogo Adicionar Parâmetro permite que você adicione um nome de tipo e um nome de parâmetro.The Add Parameter dialog allows you to add a type name and a parameter name. Você pode optar por tornar o parâmetro necessário ou opcional com um valor padrão.You can choose to make the parameter required or optional with a default value. Em seguida, você pode adicionar um valor no site de chamada e escolher um argumento nomeado para esse valor ou pode introduzir uma variável TODO.You can then add a value at the call site and choose a named argument for that value or you can introduce a TODO variable. A variável TODO coloca um TODO em seu código para que você possa acessar cada erro e percorrer cada site de chamada de maneira independente e decidir o que passar.The TODO variable puts a TODO in your code so you can visit each error and go through each call site independently and decide what to pass. Para parâmetros opcionais, você tem a opção de omitir o site de chamada completamente.For optional parameters you have the option to omit the call site completely.


- Os autores do analisador agora podem usar CompletionProviders para conclusões do IntelliSense ao enviar seus analisadores com NuGet.Analyzer authors can now use CompletionProviders for IntelliSense completions when shipping their analyzers with NuGet. Antes, os autores da biblioteca precisariam criar um VSIX separado porque CompletionProviders só estava disponível em VSIX.Before, library authors would have to create a separate VSIX since CompletionProviders was only available in VSIX. Agora, os autores da biblioteca podem implementar as conclusões do IntelliSense no pacote NuGet em que estão os analisadores; eles não precisam fazer isso separadamente.Now library authors can implement IntelliSense completions in the NuGet package where their analyzers are, and they don’t need to do it separately. Os provedores de conclusão implementados em pacotes NuGet também fornecerão sugestões específicas para projetos individuais e trabalharão automaticamente em cada IDE que dá suporte ao recurso.Completion providers implemented in NuGet packages will also provide suggestions specific to individual projects and will automatically work in each IDE supporting the feature.
RazorRazor
Experimente o novo editor do Razor com base em LSP (Language Server Protocol) com todos os arquivos do Razor (.cshtml/.razor) selecionando a versão prévia do recurso Habilitar o editor do Razor experimental.Try out the new experimental Language Server Protocol (LSP) powered Razor editor with all Razor files (.cshtml/.razor) by selecting the Enable experimental Razor editor preview feature.
Gerenciador de TestesTest Explorer
Executar/Depurar Todos os Testes na Exibição foram adicionados ao Gerenciador de Testes.Run/Debug All Tests In View have been added to the Test Explorer. Esses comandos substituem o local em que os comandos Executar Todos os Testes e Depurar Todos os Testes apareciam no Gerenciador de Testes.These commands replace where the Run All Tests and Debug All Tests commands appeared in the Test Explorer. Essa alteração esclarece que esses comandos obedecem aos filtros do Gerenciador de Testes para que apenas os testes visíveis na janela sejam executados.This change clarifies that these commands honor the filters of the Test Explorer so that only tests visible in window are run. Isso inclui tanto os filtros de coluna quanto os filtros de caixa de pesquisa.This includes both column filters and search box filters.

Os comandos Executar/Depurar Todos Globalmente agora serão exibidos apenas no menu de teste de nível superior.The Global Run/Debug All commands will now only appear in the top-level Test menu. Eles não estão mais incluídos na barra de ferramentas ou no menu de contexto do Gerenciador de Testes de nenhuma exibição da janela de teste.They are no longer included in the Test Explorer toolbar or context menu of any test window view. Quando disparado do Gerenciador de Testes, o comando Analisar a Cobertura de Código para Todos os Testes agora se aplica às exibições da janela de teste também.When triggered from the Test Explorer, the Analyze Code Coverage for All Tests now applies to the test window views as well.
Teclas de atalho:Short-cut Keys:
- CTRL R, A – Executar Todos os Testes – O comando global sempre executa todos os testesCtrl R, A - Run All Test - Global command always runs all tests
- CTRL R, V – Executar Todos os Testes na Exibição – Somente um comando válido quando uma janela de teste (Gerenciador de Testes, Playlist, Janela do Live Unit Testing) está ativaCtrl R, V - Run All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows
- CTRL R, CTRL A – Depurar Todos os Testes – O comando global sempre depura todos os testesCtrl R, Ctrl A - Debug All Test - Global command always debugs all tests
- Ctrl R, Ctrl V – Depurar Todos os Testes na Exibição – Somente um comando válido quando uma janela de teste (Gerenciador de Testes, Playlist, Janela do Live Unit Testing) está ativaCtrl R, Ctrl V - Debug All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows
DepuradorDebugger
Exibir objetos COM gerenciados por meio de ponteiros nativosViewing Managed COM Objects Through Native Pointers
Esse recurso decodifica automaticamente objetos COM gerenciados referenciados por ponteiros nativos, permitindo que você inspecione completamente os valores na janela Locais.This feature automatically decodes managed COM objects referenced by native pointers allowing you to fully inspect values in the Locals window. Encontre mais detalhes no blog do Visual Studio aqui.You can find more details here at the Visual Studio blog.
Criador de PerfilProfiler
Nova Ferramenta de Contadores de Desempenho do .NETNew .NET Performance Counters Tool

Visualize contadores dotnet diretamente de dentro do Profiler do Visual Studio usando a Ferramenta de Contadores de Desempenho do .NET.Visualize dotnet counters right from within the Visual Studio Profiler using the .NET Performance Counters Tool. Para experimentar a ferramenta, acesse Depurador -> Criador de Perfil de Desempenho -> Marca de Seleção da Ferramenta de Contadores de Desempenho do .NET.To try out the tool go to Debug -> Performance Profiler -> Checkmark .NET Performance Counters Tool.
XamarinXamarin
- Corretores de código foram introduzidos para os tipos mais comuns de problemas enfrentados por usuários com arquivos de layout do Android.Code fixers have been introduced for the most common types of problems experienced by users with Android layout files.
- A experiência de seleção de modelos do Xamarin.Forms agora tem uma aparência nova e mais ilustrativa, e os modelos de submenu e com guias agora utilizam o Shell.The Xamarin.Forms template selection experience now has a fresh and more illustrative look, and the Flyout and Tabbed templates now utilize Shell. Leia mais sobre o Shell aqui.Read more about Shell here. Se, por alguma razão, você não quiser usar o Shell, use o modelo Em branco.If for some reason you don't wish to use Shell, use the Blank template.

Ferramentas XAML (WPF, UWP e Xamarin.Forms)XAML Tools (WPF, UWP & Xamarin.Forms)
Recarga Dinâmica de XAML:XAML Hot Reload:
- Aprimoramentos na barra de ferramentas no aplicativo: Aperfeiçoamos ainda mais a experiência da barra de ferramentas no aplicativo que faz parte do fluxo de trabalho de ferramentas de Recarga Dinâmica de XAML para WPF e UWP.In-app Toolbar Improvements: We have further refined the in-app toolbar experience that is part of the XAML Hot Reload tooling workflow for WPF & UWP. As alterações incluem uma barra de ferramentas mais curta, para que ela não cubra mais o aplicativo em execução, bem como uma alteração no mecanismo de recolhimento que, quando clicado, agora recolhe primeiro o texto de Recarga Dinâmica de XAML e, depois, recolhe a barra totalmente no segundo clique.Changes include a shorter toolbar so that it no longer covers the running application, and a change in the collapse mechanism which when clicked will now collapse the XAML Hot Reload text first, then collapse the bar fully on the second click.
Designer XAML:XAML Designer:
- Suporte a Dados Expandido em Tempo de Design para WPF e UWP: Nesta versão, estamos introduzindo um novo recurso de dados de tempo de design para desenvolvedores do WPF .NET Core e da UWP.Expanded Design-time Data Support for WPF & UWP: In this release we are introducing a new design-time data feature for WPF .NET Core and UWP developers. A nova funcionalidade estenderá, por meio do uso do prefixo d:, a lista atual de propriedades de tempo de design acessíveis.This new capability will extend the current list of accessible design-time properties through the use of the d: prefix. Esse recurso é familiar aos desenvolvedores do Xamarin.Forms, pois ele disponibiliza a mesma abordagem de usar um prefixo "d:" para indicar uma propriedade que só deve ser renderizada no tempo de design e nunca é compilada no aplicativo em execução, tornando-a muito segura para usar a validação de interface do usuário de tempo de design.This feature will be familiar to Xamarin.Forms developers, as it makes available the same approach of using a “d:” prefix to indicate a property that should only be rendered at design-time and never gets compiled into the running app making it very safe to use for design time UI validation. Nesta versão, damos suporte a todos os controles prontos para uso para WPF e UWP e planejamos dar suporte a controles personalizados e de terceiros em versões futuras.In this release we support all the out-of-the-box controls for WPF and UWP and plan to support 3rd party and custom controls in future releases.
- Botão de Atualização de Designer XAML: Adicionamos um botão Atualizar ao designer XAML. Esse novo ícone pode ser encontrado na área de ícones inferior esquerda, próximo ao indicador de nível de zoom.XAML Designer Refresh Button: We have added a refresh button to the XAML designer, this new icon can be found in the bottom-left icon area near the zoom level indicator. Essa ação de atualização faz a redefinição equivalente de fechar a exibição do designer e abri-la novamente, para as raras situações em que isso é necessário para resolver um problema de renderização.This refresh action does the equivalent reset of closing the designer view and re-opening it for the rare situations where this is required to resolve a rendering issue. Esse recurso está disponível para desenvolvedores do WPF .NET Core e da UWP.This feature is available for WPF .NET Core and UWP developers.
Editor de Código XAML:XAML Code Editor:
- Visualizador de Cores: Aprimoramos ainda mais nosso novo visualizador de cores no editor de código XAML para projetos do WPF .NET Core, WPF .NET Framework e Xamarin.Forms.Color Visualizer: We have further refined our new color visualizer in the XAML code editor for WPF .NET Core, WPF .NET Framework and Xamarin.Froms projects. Nesta versão, adicionamos suporte para visualização de cores provenientes de recursos que, anteriormente, não eram compatíveis com a última versão prévia.In this release we have added support for visualizing colors coming from resources, which was previously not supported in the last preview.

Mostrar itens da caixa de ferramentas de um pacote NuGet sem ter uma referência de pacoteShow Toolbox items from a NuGet package without having a package reference
Muitos autores da biblioteca de controle querem que os controles deles sejam vistos na caixa de ferramentas mesmo que o projeto atual ainda não tenha referenciado a biblioteca, pois isso ajuda na capacidade de descoberta.Many control library authors want their controls to be seen in the Toolbox even when the current project hasn't referenced the library yet, as this helps with discoverability. Os SDKs do .NET Framework do WPF conseguiram fazer isso historicamente usando entradas do Registro, mas isso não é compatível com o .NET Core.WPF .NET Framework SDKs have historically accomplished this using registry entries, but this is not supported by .NET Core. Para o .NET Core do WPF, a caixa de ferramentas agora pode ser preenchida com controles de arquivos VisualStudioToolsManifest.xml encontrados dentro de pacotes NuGet do .NET Core do WPF em pastas de fallback do NuGet.For WPF .NET Core, Toolbox can now be populated with controls from VisualStudioToolsManifest.xml files found within WPF .NET Core NuGet packages in NuGet fallback folders. Para obter mais detalhes, confira a documentação no repositório GitHub de Extensibilidade do Designer XAML.For more details, see the documentation in the XAML Designer Extensibility GitHub repo.
Windows FormsWindows Forms
Designer de Formulários do Windows para .NET CoreWindows Forms Designer for .NET Core
Agora está disponível o Designer de Formulários do Windows para projetos do .NET Core.The Windows Forms designer for .NET Core projects is now available. Para habilitar o designer no Visual Studio, acesse Ferramentas > Opções > Ambiente > Recursos de Visualização e selecione a opção Usar a visualização do Designer de Formulários do Windows em aplicativos .NET Core.To enable the designer in Visual Studio, go to Tools > Options > Environment > Preview Features and select the Use the preview Windows Forms designer for .NET Core apps option.
Nesta versão, agora há suporte para os seguintes controles juntamente com outros aprimoramentos:In this release the following controls are now supported along with other improvements:
- UserControl e infraestrutura de controles personalizadosUserControl and custom controls infrastructure
- TableLayoutPanelTableLayoutPanel
- Conceitos básicos de suporte de controles de terceirosFundamentals for third-party controls support
- Conceitos básicos de suporte à associação de dadosFundamentals for data binding support
- Aprimoramentos na interação do designer com o TableLayoutPanelImprovements in designer interaction with the TableLayoutPanel
Correções de bugBug Fixes
Principais problemas corrigidos no Visual Studio 2019 versão 16.7.0Top Issues Fixed in Visual Studio 2019 version 16.7.0
- Corrigida a falha de instalação do componente do provedor de WMI.Fixed WMI Provider component installation failure.
- Corrigido um problema em que os usuários não podiam ver o andamento da execução de teste clicando no botão esquerdo na parte inferior da barra.Fixed an issue where users were not able to see test run progress by clicking the left button at the bottom of the bar.
- Aprimorado o desempenho de descobrir os planos de cobrança disponíveis do Espaço de Código do Visual Studio.Improved performance of discovering available Visual Studio Codespace billing plans.
- Ao criar um Espaço de Código do Visual Studio, alteramos o tempo padrão para suspensão de 30 minutos para 3 horas.When creating a Visual Studio Codespace, we changed the default suspend time from 30minutes to 3 hours.
- Corrigido o bug em que a janela Alterações do Git informa aos usuários que eles têm confirmações de entrada/saída, quando, na verdade, não têm nenhuma.Fix bug where the Git Changes window informs the user they have incoming/outgoing commits, when in fact they have none.
- Estabilidade aprimorada das Ferramentas de Diagnóstico e do Criador de Perfil de Desempenho.Improved stability of the Diagnostic Tools and Performance Profiler.
- Resolvido um problema em que a extensão Azure Sphere do Visual Studio não era atualizada automaticamente devido a uma incompatibilidade de versão secundária.Addressed an issue where Azure Sphere Visual Studio extension will not be automatically updated due to a minor version mismatch. Com a correção, o Azure Sphere poderá ser atualizado automaticamente quando o atualizador automático do VSIX for executado.With the fix, Azure Sphere will be able to get automatically updated when the VSIX auto updater runs.
Da Developer CommunityFrom Developer Community
- Ocorreu um erro em '[Unknown]' durante a tentativa de abri-loAn error occured in '[Unknown]' while attempting to open
- Na versão 16.6 e em versões posteriores, não é possível visualizar previamente as alterações do arquivo nem impedir que os arquivos sejam publicadosUnable to preview file changes or prevent files from being published since 16.6
- O MSDeploy é interrompido com a atualização para VS2019 16.6.2MSDeploy breaks with upgrade to VS2019 16.6.2
- ArgumentNullException ocorre quando você tenta definir a propriedade de URI do controle WPF personalizado no VisualStudioArgumentNullException occurs when you try to set URI property of custom WPF control in VisualStudio
- Visual Studio Prof 2019, 16.7.0 Preview 4.0, alteração do comportamento da Janela de SaídaVisual Studio Prof 2019, 16.7.0 Preview 4.0, change of Output Window behaviour
- Se, em uma DSL, um conector expõe a propriedade Thickness, os métodos Get/SetThicknessValue(...) não são criados pela transformação T4 após a alternância da linguagem do VSIf in a DSL a Connector exposes the Thickness property, the Get/SetThicknessValue(...) methods are not created by T4 Transformation after switching VS language
- O Assistente de Publicação gera a mensagem "Um ou mais erros ocorreram."Publish wizard throws "One or more errors occurred." message
- Falha ao Adicionar Novo Item Scaffold após fazer a atualização para a versão 16.7Add New Scaffold Item Fails after update to 16.7
- IntelliSense para inicializadores designados C e C++2aIntelliSense for C and C++2a designated initalizers
- A referência de objeto do git checkout branch não era definida como uma instância de um objeto.Git checkout branch Object reference not set to an instance of an object.
- O pacote 'GoogleTestExtensionOptionsPage' não era carregado corretamente se houvesse uma extensão conflitante instalada'GoogleTestExtensionOptionsPage' Package did not load correctly if there is a conflicting extension installed
- Opções->Xamarin->Contas da Apple ! Aguarde até que o serviço de provisionamento local seja inicializadoOptions->Xamarin->Apple Accounts ! Please wait until the local provisioning service is initialized
- Regressão: O comando "Copiar Tudo" do Gerenciador de Testes não fornecia a saída de teste de unidade completaRegression: Test Explorer "Copy All" does not give full unit test output
- Ir para a definição era aberto nos metadadosGo to definition brings up from metadata
- “Mostrar itens de namespaces não importados” interrompia as sugestões de membros"Show items from unimported namespaces" breaks members suggestions
- Não mude a janela de saída para "Controle do código-fonte – Git" durante o buildDon't switch the output window to "Source Control - Git" during build
- O Visual Studio estava gerando um arquivo xml ao editar arquivos axmlVisual Studio is generating xml file when editing axml files
- O VS 16.4 fazia o build completo do projeto do Azure Functions todas as vezes.VS 16.4 does full build of the azure functions project every time.
- Erro ao ativar o servidor de linguagem remotoError activating the remote language server
- Referência nula recorrente ao reabrir documentosRecurring null reference when reopening documents
- Exibir Histórico no menu de contexto no Gerenciador de Soluções não faz nadaView History on context menu in Solution Explorer doesn't do anything
- Falha do IDE em segundo plano depois de abrir a nova soluçãoIDE crash in background after opening new solution
- O Visual Studio 2019 versão 16.7 Preview 1 falha durante Aapt2DaemonStart()Visual Studio 2019 version 16.7 Preview 1 crashes during Aapt2DaemonStart()
- ServiceHub.Host.CLR.x64 parou de funcionarServiceHub.Host.CLR.x64 has stopped working
- Violação de acesso de gravação no destruidor do objeto global constWrite access violation in destructor of const global object
- A conexão com o Mac é perdida em cada buildConnection to Mac is lost on every build
- O IntelliSense não funciona ao criar uma classe em uma nova pastaIntelliSense does not work when creating a new class in a new folder
- Não é possível adicionar o item Xamarin.Forms a .shprojUnable to add Xamarin.Forms Item to .shproj
- Linter de código para C++ ausente nas Opções de Versão PréviaCode Linter for C++ not in Preview Options
- System.IO.FileNotFoundException Microsoft.VisualStudio.ShellSystem.IO.FileNotFoundException Microsoft.VisualStudio.Shell
- Não mostrar tarefas pendentes na lista de tarefas dos cabeçalhos do SDKDo not show TODOs in task list from SDK headers
- O Visual Studio 2019 trava ao abrir um arquivo web.configVisual Studio 2019 hangs when opening a web.config file
- Depois de atualizar para a versão 16.7.0 Preview 2, não será possível adicionar novas exibiçõesAfter updating to 16.7.0 preview 2 cannot add new Views
- A expressão de dobra não funciona diretamente na expressão SFINAEFold expression does not work directly in SFINAE expression
- Falha do Visual Studio 2019 ao abrir o menu Exibir -> Outras janelasVisual Studio 2019 crash when menu View->Other windows is opened
- O Team Explorer não carrega após a atualização para a versão obrigatória mais recente do Visual Studio 2019Team Explorer not loading after update to mandatory latest version of Visual Studio 2019
- O Gerenciador do Executor de Tarefas chama a tarefa duas vezes no Projeto AbertoTask Runner Explorer calls Task two times on Project Open
- Os controles WPF do .NET Framework do Visual Studio 2019 estão sendo exibidos várias vezesVisual Studio 2019 .NET Framework WPF controls are showing multiple times
- A reanexação não funciona quando o tipo de conexão era Docker (Contêineres do Windows)Reattach does not work when connection type was Docker (Windows Containers)
- A inicialização de agregação não é executada na matriz dinâmicaAggregate initialization is not performed on dynamic array
- A opção TexEditor/c/c++/Advanced/Habilitar a opção de colocar entre chaves não está funcionandoNot working option TexEditor/c/c++/Advanced/Enable surround with braces
- Erro falso C2668: "chamada ambígua à função sobrecarregada" para chamar modelos de função sobrecarregada com parâmetro de modelo sem tipoBogus error C2668: "ambiguous call to overloaded function" for call to overloaded function templates with non-type template parameter
- O Visual Studio 16.4 está ocupadoVisual Studio 16.4 is busy
- A opção "Configurar automaticamente" do CMake sempre exclui o cache após editar CMakeLists.txtCMake "auto-configure" always deletes cache after editing CMakeLists.txt
- Inicialização ausente para tipos de POD quando o objeto é criado no heap Missing initialization for POD types when object create in the heap
- Bug sério do compilador VC VC compiler serious bug
- Erro de compilador interno da propriedade indexada do C++/CLI no Visual Studio 2019 versão 16.5 Internal compiler error with C++/CLI indexed property in Visual Studio 2019 version 16.5
- A exceção sem resposta da interface do usuário é gerada na extensão personalizada UI unresponsive exception is thrown on custom extension
- Erro de compilador interno no acesso do indexador Internal compiler error on indexer access
- A atualização no runtime C++ de 14.24.28127 para 14.25.28610 interrompe a compilação do Chromium com clang_cl Upgrade in C++ runtime from 14.24.28127 to 14.25.28610 breaks building Chromium with clang_cl
- Erro de stash de git Git stash error
- ISetupConfiguration.GetInstanceForCurrentProcess gerando COMException: elemento não encontrado ISetupConfiguration.GetInstanceForCurrentProcess throwing COMException: Element not found
- O Xamarin.IOS falha ao compilar com MessagingRemoteException Xamarin.IOS fails to build with MessagingRemoteException
- Declaração de friend da classe de modelo ignorada Template class friend declaration ignored
- A exclusão de itens da Comparação de Esquemas falhará no Visual Studio se não for feita em lotes muito pequenos Excluding items from Schema Compare crashes Visual Studio if not done in very small batches
- O Visual Studio 2019 v16.5.1 é extremamente lento. Visual Studio 2019 v16.5.1 is extremely slow.
- Não é possível usar ClassName::* no ponto de interrupção da função para definir pontos de interrupção em todos os métodos da classe C++ no vs2019 Cannot use ClassName::* in function breakpoint to set breakpoints on all methods of C++ class in vs2019
- A ferramenta de comentários tem um link de imagem de saída desfeito Feedback tool has broken sign out image link
- Erro de compilação C2737 com código válido Compilation error C2737 with valid code
Problemas conhecidosKnown Issues
Veja todos os problemas em aberto e as soluções alternativas disponíveis no Visual Studio 2019, seguindo o link abaixo.See all open issues and available workarounds in Visual Studio 2019 by following the below link.
Comentários e sugestõesFeedback and suggestions
Adoraríamos ouvir sua opinião!We would love to hear from you! Em caso de problemas, informe-nos por meio da opção Relatar um Problema no canto superior direito do Instalador ou do próprio IDE do Visual Studio.For issues, let us know through the Report a Problem option in the upper right-hand corner of either the installer or the Visual Studio IDE itself. OThe está localizado no canto superior direito.icon is located in the upper right-hand corner.
Você pode fazer uma sugestão de produto ou acompanhar os problemas na Comunidade de Desenvolvedores do Visual Studio, em que você pode fazer perguntas, encontrar respostas e propor novos recursos.You can make a product suggestion or track your issues in the Visual Studio Developer Community, where you can ask questions, find answers, and propose new features. Você também pode obter ajuda gratuita com a instalação por meio de nosso suporte via chat ao vivo.You can also get free installation help through our Live Chat support.
BlogsBlogs
Aproveite as informações e recomendações disponíveis no site Blogs de Ferramentas de Desenvolvedor para ficar em dia com as novas versões e conferir postagens detalhadas sobre uma grande variedade de recursos.Take advantage of the insights and recommendations available in the Developer Tools Blogs site to keep you up-to-date on all new releases and include deep dive posts on a broad range of features.
Histórico de notas sobre a versão do Visual Studio 2019Visual Studio 2019 Release Notes History
Para obter mais informações sobre versões anteriores do Visual Studio 2019, consulte a página Histórico de notas sobre a versão do Visual Studio 2019.For more information relating to past versions of Visual Studio 2019, see the Visual Studio 2019 Release Notes History page.