Você está na página 1de 2477

Dê a sua opinião sobre a experiência de download do PDF.

Documentação do IDE do Visual Studio


Um IDE (ambiente de desenvolvimento integrado) é um aplicativo repleto de recursos
que pode ser usado por muitos aspectos do desenvolvimento de software. O IDE do
Visual Studio facilita a edição, a depuração, o build e a publicação de seu aplicativo.

Introdução

e VISÃO GERAL

O que é o Visual Studio?

a BAIXAR

Baixar o Visual Studio

b COMEÇAR AGORA

Instalar o Visual Studio

Usar o Virtual Studio

b COMEÇAR AGORA

Iniciar no editor de código

c GUIA DE INSTRUÇÕES

Personalizar o IDE

Compilar e criar

Depurar o código

Gravar testes

Analisar a qualidade do código

Publicar um site

Acessar dados

Recursos de produtividade
Desenvolver na linguagem de sua preferência

g TUTORIAL

C#

C++

Visual Basic

Python

JavaScript

F#

Usar IA no Visual Studio

e VISÃO GERAL

Desenvolvimento assistido por IA no Visual Studio

c GUIA DE INSTRUÇÕES

Usar o GitHub Copilot

Usar o Chat do GitHub Copilot

Depurar com o Copilot

Descubra as novidades

h NOVIDADES

Notas de versão

Novidades no Visual Studio 2022

Novidades no Visual Studio 2019

Quais são as novidades nos docs


O que é o Visual Studio?
Artigo • 29/10/2023

O Visual Studio é uma ferramenta de desenvolvedor poderosa que permite realizar todo
o ciclo de desenvolvimento em um só lugar. É um IDE (Ambiente de Desenvolvimento
Integrado) abrangente que você pode usar para escrever, editar, depurar e criar código,
além de implantar seu aplicativo. Além da edição e da depuração de código, o Visual
Studio inclui compiladores, ferramentas de preenchimento de código, controle do
código-fonte, extensões e muito mais recursos para aprimorar cada estágio do processo
de desenvolvimento de software.

Com a variedade de recursos e suporte a linguagens no Visual Studio, você pode evoluir
de escrever seu primeiro programa "Olá, Mundo" até desenvolver e implantar
aplicativos. Por exemplo, compilar, depurar e testar aplicativos .NET e C++, editar
páginas ASP.NET no modo de exibição do web, desenvolver aplicativos móveis e de área
de trabalho multiplataforma com o .NET ou criar interfaces do usuário da Web
responsivas em C#.

Para instalar o Visual Studio, selecione o botão a seguir e escolha a edição do Visual
Studio a ser baixada.

Baixar o Visual Studio

Por que usar o Visual Studio?


O Visual Studio fornece aos desenvolvedores um ambiente de desenvolvimento
avançado de recursos para desenvolver código de alta qualidade de forma eficiente e
colaborativa.

Instalador baseado em carga de trabalho: instalar apenas o que você precisa


Ferramentas e recursos de codificação avançados: tudo o que você precisa para
criar seus aplicativos em um só lugar
Suporte a várias linguagens: código em C++, C#, JavaScript, TypeScript, Python e
muito mais
Desenvolvimento multiplataforma: criar aplicativos para qualquer plataforma
Integração de controle de versão: colaborar no código com os colegas de equipe
Desenvolvimento assistido por IA: escreva códigos de forma mais eficiente com a
assistência de IA

Descobrir o Visual Studio

Desenvolva seu código


O IDE do Visual Studio fornece muitos recursos que facilitam a gravação e o
gerenciamento do código com confiança. Por exemplo, codifique de forma rápida e
precisa com ferramentas de desenvolvimento assistido por IA, como GitHub Copilot e
IntelliCode, faça melhorias rápidas em seu código usando lâmpadas que sugerem ações
ou expanda/recolha os blocos de código utilizando a estrutura de tópicos. Organize e
explore seu código com o Gerenciador de Soluções que mostra o código organizado
por arquivos ou o Modo de Exibição de Classe que mostra seu código organizado por
classes.

Saiba mais sobre todos os recursos no IDE para organizar e editar conteúdo:

Editor de códigos
Personalizar o IDE e o editor
Organizar código
Dicas e truques

Compilar o aplicativo
Você pode compilar e desenvolver seus aplicativos para criar compilações
imediatamente e testá-las em um depurador. É possível executar compilações em
multiprocessador para projetos C++ e C#. O Visual Studio também fornece várias
opções que você pode configurar ao criar aplicativos. Você pode criar uma configuração
de compilação personalizada além das configurações internas, ocultar determinadas
mensagens de aviso ou aumentar as informações de saída de compilação.

Saiba mais sobre como compilar e criar no Visual Studio:

Criar configurações de build para seu projeto


Compilar um aplicativo

Depurar seu código


A depuração integrada no Visual Studio permite depurar, criar perfis e diagnosticar com
facilidade. Você percorre o código e examina os valores armazenados em variáveis,
define inspeções em variáveis para ver quando os valores mudam, examina o caminho
de execução do código e outras maneiras de depurar o código enquanto ele é
executado.

Saiba mais sobre a depuração com eficiência no Visual Studio:

Depurar seu aplicativo


Técnicas e ferramentas de depuração
Medir o desempenho do aplicativo
Depurar com o Copilot
Dicas e truques

Testar seu código


Você pode escrever código de alta qualidade com ferramentas de teste abrangentes no
Visual Studio. Os testes de unidade fornecem aos desenvolvedores e testadores uma
maneira rápida de encontrar erros lógicos no código. Você pode analisar a quantidade
de código que está testando e ver resultados instantâneos em um conjunto de testes ou
conhecer o impacto de cada alteração feita com recursos avançados que testam o
código enquanto você digita.

Saiba mais sobre as ferramentas de teste disponíveis no Visual Studio:

Usar ferramentas de testes no Visual Studio


Criar e executar testes de unidade
Analisar a cobertura de código

Controle de versão
Com os recursos integrados do Git no Visual Studio, você pode clonar, criar ou abrir
seus próprios repositórios. A janela de ferramentas do Git tem tudo o que você precisa
para confirmar e enviar alterações por push ao código, gerenciar branches e resolver
conflitos de mesclagem. Se você tiver uma conta do GitHub, poderá gerenciar esses
repositórios diretamente no Visual Studio.

Saiba mais sobre o controle de versão no Visual Studio:


Controle de versão com Git
Visual Studio e GitHub

Colaborar com outras pessoas


O Visual Studio Live Share permite o desenvolvimento colaborativo em tempo real. Com
o Live Share, você pode compartilhar o projeto com seus colegas, independentemente
da linguagem ou da plataforma. Chegue ao cerne da questão rapidamente permitindo
que sua equipe conecte, navegue, digite e defina pontos de interrupção em sua sessão
do editor.

Saiba mais sobre como colaborar com o Live Share:

Colaborar com o Live Share


Casos de uso comuns

Implante seu aplicativo


Ao implantar um aplicativo, serviço ou componente, você o distribui para instalação em
outros computadores, dispositivos, servidores ou na nuvem. Você pode escolher o
método apropriado no Visual Studio para o tipo de implantação que deseja.
Compartilhe seus aplicativos e código publicando na Web ou no Azure, ou implantando
em um compartilhamento de rede ou em uma pasta local.

Saiba mais sobre como implantar seu aplicativo usando o Visual Studio:

Implantar seu aplicativo no Visual Studio


Implantar seu aplicativo em uma pasta, no servidor de rede, no Azure ou em outro
destino

Desenvolvimento assistido por IA


O GitHub Copilot, o Chat do GitHub Copilot e o IntelliCode ajudam os desenvolvedores
a escrever código mais rapidamente e com maior precisão, ajudam a desenvolver um
reconhecimento mais profundo da base de código e ajudam em outras tarefas de
desenvolvimento, como escrever testes de unidade, depuração e criação de perfil.

Saiba mais sobre Desenvolvimento assistido por IA no Visual Studio:

Usar o GitHub Copilot no Visual Studio


Usar o Chat do GitHub Copilot no Visual Studio
Depurar com o Copilot
Escolha o seu Visual Studio Edition
Há três edições do Visual Studio:

Comunidade : IDE gratuito e com todos os recursos para alunos,


desenvolvedores individuais e de código aberto
Professional : uma opção baseada em assinatura para desenvolvedores
individuais ou pequenas equipes.
Enterprise : uma opção baseada em assinatura para pequenas e grandes
empresas e organizações corporativas.

Compare os recursos entre as edições do Visual Studio e adquira a edição do Visual


Studio que melhor atende às suas necessidades.

Instalar o Visual Studio


Selecione o botão a seguir e instale o Visual Studio, escolha a edição do Visual Studio.

Baixar o Visual Studio

Introdução
Para desenvolver qualquer tipo de aplicativo ou aprender um idioma, você trabalhará no
IDE (Ambiente de Desenvolvimento Integrado) rico em recursos do Visual Studio.
Explore ainda mais o Visual Studio com um dos seguintes artigos introdutórios:

Faça um tour pelo IDE para se familiarizar com os recursos do IDE e aprender a
usá-lo para tarefas básicas.
Veja as noções básicas neste módulo do Learn: Introdução ao Visual Studio.
Aprenda mais sobre codificação com um dos seguintes tutoriais para o seu idioma:
criar um aplicativo de console simples em C#
Introdução ao Python
Criar aplicativo de console simples em VB
Criar aplicativo de console em C++
Criar um aplicativo Node.js e Express
Saiba como usar o editor de códigos
Artigo • 22/12/2023

Nesta introdução de 10 minutos ao editor de código do Visual Studio, adicionaremos o


código a um arquivo para ver algumas das formas pelas quais o Visual Studio facilita a
escrita, a navegação e o entendimento do código.

Se você ainda não tiver instalado o Visual Studio, acesse a página Downloads do Visual
Studio para instalá-lo gratuitamente.

Este artigo considera que você já esteja familiarizado com uma linguagem de
programação. Se não estiver, sugerimos que você confira um dos tutoriais de
programação, por exemplo, como criar um aplicativo Web com Python ou C#, ou criar
um aplicativo de console com Visual Basic ou C++.

 Dica

Para acompanhar este artigo, verifique se você tem as configurações do C#


selecionadas para o Visual Studio. Para obter informações sobre como selecionar
configurações para o IDE (ambiente de desenvolvimento integrado), confira
Selecionar configurações de ambiente.

Criar um novo arquivo de código


Comece criando um novo arquivo e adicionando códigos nele.

1. Abra o Visual Studio. Selecione a tecla Esc ou escolha Continuar sem código na
janela de início para abrir o ambiente de desenvolvimento.

2. No menu Arquivo na barra de menus, escolha Novo>Arquivo ou selecione as


teclas Ctrl+N.

3. Na caixa de diálogo Novo Arquivo, na categoria Geral, escolha Classe C# e, em


seguida, Abrir.

Um novo arquivo é aberto no editor com o esqueleto de uma classe de C#.


Usar o GitHub Copilot
O GitHub Copilot atua como um programador de pares de IA para fornecer
preenchimentos de código no estilo de preenchimento automático e sugestões de
código de várias linhas com reconhecimento de contexto, conforme você codifica, em
tempo real, diretamente no editor. O GitHub Copilot transforma prompts de linguagem
natural, incluindo comentários e nomes de método em sugestões de codificação. Você
pode exibir e incorporar sugestões do GitHub Copilot diretamente no editor.

Experimente o GitHub Copilot

Vamos usar o Copilot para gerar sugestões de código:

1. Coloque o cursor logo abaixo da chave de fechamento final } no arquivo.


2. Digite um comentário de linguagem natural: // Add a method to add two numbers
e Enter.
3. O GitHub Copilot gera uma sugestão de código para você. A implementação
sugerida é exibida em texto cinza.
4. Para aceitar a sugestão, selecione Tab.

Introdução ao GitHub Copilot no Visual Studio. Observe que ele requer o Visual Studio
2022 17.5.5 ou posterior.

Usar snippets de código


O Visual Studio fornece snippets de código úteis que você pode usar para gerar os
blocos de código usados com frequência de forma rápida e fácil. Os snippets de código
estão disponíveis para linguagens de programação diferentes, incluindo C#, Visual Basic
e C++.

Vamos adicionar o snippet void Main de C# em nosso arquivo.

1. Coloque o cursor logo acima da chave de fechamento final } no arquivo e digite


os caracteres svm .

Uma caixa de diálogo pop-up é exibida com informações sobre o snippet de


código svm .
2. Selecione a tecla Tab duas vezes para inserir o snippet de código.

Você verá que a assinatura do método static void Main() será adicionada ao
arquivo. O método Main() é o ponto de entrada para aplicativos C#.

Os snippets de código disponíveis variam em linguagens de programação diferentes.


Você pode examinar os snippets de código disponíveis para sua linguagem
selecionando Editar>IntelliSense>Inserir Snippet ou selecionando as teclas Ctrl+K,
Ctrl+X, e, em seguida, escolhendo a pasta para sua linguagem de programação. Para o
C#, a lista de snippet tem este aspecto:

A lista inclui snippets para a criação de uma classe, um construtor, um loop for, uma
instrução if ou switch e muito mais.
Comentar o código
A barra de ferramentas Editor de Texto, que é a linha de botões sob a barra de menus
no Visual Studio, ajuda a aumentar sua produtividade durante a codificação. Por
exemplo, você pode ativar/desativar o modo de preenchimento do IntelliSense,
aumentar ou diminuir um recuo de linha ou comentar um código que não deseja
compilar.

Vamos assinalar um código como comentário.

1. Cole o código a seguir no corpo do método Main() .

C#

// someWords is a string array.


string[] someWords = {
"the",
"quick",
"brown",
"fox",
"jumps"
};

string[] moreWords = {
"over",
"the",
"lazy",
"dog"
};

// Alphabetically sort the words.


IEnumerable<string> query = from word in someWords
orderby word
select word;

2. Não usaremos a variável moreWords , mas, como podemos usá-la posteriormente,


não desejamos excluí-la. Em vez disso, vamos comentar as linhas. Selecione a
definição inteira de moreWords até o ponto e vírgula de fechamento e, em seguida,
escolha o botão Comentar as linhas selecionadas na barra de ferramentas do
Editor de Texto. Caso prefira usar o teclado, selecione Ctrl+K, Ctrl+C.
Os caracteres de comentários // de C# são adicionados ao início de cada linha
selecionada para comentar o código.

Quando quiser remover marca de comentário das linhas, você pode selecioná-las
e, em seguida, escolher o botão Remover marca de comentário das linhas
selecionadas na barra de ferramentas do editor de texto. Caso prefira usar o
teclado, selecione Ctrl+K, Ctrl+U.

Recolher blocos de código


Não queremos ver o construtor vazio para Class1 que foi gerado. Portanto, para
desobstruir nossa exibição do código, vamos recolhê-la. Escolha a pequena caixa cinza
com o sinal de subtração dentro da margem da primeira linha do construtor. Ou, se
você preferir usar o teclado, posicione o cursor em qualquer lugar no código do
construtor e selecione as teclas Ctrl+M, Ctrl+M.

O bloco de código é recolhido apenas na primeira linha, seguido por um sinal de


reticências ( ... ). Para expandir o bloco de código novamente, selecione a mesma caixa
cinza que agora tem um sinal de adição ou selecione Ctrl+M, Ctrl+M novamente. Esse
recurso é chamado de Estrutura de tópicos e é útil principalmente ao recolher métodos
longos ou classes inteiras.

Exibir definições de símbolo


O editor do Visual Studio facilita a inspeção da definição de um tipo, de um método ou
variável. Uma maneira é ir para a definição, em qualquer arquivo que o tenha,
escolhendo Ir para Definição ou selecionando a tecla F12 em qualquer lugar em que um
símbolo seja referenciado. Uma maneira ainda mais rápida que não move o foco para
fora do código em que você está trabalhando é usar a opção Inspecionar Definição.

Vamos espiar a definição do tipo string .

1. Clique com o botão direito do mouse em qualquer ocorrência de string e escolha


Espiar Definição no menu de conteúdo. Ou selecione as teclas Alt+F12.

Uma janela pop-up será exibida com a definição da classe String . Você pode rolar
na janela pop-up ou até mesmo inspecionar a definição de outro tipo do código
inspecionado.

2. Feche a janela Espiar Definição ao selecionar a caixa pequena com um “x” no canto
superior direito da janela pop-up.

Usar o IntelliSense para completar palavras


O IntelliSense é um recurso valioso quando você está gravando o código. Ele pode
mostrar informações sobre membros disponíveis de um tipo ou detalhes de parâmetros
para sobrecargas diferentes de um método. Você também pode usar o IntelliSense para
completar uma palavra depois que você digitar caracteres suficientes para desambiguá-
la.

Vamos adicionar uma linha de código para imprimir as cadeias de caracteres ordenadas
na janela de console, que é o local padrão para envio da saída do programa.

1. Abaixo da variável query , comece a digitar o código a seguir:

C#

foreach (string str in qu

Você verá um item pop-up do IntelliSense aparecer com informações sobre o


símbolo query .
2. Para inserir o restante da palavra query usando o preenchimento de palavras do
IntelliSense, selecione a tecla Tab.

3. Finalize o bloco de código para que ele se pareça com o seguinte código. Você
pode praticar mais com snippets de código inserindo cw e selecionando Tab duas
vezes para gerar a instrução Console.WriteLine .

C#

foreach (string str in query)


{
Console.WriteLine(str);
}

Refatorar um nome
Ninguém obtém o código correto na primeira vez e uma das coisas que talvez você
precise alterar é o nome de uma variável ou de um método. Vamos experimentar a
funcionalidade de refatorar do Visual Studio para renomear a variável someWords como
unsortedWords .

1. Coloque o cursor sobre a definição da variável someWords e selecione Renomear


ao clicar com o botão direito do mouse ou no menu de contexto, ou selecione a
chave F2.

Uma caixa de diálogo chamada Renomear aparecerá no canto superior direito do


editor.
2. Insira o nome desejado unsortedWords. Você verá que a referência ao
unsortedWords na instrução de atribuição query também será renomeada

automaticamente. Antes de pressionar a tecla Enter, marque a caixa de seleção


Incluir comentários na caixa pop-up Renomear.

3. Pressione a tecla Enter.

As duas ocorrências de someWords no seu código foram renomeadas, bem como o


texto someWords no comentário de código.

Próximas etapas
Saiba mais sobre projetos e soluções

Confira também
Snippets de código
Navegue pelos códigos
Estrutura de tópicos
Ir para Definição e Definição de Pico
Refatoração
Usar o IntelliSense
Introdução a projetos e soluções
Artigo • 05/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo introdutório analisa o que significa criar uma solução e um projeto no Visual
Studio. Uma solução é um contêiner para organizar um ou mais projetos de código
relacionados, por exemplo, um projeto de biblioteca de classes e um projeto de teste
correspondente.

Como um exercício educacional para compreendermos o conceito de um projeto,


desenvolveremos uma solução e um projeto do zero. Normalmente, você usaria
modelos de projeto do Visual Studio para criar novos projetos. Você também analisará as
propriedades de um projeto e alguns dos arquivos ali contidos e criará uma referência
de um projeto para outro.

7 Observação

O desenvolvimento de aplicativos no Visual Studio não requer soluções e projetos.


Basta também abrir uma pasta que contém o código e começar a codificar,
compilar e depurar. Por exemplo, se você clonar um repositório GitHub , ele pode
não conter projetos nem soluções do Visual Studio. Para obter mais informações,
consulte Desenvolver código no Visual Studio sem projetos nem soluções.

Se você ainda não tiver instalado o Visual Studio, acesse a página Downloads do Visual
Studio para instalá-lo gratuitamente.

Soluções e projetos
No Visual Studio, uma solução não é uma "resposta". Uma solução é apenas um
contêiner do Visual Studio usado para organizar um ou mais projetos relacionados.
Quando você abre uma solução, o Visual Studio carrega automaticamente todos os
projetos contidos na solução.

Criar uma solução


Inicie nossa análise criando uma solução vazia. Depois de se familiarizar com o Visual
Studio, você provavelmente não vai criar soluções vazias com muita frequência. Quando
você cria um novo projeto, o Visual Studio cria automaticamente uma solução para o
projeto, a menos que uma solução já esteja aberta.
1. Abra o Visual Studio e, na janela de início, selecione Criar um novo projeto.

2. Na página Criar um novo projeto, insira solução em branco na caixa de pesquisa,


selecione o modelo Solução em Branco e selecione Avançar.

 Dica

Se você tiver várias cargas de trabalho instaladas, o modelo Solução em


Branco poderá não aparecer na parte superior da lista de resultados da
pesquisa. Tente rolar por Outros resultados com base na sua pesquisa para
localizar o modelo.

3. Na página Configurar seu novo projeto, nomeie a solução QuickSolution e


selecione Criar.

A solução QuickSolution aparece no Gerenciador de Soluções do lado direito da


janela do Visual Studio. Provavelmente, você usará o Gerenciador de Soluções
para navegar pelos conteúdos de seus projetos.

Adicionar um projeto
Agora adicione seu primeiro projeto à solução. Comece com um projeto vazio e
adicione os itens necessários.
1. Clique com o botão direito do mouse na Solução ´QuickSolution’ no Gerenciador
de Soluções, selecione Adicionar>Novo Projeto do menu de contexto.

2. Na página Adicionar um novo projeto, digite vazio na caixa de pesquisa na parte


superior e selecione C# em Todos os idiomas.

3. Selecione o modelo #C Projeto Vazio (.NET Framework) e, em seguida, Avançar.

7 Observação

O Visual Studio usa a instalação baseada em carga de trabalho para instalar


somente os componentes necessários para o tipo de desenvolvimento
realizado. Se você não visualizar o modelo Projeto Vazio (.NET Framework),
será necessário instalar a carga de trabalho do Visual Studio de
desenvolvimento para área de trabalho do .NET.

Uma maneira fácil de instalar uma nova carga de trabalho ao criar um novo
projeto é selecionar o link Instalar mais ferramentas e recursos no texto
indicando Não encontrou o que estava procurando?. No Instalador do Visual
Studio, selecione a carga de trabalho de desenvolvimento para área de
trabalho do .NET e, em seguida, escolha Modificar.

4. Na página Configurar seu novo projeto, nomeie o projeto QuickDate e selecione


Criar.

O projeto QuickDate aparece na solução em Gerenciador de Soluções. O projeto


contém um nó Referências e um único arquivo chamado App.config.

Adicionar um item ao projeto


Adicione um arquivo de código ao seu projeto vazio.

1. No menu de atalho ou com o botão direito do mouse no projeto QuickDate no


Gerenciador de Soluções, selecione Adicionar>Novo Item.

A caixa de diálogo Adicionar Novo Item é aberta. Selecione Mostrar todos os


modelos se a caixa de diálogo for aberta no modo de exibição compacto.
2. Expanda Itens do Visual C#e selecione Código. No painel central, selecione o
modelo de item Classe. Em Nome, digite Calendário e selecione Adicionar.

O Visual Studio adiciona um arquivo chamado Calendar.cs ao projeto. O .cs no final


é a extensão de arquivo fornecida aos arquivos de código C#. O arquivo
Calendar.cs aparece na hierarquia do projeto visual Gerenciador de Soluções e o
arquivo é aberto no editor.

3. Substitua o conteúdo do arquivo Calendar.cs pelo seguinte código:

C#

using System;

namespace QuickDate
{
internal class Calendar
{
static void Main(string[] args)
{
DateTime now = GetCurrentDate();
Console.WriteLine($"Today's date is {now}");
Console.ReadLine();
}

internal static DateTime GetCurrentDate()


{
return DateTime.Now.Date;
}
}
}

Não é preciso entender tudo o que o código está fazendo. Execute o aplicativo
pressionando Ctrl+F5 e veja se o aplicativo imprime a data de hoje no console ou
na janela de saída padrão. Feche a janela do console.

Adicionar um segundo projeto


Geralmente, as soluções contêm mais de um projeto e esses projetos referenciem uns
aos outros. Alguns projetos em uma solução podem ser bibliotecas de classes, alguns
aplicativos executáveis e outros podem ser projetos de teste de unidade ou sites.

Para adicionar um projeto de teste de unidade à sua solução, comece com um modelo
de projeto para que você não precise adicionar outro arquivo de código ao projeto.

1. Ao clicar com o botão direito do mouse ou no menu de atalho da Solução


´QuickSolution’ no Gerenciador de Soluções, selecione Adicionar>Novo Projeto.
2. Na caixa de diálogo Adicionar um novo projeto, insira teste de unidade na caixa de
pesquisa na parte superior e, em seguida, selecione C# em Todos os idiomas.

3. Selecione o modelo de projeto #C Projeto de Teste de Unidade (.NET Framework)


e selecione Avançar.

4. Na página Configurar seu novo projeto, nomeie o projeto QuickTest e selecione


Criar.

O Visual Studio adiciona o projeto QuickTest a Gerenciador de Soluções e o


arquivo UnitTest1.cs é aberto no editor.

Adicionar uma referência ao projeto


Vamos usar o novo projeto de teste de unidade para testar seu método no projeto
QuickDate. Portanto, precisamos adicionar uma referência a esse projeto QuickDate ao
QuickTest. A adição de referência cria uma dependência de build entre os dois projetos,
o que significa que quando a solução é criada, o QuickDate cria antes o QuickTest.

1. No Gerenciador de Soluções, clique com o botão direito do mouse no nó


Referências do projeto QuickTest e selecione Adicionar Referência no menu de
contexto.
2. Na caixa de diálogo Gerenciador de Referência, selecione Projetos. No painel
central, selecione a caixa de seleção ao lado de QuickDate e, em seguida,
selecione OK.

Uma referência ao projeto QuickDate aparece no projeto QuickTest em


Gerenciador de Soluções.

Adicionar código de teste


1. Agora, adicione o código de teste ao arquivo de código de teste C#. Substitua o
conteúdo do UnitTest1.cs pelo seguinte código:

C#
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace QuickTest
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestGetCurrentDate()
{
Assert.AreEqual(DateTime.Now.Date,
QuickDate.Calendar.GetCurrentDate());
}
}
}

Uma linha sinuosa vermelha aparece em alguns dos códigos. É possível corrigir
esse erro ao tornar o projeto de teste um assembly amigável para o projeto
QuickDate.

2. No arquivo Calendar.cs, adicione a instrução using a seguir e o


InternalsVisibleToAttributeatributo à parte superior do arquivo, para resolver o erro
no projeto de teste.

C#

using System.Runtime.CompilerServices;

[assembly: InternalsVisibleTo("QuickTest")]

O código Calendar.cs deve ser semelhante a esta captura de tela:


Execute o teste de unidade
Para verificar se seu teste de unidade está funcionando, selecione Teste>Executar Todos
os Testes na barra de menu. A janela Gerenciador de Testes será aberta e você verá que
o teste TestGetCurrentDate será aprovado.

 Dica
Abra também o Gerenciador de Testes escolhendo Teste>Gerenciador de Testes
na barra de menu.

Propriedades do projeto
A linha no arquivo Calendar.cs que contém o atributo InternalsVisibleToAttribute
referencia o nome do assembly ou nome de arquivo do projeto QuickTest. O nome do
assembly pode não ser sempre o mesmo que o nome do projeto. Para localizar o nome
do assembly de um projeto, use as propriedades do projeto. As páginas de
propriedades contêm várias configurações para o projeto.

1. Em Gerenciador de Soluções, clique com o botão direito do mouse no projeto


QuickTest e selecione Propriedades ou selecione o projeto e pressione Alt+Enter.

As páginas de propriedades do projeto são abertas na guia Aplicativo. O nome do


assembly do projeto QuickTest é, de fato, QuickTest.

Se desejar, é possível alterar o nome aqui. Quando você criar o projeto de teste, o
nome do arquivo binário resultante será alterado de QuickTest.dll para
<NewName>.dll.

2. Explore algumas das outras guias das páginas de propriedades do projeto, como
Build e Depurar. Essas guias são diferentes para diferentes tipos de projetos.
Confira também
Trabalhar com projetos e soluções
Desenvolver código no Visual Studio sem projetos nem soluções
Gerenciar propriedades do projeto e da solução
Gerenciar referências em um projeto
Fazer um tour pelo IDE do Visual Studio
Artigo • 18/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Nesta introdução ao ambiente de desenvolvimento integrado (IDE) do Visual Studio,


você faz um tour por algumas das janelas, menus e outros recursos de interface do
usuário.

Para desenvolver qualquer tipo de aplicativo ou aprender um idioma, você trabalha no


ambiente de desenvolvimento integrado (IDE) do Visual Studio. Além da edição de
código, a IDE do Visual Studio reúne designers gráficos, compiladores, ferramentas de
conclusão de código, controle do código-fonte, extensões e muitos outros recursos em
um só lugar.

Baixar e instalar
Para começar, baixe o Visual Studio e instale-o no sistema.

No Instalador do Visual Studio, você escolhe e instala cargas de trabalho, que são
grupos de recursos necessários para as linguagens de programação ou plataformas
desejadas. Para acompanhar este tutorial, selecione a carga de trabalho
Desenvolvimento de área de trabalho do .NET durante a instalação.

Se você já tiver o Visual Studio, poderá adicionar a carga de trabalho Desenvolvimento


de área de trabalho do .NET da seguinte maneira:

Inicie o Instalador do Visual Studio.


Se solicitado, permita que o instalador se atualize.
Se uma atualização do Visual Studio estiver disponível, um botão Atualizar será
mostrado. Selecione-o para atualizar antes de modificar a instalação.
Localize a instalação do Visual Studio e selecione o botão Modificar.
Se ainda não estiver selecionado, selecione a carga de trabalho Desenvolvimento
de área de trabalho do .NET e selecione o botão Modificar. Caso contrário, basta
fechar a janela da caixa de diálogo.
Janela de início
A primeira coisa que você verá depois de abrir o Visual Studio é a janela de início. Ela
tem opções para clonar o código ou fazer check-out dele, abrir um projeto ou uma
solução existente, criar um projeto ou simplesmente abrir uma pasta que tenha alguns
arquivos de código.

Se esta for a primeira vez que você estiver usando o Visual Studio, sua lista de projetos
recentes estará vazia.

Use a opção Abrir uma pasta local para abrir seu código no Visual Studio e desenvolver
código sem projetos ou soluções. Caso contrário, você pode Criar um novo projeto ou
Clonar um repositório de um provedor de origem, como o GitHub ou o Azure DevOps.

Use a opção Continuar sem código apenas para abrir o ambiente de desenvolvimento
do Visual Studio sem nenhum projeto ou código específico carregado. Escolha essa
opção para ingressar em uma sessão do Live Share ou anexar a um processo para
depuração. Pressione também Esc para fechar a janela de início e abrir o IDE.

Criar seu projeto


Para explorar os recursos do Visual Studio, vamos criar um novo projeto.

1. Inicie o Visual Studio e selecione Criar um projeto.


A janela Criar um novo projeto é aberta e mostra diversos modelos de projeto. Um
modelo inclui as configurações e os arquivos básicos necessários para um tipo de
projeto específico.

Aqui, você pode pesquisar, filtrar e, em seguida, escolher um modelo de projeto. A


janela Criar um novo projeto também mostra uma lista dos modelos de projeto
usados recentemente.

2. Na janela Criar um novo projeto, digite console na caixa de pesquisa para filtrar a
lista de tipos de projeto. Refine ainda mais os resultados da pesquisa pela
separação C# (ou outra linguagem de sua escolha) da lista suspensa Todas as
linguagens.
3. Se você selecionou C#, selecione o modelo Aplicativo de Console e
depoisAvançar. Se você tiver selecionado uma linguagem diferente, escolha
qualquer modelo.

4. Na janela Configurar seu novo projeto, aceite o nome de projeto e o local padrão
e selecione Avançar.

5. Na janela Informações adicionais, certifique-se de que o .NET 8.0 apareça no


menu suspenso Framework e selecione Criar.

6. O projeto é criado e carregado no Visual Studio.

Layout básico
Confira o conteúdo do seu projeto usando o Gerenciador de Soluções, que
mostra uma representação gráfica da hierarquia de arquivos e pastas no projeto,
solução ou pasta de código.

Você pode navegar na hierarquia e selecionar um arquivo para abri-lo no Editor. O


arquivo Program.cs é aberto na janela Editor . O Editor mostra o conteúdo dos
arquivos e é onde você faz a maior parte do trabalho de codificação no Visual
Studio.

A barra de menus na parte superior do Visual Studio agrupa os comandos em


categorias. Por exemplo, o menu Projeto contém comandos relacionados ao
projeto em que você está trabalhando. No menu Ferramentas, personalize o
comportamento do Visual Studio selecionando Opções ou adicione recursos à
instalação selecionando Obter Ferramentas e Recursos.
Obtenha assistência de IA com o GitHub Copilot diretamente no editor, com
preenchimentos de código com reconhecimento de contexto, sugestões,
explicações de código e muito mais. Por exemplo, você pode receber sugestões de
código escrevendo um comentário em linguagem natural descrevendo o que
deseja que o código faça.

Obter o GitHub Copilot

Saiba mais sobre Desenvolvimento assistido por IA no Visual Studio.

Obtenha ajuda contextual pressionando F1 enquanto o cursor do mouse estiver


em uma palavra-chave ou após selecionar uma palavra-chave. Por exemplo,
selecione console e pressione F1 para ir para a documentação na Classe de Console.

O Visual Studio tem uma excelente acessibilidade de teclado. Ele oferece suporte a
uma variedade de atalhos de teclado integrados para executar ações rapidamente.
Use a Referência de Atalho de Teclado > Ajuda para conferir a lista de atalhos de
teclado.

A Lista de Erros mostra erros, avisos e mensagens sobre o estado atual do código.
Se houver erros (como uma chave ou um ponto e vírgula ausente) no arquivo ou
em qualquer lugar do projeto, eles serão listados aqui. Para abrir a janela Lista de
Erros, escolha o menu Exibir e, em seguida, Lista de Erros.
A caixa Pesquisar (Ctrl+Q) na parte superior é uma maneira rápida e fácil de
encontrar praticamente qualquer coisa no Visual Studio. Você pode inserir algum
texto relacionado ao que deseja fazer e ele mostra uma lista de opções relevantes
para o texto. Por exemplo, para abrir uma janelaTerminal, basta procurá-la e abri-
la nos resultados da pesquisa. O terminal interno é aberto e está pronto para
comandos.

Se você tiver algum problema ao usar o Visual Studio ou se tiver sugestões de


como melhorar o produto, poderá nos informar escolhendo o botão Enviar
Comentários próximo ao canto superior direito do IDE.

Compilar o aplicativo
Vamos criar o projeto para ver uma saída de build. A janela Saída mostra as mensagens
de saída da criação do projeto e do provedor de controle do código-fonte.

No menu Compilação, escolha Compilar Solução. A janela Saída obtém o foco


automaticamente e mostra uma mensagem de build bem-sucedido.

Executar o aplicativo
1. Selecione o botão Iniciar depuração (seta verde) na barra de ferramentas ou
pressione F5 para executar seu aplicativo.

O Visual Studio compila o aplicativo e uma janela do console é aberta com a


mensagem Olá, Mundo!. Agora você tem um aplicativo em execução.

2. Para fechar a janela de console, pressione qualquer tecla.

Depurar seu aplicativo


O Visual Studio tem muitos recursos internos de depuração. Defina um ponto de
interrupção em qualquer ponto de interesse no código para pausar a execução do
código ou depurar passo a passo. Confira a janela Locais, Autos e Inspeção para
solucionar problemas do código inspecionando os valores em cada estágio.

1. Vamos acrescentar mais alguns códigos ao aplicativo. Adicione o código C# a


seguir antes da linha que diz Console.WriteLine("Hello World!"); :

C#

Console.WriteLine("\nWhat is your name?");


var name = Console.ReadLine();

2. Selecione o botão Iniciar depuração (seta verde) na barra de ferramentas de


depuração no Visual Studio para executar seu aplicativo.

3. Use Recarga Dinâmica para corrigir problemas ou fazer alterações no código em


tempo real e ver os resultados sem reiniciar o aplicativo.
4. Você pode interromper o aplicativo a qualquer momento selecionando o botão
Parar na barra de ferramentas.

Conteúdo relacionado
Você analisou apenas alguns dos recursos do Visual Studio para se familiarizar com a
interface do usuário. Para explorar mais:

Saiba mais sobre o editor de códigos


Saiba mais sobre projetos e soluções
Visão geral do IDE do Visual Studio
Mais funcionalidades do Visual Studio
Alterar as cores do tema e da fonte
Otimizar a experiência do Visual Studio no Computador de Desenvolvimento da
Microsoft
Funcionalidades do Visual Studio
Artigo • 03/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo descreve recursos para desenvolvedores experientes ou que já estão


familiarizados com o Visual Studio. Para uma introdução básica ao Visual Studio, confira
a visão geral do IDE do Visual Studio.

Instalação modular
No instalador modular do Visual Studio, você escolhe e instala as cargas de trabalho
desejadas. Cargas de trabalho são grupos de recursos que as linguagens de
programação ou plataformas precisam para funcionar. Essa estratégia modular ajuda a
manter o volume da instalação do Visual Studio menor e, assim, ele instala e atualiza
mais rapidamente.

Se você ainda não tiver instalado o Visual Studio, acesse a página Downloads do Visual
Studio para instalá-lo gratuitamente.

Para saber mais sobre como configurar o Visual Studio no sistema, confira Instalar o
Visual Studio.

Criar aplicativos do Azure habilitados para


nuvem
O Visual Studio tem um conjunto de ferramentas para criar aplicativos habilitados para
nuvem do Microsoft Azure com facilidade. Você pode configurar, compilar, depurar,
empacotar e implantar aplicativos e serviços do Azure diretamente do IDE (ambiente de
desenvolvimento integrado) do Visual Studio. Para obter as ferramentas e modelos de
projeto do Azure, selecione a carga de trabalho Desenvolvimento do Azure ao instalar
o Visual Studio.

) Importante
A janela do Cloud Explorer está desativada no Visual Studio 2022. Para mais
informações, confira Gerenciar os recursos associados às suas contas do no Cloud
Explorer do Visual Studio.

Use o portal do Azure para acessar os recursos do Azure conforme necessário. Você
poderá continuar a usar o nó do Azure do Gerenciador de Servidores nas versões
anteriores do Visual Studio.

É possível usar os serviços do Azure para seus aplicativos adicionando Serviços


Conectados como:

Serviço conectado do Active Directory para usar contas do Azure AD (Azure Active
Directory ) para se conectar a aplicativos Web
Serviço conectado do Armazenamento do Azure para armazenamento de blobs,
filas e tabelas
Serviço conectado do Key Vault para gerenciar segredos para aplicativos Web

Os Serviços Conectados disponíveis dependem de seu tipo de projeto. Adicione um


serviço clicando com o botão direito do mouse no projeto no Gerenciador de Soluções
e escolhendo Adicionar>Serviço Conectado.

Na tela Serviços Conectados, selecione o link ou o sinal de adição para Adicionar uma
dependência de serviço. Na tela Adicionar dependência, selecione o serviço que você
deseja adicionar e siga as telas para se conectar à sua assinatura e ao serviço do Azure.
Para obter mais informações, confira Move to the cloud With Visual Studio and Azure
(Mover para a nuvem com o Visual Studio e o Azure).

Criar aplicativos Web


O Visual Studio pode ajudar você a escrever aplicativos para a Web. Você pode criar
aplicativos Web usando ASP.NET, Node.js, Python, JavaScript e TypeScript. O Visual
Studio dá suporte a muitas estruturas da Web, como Angular, jQuery e Express.

O ASP.NET Core e o .NET Core são executados nos sistemas operacionais Windows,
Mac e Linux. O ASP.NET Core é uma atualização importante para o MVC, WebAPI e
SignalR. O ASP.NET Core foi projetado desde o princípio para fornecer uma pilha .NET
enxuta e combinável para criar serviços e aplicativos Web modernos baseados em
nuvem.

Para obter mais informações, consulte Ferramentas da Web modernas .

Criar jogos e aplicativos de plataforma cruzada


O Visual Studio pode criar aplicativos e jogos para macOS, Linux e Windows, bem como
para Android, iOS e outros dispositivos móveis . Com o Visual Studio, você pode criar:

Aplicativos .NET Core executados no Windows, macOS e Linux.

Aplicativos móveis para iOS, Android e Windows em C# e F# usando o Xamarin .

Jogos 2D e 3D em C# usando Ferramentas do Visual Studio para Unity.

Aplicativos C++ nativos para dispositivos iOS, Android e Windows. Compartilhe


código comum em bibliotecas do iOS, Android e Windows usando o C++ para
desenvolvimento multiplataforma.

Conectar-se aos bancos de dados


O Gerenciador de Servidores ajuda você a procurar e a gerenciar ativos e instâncias de
servidor locais, remotas e no Azure, no Microsoft 365, no Salesforce.com e em sites. Para
abrir o Gerenciador de Servidores, escolha Exibir>Gerenciador de Servidores. Para
obter mais informações de como usar o Gerenciador de Servidores, confira Adicionar
novas conexões.

O Pesquisador de Objetos do SQL Server fornece uma visão dos objetos de banco de
dados semelhante ao SQL Server Management Studio. Com o Pesquisador de Objetos
do SQL Server, você pode fazer o trabalho leve de administração e design de banco de
dados. Exemplos incluem editar dados de tabela, comparar esquemas e executar
consultas usando menus contextuais.

Para abrir o Pesquisador de Objetos do SQL Server, selecione o ícone na parte superior
da janela do Gerenciador de Servidores ou selecione Exibir>Pesquisador de Objetos
do SQL Server no menu superior do Visual Studio.

O SSDT (SQL Server Data Tools) é um ambiente de desenvolvimento avançado do SQL


Server, do Banco de Dados SQL do Azure e do SQL Data Warehouse do Azure. Com o
SSDT, você pode criar, depurar, dar manutenção e refatorar bancos de dados. Você
pode trabalhar com um projeto de banco de dados ou diretamente com uma instância
local ou não de banco de dados conectado. Para obter o SSDT, use o Instalador do
Visual Studio para instalar a carga de trabalho Armazenamento e processamento de
dados.

Depurar, testar e melhorar o código


Quando você escreve um código, é necessário executá-lo e testá-lo para verificar o
desempenho e se há bugs. Com o sistema de depuração do Visual Studio você pode
depurar o código em execução no projeto local, em um dispositivo remoto ou em um
emulador de dispositivo. Percorra o código uma instrução por vez e inspecione as
variáveis conforme avança. Ou defina pontos de interrupção que sejam alcançados
somente quando uma determinada condição for verdadeira. Você pode gerenciar as
opções de depuração no próprio editor de códigos para não ter que sair do código.

Para obter mais informações sobre depuração no Visual Studio, confira Primeiro contato
com o depurador.

Para melhorar o desempenho do aplicativo, confira o recurso de criação de perfil do


Visual Studio.

O Visual Studio oferece opções de testes como teste de unidade, Live Unit Testing,
IntelliTest e teste de desempenho e carga. O Visual Studio também aprimorou as
capacidades de análise de código para encontrar falhas de design, segurança e de
outros tipos.

Implantar o aplicativo concluído


O Visual Studio tem ferramentas para implantar seu aplicativo para usuários ou clientes
por meio da Microsoft Store, de um site do SharePoint ou das tecnologias InstallShield
ou Windows Installer. Você pode acessar todas essas opções por meio do IDE do Visual
Studio. Para obter mais informações, consulte Implantar aplicativos, serviços e
componentes.

Gerenciar seu código-fonte e colaborar com


outros
No Visual Studio você pode gerenciar o código-fonte em repositórios Git hospedados
por qualquer provedor, incluindo o GitHub. Você também pode procurar um Azure
DevOps Server para se conectar.
Para ver detalhes completos, veja a página Experiência do Git no Visual Studio e a
página de navegação da documentação de controle de versão do Visual Studio. E, para
ver um tutorial passo a passo sobre como se conectar a um repositório Git ou Azure
DevOps usando o Visual Studio, consulte a página Abrir um projeto de um repositório.

 Dica

Continuamos a aprimorar o conjunto de recursos do Git e iterá-lo com base em


seus comentários. Para obter mais informações sobre uma atualização de recursos
recente, juntamente com um link para a pesquisa em que você pode compartilhar
seus comentários sobre ela, consulte a postagem no blog Suporte a vários
repositórios no Visual Studio .

Otimizar a experiência do Visual Studio no


Computador de Desenvolvimento da Microsoft

7 Observação

Esse recurso está atualmente em visualização pública. Essas informações estão


relacionadas a um recurso que pode ser substancialmente modificado antes de ser
lançado. A Microsoft não faz nenhuma garantia, expressa ou implícita, com relação
às informações fornecidas aqui.

Com o Visual Studio 17.7 Versão Prévia 3 , você pode pré-gerar os caches do Visual
Studio e incluí-los na imagem da caixa de desenvolvimento. Como resultado, o Visual
Studio carregará sua solução e habilitará os principais recursos do IDE mais rapidamente
em seu computador de desenvolvimento. Você também pode melhorar o desempenho
do Git em grandes repositórios habilitando otimizações de grafo de confirmação do Git
em imagens do computador de desenvolvimento.

Próximas etapas
Se o Visual Studio não tiver a funcionalidade exata de que você precisa, você pode
adicioná-la. Personalize o IDE de acordo com seu estilo e fluxo de trabalho,
adicione suporte para ferramentas externas que não estejam integradas ao Visual
Studio e modifique a funcionalidade existente para aumentar a sua produtividade.
Para saber qual é a versão mais recente das Ferramentas de Extensibilidade do
Visual Studio (SDK do VS), confira SDK do Visual Studio.
Você pode usar o .NET Compiler Platform Roslyn para escrever seus próprios
analisadores de código e geradores de código. Encontre tudo o que você precisa
em Roslyn .

Encontre extensões existentes para o Visual Studio criadas por desenvolvedores


da Microsoft e pela comunidade de desenvolvimento do Visual Studio.

Para saber mais sobre como estender o Visual Studio, consulte Estender o IDE do
Visual Studio .

Confira também
Visão geral do IDE do Visual Studio
Novidades no Visual Studio 2017
Novidades no Visual Studio 2019
Novidades no Visual Studio 2022
Instalar o Visual Studio
Artigo • 29/05/2023

Bem-vindo(a) ao Visual Studio 2022. Nesta versão, é fácil escolher e instalar apenas os
recursos que você precisa.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Instalar o Visual Studio para Mac. Se você precisar instalar
programaticamente o Visual Studio, consulte a documentação da linha de
comando online.

Quer saber mais sobre quais são as outras novidades nesta versão? Consulte nossas
notas de versão.

Você pode fazer download e instalar uma versão específica na página Histórico de
Versões do Visual Studio 2022.

Pronto para instalar? Guiaremos você no processo, passo a passo.

Etapa 1 - Verificar se o computador está pronto


para o Visual Studio
Antes de começar a instalação do Visual Studio:

1. Verifique os requisitos do sistema. Estes requisitos ajudam você a saber se o


computador dá suporte ao Visual Studio 2022.

2. Garanta que o usuário que está executando a instalação tenha permissões de


administrador na máquina. Para obter mais informações, consulte Permissões de
usuário e Visual Studio.

3. Aplique as atualizações mais recentes do Windows. Essas atualizações garantem


que o computador tenha as atualizações de segurança mais recentes e os
componentes de sistema obrigatórios para o Visual Studio.

4. Reinicialize. Isso garante que todas as instalações ou atualizações pendentes não


atrapalhem sua instalação do Visual Studio.
5. Libere espaço. Remova arquivos e aplicativos desnecessários da sua unidade do
sistema, por exemplo, executando o aplicativo Limpeza de Disco.

Você pode instalar o Visual Studio 2022 com outras versões. Para obter mais
informações, consulte Direcionamento e compatibilidade da plataforma Visual Studio
2022 e Instalar versões do Visual Studio lado a lado.

Etapa 2 – Determinar qual versão e edição do


Visual Studio instalar
Você precisará decidir qual versão e edição do Visual Studio instalar. As opções mais
comuns são:

A versão mais recente do Visual Studio 2022 hospedada em servidores Microsoft.


Para instalar isso, clique no botão a seguir e escolha a edição desejada. Um
pequeno arquivo "bootstrapper" será baixado em sua pasta Downloads.

Baixar o Visual Studio

Se você já tiver o Visual Studio instalado, poderá instalar outra versão junto com
ela escolhendo uma oferecida na guia Disponível do Instalador do Visual Studio.

Você pode baixar um bootstrapper para uma versão muito específica na página
Histórico de Lançamento do Visual Studio 2022 e usá-lo para instalar o Visual
Studio.

O administrador de TI pode apontar você para um local específico no qual instalar


o Visual Studio.

Etapa 3 – Iniciar a instalação


Se você baixou um arquivo de bootstrapper, poderá usá-lo para instalar o Visual Studio.
O bootstrapper primeiro instalará a versão mais recente do Instalador do Visual Studio.
O instalador é um programa separado que fornece tudo o que você precisa para instalar
e personalizar o Visual Studio.

1. Na pasta de Downloads, clique duas vezes no bootstrapper chamado


VisualStudioSetup.exe ou nomeie-o como vs_community.exe para iniciar a
instalação.

1. Se você receber um aviso de Controle de Conta de Usuário, escolha Sim.


Solicitaremos sua confirmação dos Termos de Licença da Microsoft e da Política
de Privacidade da Microsoft. Escolha Continuar.

Você também pode iniciar a instalação de qualquer produto oferecido na guia


disponível do Instalador do Visual Studio.

Etapa 4 – escolher cargas de trabalho


Após a instalação do instalador do Visual Studio, use-o para personalizar sua instalação
selecionando os conjuntos de recursos ou cargas de trabalho desejados. Veja aqui como
fazer isso.

1. Selecione a carga de trabalho desejada na tela Instalador do Visual Studio.

Examine os resumos da carga de trabalho para decidir qual carga de trabalho dá


suporte aos recursos necessários. Por exemplo, escolha o ASP.NET e a carga de
trabalho de desenvolvimento da Web e ASP.NET para editar páginas ASP.NET da
Web com o Web Live Preview ou criar aplicativos Web responsivos com o Blazor
ou escolha entre cargas de trabalho Desktop e Dispositivos Móveis para
desenvolver aplicativos multiplataforma com projetos C#ou C++ direcionados ao
C++20.

2. Depois de escolher as cargas de trabalho desejadas, selecione Instalar.

Em seguida, serão exibidas telas de status que mostram o progresso da instalação


do Visual Studio.

 Dica

A qualquer momento após a instalação, você pode instalar as cargas de trabalho


ou os componentes não instalados inicialmente. Caso o Visual Studio esteja aberto,
acesse Ferramentas>Obter Ferramentas e Funcionalidades..., que abre o
Instalador do Visual Studio. Ou abra o Instalador do Visual Studio pelo menu
Iniciar. Assim, é possível escolher as cargas de trabalho ou os componentes que
você deseja instalar. Em seguida, escolha Modificar.

Etapa 5 – Escolher componentes individuais


(opcional)
Se não quiser usar o recurso de cargas de trabalho para personalizar a instalação do
Visual Studio ou se desejar adicionar componentes além daqueles instalados por uma
carga de trabalho, instale ou adicione componentes individuais por meio da guia
Componentes individuais. Escolha o que deseja e siga os prompts.
Etapa 6 – Instalar pacotes de idiomas (opcional)
Por padrão, o programa do instalador tenta encontrar a correspondência do idioma do
sistema operacional quando ele é executado pela primeira vez. Para instalar o Visual
Studio em um idioma de sua escolha, escolha a guia Pacotes de idioma do Instalador
do Visual Studio e siga os prompts.

Alterar o idioma de instalação da linha de comando


Outra maneira de alterar o idioma padrão é executar o instalador a partir da linha de
comando. Por exemplo, é possível forçar a execução do instalador em inglês usando o
seguinte comando:

shell

vs_installer.exe --locale en-US

O instalador memorizará essa configuração na próxima vez em que for executado. O


instalador dá suporte às seguintes localidades de idioma: zh-cn, zh-tw, cs-cz, en-us, es-
es, fr-fr, de-de, it-it, ja-jp, ko-kr, pl-pl, pt-br, ru-ru, and tr-tr.

Etapa 7 – Selecionar o local de instalação


(opcional)
Você pode reduzir o volume de instalação do Visual Studio na unidade do sistema. Para
obter mais informações, consult Selecionar locais de instalação.
) Importante

Você pode selecionar uma unidade diferente para o IDE do Visual Studio ou Baixar
cache somente quando instalar o Visual Studio pela primeira vez. Se você já tiver
instalado e quiser alterar unidades, precisará desinstalar o Visual Studio e, em
seguida, reinstalá-lo.

Se você já instalou o Visual Studio no computador antes, não poderá alterar o


caminho Componentes, ferramentas e SDKs compartilhados e ele aparecerá
esmaecido. Esse local é compartilhado por todas as instalações do Visual Studio.

Etapa 8 – Começar a desenvolver


1. Após concluir sua instalação do Visual Studio, selecione o botão Iniciar para ver a
introdução ao desenvolvimento com o Visual Studio.

2. Na tela Iniciar, selecione Criar um novo projeto.

3. Na caixa de pesquisa de modelo, insira o tipo de aplicativo que deseja criar para
ver uma lista de modelos disponíveis. A lista de modelos depende das cargas de
trabalho escolhidas durante a instalação. Para ver os diferentes modelos, escolha
diferentes cargas de trabalho.

Você também pode filtrar sua pesquisa para uma linguagem de programação
específica usando a lista suspensa Linguagem de programação. Você também
pode filtrar usando as listas Plataforma e Tipo de projeto.

4. O Visual Studio abre seu novo projeto e você está pronto para codificar!
Suporte ou solução de problemas
Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Atualizar o Visual Studio
Modificar o Visual Studio
Desinstalar o Visual Studio
Criar uma instalação offline do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Instalar o Visual Studio para Mac
Criar um pacote de instalação offline do
Visual Studio para instalação local
Artigo • 12/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Projetamos o Visual Studio para funcionar bem em várias configurações de computador.


As informações nesta página abordam como criar um pacote de instalação offline de
arquivos para instalação no computador local.

) Importante

Se você é administrador de TI corporativo e deseja executar uma implantação do


Visual Studio em uma rede de estações de trabalho cliente ou se precisa criar um
pacote de instalação de arquivos a serem transferidos ou instalados em outro
computador, confira no Guia do Administrador do Visual Studio , a página Criar
uma instalação baseada em rede do Visual Studio e a documentação Implantar
um layout em um computador cliente.

Usar o recurso "baixar tudo, depois instalar"


Às vezes, o acesso online é problemático. Por exemplo, você pode ter uma conexão com
a Internet não confiável ou a conexão pode ter baixa largura de banda. Para situações
como essas, disponibilizamos métodos adicionais para aquisição do Visual Studio. Você
pode usar o recurso Baixar tudo e, em seguida, instalar do Instalador do Visual Studio
para baixar um pacote de instalação no computador local antes de instalá-lo localmente
ou usar a linha de comando para criar um pacote de instalação local e instalar
localmente mais tarde.

Para baixar um pacote de instalação local, selecione a opção Baixar tudo e instalar na
lista suspensa na parte inferior da guia Cargas de Trabalho do Instalador do Visual
Studio. A finalidade desse recurso é fazer o download dos pacotes do Visual Studio no
mesmo computador no qual você planeja instalar o Visual Studio. Baixando os pacotes
localmente primeiro, você pode se desconectar com segurança da Internet antes de
instalar o Visual Studio.
7 Observação

A funcionalidade Baixar tudo e instalar baixa um pacote de instalação do Visual


Studio personalizado para o computador local. Não tente transferir o pacote de
instalação baixado para outro computador, pois ele não foi projetado para
funcionar dessa maneira. Ou, se você quiser baixar um pacote de instalação,
hospedá-lo em um compartilhamento de rede ou em um site da intranet e
transferi-lo ou instalá-lo em outro computador, será necessário criar um layout de
rede, conforme descrito na documentação Criar uma instalação baseada em rede
do Visual Studio.

Você também pode configurar atualizações futuras do Visual Studio para respeitar o
comportamento Baixar tudo e, em seguida, instalar. Para obter mais informações,
confira a documentação Comportamento de instalação e download.

Usar a linha de comando para criar um layout


local

Etapa 1 – Baixar o bootstrapper do Visual Studio


Baixe o bootstrapper correto da versão e edição desejadas do Visual Studio e copie-o
no diretório que deverá ser o local de origem do layout local. O bootstrapper é o
executável usado para criar, atualizar ou modificar o layout local. Você deve ter uma
conexão com a Internet para concluir esta etapa.

Etapa 2 – Criar um layout local


Abra um prompt de comando com privilégios de administrador, navegue até o diretório
para o qual você baixou o bootstrapper e use os parâmetros do bootstrapper para criar
o layout local. É preciso ter uma conexão com a Internet para concluir esta etapa.
Exemplos comuns de criação de layout local são ilustrados abaixo. Veja exemplos
adicionais na página Criar um layout de rede do Visual Studio e na página Exemplos de
parâmetro de linha de comando. Você pode instalar um idioma diferente do inglês
alterando en-US para uma localidade da lista de localidades de idioma e pode usar a
lista de componentes e cargas de trabalho para personalizar ainda mais o layout local.

Para criar um layout de local completo com todos os recursos e todas as


linguagens (isso levará algum tempo, pois temos muitos recursos!), execute:

shell

vs_enterprise.exe --layout c:\localVSlayout

7 Observação

Verifique se o caminho de instalação completo tem menos de 80 caracteres e se o


computador tem amplo armazenamento. Um layout local completo do Visual
Studio exige no mínimo 45 GB de espaço em disco. Para obter mais informações,
confira Requisitos do sistema.

Para desenvolvimento de área de trabalho .NET Web e .NET para apenas uma
linguagem, execute:

shell

vs_enterprise.exe --layout c:\localVSlayout --add


Microsoft.VisualStudio.Workload.ManagedDesktop --add
Microsoft.VisualStudio.Workload.NetWeb --lang en-US

Para o desenvolvimento da área de trabalho C++, incluindo todos os componentes


recomendados e opcionais, para apenas uma execução de linguagem:

shell

vs_enterprise.exe --layout c:\localVSlayout --add


Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --
includeOptional --lang en-US

Você também pode usar um arquivo vsconfig exportado para personalizar o


conteúdo do layout, verificar um layout ou corrigir um layout.

Etapa 3 – Instalar o Visual Studio do layout local


Quando você instala o Visual Studio de um layout local, o instalador do Visual Studio
usa as versões locais dos arquivos. Porém, se durante a instalação você selecionar
componentes que não estão no layout, o instalador do Visual Studio tentará baixá-los
da Internet. Para garantir que você instale somente os arquivos que baixou, use as
mesmas opções de linha de comando que usou para criar o layout local. Para garantir
que o instalador não tente acessar a Internet ao instalar o produto, use a opção --
noweb .

Por exemplo, se você criou um layout de instalação local com o seguinte comando:

shell

vs_enterprise.exe --layout c:\localVSlayout --add


Microsoft.VisualStudio.Workload.ManagedDesktop --add
Microsoft.VisualStudio.Workload.NetWeb --includeOptional --lang en-US

Em seguida, use este comando para executar a instalação e impedir que o computador
cliente acesse a Internet:

shell

c:\localVSlayout\vs_enterprise.exe --noWeb --add


Microsoft.VisualStudio.Workload.ManagedDesktop --add
Microsoft.VisualStudio.Workload.NetWeb --includeOptional

) Importante

Se você estiver usando o Visual Studio Community, talvez seja solicitado que você
entre dentro de 30 dias após a instalação, mas isso não afetará sua capacidade de
usar o produto.

7 Observação

Caso ocorra um erro indicando que a assinatura é inválida, será necessário instalar
certificados atualizados. Abra a pasta Certificados no layout local. Clique duas
vezes em cada um dos arquivos de certificado e, em seguida, clique no assistente
do Gerenciador de Certificados. Se for solicitado que você forneça uma senha,
deixe-a em branco.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Guia de Administradores do Visual Studio
Instalar os certificados necessários para instalação offline do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
IDs de carga de trabalho e de componente do Visual Studio
Atualizar uma instalação em rede do Visual Studio
Instalar os certificados necessários para
instalação offline do Visual Studio
Artigo • 06/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio é projetado principalmente para instalação em um computador


conectado à Internet, pois muitos componentes são atualizados regularmente. No
entanto, com algumas etapas adicionais, é possível implantar o Visual Studio em um
ambiente em que uma conexão com a Internet operacional não está disponível.

O mecanismo de instalação do Visual Studio instalará apenas conteúdo confiável. Ele faz
isso ao conferir as assinaturas Authenticode do conteúdo que está sendo baixado e
verificar se todo o conteúdo é confiável antes de instalá-lo. Isso mantém seu ambiente
seguro contra ataques nos quais o local de download está comprometido.

A instalação do Visual Studio, portanto, requer que vários certificados intermediários e


raiz padrão da Microsoft estejam instalados e atualizados no computador do usuário. Se
o computador foi mantido atualizado com o Windows Update, os certificados de
autenticação geralmente estão atualizados. Se o computador está conectado à Internet,
durante a instalação, o Visual Studio poderá atualizar os certificados, conforme o
necessário para verificar as assinaturas de arquivo. Se o computador estiver offline, os
certificados deverão ser atualizados de outra maneira.

Como atualizar certificados quando estiver


offline
Há três opções para instalar ou atualizar certificados em um ambiente offline.

Opção 1 – Instalar manualmente os certificados de uma


pasta de layout
Quando você cria um layout de rede ou um cache offline local, os certificados
necessários são baixados na pasta Certificados. É possível instalar os certificados
manualmente clicando com o botão direito do mouse em cada um dos arquivos de
certificado, selecionando Instalar Certificado e, em seguida, clicando no assistente do
Gerenciador de Certificados. Se for solicitado a fornecer uma senha, deixe-a em branco.
Opção 2 – Distribuir certificados raiz confiáveis em um
ambiente empresarial
Para empresas com computadores offline sem os certificados raiz mais recentes, um
administrador poderá usar as instruções na página Configurar raízes confiáveis e
certificados não permitidos para atualizá-los.

Opção 3 – Instalar certificados como parte de um script


de implantação do Visual Studio
Se estiver usando o script de implantação do Visual Studio em um ambiente offline para
estações de trabalho cliente, você deverá seguir estas etapas:

1. Copie a Ferramenta Gerenciador de Certificados (certmgr.exe) para o local de rede


ou para o local de instalação do cache local. Certmgr.exe não está incluído como
parte do Windows em si, mas está disponível como parte do SDK do Windows.

2. Crie um arquivo em lotes com os seguintes comandos:

shell

certmgr.exe -add [layout path]\certificates\manifestRootCertificate.cer


-n "Microsoft Root Certificate Authority 2011" -s -r LocalMachine root

certmgr.exe -add [layout


path]\certificates\manifestCounterSignRootCertificate.cer -n "Microsoft
Root Certificate Authority 2010" -s -r LocalMachine root

certmgr.exe -add [layout


path]\certificates\vs_installer_opc.RootCertificate.cer -n "Microsoft
Root Certificate Authority 2010" -s -r LocalMachine root

Como alternativa, crie um arquivo em lotes que usa certutil.exe, que é fornecido
com o Windows, com os seguintes comandos:

shell

certutil.exe -addstore -f "Root" "[layout


path]\certificates\manifestRootCertificate.cer"

certutil.exe -addstore -f "Root" "[layout


path]\certificates\manifestCounterSignRootCertificate.cer"

certutil.exe -addstore -f "Root" "[layout


path]\certificates\vs_installer_opc.RootCertificate.cer"
3. Implante o arquivo em lotes para o cliente. Este comando deve ser executado de
um processo elevado.

Quais são os arquivos de certificados na pasta


Certificados?
manifestRootCertificate.cer contém:
Certificado raiz: Autoridade de Certificação Raiz da Microsoft 2011
manifestCounterSignRootCertificate.cer e vs_installer_opc. RootCertificate.cer
contêm:
Certificado raiz: Autoridade de Certificação Raiz da Microsoft 2010

O Instalador do Visual Studio exige apenas a instalação dos certificados raiz no sistema.
Todos esses certificados são necessários para sistemas Windows 7 Service Pack 1 que
não têm as atualizações mais recentes do Windows instaladas.

Por que os certificados da pasta Certificados


não são instalados automaticamente?
Quando uma assinatura é verificada em um ambiente online, as APIs do Windows são
usadas para baixar e adicionar os certificados no sistema. A verificação de que o
certificado é confiável e permitido por meio de configurações administrativas ocorre
durante esse processo. Esse processo de verificação não pode ocorrer na maioria dos
ambientes offline. Instalar certificados manualmente permite aos administradores de
empresa garantir que eles sejam confiáveis e atendam à política de segurança de suas
organizações.

Verificando se os certificados já estão


instalados
Uma maneira de verificar no sistema de instalação é seguir estas etapas:

1. Execute o mmc.exe.
a. Clique em Arquivo e selecione Adicionar/Remover Snap-in.
b. Clique duas vezes em Certificados, selecione Conta do computador e clique em
Avançar.
c. Selecione Computador local e clique em Concluir.
d. Expanda Certificados (Computador Local).
e. Expanda Autoridades de Certificação Confiáveis e selecione Certificados.
Verifique os certificados raiz necessários para esta lista.

f. Expanda Autoridades de Certificação Intermediárias e selecione Certificados.

Verifique os certificados intermediários necessários desta lista.

2. Clique em Arquivo e selecione Adicionar/Remover Snap-in.


a. Clique duas vezes em Certificados, selecione Minha conta de usuário e clique
em Concluir.
b. Expanda Certificados – Usuário atual.
c. Expanda Autoridades de Certificação Intermediárias e selecione Certificados.

Verifique os certificados intermediários necessários desta lista.

Se os nomes dos certificados não estiverem na coluna Emitido Para, eles terão que ser
instalados. Se um certificado intermediário estiver apenas no repositório de certificados
intermediários do Usuário Atual, ele só estará disponível para o usuário que estiver
conectado. Talvez ele precise ser instalado para outros usuários.

Instalar o Visual Studio


Depois de instalar os certificados no computador cliente, você poderá instalar o Visual
Studio do layout local ou implantar o Visual Studio do compartilhamento de layout de
rede no computador cliente.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Confira também
Criar uma instalação de rede do Visual Studio
Criar uma instalação offline do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Instalar versões do Visual Studio lado a
lado
Artigo • 06/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível instalar o Visual Studio em um computador que tenha uma versão principal
anterior ou posterior do Visual Studio já instalada.

Antes de instalar as versões lado a lado, revise as seguintes condições:

Se você usar o Visual Studio 2022 para abrir uma solução que foi criada no Visual
Studio 2017 ou Visual Studio 2019, você poderá, posteriormente, abrir e modificar
a solução novamente na versão anterior desde que você não tenha implementado
recursos que são específicos do Visual Studio 2022.

Se você tentar usar o Visual Studio 2022 para abrir uma solução que foi criada no
Visual Studio 2019 ou em uma versão anterior, talvez você precise alterar seus
projetos e arquivos para que fiquem compatíveis com o Visual Studio 2022. Para
obter mais informações, veja a página Portar, migrar e atualizar projetos do Visual
Studio.

Se você desinstalar uma versão do Visual Studio em um computador que tem mais
de uma versão instalada, as associações de arquivo do Visual Studio serão
removidas para todas as versões.

O Visual Studio não atualiza automaticamente extensões porque nem todas as


extensões são compatíveis. Você deverá reinstalar as extensões do Visual Studio
Marketplace ou do fornecedor de software.

Instalar diferentes edições da mesma versão


principal do Visual Studio lado a lado
Cada instalação do Visual Studio deve ter uma combinação exclusiva de versão
principal, edição e canal de atualização. Então, por exemplo (se você tinha uma máquina
com muito espaço em disco), você pode instalar o Visual Studio 2022 Enterprise Preview
(canal de versão prévia) ao lado do Visual Studio 2022 Enterprise (canal de lançamento)
ao lado do Visual Studio 2019 Professional (canal de lançamento) e ao lado do Visual
Studio 2019 Professional (canal de layout personalizado).
Ao atualizar de uma versão secundária do Visual Studio para a próxima, o Instalador do
Visual Studio atualizará, por padrão, sua instalação atual com a versão mais recente
disponível nesse canal. Por exemplo, se a versão 17.3.9 acabou de ser lançada pela
Microsoft no canal de lançamento do Visual Studio 2022, o instalador tentará substituir
sua instalação atual do Visual Studio 2022 do canal de lançamento por esta versão mais
recente no mesmo canal.

Instalação manual
Você pode usar outro bootstrapper manualmente para instalar uma nova instância do
Visual Studio ou selecionar uma das opções na guia Disponível do Instalador do Visual
Studio.

1. Para usar outro bootstrapper, você pode baixar e executar um dos arquivos de
bootstrapper do Visual Studio 2022 na página de downloads do Visual Studio ou
na página de lançamentos do Visual Studio 2022 para a versão secundária que
você gostaria de instalar lado a lado com o existente versão do Visual Studio.

2. O uso da guia Disponível do instalador pressupõe, é claro, que você já tenha


alguma outra versão do Visual Studio instalada. Localize o Instalador do Visual
Studio no computador. Depois da atualização, clique na guia Disponível e instale
um dos produtos oferecidos.

Em seguida, siga as etapas para selecionar os componentes necessários para sua


instalação. Para obter mais informações, confira Instalar o Visual Studio.

 Dica
Os administradores de TI que desejam suprimir a visibilidade da guia Disponível do
Instalador do Visual Studio ou personalizar a disponibilidade de ofertas de layout
na guia Disponível podem configurar o registro e as políticas do cliente. Confira
Configurar políticas para implantações corporativas do Visual Studio para obter
mais informações.

Instalação programática
Você também pode usar um bootstrapper programaticamente ou o instalador para
iniciar uma nova instalação do Visual Studio. Abra um prompt de comando como
administrador e execute um dos seguintes comandos. Lembre-se de especificar um
novo caminho de pasta para o local de instalação e substitua o nome do arquivo .exe
pelo nome de bootstrapper apropriado para a edição do Visual Studio que você está
instalando.

Instalação por meio do bootstrapper:

shell

vs_Enterprise.exe --installPath "C:\Program Files (x86)\Microsoft Visual


Studio\<AddNewPath>"

Para instalar usando o instalador que já está presente no computador cliente:

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" --


installPath "C:\Program Files (x86)\Microsoft Visual Studio\<AddNewPath>"

Observe que você não pode iniciar o instalador programaticamente no mesmo diretório
no qual está o instalador.

Versões do .NET Framework e instalações lado


a lado
Os projetos do Visual Basic, Visual C# e Visual F# usam a opção Estrutura de Destino no
Designer de Projeto para especificar a versão do .NET Framework que será usada. Para
um projeto do C++, é possível alterar manualmente a estrutura de destino alterando o
arquivo .vcxproj. Para obter mais informações, veja a página Compatibilidade de versão
no .NET Framework.
Ao criar um projeto, você pode especificar a qual versão do .NET Framework o projeto é
direcionado na lista .NET Framework na caixa de diálogo Novo Projeto.

Para informações específicas do idioma, consulte o tópico apropriado na tabela a seguir.

Linguagem Tópico

Visual Basic Página de Aplicativo, Designer de Projeto (Visual Basic)

Visual C# Página Aplicativo, Designer de Projeto (C#)

Visual F# Desenvolver com o Visual F# no Visual Studio

C++ Como modificar a estrutura de destino e o conjunto de ferramentas da plataforma

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Instalar o Visual Studio
Portar, migrar e atualizar projetos do Visual Studio
Como compilar assemblies lado a lado e aplicativos isolados do C/C++
Selecionar os locais de instalação no
Visual Studio
Artigo • 07/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Reduza o volume de instalação do Visual Studio na unidade do sistema alterando a


localização de alguns dos arquivos. Especificamente, você pode usar uma localização
diferente para o cache de download e componentes, ferramentas e SDKs
compartilhados.

7 Observação

Há algumas ferramentas e SDKs que têm regras diferentes sobre o local em que
podem ser instalados. Essas ferramentas e SDKs são instalados em sua unidade do
sistema, mesmo que você escolha outra localização.

Introdução
1. Ao instalar o Visual Studio, escolha a guia Locais de instalação.

2. Na seção IDE do Visual Studio, aceite o caminho padrão. O Visual Studio instala o
produto principal e inclui arquivos específicos desta versão do Visual Studio.

 Dica
Se a unidade do sistema é uma SSD (unidade de estado sólido), é
recomendável que você mantenha o produto principal na unidade do sistema.
Por quê? Ao desenvolver com o Visual Studio, você lê e grava em vários
arquivos, aumentando a atividade de E/S do disco. É melhor escolher sua
unidade mais rápida para lidar com a carga.

) Importante

É possível selecionar um local diferente apenas quando você instala o Visual


Studio pela primeira vez. Se você já tiver instalado e quiser alterar o local,
precisará desinstalar o Visual Studio e, em seguida, reinstalá-lo.

3. Na seção Cache de download, decida se deseja manter o cache de download e em


que local você deseja armazenar os arquivos.

Marque ou desmarque Manter o cache de download após a instalação.

Se você optar por não manter o cache de download, o local do cache de


download só será usado temporariamente. Essa ação não afetará ou excluirá
arquivos de instalações anteriores.

Por exemplo, se você selecionar a carga de trabalho "Desenvolvimento da


área de trabalho com C++", o tamanho temporariamente necessário para o
local de cache de download será de 1,28 GB. Assim que a instalação for
concluída, os arquivos de cache baixados serão removidos, deixando apenas
os metadados do pacote.

Especifique o caminho da pasta, incluindo a unidade na qual deseja


armazenar os manifestos e os arquivos de instalação no cache de download.

) Importante

É possível selecionar um local diferente apenas quando você instala o Visual


Studio pela primeira vez. Se você já tiver instalado e quiser alterar o local,
precisará desinstalar o Visual Studio e, em seguida, reinstalá-lo.

4. Na seção Componentes, ferramentas e SDKs compartilhados, selecione a pasta


na qual você deseja armazenar os arquivos compartilhados pelas instalações lado
a lado do Visual Studio. Os SDKs e as ferramentas também são armazenados nesse
diretório.
) Importante

Se você já instalou o Visual Studio no computador, não pode alterar o


caminho Componentes, ferramentas e SDKs compartilhados e ele aparecerá
esmaecido.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar o Visual Studio
Atualizar o Visual Studio
Modificar o Visual Studio
Desinstalar o Visual Studio
Importar ou exportar configurações de
instalação
Artigo • 07/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar arquivos de configuração de instalação para configurar o Visual Studio.
Para fazer isso, exporte as informações de componentes e da carga de trabalho para um
arquivo .vsconfig usando o Instalador do Visual Studio. Em seguida, você pode importar
a configuração para instalações novas ou existentes, usá-las para criar ou modificar um
layout ou uma instalação offline e compartilhá-las com outras pessoas.

Iniciando com o Visual Studio 2022 versão 17.9 Preview 1, agora é possível incluir
algumas extensões em um arquivo *.vsconfig e, em seguida, usar o instalador do
Visual Studio para importá-las para o Visual Studio. Mais detalhes sobre essa
funcionalidade estão descritos na seção Visualização de Extensões abaixo.

Exportar uma configuração


É possível exportar um arquivo de configuração de instalação de uma instância instalada
anteriormente do Visual Studio.

Usar a interface do usuário do Instalador do Visual Studio


1. Abra o Instalador do Visual Studio.

2. No cartão do produto, escolha o botão Mais e selecione Exportar configuração.

3. Procure ou digite o local no qual deseja salvar seu arquivo .vsconfig e, em seguida,
escolha Examinar detalhes.
4. Verifique se você tem as cargas de trabalho e os componentes que deseja, e
escolha Exportar.

Exportar um arquivo de configuração programaticamente


Você pode exportar uma configuração programaticamente usando o verbo export ,
conforme descrito na documentação Instalar o Visual Studio a partir da linha de
comando.

Importar uma configuração


Semelhante à exportação de uma configuração, você também pode importar um
arquivo de configuração de instalação para uma instância instalada anteriormente do
Visual Studio ou usá-lo para inicializar uma nova instalação do Visual Studio.
Usar a interface do usuário do Instalador do Visual Studio
Quando estiver pronto para importar um arquivo de configuração de instalação, siga
estas etapas.

1. Abra o Instalador do Visual Studio.

2. Na guia Instalado ou na guia Disponível, selecione Mais>Configuração de


Importação no cartão do produto.

3. Localize o arquivo .vsconfig que você deseja importar e, em seguida, escolha


Examinar detalhes.

4. Verifique se você tem as cargas de trabalho e os componentes que deseja e


escolha Fechar.

Usar um arquivo de configuração programaticamente


para adicionar componentes a uma instalação existente
Use --config para inicializar ou modificar uma instalação existente para adicionar ou
remover componentes. O exemplo a seguir usa o instalador já no computador cliente
para modificar uma instalação existente.

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" modify


--installPath "C:\VS" --config "C:\myconfig.vsconfig"

7 Observação

Para adicionar ou remover componentes a uma instalação existente usando um


arquivo de configuração (*.vsconfig), você precisará modificar o produto instalado e
não atualizar. Atualizar apenas atualiza os componentes para a versão mais
recente; ele não adiciona nem remove novos. Para saber mais, confira Instalar o
Visual Studio a partir da linha de comando.

Usar um arquivo de configuração para


inicializar o conteúdo de um layout
Usando o bootstrapper correto que corresponde à versão e à edição do Visual Studio
que você deseja, abra um prompt de comando de administrador e execute o seguinte
comando para usar --config e configurar o conteúdo de um layout:

shell

vs_enterprise.exe --layout c:\localVSlayout --config c:\myconfig.vsconfig --


lang en-US

Instalar automaticamente os componentes


ausentes
Salve um arquivo .vsconfig no diretório raiz da solução e abra a solução. O Visual Studio
detecta automaticamente os componentes ausentes e solicita que você os instale.

Você também pode gerar um arquivo .vsconfig diretamente no Gerenciador de


Soluções.

1. Clique com botão direito do mouse no seu arquivo de solução.

2. Escolha Adicionar>Arquivo de configuração de instalação.

3. Confirme o local no qual deseja salvar o arquivo .vsconfig e escolha Revisar


detalhes.

4. Verifique se você tem as cargas de trabalho e os componentes que deseja, e


escolha Exportar.

7 Observação
Confira mais informações na postagem do blog Configurar o Visual Studio em sua
organização com .vsconfig .

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Formato de arquivo vsconfig


O arquivo .vsconfig é um formato de arquivo json que contém uma seção de
componentes que contém cargas de trabalho e componentes.

shell

{
"version": "1.0",
"components": [
"Microsoft.VisualStudio.Component.CoreEditor",
"Microsoft.VisualStudio.Workload.CoreEditor",
"Microsoft.VisualStudio.Component.NuGet"
]
}

Extensões

7 Observação
Esse recurso está atualmente em visualização pública. Essas informações estão
relacionadas a um recurso que pode ser substancialmente modificado antes de ser
lançado. A Microsoft não oferece garantias, expressas ou implícitas, com relação às
informações aqui fornecidas.

Iniciando no outono de 2023 com as versões prévias, o Visual Studio 2022 versão 17.9
agora permite que você especifique extensões privadas locais ou de mercado público
no arquivo *.vsconfig e use o instalador do Visual Studio para carregá-las em todo o
computador, o que significa que elas estarão disponíveis para todos os usuários. Como
essas extensões são instaladas em todo o computador, quem as instala deve ter
privilégios de administrador diretamente ou deve ter recebido uma concessão de
controle por meio da política AllowStandardUserControl . Observe que todas as
extensões instaladas anteriormente pelo Gerenciador de Extensões do Visual Studio
tinham a capacidade de serem (e normalmente eram) instaladas pelo usuário, não pelo
computador, e o usuário não precisava ter permissões de administrador.

Por enquanto, o instalador do Visual Studio só dá suporte para a importação de


determinados tipos de extensões. Dessa forma, os comportamentos a seguir não tem
suporte no momento e estão em nossa lista de pendências do produto; seus
comentários nos ajudarão a priorizar adequadamente.

A capacidade de usar o Instalador do Visual Studio para exportar extensões não


está disponível no momento.
Por enquanto, as atualizações de extensões continuarão a ser tratadas pelo
método herdado, e não pelo instalador do Visual Studio.
A capacidade de carregar extensões por meio do arquivo *.vsconfig atualmente se
aplica apenas ao Visual Studio 2022.
Somente as extensões contidas em um pacote *.vsix e que não contenham
extensões inseridas ou outros fatores complicadores podem ser instaladas por
meio do arquivo *.vsconfig.
Só é possível carregar extensões do marketplace público, e não extensões privadas
locais, por meio da detecção e análise automáticas do arquivo *.vsconfig no
diretório da solução.
Você pode usar o novo parâmetro --allowUnsignedExtensions para permitir
programaticamente que extensões não assinadas sejam carregadas. Esse também
pode ser incluído no response.json se estiver instalando a partir de um layout. Use
a sintaxe "allowUnsignedExtensions" : true, conforme descrito na documentação
Exemplo de conteúdo do arquivo de resposta de layout personalizado

O formato de arquivo .vsconfig que inclui as extensões deve ter a seguinte aparência.

shell
{
"version": "1.0",
"components": [
// Whatever components you want to install come here, in quotes,
separated by commas.
// You can use the installer to select the components you want to
install and then export them,
// Or you can specify the ones you want according to the [component-
id's](https://learn.microsoft.com/en-us/visualstudio/install/workload-and-
component-ids).
// This array should not be null! If you don't want to install any
component, just leave the array empty.
],
"extensions": [
// The extensions you want to install are specified in this section, in
quotes, separated by commas.
// Extensions are optional in .vsconfig, so if you don't want any, you
can delete the entire extensions section.
// The extensions must be in a *.vsix package
// Make sure that the extensions you specify are designed to work with
that version of Visual Studio.
// example syntax:
"https://marketplace.visualstudio.com/items?
itemName=MadsKristensen.ImageOptimizer64bit",
"c:\\mylocaldrive\\someextension.vsix",
"\\\\server\\share\\myextension.vsix",
"https://myweb/anotherextension.vsix"
]
}

Conteúdo relacionado
Criar uma instalação de rede do Visual Studio
Atualizar uma instalação em rede do Visual Studio
Controlar atualizações de implantações do Visual Studio
Configurar políticas para implantações empresariais
Solucionar problemas de instalação e
atualização do Visual Studio
Artigo • 07/10/2023

Aplica-se a: Visual Studio 2022

Este guia de solução de problemas inclui instruções passo a passo para resolve
problemas comuns com a instalação e atualização do Visual Studio.

 Dica

Tem problemas para instalar? Podemos ajudar. Oferecemos uma opção de suporte
para chat de instalação (somente inglês).

Instalações ou atualizações online


Experimente as resoluções possíveis a seguir que se aplicam a um problema típico de
instalação online em ordem.

1. Verifique se o problema é um problema conhecido

A primeira coisa a marcar é se o problema que você está encontrando ou não é um


problema conhecido com o Instalador do Visual Studio que a Microsoft está
trabalhando na correção.

Para ver se há uma solução alternativa para o problema, marcar Problemas Conhecidos
do Visual Studio 2019 e Problemas Conhecidos do Visual Studio 2022.

2. Tente reparar o Visual Studio


Tente reparar sua instalação. Ele pode corrigir muitos problemas comuns de atualização.

3. Veja o que a comunidade de desenvolvedores diz sobre o erro


Se o reparo não corrigir o problema, pesquise sua mensagem de erro no Visual Studio
Developer Community . Outros membros da comunidade podem ter encontrado uma
solução ou solução alternativa para o seu problema.
4. Exclua a pasta do instalador (problemas de atualização)
Se você encontrou um problema ao atualizar, tente excluir a pasta Instalador do Visual
Studio e execute novamente o bootstrapper de instalação pode resolver determinadas
falhas de atualização. Isso reinstala os arquivos Instalador do Visual Studio e redefine os
metadados de instalação.

1. Feche o Instalador do Visual Studio.


2. Exclua a pasta Instalador do Visual Studio. Normalmente, o caminho da pasta é
C:\Arquivos de Programa (x86)\Microsoft Visual Studio\Installer.
3. Execute o Instalador do Visual Studio bootstrapper. Você pode encontrar o
bootstrapper na pasta Downloads com um nome de arquivo VisualStudioSetup.exe
(Visual Studio 2022) ou vs_<edition>*.exe (Visual Studio 2019 e versões anteriores).
Ou você pode baixar o bootstrapper das páginas de download para Visual Studio
2022 ou Visual Studio 2019 e versões anteriores . Em seguida, execute o
executável para redefinir os metadados de instalação.
4. Tente instalar ou atualizar o Visual Studio novamente. Se o Instalador do Visual
Studio continuar falhando, denuncie um problema a ser suportado.

5. Relatar o problema para dar suporte

Em algumas situações, quando há arquivos corrompidos, os problemas podem exigir


solução de problemas caso a caso.

Siga estas etapas para enviar o problema para Suporte da Microsoft:

Para Visual Studio 2022:

1. Colete seus logs de configuração. Confira Como obter os logs de instalação


do Visual Studio para obter detalhes.

2. Abra o Instalador do Visual Studio e, em seguida, escolha Relatar um


problema para abrir a ferramenta Comentários do Visual Studio.

3. Dê um título ao relatório de problemas e forneça os detalhes relevantes. O


log de configuração mais recente do Instalador do Visual Studio é adicionado
automaticamente à seção Anexos adicionais do relatório de problemas.
4. Choose Submit.

Para o Visual Studio 2019 e versões anteriores:

1. Colete seus logs de configuração. Confira Como obter os logs de instalação


do Visual Studio para obter detalhes.
2. Abra o Instalador do Visual Studio e selecione Relatar um problema para
abrir a ferramenta Comentários do Visual Studio.
3. Dê um título ao relatório de problemas e forneça detalhes relevantes.
Selecione Avançar para ir para a seção Anexos e, em seguida, anexar o
arquivo de log gerado (normalmente, o arquivo está em %TEMP%\vslogs.zip ).
4. Selecione Avançar para examinar seu relatório de problemas e selecione
Enviar.

6. Remover todos os arquivos de instalação do Visual Studio


Como último recurso, você pode remover todos os arquivos de instalação do Visual
Studio e informações do produto:

1. Remova tudo com InstallCleanup.exe.


2. Execute novamente o Instalador do Visual Studio bootstrapper. Você pode
encontrar o bootstrapper na pasta Downloads com um nome de arquivo
VisualStudioSetup.exe (Visual Studio 2022) ou vs<edition>*.exe_ (Visual Studio
2019 e versões anteriores). Ou você pode baixar o bootstrapper das páginas de
download para Visual Studio 2022 ou Visual Studio 2019 e versões anteriores .
3. Tente reinstalar o Visual Studio.

7. Reverter para uma instalação anterior (somente para Visual


Studio 2022)
Antes de tentar reverter, saiba mais sobre o recurso de reversão no Visual Studio .

Se nenhuma das etapas anteriores o ajudou a atualizar com êxito o Visual Studio, você
poderá tentar reverter para sua versão instalada anteriormente. Desde o Visual Studio
2022 versão 17.4, você pode reverter para sua versão instalada anteriormente se sua
versão original estiver no canal atual versão 17.1.7 ou superior, ou no 17.0 Fall 2021
LTSC channel 17.0.10 ou superior.

Você pode reverter para sua versão instalada anteriormente usando o Instalador do
Visual Studio ou usando a linha de comando.

) Importante
Se você estiver em uma organização e estiver usando um layout para atualizar o
Visual Studio, espera-se que o administrador de TI mantenha os pacotes anteriores
no layout se espera que o cliente possa reverter. Além disso, a reversão pode estar
desabilitada ou sua tentativa de reversão pode ser desfeita se você estiver em uma
organização com conformidade de segurança ou requisitos de atualização de
software. Entre em contato com o administrador de TI para obter mais detalhes.

Para reverter com o Instalador do Visual Studio, siga estas etapas:

1. Inicie o Instalador do Visual Studio em seu computador.

2. No instalador, procure a edição do Visual Studio que você instalou.

3. Selecione Mais.

4. Selecione Reversão para a versão anterior.

5. Selecione OK para confirmar.

8. Entre em contato com nosso chat ao vivo

Se nenhuma das etapas anteriores ajudar você a instalar ou atualizar o Visual Studio
com êxito, entre em contato conosco usando nossa opção de suporte de chat ao vivo
(somente inglês) para obter mais assistência.

Layout de rede ou instalações offline


Para resolve problemas com uma instalação de rede, consulte Códigos de Erro ou
Solucionar problemas relacionados à rede ao instalar ou usar o Visual Studio.

Atualizações de administrador
As atualizações de administrador podem não ser aplicadas corretamente devido a várias
situações. Para obter mais informações, consulte Administrador atualiza códigos de erro
de solução de problemas.

Você pode usar os seguintes métodos para fornecer comentários sobre atualizações de
administrador do Visual Studio ou problemas de relatório que afetam as atualizações:

Faça perguntas à comunidade no Visual Studio Setup Q&Um Fórum.


Acesse a página de suporte do Visual Studio e marcar se o problema está listado
nas perguntas frequentes.
Forneça comentários de recursos ou reporte um problema à equipe do Visual
Studio em relação à sua experiência.
Entre em contato com o gerente de conta técnica da sua organização para a
Microsoft.

Coletar logs de instalação para Suporte da


Microsoft
Se você entrar em contato com Suporte da Microsoft, talvez seja solicitado que você
colete logs de instalação usando o Microsoft Visual Studio e .NET Framework ferramenta
de coleção de logs . A ferramenta de coleção de logs coleta logs de instalação de
todos os componentes instalados pelo Visual Studio, incluindo .NET Framework, SDK do
Windows e SQL Server. Ele também coleta informações de computador, um inventário
do Windows Installer e informações de log de eventos do Windows para o Instalador do
Visual Studio, o Instalador do Windows e a Restauração do Sistema.

Para coletar os logs, siga estas etapas:

1. Baixe a ferramenta .

2. Abra um prompt de comando administrativo.

3. Execute Collect.exe na pasta em que você salvou a ferramenta.

A ferramenta deve ser executada na mesma conta de usuário em que a instalação


com falha foi executada. Se você estiver executando a ferramenta de uma conta de
usuário diferente, defina a opção -user:<name> para especificar a conta de usuário
na qual a instalação com falha foi executada. Execute Collect.exe -? a partir de
um prompt de comando de administrador para obter mais opções e informações
de uso.

A ferramenta gera um arquivo vslogs.zip na pasta %TEMP%, normalmente em


C:\Users\YourName\AppData\Local\Temp\vslogs.zip.

Relatar problemas de produto para nós usando a ferramenta Relatar um problema que
aparece no Instalador do Visual Studio e no IDE do Visual Studio. Se você for um
administrador de TI e não tiver o Visual Studio instalado, você poderá enviar
comentários Administração de TI aqui .

Problemas ao instalar o WebView2


Se as políticas de Grupo da sua organização bloquearem a instalação do componente
WebView2, você não poderá instalar o Visual Studio porque o instalador exigirá que o
WebView2 seja instalado. Se isso acontecer, marcar estas políticas:

Se o Microsoft Edge 'Install (WebView)' estiver configurado, ele determinará se o


WebView2 pode ser instalado.
Se a política "Instalar (WebView)" do Microsoft Edge não estiver configurada, a
política "InstallDefault" do Microsoft Edge determinará se o WebView2 pode ser
instalado.

2 Aviso

Se nenhuma das políticas estiver configurada, a instalação do WebView2 será


permitida pela sua organização.

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Atualizar o Visual Studio
Artigo • 04/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este tópico discute como atualizar uma instalação de cliente do Visual Studio no
Windows. Para o Visual Studio para Mac, confira Atualizar o Visual Studio para Mac.

O Visual Studio deve primeiro ser instalado no computador antes que você possa fazer
a atualização.

Se você for um Administrador de TI e quiser configurar os clientes da sua organização


para atualizar de um layout de rede, confira o Guia de Administradores do Visual
Studio , especialmente a seção sobre como gerenciar e atualizar uma instalação de
rede.

Antes de atualizar
Por padrão, para instalar, atualizar ou modificar o Visual Studio, a conta que realiza a
atualização deve ter permissões administrativas no computador e também deve ter
permissões para a origem em que as atualizações do produto estão localizadas (na
Internet ou em um local interno). Se você estiver conectado como um usuário típico e
tentar executar um desses comandos, receberá um aviso de Controle de Conta de
Usuário solicitando credenciais de administrador. Desde agosto de 2023, um
administrador pode delegar o controle das atualizações a usuários standard
configurando a política AllowStandardUserControl . Para obter mais informações,
consulte Permissões de usuário e Visual Studio.

O Visual Studio deve ser fechado antes de executar uma atualização. É altamente
recomendável salvar seu trabalho antes de executar uma atualização.

Recomendamos que você atualize para a versão mais recente do Visual Studio 2022
para que você sempre tenha os recursos, as correções de segurança e os
aprimoramentos mais recentes.

Existem muitas maneiras diferentes de atualizar uma instalação do Visual Studio. Você
pode atualizar através do Instalador do Visual Studio, você pode verificar se há
atualizações ou usar o hub de notificação no IDE, você deve configurar o Visual Studio
para atualizar ao fechar, você pode atualizar executando uma versão específica do
bootstrapper, você pode atualizar o Visual Studio programaticamente ou você pode
fazer parte de uma organização que utiliza as atualizações do Administrador. Veja como
atualizar o Visual Studio 2022 usando esses vários métodos.

Usar o instalador do Visual Studio


1. Localize o Instalador do Visual Studio no computador.

No menu Iniciar do Windows, pesquise "instalador" e selecione Instalador do


Visual Studio nos resultados.

Se receber a solicitação para atualizar o Instalador do Visual Studio antes de


continuar, siga os prompts.

7 Observação

Os recursos de instalação do Visual Studio e as correções de bugs normalmente


são implementados no instalador. O instalador agora está sendo enviado na versão
mais atual de todos os produtos do Visual Studio com suporte no momento. Isso
significa que, em geral (a menos que especificado de outra forma), todas as novas
funcionalidades de configuração estão automaticamente disponíveis e funcionam
perfeitamente em versões mais antigas do produto.

1. No Instalador do Visual Studio, procure a instalação do Visual Studio que você


deseja atualizar.
Por exemplo, se você tiver instalado o Visual Studio Community 2022 e existir uma
atualização para ele, uma mensagem de Atualização disponível aparecerá no
instalador.

2. Escolha Atualizar para instalar as atualizações.

3. Depois que a atualização for concluída, o Instalador do Visual Studio poderá


solicitar que você reinicie o computador. Nesse caso, faça isso, depois inicie o
Visual Studio como faria normalmente.

Se não houver solicitação para reiniciar o computador, escolha Iniciar para iniciar o
Visual Studio a partir do instalador do Visual Studio.

Usar a caixa de mensagem no IDE


1. Quando você abre o Visual Studio, o IDE verifica se uma atualização está
disponível. Em determinadas situações, uma mensagem de atualização do Visual
Studio 2022 será exibida brevemente. Se você quiser atualizar agora, escolha
Exibir detalhes. Se você quiser adiar a atualização até fechar o Visual Studio,
escolha Atualizar ao Fechar.
2. Se você escolheu Exibir detalhes, na caixa de diálogo Atualização disponível
subsequente, escolha Atualizar para atualizar agora.

Utilize o hub Notificações no IDE


1. Escolha o ícone de notificação no canto inferior direito do IDE do Visual Studio
para abrir o hub de Notificações.
2. No Hub de Notificações, escolha a atualização que você quer instalar. Se você
quiser atualizar agora, escolha Exibir detalhes. Se você quiser adiar a atualização
até fechar o Visual Studio, escolha Atualizar ao Fechar.

3. Se você escolheu Exibir detalhes, na caixa de diálogo Atualização disponível


subsequente, escolha Atualizar.

7 Observação

O comando Atualizar ao Fechar encontrado na caixa de mensagem de notificação


de atualização ou no hub de Notificações não é uma configuração permanente; ele
se aplica apenas à atualização atual. É uma maneira de adiar a atualização para
quando você fechar voluntariamente o Visual Studio. Para saber como fazer para
configurar essa opção permanentemente, consulte a seção Personalizar
configurações de atualização.

Verifique manualmente se há atualizações no


IDE
1. Você pode verificar se uma atualização está disponível escolhendo Ajuda na barra
de menus e escolhendo Verificar se há Atualizações. Você também pode utilizar a
caixa de pesquisa pressionando Ctrl+Q, digitando verificar se há atualizações e,
em seguida, escolher o resultado da pesquisa correspondente. Na caixa de diálogo
Atualizações disponíveis subsequente, selecione Atualizar.
Executar um inicializador específico para
atualizar o produto para uma versão específica
Se você for um cliente Enterprise ou Professional, poderá atualizar sua instância do
Visual Studio 2022 para qualquer versão específica que tenha sido lançada, desde que
seja uma versão mais alta do que a instalada no momento. Para atualizar sua instância
do Visual Studio 2022 por meio desse método, navegue até a página histórico de
versões do Visual Studio 2022, baixe o bootstrapper que corresponde à versão de
atualização desejada no diretório de instalação do produto e clique duas vezes nele
para iniciar a atualização.

Personalizar configurações de atualização


Há várias configurações diferentes que podem ser personalizadas para controlar o
comportamento da atualização, como e quando os bits do produto são baixados e
instalados ou onde está o local de origem da atualização.

Sempre Atualizar ao Fechar e outros comportamentos de


download
1. Na barra de menus, escolha Ferramentas>Opções. Expanda Ambiente e, em
seguida, escolha Atualizações de produto. Observe as opções de configuração
disponíveis para definir nesta caixa de diálogo.
Você pode escolher a configuração Baixar as atualizações automaticamente, que
permite que as atualizações sejam baixadas enquanto seu computador estiver
ocioso.
Você pode configurar o Visual Studio para aplicar automaticamente a última
atualização disponível ao fechar. Essa configuração pode ser definida
individualmente para cada instância do Visual Studio. Por exemplo, você pode
definir sua instância de Versão Prévia para aplicar atualizações quando o Visual
Studio é fechado, mas as outras instâncias do Visual Studio podem continuar
sendo atualizadas sob demanda. Depois que você configurar o Visual Studio para
Sempre atualizar ao fechar, as atualizações do Visual Studio começarão uma vez
que o Visual Studio e todos os processos relacionados forem fechados. Se alguma
extensão tiver sido agendada para instalação ou atualização, a atualização do
Visual Studio não será iniciada até a próxima vez que o Visual Studio for fechado.
Existem também dois modos de instalação à sua escolha: Instalar durante o
download e Baixar tudo e depois instalar.

Configurar o local de origem das atualizações


Com o Visual Studio 2022, agora você pode configurar de onde seus clientes receberão
suas atualizações. Esses locais de origem de atualização são chamados de canais e você
pode encontrar mais informações sobre a finalidade e a disponibilidade do canal na
documentação Ritmo de Lançamento do Visual Studio. A Microsoft disponibiliza os
canais Atual e Prévia para todos, e os canais de serviço de longo prazo (LTSCs) estão
disponíveis para clientes Enterprise e Professional por cerca de 18 meses. Os
administradores de TI também podem configurar os locais de origem da atualização,
como layouts de rede, aos quais os clientes devem ter acesso. Confira o Guia de
Administradores do Visual Studio para obter recomendações de abordagem
adicionais e a documentação do comando modifySettings para saber como acessar essa
funcionalidade programaticamente.

Há duas maneiras de abrir a caixa de diálogo Configurações de Atualização, que permite


alterar manualmente o canal do qual sua instância do Visual Studio deve receber suas
atualizações.

1. Abra o instalador do Visual Studio, selecione a instância que você deseja


configurar, escolha o botão Mais e escolha a opção de menu Atualizar
configurações. Confira as instruções anteriores sobre como localizar o Instalador
do Visual Studio.

2. Uma maneira alternativa de invocar a caixa de diálogo Configurações de


Atualização é abrir o IDE do Visual Studio, abrir a caixa de diálogo Atualização
disponível (Exibir detalhes sobre uma notificação de atualização ou Verificar se há
atualizações no menu Ajuda) e clicar no link Alterar configurações de atualização.
A caixa de diálogo Configurações de atualização terá esta aparência. Neste exemplo, a
instância do Visual Studio está usando o canal LTSC 17.0.

Ao escolher o valor correto na lista suspensa Atualizar canal, você pode controlar o
local de origem de atualizações futuras para esta instância do Visual Studio. Outras
coisas a ter em mente são:
Os canais Versão Prévia e Atual estão disponíveis para todas as edições do Visual
Studio e os canais LTSC só estão disponíveis para clientes Professional e Enterprise.
Você pode optar por atualizar sua instância do Visual Studio imediatamente após
configurar o local atualizar canal. Ou você pode adiar a atualização real do
produto até algum momento posterior. O ato de configurar o canal de atualização
e o ato de atualizar o produto são dois eventos independentes. Para obter
informações sobre como controlar programaticamente o canal de atualização,
confira Usar o comando modifySettings.
Você só poderá alterar o canal de atualização se a versão do produto disponível na
dica desse canal for maior do que a versão instalada. Por exemplo, você sempre
pode fazer a transição do canal Atual para o canal de Visualização, mas não é
possível fazer a transição do canal de Visualização para o canal Atual até que a
versão mais recente no canal Atual supere a versão de Visualização que você
instalou.
Ao atualizar para um novo canal, você instalará a versão mais recente nesse canal.
Se você for um cliente corporativo e quiser instalar uma versão específica do
produto nesse canal, siga as instruções para Executar uma inicialização específica
descritas anteriormente.
Todos os canais LTSC têm datas de validade, conforme ilustrado na imagem acima.
Depois que o LTSC tiver expirado, ele não poderá ser usado como uma fonte de
atualizações e desaparecerá dessa lista.
Todos os canais da Microsoft são hospedados em servidores Microsoft e exigem
acesso à Internet.
Cada instância do Visual Studio tem a capacidade de configurar
independentemente sua origem para atualizações. Portanto, se você tiver duas
instâncias do Visual Studio 2022 instaladas, cada uma poderá ser atualizada de um
canal diferente.
Os administradores de TI podem controlar o texto na lista suspensa Atualizar
canal. Por exemplo, eles podem adicionar locais de layout de rede como fontes de
atualização. Eles também podem suprimir que os locais hospedados da Microsoft
fiquem disponíveis como opções de origem de atualização. Essa funcionalidade
também funciona para instalações do Visual Studio 2019. Para obter informações
sobre como configurar esses locais de atualização, confira a página Definir padrões
para implantações corporativas.

Atualização programática do Visual Studio


Você pode utilizar o bootstrapper ou o instalador para atualizar o Visual Studio de
forma programática. Para obter mais informações, consulte a documentação sobre a
linha de comando online.
Atualizações de administrador
Se você fizer parte de uma organização que centraliza o gerenciamento de instalações
de software, o administrador corporativo poderá controlar como o Visual Studio atualiza
seu computador. Para saber mais sobre como controlar ou configurar os tipos de
atualizações que seu computador pode aceitar, confira Usar o Gerenciador de
Configuração para implantar atualizações do Visual Studio.

Remover componentes sem suporte


Usando o instalador mais recente do Visual Studio 2022, agora você pode remover em
massa componentes que fizeram a transição para um estado fora do suporte. Você
pode removê-los manualmente usando o instalador, conforme descrito abaixo, você
pode removê-los programaticamente ou removê-los por meio da política de todo o
computador. Saiba mais sobre como remover componentes sem suporte e como isso
pode ajudar a manter seu ambiente de software seguro.

Para remover em massa componentes fora do suporte, manualmente e por meio da


interface do usuário, você pode

1. Abrir a Instalador do Visual Studio e selecionar Modificar.

2. Selecionar Remover todos os componentes sem suporte.

Todos os componentes com um rótulo sem suporte serão desmarcados e desinstalados.

Você também pode configurar uma instância específica do Visual Studio para remover
persistentemente todos os componentes que fazem a transição para um estado fora de
suporte, selecionando a opção Mais>Configurações de Atualização>Remover todos os
componentes fora de suporte durante atualizações futuras no Instalador do Visual
Studio. Depois que essa configuração for configurada, qualquer componente que fizer a
transição para um estado sem suporte no futuro será removido durante a próxima
atualização do Visual Studio para essa instância do Visual Studio.

Utilize o melhor e mais recente instalador


A versão mais recente do instalador na versão mais recente do Visual Studio
normalmente tem o conjunto de recursos mais robusto e confiável. Essa funcionalidade
geralmente funcionará perfeitamente em produtos com versão inferior. Para adquirir
manualmente a versão mais recente do instalador em um computador cliente (como se
você quisesse que a funcionalidade do instalador mais recente do Visual Studio 2022
regesse uma instalação do Visual Studio 2019), você pode fazer um dos seguintes
procedimentos:

1. Faça o download de qualquer bootstrapper recente para a versão mais recente do


Visual Studio e, em seguida

Clique duas vezes no inicializador para iniciar a instalação. O instalador mais


recente será instalado no computador primeiro. Depois que a tela "Escolher
Cargas de Trabalho" for exibida, basta cancelar a instalação.

Em uma janela de comando, use o inicializador para atualizar o instalador da


seguinte maneira:

shell
vs_enterprise.exe --update --quiet

Atualizar do Catálogo da Microsoft


Você pode baixar uma Atualização de Administrador do Catálogo do Microsoft
Update no diretório de instalação em seu computador e usá-la para atualizar sua
instalação clicando duas vezes nele para aplicar a atualização.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Instalar versões do Visual Studio lado a lado
Atualizar uma instalação em rede do Visual Studio
Guia do administrador do Visual Studio
Atualizações de controle para implantações do Visual Studio com base em rede
Modificar o Visual Studio
Desinstalar o Visual Studio
Modificar cargas de trabalho,
componentes e pacotes de idiomas do
Visual Studio
Artigo • 03/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É fácil modificar o Visual Studio para que ele inclua apenas o que você deseja, quando
você deseja. Para fazer isso, abra o Instalador do Visual Studio e adicione ou remova
cargas de trabalho, componentes e pacotes de idiomas.

Pré-requisitos
Por padrão, para instalar, atualizar ou modificar o Visual Studio, a conta que realiza
a atualização deve ter permissões administrativas no computador e também deve
ter permissões para a origem em que as atualizações do produto estão localizadas
(na Internet ou em um local interno). Se você estiver conectado como um usuário
típico e tentar executar um desses comandos, receberá um aviso de Controle de
Conta de Usuário solicitando credenciais de administrador. A partir de agosto de
2023, um administrador pode delegar o controle da modificação do Visual Studio
para usuários padrão configurando a política AllowStandardUserControl . Para
obter mais informações, consulte Permissões de usuário e Visual Studio.

O procedimento a seguir pressupõe que você tenha uma conexão de internet. Para
saber mais sobre como modificar uma instalação offline criada anteriormente do
Visual Studio, consulte:
Atualizar uma instalação em rede do Visual Studio
Atualizações de controle para implantações do Visual Studio com base em rede

Inicie o instalador para modificar sua instalação


Para modificar a instalação do Visual Studio, primeiro você precisa iniciar o Instalador do
Visual Studio e, em seguida, selecionar uma instalação do Visual Studio para modificar.

1. Há várias maneiras de abrir o Instalador do Visual Studio:

No menu Iniciar no Windows, pesquise por "instalador" e selecione


Instalador do Visual Studio nos resultados.
Execute o executável Instalador do Visual Studio, que está localizado neste
caminho: C:\Program Files (x86)\Microsoft Visual
Studio\Installer\setup.exe

Caso o Visual Studio esteja aberto, selecione Ferramentas>Obter


Ferramentas e Funcionalidades..., que abre o Instalador do Visual Studio.

Você pode ser solicitado a atualizar o Instalador do Visual Studio antes de


continuar. Nesse caso, siga os prompts.

2. No Instalador do Visual Studio, procure a instalação do Visual Studio que você


deseja modificar e escolha o botão Modificar.
Alterar cargas de trabalho ou componentes
individuais
As cargas de trabalho contêm os componentes necessários para a linguagem de
programação ou a plataforma que está sendo usada. Use cargas de trabalho para
modificar o Visual Studio para que ele dê suporte ao trabalho que você deseja fazer,
quando desejar fazê-lo.

 Dica

Para obter mais informações sobre quais pacotes de ferramentas e componentes


você precisa para desenvolvimento, consulte Cargas de trabalho do Visual
Studio .

1. No Instalador do Visual Studio, escolha a guia Cargas de Trabalho e selecione ou


desmarque as cargas de trabalho desejadas.
2. Para adicionar mais componentes do que uma carga de trabalho instalada, escolha
a guia Componentes individuais e selecione ou desmarque os componentes
individuais desejados.

3. Escolha se deseja Instalar ao baixar ou Baixar tudo e, em seguida, instalar. A


opção padrão, Instalar ao baixar, economiza tempo geral iniciando a instalação
mais cedo.

4. Escolha Modificar.
5. Depois da instalação das cargas de trabalho modificadas ou componentes, escolha
Iniciar do Instalador do Visual Studio 2022.

Você também pode usar um arquivo de configuração para modificar uma instalação
existente para adicionar ou remover componentes. Saiba mais sobre o uso de arquivos
de configuração de instalação para configurar o Visual Studio.

 Dica

Para obter informações sobre o componente SSDT (SQL Server Data Tools),
consulte Baixar e instalar o SSDT para Visual Studio.

Modificar pacotes de idiomas


O Instalador do Visual Studio seleciona um pacote de idiomas padrão para o Visual
Studio que corresponde ao idioma do sistema operacional. No entanto, você pode
alterar o idioma padrão sempre que desejar.

Para fazer isso:

1. Escolha a guia Pacotes de idiomas no Instalador do Visual Studio.


2. Selecione o idioma que você prefere.
3. Siga os prompts.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Confira também
Lista de IDs de componente e carga de trabalho do Visual Studio&
Atualizar o Visual Studio
Atualizar uma instalação em rede do Visual Studio
Desinstalar o Visual Studio
Reparar o Visual Studio
Artigo • 06/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Às vezes, a instalação do Visual Studio é danificada ou corrompida. Um reparo é útil


para corrigir uma ampla variedade de problemas de tempo de instalação, incluindo
problemas de atualização.

Quando usar o reparo


Use o reparo se você estiver tendo problemas com:

A carga de instalação, que pode acontecer a gravação de um arquivo em disco não


é bem-sucedida e o arquivo fica corrompido. O reparo pode readquirir os arquivos
necessários.
Download do lado do cliente, supondo que você tenha corrigido qualquer
problema de conexão com a Internet ou com o proxy.
Atualizar o Visual Studio. O reparo corrige muitos problemas comuns de
atualização.

 Dica

Uma conexão instável com a Internet ou um problema com um serviço Windows,


como o Windows Installer, pode causar problemas de instalação. Nesses cenários, o
reparo também pode ser afetado. Para verificar se há problemas subjacentes,
examine o relatório de erro gerado pelo Instalador do Visual Studio.

7 Observação

Reparar o Visual Studio redefine as configurações do usuário e reinstala os


assemblies existentes. Se você estiver enfrentando um problema com o produto e
o reparo não o corrigir, crie um Tíquete de Comentários do Visual Studio . Para
obter mais informações, consulte Como relatar um problema com o Visual Studio
ou o Instalador do Visual Studio.

Como reparar
1. Localize o Instalador do Visual Studio no computador.

No menu Iniciar no Windows, pesquise por "instalador" e selecione Instalador do


Visual Studio nos resultados.

Também é possível encontrar o Instalador do Visual Studio no seguinte local:


C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe

Você pode ser solicitado a atualizar o Instalador do Visual Studio antes de


continuar. Nesse caso, siga os prompts.

2. No Instalador do Visual Studio, procure a instalação do Visual Studio que você


deseja reparar. Em seguida, escolha Reparar no menu suspenso Mais.

7 Observação
A reparação do Visual Studio redefinirá o ambiente. As personalizações locais,
como as extensões do usuário instaladas sem elevação, as configurações do
usuário e os perfis serão removidos. As configurações sincronizadas, como
temas, cores e associações de teclas serão restauradas.

A opção Reparar aplica-se a instâncias instaladas do Visual Studio. Se você não vir
a opção Reparar no menu suspenso Mais, você pode estar na guia Disponível em
vez da guia Instalado do Instalador do Visual Studio.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar o Visual Studio
Atualizar o Visual Studio
Desinstalar o Visual Studio
Solução de problemas de instalação e atualização do Visual Studio
Desinstalar ou remover o Visual Studio
Artigo • 16/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Esta página guia você pela desinstalação do Visual Studio, nosso pacote integrado de
ferramentas de produtividade para desenvolvedores.

 Dica

Se estiver tendo problemas com sua instância do Visual Studio, experimente a


ferramenta Reparar do Visual Studio.

Para alterar o local de alguns de seus arquivos do Visual Studio, é possível fazer
isso sem desinstalar sua instância atual, conforme descrito em Selecionar os locais
de instalação.

1. Localize o Instalador do Visual Studio no computador.

No Menu Iniciar do Windows, você pode pesquisar "instalador".

7 Observação

Também é possível encontrar o Instalador do Visual Studio no seguinte local:

C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe


Talvez você precise atualizar o instalador antes de continuar. Nesse caso, siga os
prompts.

2. No instalador, procure a edição do Visual Studio instalada por você. Em seguida,


escolha Mais e depois Desinstalar.

3. Clique em OK para confirmar sua escolha.

Se você mudar de ideia posteriormente e quiser reinstalar o 2022, inicie novamente o


Instalador do Visual Studio, escolha a guia Disponível, escolha a edição do Visual Studio
que você deseja instalar e, em seguida, selecione Instalar.

Desinstalar o Visual Studio


Para remover todas as instalações do Visual Studio 2022 e o Instalador do Visual Studio
do seu computador, desinstale-os em Aplicativos instalados.

1. Em Windows 10 ou posterior, digite Adicionar ou remover programas na caixa


"Digite aqui para pesquisar".
2. Localize Visual Studio 2022.
3. Escolha Desinstalar.
4. Em seguida, localize Instalador do Microsoft Visual Studio.
5. Escolha Desinstalar.

Remover tudo com InstallCleanup.exe

2 Aviso

Use a ferramenta InstallCleanup somente como último recurso se o reparo ou a


desinstalação falharem. Essa ferramenta pode desinstalar recursos de outras
instalações do Visual Studio ou de outros produtos, que também podem precisar
ser reparados ou reinstalados.

Se você encontrar um erro fatal e não puder reparar ou desinstalar o Visual Studio,
poderá executar a ferramenta InstallCleanup.exe para remover os arquivos de
instalação e informações do produto de todas as instâncias instaladas do Visual Studio
2017, Visual Studio 2019 ou Visual Studio 2022.

Veja como executar a ferramenta InstallCleanup.exe :

1. Fechar o instalador do Visual Studio.

2. Abra um prompt de comando do administrador. Para abrir um prompt de


comando de administrador, siga estas etapas:

Digite cmd na caixa "Digite aqui para pesquisar".


Clique com o botão direito do mouse em Prompt de Comando e escolha
Executar como administrador.

3. Insira o caminho completo da ferramenta InstallCleanup.exe e adicione a opção


de linha de comando que você preferir. Por padrão, o caminho da ferramenta é o
seguinte. As aspas duplas incluem um comando que contém espaços:

7 Observação

Se você não conseguir encontrar InstallCleanup.exe no diretório Instalador


do Visual Studio, que está sempre localizado em
%ProgramFiles(x86)%\Microsoft Visual Studio , veja o que fazer a seguir. Siga
as instruções para instalar o Visual Studio. Em seguida, quando a tela de
seleção de carga de trabalho for exibida, feche a janela e siga as etapas nesta
página novamente.
Comutador Comportamento

-i Padrão, se nenhuma outra opção for passada. Ele remove apenas as


[version] informações principais do diretório de instalação e do produto. Use essa
opção se você pretende reinstalar a mesma versão do Visual Studio. Se um
valor [version] for especificado, somente os produtos com uma versão que
começam com esse valor de cadeia de caracteres serão removidos. Por
exemplo, use a opção -i 17 com InstallCleanup.exe para remover todos os
produtos da versão 17.

-f Remove o diretório de instalação principal, as informações do produto e a


maioria dos outros recursos instalados fora do diretório de instalação que
também podem ser compartilhados com outras instalações do Visual Studio
ou outros produtos. Use essa opção se você pretende remover o Visual
Studio sem reinstalá-lo mais tarde.

shell

"C:\Program Files (x86)\Microsoft Visual


Studio\Installer\InstallCleanup.exe"

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio de chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Modificar o Visual Studio
Atualizar o Visual Studio
Instalar o Visual Studio
Histórico de versões do Visual Studio
2022
Artigo22/01/2024

 Dica

Assista às gravações do evento de lançamento do Visual Studio 2022 para


saber mais sobre as novidades, ouvir dicas e truques e baixar ofertas digitais
gratuitas.

Developer Community | Roteiro do Visual Studio 2022 | Requisitos do sistema |


Compatibilidade | Código distribuível | Histórico do versões | Termos de licença |
Blogs | Problemas conhecidos da versão mais recente | O que há de novo no Visual
Studio Docs

Atualizamos o Visual Studio com frequência para fornecer novos recursos,


aprimoramentos de desempenho e confiabilidade, atualizações de segurança e
correções de bugs.

Com o Visual Studio 2022, disponibilizamos várias versões de recursos simultaneamente


para que nossos clientes Enterprise e Professional tenham flexibilidade e controle sobre
quando adotam as atualizações de recursos. Essas diferentes versões estão disponíveis
no Canal Atual e nos LTSCs (Canais de Manutenção em Longo Prazo). A última versão
em cada canal é sempre, por definição, a mais segura, por isso recomendamos
fortemente que os clientes se mantenham atualizados, seja qual for o canal que
escolherem para obter as atualizações. Consulte nossa política de suporte ou a
documentação de ritmo de lançamento para obter mais informações.

Só há suporte para a edição do Visual Studio Community no Canal Atual com a última
versão do Visual Studio.

Notas de versão
Notas sobre a versão 17.8 do Visual Studio 2022
Notas sobre a versão do Visual Studio 2022 versão 17.7
Notas sobre a versão do Visual Studio 2022 versão 17.6
Notas sobre a versão do Visual Studio 2022 versão 17.5
Notas sobre a versão do Visual Studio 2022 versão 17.4
Notas sobre a versão do Visual Studio 2022 versão 17.3
Notas sobre a versão do Visual Studio 2022 versão 17.2
Notas sobre a versão do Visual Studio 2022 versão 17.1
Notas sobre a versão do Visual Studio 2022 versão 17.0

Como atualizar sua instalação para uma versão


específica
Se você for um cliente Enterprise ou Professional e precisar instalar ou atualizar para
uma versão específica do Visual Studio, encontre os carregadores de inicialização
disponíveis nas tabelas abaixo. Além de instalar ou atualizar seu produto para uma
versão específica, os carregadores de inicialização também irão “carimbar” a instalação
ou o layout com a identificação correta do canal. A identificação do canal é importante,
pois indica como as atualizações dos Administradores reconhecem as instâncias do
produto que precisam ser atualizadas.

Você também tem a opção de baixar o pacote de Atualização de Administrador do


Catálogo do Microsoft Update para atualizar a instância do cliente ou o layout de
rede. A atualização por meio desse método só altera a versão, não o canal. Encontre
mais instruções sobre como criar ou manter o layout de rede no Guia de
Administradores do Visual Studio ou na documentação Atualizar uma instalação
baseada em rede do Visual Studio.

Como desinstalar o Visual Studio para voltar a


uma versão anterior
Caso você precise instalar uma versão anterior do Visual Studio, desinstale a instalação
atual e use um dos links abaixo para reinstalar a versão que preferir. Antes de tentar
instalar uma versão anterior do Visual Studio de 2022, consulte nossa política de
suporte. A Microsoft não garante suporte fora desta política.

1. No Windows, abra o Instalador do Visual Studio.


2. Desinstale todas as instâncias do Visual Studio 2022 listadas no Instalador do
Visual Studio.
3. Em Programas e Recursos no Painel de Controle, localize “Microsoft Visual Studio
2022” e desinstale-o.

Se você não puder seguir as etapas acima devido a uma instalação corrompida, siga as
etapas para Remover o Visual Studio com a ferramenta InstallCleanup.exe
Observe que a desinstalação do Visual Studio não removerá componentes e produtos
autônomos como o NET, o SQL, o IIS, os Pacotes Redistribuíveis do Visual C++ e os
SDKs. Talvez seja necessário removê-los manualmente em Aplicativos e Recursos nas
Configurações do Windows.

Datas de lançamento e números de build


Esta seção fornece links para todos os carregadores de inicialização lançados
publicamente para o Visual Studio 2022. Os carregadores de inicialização iniciam o
processo de instalação do Visual Studio. Novamente, só há suporte para as últimas
versões dos canais Atual ou LTSC.

Para verificar a versão e o canal que serão instalados por determinado carregador de
inicialização, clique com o botão direito do mouse no EXE do carregador de
inicialização, escolha Propriedades, Detalhes e veja as informações da Versão do
Produto. O número da versão deve sempre indicar “último desta versão”. O canal usa
Atual como padrão, a menos que especificado explicitamente. Portanto, um carregador
de inicialização com a Versão de Produto LTSC 17.0 instalará a última versão de
manutenção 17.0.x disponível no canal LTSC 17.0.

Carregadores de inicialização perenes


Os carregadores de inicialização da tabela a seguir sempre instalarão a última versão
dos respectivos canais.

ノ Expandir a tabela

Channel Versão Carregadores de inicialização do canal Data de fim do


suporte

Atual 17 Enterprise Professional Ferramentas de 13 de janeiro de


build Community 2032

LTSC do outono 17.8 Enterprise Professional Ferramentas de build 8 de julho de


de 2023 2025

LTSC da 17.6 Enterprise Professional Ferramentas de build terça-feira, 14 de


primavera de janeiro de 2025
2023

LTSC do outono 17.4 Enterprise Professional Ferramentas de build 9 de julho de


de 2022 2024

LTSC da 17.2 Enterprise Professional Ferramentas de build 9 de janeiro de


primavera de 2024
2022
Channel Versão Carregadores de inicialização do canal Data de fim do
suporte
LTSC do outono 17.0 Enterprise Professional Ferramentas de build 11 de julho de
de 2021 2023

Carregadores de inicialização de versão fixa


Os carregadores de inicialização da tabela a seguir instalarão a versão específica do
canal especificado.

ノ Expandir a tabela

Channel Versão Data de Carregadores de inicialização de versão Número de


lançamento fixa build

LTSC 17.8.5 17 de janeiro Enterprise Professional Ferramentas 17.8.34511.84


17.8 de 2024 de build

Atual 17.8.5 17 de janeiro Enterprise Professional Ferramentas 17.8.34511.84


de 2024 de build

LTSC 17.2.23 9 de janeiro de Enterprise Professional Ferramentas 17.2.34408.132


17.2 2024 de build

LTSC 17.8.4 9 de janeiro de Enterprise Professional Ferramentas 17.8.34408.163


17.8 2024 de build

Atual 17.8.4 9 de janeiro de Enterprise Professional Ferramentas 17.8.34408.163


2024 de build

LTSC 17.6.11 9 de janeiro de Enterprise Professional Ferramentas 17.6.34408.137


17.6 2024 de build

LTSC 17.4.15 9 de janeiro de Enterprise Professional Ferramentas 17.4.34408.133


17.4 2024 de build

Atual 17.8.3 5 de dezembro Enterprise Professional Ferramentas 17.8.34330.188


de 2023 de build

LTSC 17.8.3 5 de dezembro Enterprise Professional Ferramentas 17.8.34330.188


17.8 de 2023 de build

LTSC 17.8.2 28 de Enterprise Professional Ferramentas 17.8.34322.80


17.8 novembro de de build
2023

Atual 17.8.2 28 de Enterprise Professional Ferramentas 17.8.34322.80


novembro de de build
2023
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

Atual 17.8.1 21 de Enterprise Professional Ferramentas 17.8.34316.72


novembro de de build
2023

LTSC 17.8.1 21 de Enterprise Professional Ferramentas 17.8.34316.72


17.8 novembro de de build
2023

LTSC 17.6.10 14 de Enterprise Professional Ferramentas 17.6.34302.98


17.6 novembro de de build
2023

LTSC 17.4.14 14 de Enterprise Professional Ferramentas 17.4.34302.79


17.4 novembro de de build
2023

Atual 17.7.7 14 de Enterprise Professional Ferramentas 17.7.34302.85


novembro de de build
2023

LTSC 17.2.22 14 de Enterprise Professional Ferramentas 17.2.34302.75


17.2 novembro de de build
2023

LTSC 17.8.0 14 de Enterprise Professional Ferramentas 17.8.34309.116


17.8 novembro de de build
2023

Atual 17.8.0 14 de Enterprise Professional Ferramentas 17.8.34309.116


novembro de de build
2023

Atual 17.7.6 24 de outubro Enterprise Professional Ferramentas 17.7.34221.43


de 2023 de build

LTSC 17.6.9 24 de outubro Enterprise Professional Ferramentas 17.6.34221.33


17.6 de 2023 de build

LTSC 17.4.13 24 de outubro Enterprise Professional Ferramentas 17.4.34221.32


17.4 de 2023 de build

LTSC 17.2.21 24 de outubro Enterprise Professional Ferramentas 17.2.34221.16


17.2 de 2023 de build

LTSC 17.4.12 10 de outubro Enterprise Professional Ferramentas 17.4.34202.201


17.4 de 2023 de build

LTSC 17.2.20 10 de outubro Enterprise Professional Ferramentas 17.2.34202.200


Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

17.2 de 2023 de build

LTSC 17.6.8 10 de outubro Enterprise Professional Ferramentas 17.6.34202.202


17.6 de 2023 de build

Atual 17.7.5 10 de outubro Enterprise Professional Ferramentas 17.7.34202.233


de 2023 de build

LTSC 17.6.7 12 de setembro Enterprise Professional Ferramentas 17.6.34031.178


17.6 de 2023 de build

Atual 17.7.4 12 de setembro Enterprise Professional Ferramentas 17.7.34031.279


de 2023 de build

LTSC 17.4.11 12 de setembro Enterprise Professional Ferramentas 17.4.34031.109


17.4 de 2023 de build

LTSC 17.2.19 12 de setembro Enterprise Professional Ferramentas 17.2.34031.104


17.2 de 2023 de build

Atual 17.7.3 29 de agosto Enterprise Professional Ferramentas 17.7.34024.191


de 2023 de build

Atual 17.7.2 terça-feira, 22 Enterprise Professional Ferramentas 17.7.34018.315


de agosto de de build
2023

Atual 17.7.1 15 de agosto Enterprise Professional Ferramentas 17.7.34009.444


de 2023 de build

Atual 17.7.0 8 de agosto de Enterprise Professional Ferramentas 17.7.34003.232


2023 de build

LTSC 17.6.6 8 de agosto de Enterprise Professional Ferramentas 17.6.33927.249


17.6 2023 de build

LTSC 17.2.18 8 de agosto de Enterprise Professional Ferramentas 17.2.33927.290


17.2 2023 de build

Atual 17.6.6 8 de agosto de Enterprise Professional Ferramentas 17.6.33927.249


2023 de build

LTSC 17.4.10 8 de agosto de Enterprise Professional Ferramentas 17.4.33927.135


17.4 2023 de build

LTSC 17.4.9 11 de julho de Enterprise Professional Ferramentas 17.4.33829.165


17.4 2023 de build

Atual 17.6.5 11 de julho de Enterprise Professional Ferramentas 17.6.33829.357


Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

2023 de build

LTSC 17.6.5 11 de julho de Enterprise Professional Ferramentas 17.6.33829.357


17.6 2023 de build

LTSC 17.2.17 11 de julho de Enterprise Professional Ferramentas 17.2.33829.164


17.2 2023 de build

LTSC 17.0.23 11 de julho de Enterprise Professional Ferramentas 17.0.33829.163


17.0 2023 de build

LTSC 17.6.4 20 de junho de Enterprise Professional Ferramentas 17.6.33815.320


17.6 2023 de build

Atual 17.6.4 20 de junho de Enterprise Professional Ferramentas 17.6.33815.320


2023 de build

Atual 17.6.3 13 de junho de Enterprise Professional Ferramentas 17.6.33801.468


2023 de build

LTSC 17.6.3 13 de junho de Enterprise Professional Ferramentas 17.6.33801.468


17.6 2023 de build

LTSC 17.4.8 13 de junho de Enterprise Professional Ferramentas 17.4.33801.306


17.4 2023 de build

LTSC 17.2.16 13 de junho de Enterprise Professional Ferramentas 17.2.33801.349


17.2 2023 de build

LTSC 17.0.22 13 de junho de Enterprise Professional Ferramentas 17.0.33801.228


17.0 2023 de build

Atual 17.6.2 25 de maio de Enterprise Professional Ferramentas 17.6.33723.286


2023 de build

LTSC 17.6.2 25 de maio de Enterprise Professional Ferramentas 17.6.33723.286


17.6 2023 de build

Atual 17.6.1 22 de maio de Enterprise Professional Ferramentas 17.6.33717.318


2023 de build

LTSC 17.6.1 22 de maio de Enterprise Professional Ferramentas 17.6.33717.318


17.6 2023 de build

Atual 17.6.0 16 de maio de Enterprise Professional Ferramentas 17.6.33712.159


2023 de build

LTSC 17.6.0 16 de maio de Enterprise Professional Ferramentas 17.6.33712.159


17.6 2023 de build
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

Atual 17.5.5 1 de maio de Enterprise Professional Ferramentas 17.5.33627.172


2023 de build

Atual 17.5.4 11 de abril de Enterprise Professional Ferramentas 17.5.33530.505


2023 de build

LTSC 17.4.7 11 de abril de Enterprise Professional Ferramentas 17.4.33603.86


17.4 2023 de build

LTSC 17.2.15 11 de abril de Enterprise Professional Ferramentas 17.2.33530.394


17.2 2023 de build

LTSC 17.0.21 11 de abril de Enterprise Professional Ferramentas 17.0.33530.339


17.0 2023 de build

Atual 17.5.3 21 de março de Enterprise Professional Ferramentas 17.5.33516.290


2023 de build

Atual 17.5.2 14 de março de Enterprise Professional Ferramentas 17.5.33502.453


2023 de build

LTSC 17.4.6 14 de março de Enterprise Professional Ferramentas 17.4.33502.350


17.4 2023 de build

LTSC 17.2.14 14 de março de Enterprise Professional Ferramentas 17.2.33502.348


17.2 2023 de build

LTSC 17.0.20 14 de março de Enterprise Professional Ferramentas 17.0.33502.349


17.0 2023 de build

Atual 17.5.1 28 de fevereiro Enterprise Professional Ferramentas 17.5.33424.131


de 2023 de build

Atual 17.5.0 21 de fevereiro Enterprise Professional Ferramentas 17.5.33414.496


de 2023 de build

Atual 17.4.5 14 de fevereiro Enterprise Professional Ferramentas 17.4.33403.182


de 2023 de build

LTSC 17.4.5 14 de fevereiro Enterprise Professional Ferramentas 17.4.33403.182


17.4 de 2023 de build

LTSC 17.2.13 14 de fevereiro Enterprise Professional Ferramentas 17.2.33402.178


17.2 de 2023 de build

LTSC 17.0.19 14 de fevereiro Enterprise Professional Ferramentas 17.0.33402.176


17.0 de 2023 de build
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

Atual 17.4.4 10 de janeiro Enterprise Professional Ferramentas 17.4.33213.308


de 2023 de build

LTSC 17.4.4 10 de janeiro Enterprise Professional Ferramentas 17.4.33213.308


17.4 de 2023 de build

LTSC 17.2.12 10 de janeiro Enterprise Professional Ferramentas 17.2.33214.139


17.2 de 2023 de build

LTSC 17.0.18 10 de janeiro Enterprise Professional Ferramentas 17.0.33214.273


17.0 de 2023 de build

Atual 17.4.3 13 de Enterprise Professional Ferramentas 17.4.33205.214


dezembro de de build
2022

LTSC 17.4.3 13 de Enterprise Professional Ferramentas 17.4.33205.214


17.4 dezembro de de build
2022

LTSC 17.2.11 13 de Enterprise Professional Ferramentas 17.2.33130.433


17.2 dezembro de de build
2022

LTSC 17.0.17 13 de Enterprise Professional Ferramentas 17.0.33130.402


17.0 dezembro de de build
2022

Atual 17.4.2 29 de Enterprise Professional Ferramentas 17.4.33122.133


novembro de de build
2022

LTSC 17.4.2 29 de Enterprise Professional Ferramentas 17.4.33122.133


17.4 novembro de de build
2022

Atual 17.4.1 15 de Enterprise Professional Ferramentas 17.4.33110.190


novembro de de build
2022

LTSC 17.4.1 15 de Enterprise Professional Ferramentas 17.4.33110.190


17.4 novembro de de build
2022

Atual 17.4.0 8 de novembro Enterprise Professional Ferramentas 17.4.33103.184


de 2022 de build

LTSC 17.4.0 8 de novembro Enterprise Professional Ferramentas 17.4.33103.184


Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

17.4 de 2022 de build

Atual 17.3.7 8 de novembro Enterprise Professional Ferramentas 17.3.33027.108


de 2022 de build

LTSC 17.2.10 8 de novembro Enterprise Professional Ferramentas 17.2.33027.314


17.2 de 2022 de build

LTSC 17.0.16 8 de novembro Enterprise Professional Ferramentas 17.0.33027.175


17.0 de 2022 de build

Atual 17.3.6 11 de outubro Enterprise Professional Ferramentas 17.3.32929.385


de 2022 de build

LTSC 17.2.9 11 de outubro Enterprise Professional Ferramentas 17.2.32929.388


17.2 de 2022 de build

LTSC 17.0.15 11 de outubro Enterprise Professional Ferramentas 17.0.32929.387


17.0 de 2022 de build

Atual 17.3.5 27 de setembro Enterprise Professional Ferramentas 17.3.32922.545


de 2022 de build

Atual 17.3.4 13 de setembro Enterprise Professional Ferramentas 17.3.32901.215


de 2022 de build

LTSC 17.2.8 13 de setembro Enterprise Professional Ferramentas 17.2.32901.213


17.2 de 2022 de build

LTSC 17.0.14 13 de setembro Enterprise Professional Ferramentas 17.0.32901.226


17.0 de 2022 de build

Atual 17.3.3 30 de agosto Enterprise Professional Ferramentas 17.3.32825.248


de 2022 de build

Atual 17.3.2 23 de agosto Enterprise Professional Ferramentas 17.3.32819.101


de 2022 de build

Atual 17.3.1 16 de agosto Enterprise Professional Ferramentas 17.3.32811.315


de 2022 de build

Atual 17.3.0 9 de agosto de Enterprise Professional Ferramentas 17.3.32804.467


2022 de build

LTSC 17.2.7 9 de agosto de Enterprise Professional Ferramentas 17.2.32802.462


17.2 2022 de build

Atual 17.2.7 9 de agosto de Enterprise Professional Ferramentas 17.2.32802.462


2022 de build
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

LTSC 17.0.13 9 de agosto de Enterprise Professional Ferramentas 17.0.32802.463


17.0 2022 de build

LTSC 17.2.6 12 de julho de Enterprise Professional Ferramentas 17.2.32630.192


17.2 2022 de build

Atual 17.2.6 12 de julho de Enterprise Professional Ferramentas 17.2.32630.192


2022 de build

LTSC 17.0.12 12 de julho de Enterprise Professional Ferramentas 17.0.32630.193


17.0 2022 de build

LTSC 17.2.5 22 de junho de Enterprise Professional Ferramentas 17.2.32616.157


17.2 2022 de build

Atual 17.2.5 22 de junho de Enterprise Professional Ferramentas 17.2.32616.157


2022 de build

LTSC 17.2.4 14 de junho de Enterprise Professional Ferramentas 17.2.32602.215


17.2 2022 de build

Atual 17.2.4 14 de junho de Enterprise Professional Ferramentas 17.2.32602.215


2022 de build

LTSC 17.0.11 14 de junho de Enterprise Professional Ferramentas 17.0.32602.201


17.0 2022 de build

LTSC 17.2.3 31 de maio de Enterprise Professional Ferramentas 17.2.32526.322


17.2 2022 de build

Atual 17.2.3 31 de maio de Enterprise Professional Ferramentas 17.2.32526.322


2022 de build

LTSC 17.2.2 24 de maio de Enterprise Professional Ferramentas 17.2.32519.379


17.2 2022 de build

Atual 17.2.2 24 de maio de Enterprise Professional Ferramentas 17.2.32519.379


2022 de build

LTSC 17.2.1 17 de maio de Enterprise Professional Ferramentas 17.2.32516.85


17.2 2022 de build

Atual 17.2.1 17 de maio de Enterprise Professional Ferramentas 17.2.32516.85


2022 de build

LTSC 17.2.0 10 de maio de Enterprise Professional Ferramentas 17.2.32505.173


17.2 2022 de build
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

Atual 17.2.0 10 de maio de Enterprise Professional Ferramentas 17.2.32505.173


2022 de build

Atual 17.1.7 10 de maio de Enterprise Professional Ferramentas 17.1.32428.221


2022 de build

LTSC 17.0.10 10 de maio de Enterprise Professional Ferramentas 17.0.32428.209


17.0 2022 de build

Atual 17.1.6 26 de abril de Enterprise Professional Ferramentas 17.1.32421.90


2022 de build

Atual 17.1.5 19 de abril de Enterprise Professional Ferramentas 17.1.32414.318


2022 de build

LTSC 17.0.9 19 de abril de Enterprise Professional Ferramentas 17.0.32417.34


17.0 2022 de build

Atual 17.1.4 12 de abril de Enterprise Professional Ferramentas 17.1.32407.343


2022 de build

LTSC 17.0.8 12 de abril de Enterprise Professional Ferramentas 17.0.32407.392


17.0 2022 de build

Atual 17.1.3 31 de março de Enterprise Professional Ferramentas 17.1.32328.378


2022 de build

Atual 17.1.2 22 de março de Enterprise Professional Ferramentas 17.1.32319.34


2022 de build

Atual 17.1.1 8 de março de Enterprise Professional Ferramentas 17.1.32228.430


2022 de build

LTSC 17.0.7 8 de março de Enterprise Professional Ferramentas 17.0.32228.444


17.0 2022 de build

Atual 17.1.0 15 de fevereiro Enterprise Professional Ferramentas 17.1.32210.238


de 2022 de build

LTSC 17.0.6 8 de fevereiro Enterprise Professional Ferramentas 17.0.32126.317


17.0 de 2022 de build

Atual 17.0.6 8 de fevereiro Enterprise Professional Ferramentas 17.0.32126.317


de 2022 de build

LTSC 17.0.5 13 de janeiro Enterprise Professional Ferramentas 17.0.32112.339


17.0 de 2022 de build
Channel Versão Data de Carregadores de inicialização de versão Número de
lançamento fixa build

Atual 17.0.5 13 de janeiro Enterprise Professional Ferramentas 17.0.32112.339


de 2022 de build

LTSC 17.0.4 16 de Enterprise Professional Ferramentas 17.0.32014.148


17.0 dezembro de de build
2021

Atual 17.0.4 16 de Enterprise Professional Ferramentas 17.0.32014.148


dezembro de de build
2021

LTSC 17.0.3 14 de Enterprise Professional Ferramentas 17.0.32002.185


17.0 dezembro de de build
2021

Atual 17.0.3 14 de Enterprise Professional Ferramentas 17.0.32002.185


dezembro de de build
2021

LTSC 17.0.2 30 de Enterprise Professional Ferramentas 17.0.31919.166


17.0 novembro de de build
2021

Atual 17.0.2 30 de Enterprise Professional Ferramentas 17.0.31919.166


novembro de de build
2021

LTSC 17.0.1 16 de Enterprise Professional Ferramentas 17.0.31912.275


17.0 novembro de de build
2021

Atual 17.0.1 16 de Enterprise Professional Ferramentas 17.0.31912.275


novembro de de build
2021

LTSC 17.0.0 8 de novembro Enterprise Professional Ferramentas 17.0.31903.59


17.0 de 2021 de build

Atual 17.0.0 8 de novembro Enterprise Professional Ferramentas 17.0.31903.59


de 2021 de build

Comentários e sugestões
Adoraríamos ouvir o que você tem para nos dizer! Você pode Relatar um problema ou
sugerir um recurso usando o ícone Enviar Comentários no canto superior direito do
instalador ou do IDE do Visual Studio ou em Ajuda > Enviar Comentários. Se você for
um Administrador de TI e não tiver o Visual Studio instalado, poderá enviar comentários
de Administração de TI aqui . Você pode acompanhar seus problemas usando a Visual
Studio Developer Community , em que você adiciona comentários ou encontra
soluções. Você também pode obter ajuda gratuita com a instalação por meio de nosso
suporte via chat ao vivo .

Confira também
Como configurar o canal de atualizações
Canais do Visual Studio e ritmo de lançamento
Ciclo de vida e manutenção do produto Visual Studio
Guia de Administradores do Visual Studio
Datas do ciclo de vida do Visual Studio

Início da página
Guia do administrador do Visual Studio
Artigo • 08/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Em ambientes corporativos, os administradores do sistema normalmente implantam e


atualizam software nos computadores dos usuários finais. O produto do Visual Studio
integra-se bem nesses tipos de ambientes, dando aos administradores do sistema a
capacidade de gerenciar e controlar quando e como o software do Visual Studio é
implantado e atualizado. O Visual Studio pode ser adquirido na Internet, em um
compartilhamento de rede ou no cache de produtos, e pode ser implantado e
atualizado manualmente, programaticamente ou usando software de gerenciamento de
sistemas. O Visual Studio fornece a capacidade de criar e manter locais de aquisição,
pré-configurar padrões de instalação, implantar chaves de produto durante o processo
de instalação e gerenciar atualizações de produtos após uma distribuição bem-
sucedida. Este guia do administrador fornece links rápidos com base em cenários para
implantações corporativas.

Pesquisar e planejar antes de começar


Você precisará fazer um plano de como implantar o Visual Studio na sua organização.
Veja abaixo a lista de algumas das principais coisas sobre as quais pensar e é melhor
que seu plano e decisões sejam tomados antes que a instalação original aconteça no
computador cliente.

Verifique se cada computador de destino atende aos requisitos mínimos de


instalação. Observe que o Visual Studio não dá suporte a soluções de virtualização
de aplicativos, como o Microsoft App-V ou MSIX para Windows ou tecnologias de
virtualização de aplicativos de terceiros.

Esclareça suas necessidades de segurança e compatibilidade. A Microsoft


recomenda que sua organização sempre use o software mais recente e seguro.

Se sua empresa precisa ficar em um conjunto de recursos por mais tempo, mas
ainda deseja atualizações de segurança de manutenção regulares, você deve
planejar usar um LTSC (Canal de Manutenção em Longo Prazo). Para obter mais
informações, consulte a seção Opções de suporte para clientes Enterprise e
Professional da página Ciclo de vida e manutenção de produtos Visual Studio.

Siga as linhas de base de segurança do Windows. A Microsoft se dedica a fornecer


aos clientes um sistema operacional seguro, como o Windows 10 e o Windows
Server, bem como aplicativos seguros, como o Microsoft Edge. Além da garantia
de segurança de seus produtos, a Microsoft também fornece vários recursos de
configuração para permitir que você tenha o controle preciso dos seus ambientes.

Planejar como o Visual Studio deve ser instalado e


inicializado
Como o Visual Studio é instalado originalmente no computador? A ação de
inicialmente instalar o Visual Studio requer privilégios administrativos no
computador. Os usuários têm a capacidade de instalar o produto por conta
própria ou um administrador de TI precisará facilitá-lo por meio de um processo
elevado?

Como você está licenciando e distribuindo assinaturas de direitos em sua


organização? A instalação requer chaves de produto?

Quais configurações de política de grupo precisam ser definidas nos


computadores cliente? Você pode usar os Modelos Administrativos (ADMX) ou o
catálogo de configurações do Microsoft Intune para configurar políticas em toda
a sua organização?

Quais componentes e cargas de trabalho sua empresa precisa?

Planejar como o Visual Studio será atualizado


regularmente
De que lugar os computadores cliente devem adquirir as atualizações do produto?
Isso geralmente depende se os clientes têm acesso à Internet ou não. Eles devem
obter suas atualizações de um layout de rede gerenciado por TI e mantido em
toda a empresa ou devem adquirir as atualizações da Internet?
Quem tem permissão para atualizar os computadores cliente? Por padrão, a ação
de atualização do Visual Studio requer privilégios administrativos no computador,
embora a partir de agosto de 2023, um administrador possa delegar a
funcionalidade de atualização aos usuários padrão configurando a
AllowStandardUserControlpolítica . Os usuários têm permissão para atualizar
seus computadores ou um administrador precisa invocá-la centralmente ou
programaticamente por meio de um processo de contexto do sistema?
Quando devem ocorrer as atualizações? O usuário deve decidir quando atualizar
ou há políticas organizacionais que regem a linha do tempo das atualizações?

 Dica
Incentivamos todas as organizações a registrarem seus computadores cliente nas
Atualizações de Administrador do Visual Studio , um sistema que fornece
atualizações de segurança mensalmente para dispositivos registrados no Windows
Update para Empresas.

Instalar o Visual Studio


Os recursos a seguir ajudarão você a fazer a instalação inicial do Visual Studio em
cenários empresariais comuns. Normalmente, você só precisará fazer isso uma vez.

Examine a documentação Instalar o Visual Studio para obter uma visão geral de
alto nível das opções de instalação disponíveis para os usuários finais. Selecione as
cargas de trabalho e os componentes que você deseja disponibilizar para
instalação nos computadores cliente.

Adquira o bootstrapper correto do Visual Studio para instalar o produto. Há


diferentes bootstrappers disponíveis para você escolher. Alguns bootstrappers
instalam uma versão específica do produto, enquanto outros bootstrappers
inicializam o canal de linha de base de manutenção.

Use parâmetros de linha de comando para instalar o Visual Studio. Use uma
variedade de parâmetros para controlar ou personalizar programaticamente a
instalação do Visual Studio. Você pode criar um script de instalação que
automatizará o processo de instalação. Para obter mais informações, confira os
exemplos de parâmetro de linha de comando.

Crie um layout (instalação de rede) do Visual Studio. Um layout é um cache dos


arquivos do Visual Studio em uma pasta na rede que você pode usar tanto para a
instalação inicial quanto para todas as atualizações de produto. O layout poderá
ser usado se os computadores cliente tiverem conectividade limitada com a
Internet. Você pode usar o arquivo de resposta, que permite definir padrões ao
instalar o produto. Depois que o layout for criado, você deverá mantê-lo
regularmente. Lembre-se de verificar se a conta do sistema ou do usuário que está
executando a atualização tem acesso adequado ao compartilhamento de rede que
contém o layout. Confira mais informações em Solucionar problemas de erros
relacionados à rede ao instalar ou usar o Visual Studio.

Implante um layout em computadores cliente em sua organização. Saiba como


instalar o Visual Studio a partir de um layout em computadores cliente em toda a
sua organização.
Instale os certificados necessários para instalação offline. Instale os certificados
necessários se o computador cliente estiver totalmente desconectado da Internet.

Configure as políticas que regem o comportamento do Visual Studio em todo o


computador. Configure e implante políticas em toda a sua organização, como
aceitar atualizações de administrador, permitir que os usuários padrão atualizem e
remover componentes fora de suporte. As políticas do Visual Studio estão
disponíveis no catálogo de configurações do Microsoft Intune, bem como no
modelos administrativos do Visual Studio (ADMX).

Aplique automaticamente as chaves do produto ou da assinatura durante a


implantação do Visual Studio. Você pode aplicar programaticamente uma
assinatura ou chave do produto como parte de um script usado para automatizar a
implantação do Visual Studio para que os usuários não precisem ativar o software
separadamente. Você pode definir esta chave durante a instalação do Visual Studio
ou após a conclusão de uma instalação.

Instale e use o Visual Studio e os Serviços do Azure atrás de um firewall ou


servidor proxy. Se a organização usa medidas de segurança como um firewall ou
um servidor proxy, há URLs de domínio que você talvez queira adicionar a uma
"lista de permissões" e portas e protocolos que talvez você queira abrir para que
tenha a melhor experiência ao instalar e usar o Visual Studio e os Serviços do
Azure.

Atualizar o Visual Studio


Os recursos a seguir ajudarão você a manter seu Visual Studio atualizado, atual e
seguro. A melhor prática é planejar atualizações mensais.

Examine a documentação Atualizar o Visual Studio para obter uma visão geral de
alto nível das opções de atualização disponíveis para os usuários finais e como os
usuários finais são notificados de que as atualizações estão disponíveis.

Verifique se você configurou o LTSC (canal de manutenção de longo prazo)


corretamente se quiser controlar rigorosamente quando e de onde vêm as
atualizações.

Verifique se você habilitou os usuários padrão a flexibilidade para atualizar sob


demanda se sua organização permitir.

Habilite a Atualizações de Administrador usando o Configuration Manager do


Microsoft Endpoint (SCCM e Intune). As atualizações do administrador do Visual
Studio estão disponíveis e são implantáveis por meio da coleção de software do
Microsoft Endpoint Manager, que inclui todos os dispositivos gerenciados Intune e
SCCM registrados no Windows Update para Empresas. Essa é nossa abordagem
recomendada sobre como as empresas podem permanecem seguras. Saiba mais
aqui .

Mantenha seu layout (instalação de rede) atualizado regularmente para que ele
permaneça atual e seguro com as atualizações mais recentes do produto. Os
layouts devem ser usados como um ponto de instalação para novas instalações de
cliente do Visual Studio, bem como uma fonte de bits de produtos atualizados
para instalações que já estão implantadas em estações de trabalho cliente. O
Visual Studio lança atualizações de segurança na terça-feira do patch, a segunda
terça-feira do mês, e recomendamos que você atualize os layouts em de forma
mensal imediatamente.

Use parâmetros de linha de comando para instalar o Visual Studio. Use uma
variedade de parâmetros para atualizar programaticamente o Visual Studio. Para
obter mais informações, confira os exemplos de parâmetro de linha de comando.

Atualize os computadores cliente com base no layout de rede. Depois de


atualizar o layout, você poderá atualizar as instalações do cliente do Visual Studio
a partir do layout de rede atualizado. Esse cenário também foi projetado para
funcionar com as Atualizações do Administrador e para clientes que não estão
conectados à Internet.

Para computadores que não estão conectados à Internet ou não estão


vinculados a um layout, você pode atualizar o Visual Studio usando um layout
offline mínimo.

Configurar o Visual Studio


Configurar políticas que afetam o comportamento do Visual Studio Use o
catálogo de configurações do Microsoft Intune ou Modelos Administrativos do
Visual Studio (ADMX) para configurar facilmente as políticas do Visual Studio em
computadores cliente em toda a sua organização. Isso inclui a configuração de
políticas que regem o comportamento de instalação e atualização, como quem
tem permissão para atualizar alguns pacotes compartilhados com outras versões
ou instâncias, a localização e se os pacotes são armazenados em cache, se as
atualizações do administrador devem estar habilitadas ou como devem ser
aplicadas, quais canais de atualização estão disponíveis e como eles são
apresentados ao cliente, se os componentes sem suporte devem ser removidos
durante uma atualização, e como as notificações aparecem ou não. Isso também
inclui a configuração de políticas que regem os comentários dos clientes,
telemetria , Live Share , e comportamento de túneis do desenvolvedor .

Crie pacotes de bootstrapper personalizados. Conheça técnicas avançadas de


como criar pacotes de bootstrapper personalizados para controlar ainda mais a
configuração de instalação criando manifestos de produto e do pacote.

Importe ou exporte configurações de instalação para outros computadores ou


para layouts.

Gerenciar, Modificar ou Reparar o Visual Studio


Detecte, verifique e gerencie as instâncias instaladas do Visual Studio em
computadores cliente.

Obtenha dicas de solução de problemas. Obtenha ajuda ao instalar ou atualizar o


Visual Studio e saiba como relatar um problema se você estiver bloqueado. Essas
dicas incluem instruções detalhadas que devem resolver a maioria dos problemas
de instalação online ou offline.

Repare o Visual Studio para corrigir problemas de atualização. Às vezes, a


instalação do Visual Studio é danificada ou corrompida. Um reparo é útil para
corrigir problemas de tempo de instalação em todas as operações de instalação,
incluindo atualizações.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Confira também
Habilitar atualizações de administrador
Aplicar atualizações de administrador
Usar parâmetros de linha de comando para instalar, atualizar e gerenciar o Visual
Studio
Configurar políticas para implantações empresariais do Visual Studio
Modelos Administrativos do Visual Studio
Instalar os certificados necessários para instalação offline do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Configurações de carregamento automático síncrono
Usar parâmetros de linha de comando
para instalar, atualizar e gerenciar o
Visual Studio
Artigo • 27/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Ao instalar o Visual Studio programaticamente ou a partir do prompt de comando, você


pode usar vários parâmetros de linha de comando para controlar ou personalizar a
instalação para executar as seguintes ações:

Iniciar a instalação no cliente com determinadas opções e comportamentos pré-


selecionados.
Automatizar o processo de instalação ou atualização.
Criar ou manter um layout de rede dos arquivos de produtos para instalar ou
atualizar os computadores cliente.

Os parâmetros e verbos de linha de comando descritos podem ser usados com os


seguintes executáveis ou programas:

O bootstrapper de instalação, que é o arquivo pequeno (cerca de 1 MB) (por


exemplo, vs_enterprise.exe) que inicia o processo de download e a instalação
inicial.
O instalador do Visual Studio, que pode já estar instalado no computador e está
localizado na pasta C:\Program Files (x86)\Microsoft Visual
Studio\Installer\setup.exe . Você precisa iniciar o instalador programaticamente

em um diretório diferente em que está o instalador. O instalador é normalmente


usado para atualizar ou modificar comandos.
Com um comando winget usando a opção --override do winget.
Com um pacote de Atualização do Administrador, que está disponível para
download no Catálogo do Microsoft Update , para atualizar programaticamente
o layout de rede. Você pode encontrar mais informações no artigo Atualizar ou
modificar o layout.

Nem todos os comandos ou parâmetros funcionam em todas essas situações, e


quaisquer advertências ou exceções especiais são documentadas. Além disso, em alguns
cenários, talvez você não tenha acesso a todos os executáveis descritos acima. Por
exemplo, computadores clientes poderão ter o instalador disponível para execução
programática apenas se o Visual Studio foi instalado por meio de um layout.
Para obter os bootstrappers mais recentes do Visual Studio 2022 que sempre instalarão
a versão mais recente do canal Atual, faça o download de um dos arquivos seguintes.
Como alternativa, se você quiser instalar uma versão ou um canal específico do Visual
Studio 2022, vá para a página Histórico de Versões do Visual Studio 2022, que tem os
links para os bootstrappers de versão fixa para cada versão de manutenção.

ノ Expand table

Edição Bootstrapper

Visual Studio 2022 Enterprise vs_enterprise.exe

Visual Studio 2022 Professional vs_professional.exe

Visual Studio 2022 Community vs_community.exe

Ferramentas de Build do Visual Studio 2022 vs_buildtools.exe

 Dica

Se você baixou anteriormente um arquivo de bootstrapper e deseja verificar qual


versão ele instalará, confira como fazer. No Windows, abra o Explorador de
Arquivos, clique com o botão direito do mouse no arquivo bootstrapper, escolha
Propriedades e escolha a guia Detalhes. O campo Versão do produto descreverá o
canal e a versão que o bootstrapper instalará. O número de versão sempre deve
ser lido como "versão de manutenção mais recente do que é especificado", e o
canal é Atual, a menos que especificado explicitamente. Portanto, um bootstrapper
com uma Versão de produto do LTSC 17.0 instalará a versão de manutenção 17.0.x
mais recente disponível no canal LTSC 17.0. Um bootstrapper com uma Versão de
produto que simplesmente diz que o Visual Studio 2022 instalará a versão mais
recente do Visual Studio 2022 no canal Atual.

Parâmetros de linha de comando e comandos


Instalar, Atualizar, Modificar, Reparar,
Desinstalar e Exportar
Ao invocar o bootstrapper do Visual Studio ou o instalador programaticamente para
instalar o produto ou manter um layout, o primeiro parâmetro é o comando (o verbo)
que descreve a operação a ser executada. Os parâmetros de linha de comando
opcionais subsequentes, que são todos prefixados por dois traços (--), definem ainda
mais como essa operação deve acontecer. Todos os parâmetros de linha de comando
do Visual Studio não diferenciam maiúsculas de minúsculas e você pode encontrar mais
exemplos na página Exemplos de parâmetro de linha de comando.

Exemplo de sintaxe: vs_enterprise.exe [command] <optional parameters>...

ノ Expand table

Comando Descrição

(blank) O comando padrão instala o produto e é usado para todas as operações de


manutenção de layout.

modify Modifica um produto instalado.

update Atualiza um produto instalado.

updateall Atualiza todos os produtos instalados em ordem sequencial. Funciona com os


parâmetros --quiet e --passive .

repair Repara um produto instalado.

uninstall Desinstala um produto instalado.

export Exporta a seleção da instalação para um arquivo de configuração de instalação.

) Importante

Ao especificar várias cargas de trabalho, componentes ou idiomas, é necessário


repetir a opção de linha de comando --add ou --remove para cada item.

ノ Expand table

Parâmetros Descrição

--installPath <dir> Para o comando de instalação padrão, esse parâmetro é Opcional e


descreve onde a instância será instalada no computador cliente. Para
outros comandos, como atualizar ou modificar, esse parâmetro é
Obrigatório e indica o diretório de instalação para a instância agir.

--add <one or more Opcional: durante um comando de instalação ou modificação, esse


workload or component parâmetro repetível especifica uma ou mais IDs de carga de trabalho
IDs> ou de componente a serem adicionadas. Os componentes
obrigatórios do artefato são instalados, mas não os componentes
recomendados ou opcionais. Você pode controlar os componentes
adicionais globalmente usando os parâmetros --includeRecommended
e/ou --includeOptional . Para incluir várias cargas de trabalho ou
componentes, repita o comando --add (por exemplo, --add
Parâmetros Descrição

Workload1 --add Workload2 ). Para ter um controle mais refinado, você


pode acrescentar ;includeRecommended ou ;includeOptional à ID (por
exemplo, --add Workload1;includeRecommended ou --add
Workload2;includeRecommended;includeOptional ). Para saber mais,
confira a página IDs de carga de trabalho e de componente.

--remove <one or more Opcional: durante um comando de modificação, esse parâmetro


workload or component repetível especifica uma ou mais IDs de carga de trabalho ou de
IDs> componente a serem removidas. Ele complementa e se comporta de
forma semelhante ao parâmetro --add .

--addProductLang Opcional: durante um comando de instalação ou modificação, esse


<language-locale> parâmetro repetível especifica os pacotes de idiomas da interface do
usuário que devem ser instalados com o produto. Se não estiver
presente, a instalação usará o pacote de idiomas que corresponde à
localidade do computador. Para obter mais informações, consulte a
seção Lista de localidades de idioma nesta página.

--removeProductLang Opcional: durante um comando de instalação ou modificação, esse


<language-locale> parâmetro repetível determina os pacotes de idiomas da interface do
usuário que devem ser removidos do produto. Ele complementa e se
comporta de forma semelhante ao parâmetro --addProductLang .

--in <path> Opcional: o URI ou o caminho para um arquivo de resposta, que


pode conter definições de configuração.

--all Opcional: durante um comando de instalação ou modificação, esse


parâmetro faz com que todas as cargas de trabalho e componentes
do produto sejam instalados.

--allWorkloads Opcional: durante um comando de instalação ou modificação, esse


parâmetro instala todas as cargas de trabalho e componentes, mas
nenhum componente recomendado ou opcional.

--includeRecommended Opcional: durante um comando de instalação ou modificação, esse


parâmetro inclui os componentes recomendados para todas as cargas
de trabalho instaladas, mas não os componentes opcionais. As cargas
de trabalho são especificadas com --allWorkloads ou --add .

--includeOptional Opcional: durante um comando de instalação ou modificação, esse


parâmetro inclui os componentes opcionais para todas as cargas de
trabalho instaladas, mas não os componentes recomendados. As
cargas de trabalho são especificadas com --allWorkloads ou --add .

--quiet, -q Opcional: usado com qualquer comando, esse parâmetro impede que
qualquer interface do usuário seja exibida enquanto o comando está
sendo executado. Não disponível para ser utilizado
programaticamente por usuários standard .
Parâmetros Descrição

--passive, -p Opcional: esse parâmetro faz com que a interface do usuário seja
exibida de maneira não interativa. Esse parâmetro é mutuamente
exclusivo (e, de fato, substitui) do parâmetro --quiet . Também não
está disponível para ser utilizado programaticamente por usuários
standard .

--norestart Opcional: esse parâmetro deve ser emparelhado com os parâmetros


--passive ou --quiet . Durante um comando de instalação,
atualização ou modificação, a adição do parâmetro --norestart
atrasa qualquer reinicialização necessária.

--force Opcional: esse parâmetro força o Visual Studio a fechar, mesmo que
o processo do Visual Studio esteja em uso. Forçar o Visual Studio a
fechar pode causar perda de trabalho, portanto, use-o com cuidado.

-- Opcional: durante um comando de instalação, atualização ou


installWhileDownloading modificação, esse parâmetro permite que o Visual Studio faça o
download e instale o produto em paralelo. Essa é a experiência
padrão.

--downloadThenInstall Opcional: durante um comando de instalação, atualização ou


modificação, esse parâmetro força o Visual Studio a fazer o download
de todos os arquivos antes de instalá-los. Ele é mutuamente exclusivo
do parâmetro --installWhileDownloading .

--channelUri Opcional: durante um comando de atualização, você pode passar um


novo channelUri para alterar o local das configurações de atualização.
É recomendável emparelhar com o parâmetro --installPath para que
fique explícito qual instância do Visual Studio você está configurando.
Confira exemplos de sintaxe de --channelUri

--channelId <id> A ID do canal, representada como VisualStudio.17.Release . Confira


exemplos de sintaxe de --channelId. Isso é necessário para operações
modify , juntamente com --productID ou --installPath .

--productId <id> Opcional: a ID do produto para a instância que será modificada e


usada com --channelId . O productID é algo como
"Microsoft.VisualStudio.Product.Enterprise".

--nickname <name> Opcional: durante um comando de instalação, esse parâmetro define


o apelido a ser atribuído a um produto instalado. O apelido não pode
ter mais de 10 caracteres.

--productKey Opcional: durante um comando de instalação, esse parâmetro define


a chave do produto (Product Key) a ser atribuída a um produto
instalado. Ele é composto de 25 caracteres alfanuméricos no formato
xxxxxxxxxxxxxxxxxxxxxxxxx .
Parâmetros Descrição

--removeOos true Opcional: durante um comando de instalação, atualização ou


modificação, esse parâmetro (que deve ter a palavra true ou false
imediatamente após ele) informa ao instalador do Visual Studio para
remover (ou não remover) todos os componentes instalados que
passaram para um estado sem suporte. Esse comportamento é
aplicável a um único evento. Se você quiser tornar esse
comportamento persistente, aplique esse parâmetro ao comando
modifySettings descrito abaixo ou configure a política global
removeOOS. Útil para ajudar a manter o computador seguro.

--config <path to Opcional: durante uma instalação ou uma operação de modificação,


*.vsconfig file> isso determina as cargas de trabalho e componentes a serem
adicionados com base em um arquivo de configuração de instalação
salvo anteriormente. Essa operação é aditiva e não remove carga de
trabalho nem componente se ele não estiver presente no arquivo.
Além disso, os itens que não se aplicarem ao produto não são
adicionados. Certifique-se de especificar o caminho totalmente
qualificado para o arquivo de configuração. Durante uma operação
de exportação, isso determina a localização para salvar o arquivo de
configuração de instalação.

--installerOnly Opcional: durante uma operação de instalação ou atualização, esse


parâmetro informa ao Instalador do Visual Studio para instalar apenas
a si mesmo (o instalador). Sua funcionalidade é equivalente ao
parâmetro --update , porém mais intuitiva. Destinado a ser usado ao
preparar e pré-configurar máquinas cliente.

--help, --?, -h, -? Exibe uma versão offline desta página.

Comando de layout e parâmetros de linha de


comando
Todas as operações de gerenciamento de layout são executadas usando o bootstrapper
exe e elas pressupõem que o comando é a Instalação padrão (em branco),
independentemente de você estar criando ou atualizando um layout. Portanto, todas as
operações de gerenciamento de layout devem começar com o parâmetro inicial
necessário --layout . A tabela abaixo descreve os outros parâmetros que você pode
usar para criar ou atualizar um layout usando a linha de comando.

ノ Expand table
Parâmetros de Descrição
layout

--layout <dir> Especifica um diretório para criar ou atualizar um cache de instalação


offline. Para obter mais informações, consulte Criar uma instalação
baseada em rede do Visual Studio.

--lang <one or more Opcional: usado com --layout para preparar um cache de instalação
language-locales> offline com pacotes de recursos com idiomas especificados. Para obter
mais informações, consulte a seção Lista de localidades de idioma nesta
página.

--add <one or more Opcional: uma ou mais IDs de carga de trabalho ou de componente a
workload or serem adicionadas. Os componentes obrigatórios do artefato são
component IDs> instalados, mas não os componentes recomendados ou opcionais. Você
pode controlar os componentes adicionais globalmente usando --
includeRecommended e/ou --includeOptional . Para ter um controle mais
refinado, você pode acrescentar ;includeRecommended ou
;includeOptional à ID (por exemplo, --add
Workload1;includeRecommended ou --add Workload2;includeOptional ). Para
saber mais, confira a página IDs de carga de trabalho e de componente.
Observação: se --add for usado, somente as cargas de trabalho
especificadas e os componentes e suas dependências serão baixados. Se
--add não for especificado, todas as cargas de trabalho e componentes
serão baixados para o layout.

-- Opcional: inclui os componentes recomendados para as cargas de


includeRecommended trabalho que estão instaladas, mas não os componentes opcionais. As
cargas de trabalho são especificadas com --allWorkloads ou --add .

--includeOptional Opcional: inclui os componentes recomendados e opcionais para


quaisquer cargas de trabalho incluídas no layout. As cargas de trabalho
são especificadas com --add .

--wait Opcional: o processo aguardará até que a instalação seja concluída, antes
de retornar um código de saída. Isso é útil ao automatizar instalações em
que é necessário aguardar a conclusão da instalação para tratar o código
de retorno da instalação. O parâmetro --wait só pode ser passado para
o bootstrapper. Não há suporte para o instalador (setup.exe). Ele muito
útil para a atualização de layouts. Mais exemplos podem ser encontrados
aqui.

-- Opcional: funcionalidade herdada que só é aplicável para bootstrappers


useLatestInstaller do Visual Studio anteriores a abril de 2023. Qualquer coisa enviada após
abril de 2023 usa o instalador mais recente por padrão. Se esse
parâmetro estiver presente, a versão mais recente do Instalador do Visual
Studio será incluída em seu layout, mesmo que pertença a uma versão
principal mais recente do produto. Isso pode ser útil se você quiser
aproveitar novos recursos ou correções de bugs disponíveis no instalador
Parâmetros de Descrição
layout

mais recente. Para obter mais informações, confira Configurar o layout


para sempre usar a documentação mais recente do instalador.

--config <path to Opcional: se presente, o Visual Studio usará o conteúdo do arquivo de


*.vsconfig file> configuração para configurar o layout. Certifique-se de especificar o
caminho totalmente qualificado para o arquivo de configuração.

--noWeb Opcional: se presente, a instalação do Visual Studio usa os arquivos no


diretório de layout para instalar o Visual Studio e não baixa nenhum
pacote da Web. Se o usuário tentar instalar componentes que não
estejam no layout, a instalação falhará. Não use esse parâmetro se você
estiver tentando implantar um layout hospedado em um site interno da
intranet. Para obter mais informações, confira Instalar em um cliente que
não tem acesso à Internet.

Importante: o parâmetro --noWeb não impede que o Instalador do Visual


Studio em um computador cliente conectado à Internet verifique se há
atualizações quando o cliente está configurado para examinar os
servidores hospedados pela Microsoft em busca de atualizações. Nesse
caso, --noWeb simplesmente impede que o cliente baixe os pacotes do
produto.

--verify Opcional: verifique o conteúdo de um layout. Todos os arquivos


corrompidos ou ausentes são listados.

--fix Opcional: verifique o conteúdo de um layout. Se algum arquivo estiver


corrompido ou ausente, ele será baixado novamente. Para corrigir um
layout, é necessário acesso à Internet.

--clean <one or more Opcional: remove versões antigas dos componentes de um layout que foi
paths to catalogs> atualizado para uma versão mais recente.

ノ Expand table

Parâmetros de Descrição
layout avançado

--channelId <id> Opcional: a ID do canal para a instância a ser instalada, representada como
VisualStudio.17.Release . Isso é necessário para o comando de instalação e
ignorado para outros comandos, se --installPath estiver especificado.
Confira exemplos de sintaxe de --channelId.

--channelUri Opcional: o URI do manifesto do canal. Esse valor rege o local de origem
<uri> das atualizações e o valor inicial é configurado no arquivo response.json do
layout. Confira os exemplos de sintaxe de --channelUri para obter os
valores possíveis. Se não desejar as atualizações, --channelUri poderá
apontar para um arquivo inexistente (por exemplo, --channelUri
Parâmetros de Descrição
layout avançado

C:\doesntExist.chman). Isso pode ser usado para o comando de instalação e


é ignorado para outros comandos.

-- Opcional: o URI do manifesto do canal a ser usado para a instalação. O URI


installChannelUri especificado por --channelUri (que deve ser especificado quando --
<uri> installChannelUri for especificado) é usado para detectar atualizações. Isso
pode ser usado para o comando de instalação e é ignorado para outros
comandos.

-- Opcional: o URI do manifesto do catálogo a ser usado para a instalação. Se


installCatalogUri especificado, o gerente de canal tenta baixar o manifesto do catálogo desse
<uri> URI antes de usar o URI no manifesto do canal de instalação. Esse
parâmetro é usado para dar suporte a instalação offline, em que o cache de
layout será criado com o catálogo de produtos que já foi baixado. Isso pode
ser usado para o comando de instalação e é ignorado para outros
comandos.

--productId <id> Opcional: a ID do produto para a instância que será instalada. Isso será
preenchido previamente em condições normais de instalação. O productID
é algo como "Microsoft.VisualStudio.Product.Enterprise".

--arch all Opcional: por padrão, os layouts são criados com apenas binários de
produtos x64. Para incluir binários do ARM para cargas de trabalho
aplicáveis junto com os binários de x64 em um layout, use o parâmetro --
arch all ou --arch * . Para criar um layout apenas de binários do ARM, use
--arch arm64

-- Opcional: aplique as alterações ao layout sem atualizar a versão do produto


keepLayoutVersion incluída no layout.

--locale Opcional: alterar o idioma de exibição da interface do usuário do próprio


<language-locale> instalador. A configuração será mantida. Para obter mais informações,
consulte a seção Lista de localidades de idioma nesta página.

--cache Opcional: caso presentes, os pacotes serão mantidos após a instalação para
reparos subsequentes. Isso substitui a configuração de política global a ser
usada para instalações, reparos ou modificações subsequentes. A política
padrão é armazenar pacotes em cache. Isso é ignorado para o comando de
desinstalação. Leia sobre como desabilitar ou mover o cache do pacote
para obter mais informações.

--nocache Opcional: caso presentes, os pacotes serão ser excluídos depois de serem
instalados ou reparados. Serão feitos os downloads novamente apenas se
for necessário e excluídos após o uso. Isso substitui a configuração de
política global a ser usada para instalações, reparos ou modificações
subsequentes. A política padrão é armazenar pacotes em cache. Isso é
Parâmetros de Descrição
layout avançado

ignorado para o comando de desinstalação. Leia sobre como desabilitar ou


mover o cache do pacote para obter mais informações.

-- Opcional: se existir, impede que instalador atualize a si próprio quando o


noUpdateInstaller modo silencioso é especificado. O comando do instalador falhará e
retornará um código de saída diferente de zero se noUpdateInstaller for
especificado como silencioso quando uma atualização do instalador for
necessária.

--path <name>= Opcional: usado para especificar caminhos de instalação personalizados


<path> para a instalação. Os nomes de caminho com suporte são shared, cache e
install.

--path cache= Opcional: usa o local especificado para baixar os arquivos de instalação.
<path> Este local só pode ser definido na primeira vez em que o Visual Studio é
instalado. Exemplo: --path cache="C:\VS\cache"

--path shared= Opcional: contém arquivos compartilhados para instalações do Visual


<path> Studio lado a lado. Algumas ferramentas e SDKs fazem instalações em um
local nessa unidade, enquanto outros podem substituir essa configuração e
fazer a instalação em outra unidade. Exemplo: --path
shared="C:\VS\shared"

Importante: isso pode ser definido apenas uma vez e na primeira vez que o
Visual Studio é instalado.

--path install= Opcional: equivalente a –-installPath . Especificamente, --installPath


<path> "C:\VS" e --path install="C:\VS" são equivalentes. Apenas um destes
comandos pode ser usado por vez.

Parâmetros de linha de comando e comando


ModifySettings
Você pode modificar as configurações de atualização e configurar programaticamente o
local de origem das atualizações para uma determinada instância do Visual Studio
usando o instalador ou o bootstrapper no computador cliente e passando o comando
modifySettings e o canal de atualização desejado.

ノ Expand table

Comando Descrição

modifySettings Verbo usado para modificar as configurações de atualização de uma instância


específica do Visual Studio.
ノ Expand table

Parâmetros Descrição
modifySettings

--installPath É recomendável usar para especificar em qual instância do Visual Studio deve-
<dir> se agir.

--newChannelUri Obrigatório: o URI do manifesto do canal. Esse valor especifica onde será o
próximo local de origem das atualizações. Confira os exemplos de sintaxe de -
-channelUri para obter os valores possíveis. Se não desejar as atualizações, --
channelUri poderá apontar para um arquivo inexistente (por exemplo, --
channelUri C:\doesntExist.chman).

--channelUri O URI do antigo manifesto do canal. Pode ser usado se o --installPath não for
conhecido. Deve ser usado em conjunto com productID para identificar a
instância certa para agir.

--productId Deve ser usado se --channelUri for especificado e for usado para identificar a
<id> instância certa para agir. O productID é algo como
"Microsoft.VisualStudio.Product.Enterprise".

--quiet, -q Opcional: esse parâmetro impede que qualquer interface do usuário seja
exibida enquanto o comando está sendo executado. Não disponível para ser
utilizado programaticamente por usuários standard .

--removeOos Opcional: durante um comando modifySettings, esse parâmetro (que deve ter
true a palavra true ou false imediatamente após ele) informa ao instalador do
Visual Studio para remover persistentemente (ou não remover) todos os
componentes instalados que passaram para um estado sem suporte. Útil para
ajudar a manter o computador seguro.

Exemplos de sintaxe:

shell

C:\>"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


modifySettings --installPath "C:\Program Files\Microsoft\Visual
Studio\2022\Enterprise" --newChannelUri
https://aka.ms/vs/17/release.LTSC.17.0/channel --removeOos true

shell

C:\>"C:\Program Files\Microsoft\Visual
Studio\2022\Enterprise\vs_enterprise.exe" modifySettings --channelUri
https://aka.ms/vs/17/release.LTSC.17.0/channel --productID
Microsoft.VisualStudio.Product.Enterprise --newChannelUri
\\layoutserver\share\path\channelmanifest.json --removeOos true --quiet
Parâmetros de comando e de linha de
comando de reversão
Você pode reverter a atualização programaticamente usando o instalador no
computador cliente e passando o comando de reversão junto com a instância do
caminho de instalação.

ノ Expand table

Comando Descrição

rollback Comando para reverter uma instância específica do Visual Studio para a atualização
instalada anteriormente. Esse comando não funcionará se o DisableRollback estiver
habilitado.

ノ Expand table

parâmetros de Descrição
reversão

--installPath <dir> É recomendável usar para especificar em qual instância do Visual Studio
deve-se agir.

Exemplos de sintaxe:

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


rollback -–installPath "C:\Program Files\Microsoft Visual
Studio\2022\Enterprise"

Parâmetros de comando e de linha de


comando de Atualização de Administrador
Você pode fazer download de uma Atualização de Administrador no Catálogo do
Microsoft Update e usá-la para atualizar a instalação do cliente ou o layout.

Atualizar o layout
Se você estiver atualizando um layout para uma versão específica do Visual Studio,
basta fazer download da Atualização de Administrador para o computador que hospeda
o layout, abrir um prompt de comando nesse computador e executar um comando
como este:

shell

visualstudioupdate-17.0.0to17.1.5.exe layout --layoutPath c:\VSLayout

Atualizar o cliente
No cliente, se você baixar a Atualização de Administrador no diretório de instalação do
computador cliente, basta clicar duas vezes no arquivo para aplicar a atualização. Você
também pode abrir uma janela de comando e passar alguns dos parâmetros abaixo
para alterar o comportamento padrão.

Configurar a Atualização de Administrador no SCCM


Se você estiver implantando a atualização de administrador por meio do SCCM
(Microsoft Endpoint Manager), modifique o pacote para ajustar o comportamento
usando os parâmetros abaixo. Você também pode controlar os parâmetros por meio de
um arquivo de configuração no computador cliente. Para obter mais informações,
confira Métodos para configurar uma atualização de administrador

Observe que todos os parâmetros de Atualização de Administrador são executados por


padrão no contexto de "atualização", a menos que o verbo de layout seja especificado.

ノ Expand table

Parâmetros de Descrição
atualização de
administrador

--installerUpdateArgs Esse parâmetro funciona como uma "matriz de passagem" de


[optional parameters] parâmetros específicos relevantes para cenários de atualização de
administrador. Os parâmetros opcionais habilitados para essa finalidade
são:

--quiet : essa é a experiência padrão para atualizações de


administrador e está listada aqui para integridade.
--passive : esse parâmetro substitui o parâmetro --quiet . Isso faz com
que a interface do usuário apareça de maneira não interativa.
--norestart : esse parâmetro deve ser usado em conjunto com --quiet
ou --passive e faz com que todas as reinicializações necessárias sejam
atrasadas.
--noWeb : esse parâmetro impede que o Visual Studio verifique na
Parâmetros de Descrição
atualização de
administrador

Internet se há atualizações do produto.


--force : esse parâmetro força o Visual Studio a fechar mesmo que o
Visual Studio esteja em uso. Use esse parâmetro com cuidado, pois
pode causar perda de trabalho. Esse parâmetro só deve ser usado
quando a Atualização de administrador é executada no contexto do
usuário; ele será ignorado se a Atualização de administrador for
executada no contexto do sistema.
--installWhileDownloading : esse parâmetro permite que o Visual Studio
faça o download e instale o produto em paralelo. Essa é a experiência
padrão para atualizações de administrador e está listada aqui para
integridade.
--keepWindowsUpdateOn : esse parâmetro impede que o instalador
desative o agente Windows Update no cliente. Você deverá usar esse
parâmetro se estiver importando uma Atualização de Administrador do
Catálogo no SCCM. Talvez você também precise definir o tempo limite
do pacote SCCM para ser maior do que os 10 minutos padrão. Alterar o
tipo de implantação do SCCM para ser Obrigatório torna esse
parâmetro desnecessário.
--downloadThenInstall : esse parâmetro força o Visual Studio a fazer
download de todos os arquivos antes de instalá-los. Ele é mutuamente
exclusivo do parâmetro --installWhileDownloading .

--checkPendingReboot A atualização será anulada se houver uma reinicialização pendente no


computador, independentemente de qual aplicativo possa tê-la
causado. O padrão é não verificar se há reinicializações pendentes.

Exemplo de sintaxe para passar parâmetros para uma Atualização de Administrador:

shell

visualstudioupdate-16.9.0to16.9.4.exe --installerUpdateArgs=--force,--
noWeb,--keepWindowsUpdateOn --checkPendingReboot

Parâmetros de comando e de linha de


comando de remoção
Canais que estão disponíveis para atualização são armazenados em cache no cliente e,
com o tempo, podem desordenar as coisas. Você pode remover manualmente os canais
de atualização acessando o Instalador do Visual Studio, indo para a guia Disponível e
clicando no X no canto superior direito do cartão do produto. Você pode remover
canais programaticamente (por exemplo, locais de layout mais antigos) usando o
comando removeChannel . Você pode executar vswhere programaticamente no
computador cliente para determinar quais canais são armazenados em cache no
computador cliente.

ノ Expand table

Comando Descrição

removeChannel Comando para remover um canal do computador cliente.

ノ Expand table

parâmetros Descrição
removeChannel

--channelUri Obrigatório: o URI do antigo manifesto do canal.

--quiet Opcional: esse parâmetro impede que qualquer interface do usuário seja
exibida enquanto o comando está sendo executado.

--passive Opcional: esse parâmetro substitui o parâmetro --quiet . Isso faz com
que a interface do usuário apareça de maneira não interativa.

Exemplo de sintaxe:

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


removeChannel --channelUri
"\\\\server\\share\\layoutdirectory\\ChannelManifest.json"

Usar winget para instalar ou modificar o Visual


Studio
Você pode usar a ferramenta "winget" do Gerenciador de Pacotes do Windows para
instalar, modificar ou atualizar por meio de programação o Visual Studio em seu
computador, juntamente com outros pacotes gerenciados pelo winget.

Por padrão, o winget instala apenas a carga de trabalho principal do Visual Studio.

shell

winget install --id Microsoft.VisualStudio.2022.Community


No entanto, se você quiser personalizar a instalação e especificar cargas de trabalho e
componentes adicionais a serem adquiridos durante a instalação inicial, poderá usar a
opção --override do winget ao lado do comando install do winget e passar um
arquivo vsconfig exportado que contém as cargas de trabalho e os componentes a
serem adicionados:

shell

winget install --id Microsoft.VisualStudio.2022.Community --override "--


passive --config c:\my.vsconfig"

Você também pode apenas incluir componentes diretamente durante a instalação


inicial, desta forma:

shell

winget install --id Microsoft.VisualStudio.2022.Community --override "--


quiet --add Microsoft.Visualstudio.Workload.Azure"

Se você já tiver o Visual Studio instalado em seu computador, será possível usar o
configure comando do winget junto com o provedor DSC do Visual Studio
PowerShell , um arquivo yaml e um arquivo .vsconfig para adicionar componentes a
uma instalação existente do Visual Studio. O comando configure do Winget atua
essencialmente como uma operação de "modificação" do Visual Studio.

Não é possível usar a opção --override ou o provedor DSC do Visual Studio junto com
o comando upgrade do winget, pois upgrade essencialmente atua apenas como uma
operação de "atualização" do Visual Studio e instala a versão mais recente dos
componentes que você já selecionou. Você não pode adicionar componentes por meio
de uma atualização/atualização. Você precisa usar o configure do winget para adicionar
componentes.

Observe que as operações do Instalador do Visual Studio no momento exigem


privilégios de administrador, portanto, o winget solicitará que você eleve seus
privilégios, se necessário, para concluir o comando. Além disso, atualmente não é
possível usar o winget para instalar várias edições (ou seja, SKUs diferentes) ou várias
instâncias do mesmo SKU ao mesmo tempo em um computador cliente. Por fim, o
Visual Studio deverá ser fechado se você quiser configurá-lo (modificá-lo) para adicionar
componentes ou atualizá-lo para a versão mais recente.
Lista de IDs de carga de trabalho e IDs de
componente
Confira uma lista de IDs de componente e de carga de trabalho classificadas por
produto do Visual Studio na página IDs de componente e de carga de trabalho do
Visual Studio.

Lista de localidades de idioma


ノ Expand table

Localidade de idioma Idioma

Cs-cz Tcheco

De-de Alemão

En-us Inglês

Es-es Espanhol

Fr-fr Francês

It-it Italiano

Ja-jp Japonês

Ko-kr Coreano

Pl-pl Polonês

Pt-br Português - Brasil

Ru-ru Russo

Tr-tr Turco

Zh-cn Chinês - Simplificado

Zh-tw Chinês - Tradicional

Códigos de erro
Dependendo do resultado da operação, a variável de ambiente %ERRORLEVEL% será
definida como um dos valores a seguir:
ノ Expand table

Valor Resultado

0 A operação foi concluída com êxito

740 Elevação necessária

1001 O processo do instalador do Visual Studio está em execução

1003 O Visual Studio está em uso

1602 A operação foi cancelada

1618 Outra instalação em execução

1641 A operação foi concluída com êxito e a reinicialização foi iniciada

3010 A operação foi concluída com êxito, mas a instalação requer a reinicialização
antes de ser usada

5003 O inicializador falhou ao baixar o instalador

5004 A operação foi cancelada

5005 Erro de análise de linha de comando do inicializador

5007 A operação foi bloqueada – o computador não atende aos requisitos

8001 Falha na verificação do computador Arm

8002 Falha de pré-verificação de download em segundo plano

8003 Falha selecionável sem suporte

8004 Falha no diretório de destino

8005 Falha de verificação de conteúdo de origem

8006 Processos do Visual Studio em execução

8010 Sistema operacional sem suporte. Consulte os Requisitos do Sistema

-1073720687 Falha de conectividade

–1073741510 O Instalador do Microsoft Visual Studio foi terminado (por usuário ou processo
externo)

Outro Condição de falha ocorreu. Verifique os logs para obter mais informações
(por
exemplo:
-1, 1, 1.603)
Cada operação gera vários arquivos de log no diretório %TEMP% que indicam o progresso
da instalação. Classifique a pasta por data e procure arquivos começando com
dd_bootstrapper , dd_client e dd_setup para o bootstrapper, o aplicativo instalador e o

mecanismo de instalação, respectivamente.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Exemplos de parâmetros de linha de comando para a instalação do Visual Studio
Criar uma instalação offline do Visual Studio
Automatizar a instalação do Visual Studio com um arquivo de resposta
IDs de carga de trabalho e de componente do Visual Studio
Exemplos de parâmetros de linha de
comando para a instalação do Visual
Studio
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Para ilustrar como usar parâmetros de linha de comando para instalar o Visual Studio,
aqui estão vários exemplos que podem ser personalizados para atender às suas
necessidades.

Em cada exemplo, vs_enterprise.exe , vs_professional.exe e vs_community.exe


representam a respectiva edição do bootstrapper do Visual Studio, que é o arquivo
pequeno (aproximadamente 1 MB) que inicia o processo de download. Se você estiver
usando uma edição diferente, substitua o nome do bootstrapper adequado.

Todos os comandos exigem elevação administrativa e um prompt do Controle de Conta


de Usuário será exibido se o processo não for iniciado em um prompt com privilégios
elevados.

Você pode usar o caractere ^ no final de uma linha de comando para concatenar várias
linhas em um único comando. Como alternativa, é possível colocar essas linhas juntas
em uma única linha. No PowerShell, o equivalente é o caractere de acento grave ( ` ).

Para listas de cargas de trabalho e componentes que você pode instalar usando a linha
de comando, confira a página IDs de carga de trabalho e de componente do Visual
Studio.

Instalar usando --installPath junto com o


bootstrapper
Instale uma instância mínima do Visual Studio, com nenhum prompt interativo,
com exceção do progresso, exibido:

shell

vs_enterprise.exe --installPath C:\minVS ^


--add Microsoft.VisualStudio.Workload.CoreEditor ^
--passive --norestart
Instale silenciosamente, uma instância da área de trabalho do Visual Studio com o
pacote de idioma francês, retornando somente quando o produto estiver
instalado.

shell

vs_enterprise.exe --installPath C:\desktopVS ^


--addProductLang fr-FR ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--includeRecommended --quiet --wait

Atualizar
Atualize uma instância do Visual Studio por meio da linha de comando com
progresso exibido e sem prompts interativos. Você pode executar essas séries de
comandos em duas etapas usando um bootstrapper encontrado no cliente ou em
um layout. O primeiro comando atualiza o instalador no cliente e o segundo
comando atualiza o produto Visual Studio. Você precisará executar isso em um
prompt de comando com privilégios elevados, pois atualizar o instalador requer
permissões de administrador. O exemplo a seguir simula a atualização de um
cliente usando um bootstrapper evergreen no layout.

shell

\\layoutserver\share\path\vs_enterprise.exe --update --quiet --wait


\\layoutserver\share\path\vs_enterprise.exe update --wait --passive --
norestart --installPath "C:\installPathVS"

Como alternativa, você também pode atualizar a instância do Visual Studio em uma
etapa usando o instalador no cliente. Os usuários Standard, se tiverem recebido
permissões apropriadas , poderão executar programaticamente o comando de
atualização usando o instalador, mas não poderão usar a opção --passive ou --quiet .
Observe que você não pode iniciar o instalador programaticamente no mesmo diretório
no qual está o instalador.

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" update


--passive --norestart --installPath "C:\installPathVS"

Em uso – Aguarde
Use --wait em arquivos ou scripts em lotes para aguardar a conclusão do
comando inicial para que o próximo comando seja executado. Para arquivos em
lote, uma variável de ambiente %ERRORLEVEL% contém o valor retornado do
comando, conforme documentado na página Usar parâmetros de linha de
comando para instalar o Visual Studio. Alguns utilitários de comando exigem que
outros parâmetros aguardem a conclusão e obtenham o valor retornado do
instalador.

O parâmetro --wait só é compatível com o bootstrapper.

shell

start /wait vs_professional.exe --installPath "C:\VS" --passive --wait > nul


echo %errorlevel%

O comando a seguir é um exemplo de como usar --wait com o comando de script do


PowerShell Start-Process :

PowerShell

$process = Start-Process -FilePath vs_enterprise.exe -ArgumentList "--


installPath", "C:\VS", "--passive", "--wait" -Wait -PassThru
Write-Output $process.ExitCode

ou

PowerShell

$startInfo = New-Object System.Diagnostics.ProcessStartInfo


$startInfo.FileName = "vs_enterprise.exe"
$startInfo.Arguments = "--all --quiet --wait"
$process = New-Object System.Diagnostics.Process
$process.StartInfo = $startInfo
$process.Start()
$process.WaitForExit()

O primeiro --wait é usado pelo bootstrapper do Visual Studio e o segundo -Wait


é usado pelo 'Start-Process' para aguardar a conclusão. O parâmetro -PassThru é
usado por Start-Process para usar o código de saída do instalador como o valor
retornado.

Usando --layout para criar um layout de rede


ou um cache local
Crie um layout que inclua apenas o editor principal do Visual Studio (a
configuração mínima do Visual Studio) e o pacote de idiomas em inglês. Veja mais
exemplos de criação de layout na página Criar uma instalação de rede do Visual
Studio.

shell

vs_professional.exe --layout C:\VS ^


--lang en-US ^
--add Microsoft.VisualStudio.Workload.CoreEditor

Usando --all para adquirir todo o produto


Inicie uma instalação interativa de todas as cargas de trabalho e componentes que
estão disponíveis no Visual Studio Enterprise Edition:

shell

vs_enterprise.exe --all

Usando --includeRecommended
Instale uma segunda instância do Visual Studio Professional usando um apelido
em um computador com o Visual Studio Community Edition já instalado, com
suporte para o desenvolvimento do Node.js:

shell

vs_professional.exe --installPath C:\VSforNode ^


--add Microsoft.VisualStudio.Workload.Node --includeRecommended --
nickname VSforNode

Usando --channelURI
Usando o instalador mais recente, é possível configurar onde o Visual Studio procura
atualizações. O --channelUri também é conhecido como o canal de atualização ou o
local de origem das atualizações. A tabela a seguir fornece valores de exemplo para
channelId e channelUri e o que eles significam.
Nome do --channelUri --channelId
Canal

Canal atual https://aka.ms/vs/17/release/channel VisualStudio.17.Release


do Visual
Studio 2022

Canal LTSC https://aka.ms/vs/17/release.LTSC.17.0/channel VisualStudio.17.Release.LTSC.17.0


do Visual
Studio 2022
17.0

Canal de https://aka.ms/vs/17/pre/channel VisualStudio.17.Preview


visualização
do Visual
Studio 2022

Canal de https://aka.ms/vs/16/release/channel VisualStudio.16.Release


versão do
Visual Studio
2019

Canal de https://aka.ms/vs/15/release/channel VisualStudio.15.Release


versão do
Visual Studio
2017

Layout \\layoutserver\share\path\channelmanifest.json VisualStudio.17.Release (ou seja


personalizado qual for o layout baseado)
– Canal
Privado

Se você optar por usar um layout personalizado como o canal de atualização, lembre-se
das seguintes diretrizes:

o --channelUri precisa apontar para o arquivo 'channelmanifest.json' no layout


personalizado.
Os administradores podem configurar como o layout personalizado "Canal
Privado" é exibido na interface do usuário das Configurações de Atualização
definindo as configurações do registro do cliente.

Usando --remove
Remova o componente Ferramentas de Criação de Perfil da instância do Visual
Studio instalada por padrão. Este exemplo usa o instalador já instalado no
computador cliente. Os usuários Standard, se tiverem recebido permissões
apropriadas , poderão executar programaticamente o comando de modificação
usando o instalador, mas não poderão usar a opção --passive ou --quiet .
Observe que você não pode iniciar o instalador programaticamente no mesmo
diretório no qual está o instalador.

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


modify ^
--installPath "C:\Program Files\Microsoft Visual
Studio\2022\Enterprise" ^
--remove Microsoft.VisualStudio.Component.DiagnosticTools ^
--passive

Você não pode usar --remove no mesmo comando que --layout . Em outras palavras,
não é possível remover componentes de um layout.

Usando --removeOos
Usando o instalador mais recente, você pode modificar uma instalação e remover todos
os componentes que fizeram a transição para um estado sem suporte da instância
padrão do Visual Studio instalada. Este exemplo usa o instalador já instalado no
computador cliente para definir a configuração removeOos. Os usuários Standard, se
tiverem recebido permissões apropriadas , poderão executar programaticamente o
comando de modificação usando o instalador, mas não poderão usar a opção --
passive ou --quiet . Observe que você não pode iniciar o instalador programaticamente

no mesmo diretório no qual está o instalador.

shell

"C:\Program Files (x86)\Microsoft Visual studio\Installer\setup.exe" modify


^
--installPath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" ^
--removeOos true ^
--passive

Ajuste as configurações de atualização para remover persistentemente todos os


componentes que fizeram a transição para um estado sem suporte sempre que o
produto for atualizado:

shell

"C:\Program Files (x86)\Microsoft Visual studio\Installer\setup.exe"


modify ^
--channelURI https://aka.ms/vs/17/release.LTSC.17.0/channel ^
--productID Microsoft.VisualStudio.Product.Enterprise ^
--newChannelURI \\layoutserver\share\path\channelmanifest.json ^
--removeOos true ^
--quiet

Usando --path
Todos esses exemplos pressupõem que você esteja instalando um novo produto usando
um bootstrapper.

Use os caminhos de instalação, de cache e compartilhados:

vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path


install="C:\VS" --path cache="C:\VS\cache" --path shared="C:\VS\shared"

Use somente os caminhos de instalação e de cache:

vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path


install="C:\VS" --path cache="C:\VS\cache"

Use somente os caminhos de instalação e compartilhados:

vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path

install="C:\VS" --path shared="C:\VS\shared"

Use somente o caminho de instalação:

vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path

install="C:\VS"

Usando a exportação
Use a exportação para salvar a seleção de uma instalação. Este exemplo usa o
instalador já instalado no computador cliente.

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


export --installPath "C:\VS" --config "C:\.vsconfig"

Use a exportação para salvar a seleção personalizada do zero. Este exemplo usa o
instalador já instalado no computador cliente.
shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


export --channelId VisualStudio.17.Release --productId
Microsoft.VisualStudio.Product.Enterprise --add
Microsoft.VisualStudio.Workload.ManagedDesktop --includeRecommended --
config "C:\.vsconfig"

Usando --config
Use --config para instalar os componentes e as cargas de trabalho de um arquivo
de configuração de instalação salvo anteriormente:

shell

vs_enterprise.exe --config "C:\my.vsconfig" --installPath "C:\VS"

Use --config para adicionar os componentes e as cargas de trabalho a uma


instalação existente. Este exemplo usa o instalador já instalado no computador
cliente. Os usuários Standard, se tiverem recebido permissões apropriadas ,
poderão executar programaticamente o comando de modificação usando o
instalador, mas não poderão usar a opção --passive ou --quiet . Observe que
você não pode iniciar o instalador programaticamente no mesmo diretório no qual
está o instalador.

shell

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"


modify --installPath "C:\VS" --config "C:\my.vsconfig"

Use --config para configurar o conteúdo de um layout:

shell

vs_enterprise.exe --layout C:\layout --config "C:\my.vsconfig"

Usando winget
Use a ferramenta "winget" do Gerenciador de Pacotes do Windows para instalar ou
atualizar por meio de programação o Visual Studio em seus computadores, juntamente
com outros pacotes gerenciados pelo winget. Para personalizar a instalação e especificar
cargas de trabalho e componentes adicionais, você pode usar a opção --override do
winget com o comando install do winget e passar em um arquivo vsconfig exportado
como este:

shell

winget install --id Microsoft.VisualStudio.2022.Community --override "--


passive --config C:\my.vsconfig"

Você também pode usar winget configure e passar um .yaml arquivo para modificar
uma instalação existente do Visual Studio. Essa abordagem usa o provedor DSC do
Visual Studio PowerShell documentado aqui .

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Criar uma instalação de rede do Visual Studio
IDs de carga de trabalho e de componente do Visual Studio
Criar e manter uma instalação de rede
do Visual Studio
Artigo • 27/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Às vezes, um administrador corporativo deseja criar um ponto de instalação privado que


contenha arquivos do Visual Studio que possam ser implantados em computadores
clientes dentro de uma organização. A criação de um ponto de instalação privado é útil
para situações em que o usuário tem permissões limitadas, em que os computadores
cliente tem acesso limitado à Internet ou quando uma organização deseja padronizar
uma versão específica do conjunto de ferramentas do desenvolvedor. O Visual Studio
foi criado para que um administrador possa criar e manter um "layout", que é um cache
privado de arquivos do Visual Studio, que pode ser armazenado em um
compartilhamento de rede interno, bem como disponibilizado na intranet de uma
organização. O layout funciona como o local de origem de todos os arquivos do Visual
Studio necessários para a instalação inicial do cliente e as atualizações subsequentes.

As informações nesta página são agrupadas em três seções principais:

Criar o layout: descreve como criar o layout com o conteúdo correto do produto,
como definir as configurações padrão do cliente, como armazená-lo em um
compartilhamento de arquivos de rede e como disponibilizá-lo para hospedá-lo
em um servidor Web na intranet.
Manter o layout: informações de como atualizar melhor a versão do produto do
layout ou modificar o conteúdo do produto do layout, as configurações do canal, a
versão do instalador e o tamanho da pasta.
Ajuda e suporte: onde pedir ajuda

Criar o layout

Preparar o local de armazenamento do


compartilhamento de arquivos de rede
Primeiro, você precisa determinar onde armazenará os pacotes baixados do Visual
Studio. Se você tiver várias edições do Visual Studio em uso na empresa (por exemplo, o
Visual Studio 2022 Professional e o Visual Studio 2022 Enterprise), será necessário criar
um layout separado para cada edição. Isso pode consumir muito espaço em disco,
principalmente quando você considera que as atualizações de layout também
consomem espaço em disco.

O demarcador de layout deve ter menos de 80 caracteres. Algumas organizações usam


links simbólicos com sucesso para contornar a limitação de 80 caracteres.

Baixe o bootstrapper do Visual Studio para criar o layout


Baixe o bootstrapper correto para a edição do Visual Studio desejada e copie-o para o
diretório que funcionará como repositório do layout. Depois que o layout for criado,
você poderá usá-lo para instalar o Visual Studio em qualquer computador cliente. O
bootstrapper é o arquivo executável que você usará para criar, atualizar e executar
outras operações de layout. Você deve ter uma conexão com a Internet para concluir
esta etapa.

Os inicializadores a seguir sempre instalam a versão segura mais recente do Visual


Studio 2022 no canal Atual, independentemente de quando foram executados. Como
alternativa, se você quiser criar ou atualizar um layout para uma versão ou canal
específicos do Visual Studio 2022, acesse a página Histórico de Versões do Visual Studio
2022 que tem links para os bootstrappers evergreen e de versão fixa de cada versão de
manutenção em cada canal e baixe a desejada. Copie o bootstraper diretamente no
diretório que você deseja usar como o local de origem do layout.

ノ Expand table

Edition Bootstrapper

Visual Studio 2022 Enterprise vs_enterprise.exe

Visual Studio 2022 Professional vs_professional.exe

Visual Studio 2022 Community vs_community.exe

Ferramentas de Build do Visual Studio 2022 vs_buildtools.exe

 Dica

Se você baixou anteriormente um arquivo de bootstrapper e deseja verificar qual


versão ele instalará, confira como fazer. No Windows, abra o Explorador de
Arquivos, clique com o botão direito do mouse no arquivo inicializador, escolha o
painel Propriedades e clique na guia Detalhes. O campo Versão do produto
descreve o canal e a versão que o inicializador instalará. O número de versão
sempre deve ser lido como "versão de manutenção mais recente do que é
especificado", e assume-se que o canal seja o Atual, a menos que especificado
explicitamente. Portanto, um inicializador com uma Versão de produto do LTSC
17.0 instala a versão de manutenção 17.0.x mais recente disponível no canal LTSC
17.0. Um inicializador com uma Versão de produto que diz que o Visual Studio
2022 instala a versão de manutenção mais recente do Visual Studio 2022 no canal
Atual.

Baixar os pacotes do Visual Studio


Você deve ter uma conexão com a Internet para concluir esta etapa.

Abra um prompt de comando com privilégios elevados, navegue até o diretório onde
você baixou o bootstrapper e use os parâmetros do bootstrapper conforme definido na
página Usar parâmetros de linha de comando para instalar o Visual Studio para criar e
manter o layout de rede. Os exemplos a seguir ilustram maneiras comuns de criar
layouts iniciais. Veja mais exemplos na página Exemplos de parâmetro de linha de
comando para uma instalação do Visual Studio.

Um layout inicial completo para uma única localidade de idioma requer cerca de 40 GB
de espaço em disco para o Visual Studio Community e cerca de 50 GB para o Visual
Studio Enterprise. Localidades de idioma adicionais exigem cerca de meio GB cada.

A abordagem recomendada é criar um layout inicial do Visual Studio com todas as


cargas de trabalho e os idiomas apropriados e armazenar os pacotes no diretório de
layout no servidor de rede. Dessa forma, qualquer instalação do cliente tem acesso a
toda a oferta de produtos do Visual Studio e à capacidade de instalar qualquer
subconjunto. Para criar um layout completo do Visual Studio, execute o seguinte
comando no diretório no qual planeja hospedar o layout de rede:

vs_enterprise.exe --layout c:\VSLayout

Verifique se o layout é baseado no canal correto


É importante garantir que o layout de rede seja baseado no canal correto, pois esse é
um dos critérios que o administrador atualiza, se forem implantados em toda a
organização, use para identificar quais instâncias de cliente devem ser atualizadas. Por
exemplo, se o layout for baseado no canal VisualStudio.17.Release.LTSC.17.0 e se os
clientes estiverem configurados para receber atualizações dos servidores hospedados
pela Microsoft, todas as atualizações de segurança que disponibilizarmos no canal 17.0
LTSC estarão disponíveis para os clientes que instalaram ou atualizaram desse layout.
Os bootstrappers listados anteriormente são baseados no canal atual. Para criar um
layout baseado em um dos canais LTSC, adquira o inicializador do canal correto na
página Histórico de Versões do Visual Studio 2022, copiá-lo para a sua pasta de layout e
usá-lo para criar ou atualizar o layout.

Configurar o conteúdo de um layout


Há várias opções que você pode usar para personalizar o conteúdo do layout de rede.
Você pode criar um layout parcial que contém apenas um conjunto específico de
localidades de idiomas, cargas de trabalho, componentes e suas dependências
recomendadas ou opcionais. Isso pode ser útil se você sabe que só vai implantar um
subconjunto de cargas de trabalho em estações de trabalho cliente. Parâmetros de linha
de comando típicos para personalizar o layout incluem:

--add para especificar IDs de componente ou carga de trabalho.

Se --add for usado, somente as cargas de trabalho e os componentes


especificados com --add serão baixados. Se --add não for usado, todas as cargas
de trabalho e todos os componentes serão baixados.
--includeRecommended para incluir todos os componentes recomendados para as

IDs de carga de trabalho especificadas.


--includeOptional para incluir todos os componentes opcionais para as IDs de

carga de trabalho especificadas.


--config para usar um arquivo vsconfig para especificar os componentes que

devem ser incluídos no layout. Especifique o caminho completo do arquivo de


configuração.
--lang para especificar localidades de idiomas.

Veja alguns exemplos de como criar um layout de rede personalizado.

Para criar um layout com componentes necessários para todas as cargas de


trabalho em apenas um idioma, execute:

shell

vs_enterprise.exe --layout C:\VSLayout --lang en-US

Para criar um layout com componentes necessários para todas as cargas de


trabalho em vários idiomas, execute:

shell
vs_enterprise.exe --layout C:\VSLayout --lang en-US de-DE ja-JP

Para criar um layout com uma carga de trabalho e todos os componentes


necessários e recomendados para essa carga de trabalho em todos os idiomas,
execute:

shell

vs_enterprise.exe --layout C:\VSLayout --add


Microsoft.VisualStudio.Workload.Azure --includeRecommended

Para criar um layout com duas cargas de trabalho e um componente opcional em


três idiomas, execute:

shell

vs_enterprise.exe --layout C:\VSLayout --add


Microsoft.VisualStudio.Workload.Azure --add
Microsoft.VisualStudio.Workload.ManagedDesktop --add
Microsoft.VisualStudio.Component.Git --lang en-US de-DE ja-JP

Você também pode usar um arquivo vsconfig para personalizar e limitar o


conteúdo do layout de uma rede. Especifique o caminho completo do arquivo de
configuração. Se houver extensões no arquivo vsconfig, os arquivos de extensões
não serão copiados para o layout, mas o arquivo response.json conterá uma
referência à extensão e o cliente tentará instalá-lo ao instalar a partir do layout.

shell

vs_enterprise.exe --layout C:\VSLayout --config "C:\myconfig.vsconfig"

Copiar o layout para um compartilhamento de rede


Você precisa hospedar o layout em um compartilhamento de rede para que ele possa
ser acessado nos computadores cliente. Se você criou o layout em um computador
local, precisará copiá-lo para um local de arquivo de rede. O exemplo a seguir usa
xcopy. Também é possível usar o robocopy, caso queira. Exemplo:

shell

xcopy /e c:\VSLayout \\server\share\layoutdirectory


Configurar padrões iniciais de instalação do cliente para
este layout
Um arquivo chamado response.json é criado na pasta raiz do layout. Esse arquivo
personalizável fornece as configurações padrão iniciais configuradas no cliente quando
o cliente é instalado inicialmente por meio do layout. As opções de configuração
comuns incluem a capacidade de configurar quais cargas de trabalho, componentes ou
idiomas devem ser instalados por padrão no cliente, de onde o cliente deve receber
atualizações ou se componentes sem suporte devem ser removidos durante uma
atualização.

Veja mais informações na página Automatizar a instalação do Visual Studio com um


arquivo de resposta.

Tornando o layout acessível por meio de um site da


intranet
A partir de junho de 2023, você poderá disponibilizar os layouts em um site interno da
intranet para aproveitar o cache de arquivos do servidor Web e os recursos de
desempenho de replicação geográfica. Para usar esse novo recurso, você precisa usar os
inicializador mais recentes do Visual Studio e o Instalador do Visual Studio mais recente.
Os administradores de TI precisa fazer o seguinte para aproveitar essa funcionalidade de
hospedagem na Web da intranet:

1. Primeiro, crie e mantenha um layout de rede e verifique se os bits estão presentes


e atualizados regularmente no compartilhamento de rede. Além disso, lembre-se
de configurar o valor de channelUri no response.json do layout se quiser que os
clientes obtenham as atualizações do local do layout da intranet.

2. Em seguida, um administrador precisará preparar um site interno e associar a


origem do site ao local do arquivo de rede do layout. Eles também precisam
garantir que os seguintes tipos MIME na tabela a seguir sejam respeitados pelo
servidor Web.

ノ Expand table

Extensão do arquivo Tipo MIME

.cab application/vnd.ms-cab-compressed

.exe application/octet-stream

.json application/json
Extensão do arquivo Tipo MIME

.msi application/octet-stream

.msu application/octet-stream

.nupkg application/octet-stream

.opc application/octet-stream

.ps1 application/postscript

.vsix application/octet-stream

.xml text/xml

.zip application/x-zip-compressed

3. Por fim, para implantar esse layout no cliente, execute um script do PowerShell no
cliente para executar a instalação inicial. Depois que o Visual Studio for instalado
com êxito no cliente por meio de um layout hospedado na Web, as atualizações
do cliente de layouts hospedados na Web poderão ser feitas por meio de métodos
padrão.

Verifique se o layout está usando o instalador mais


recente

7 Observação

A partir de junho de 2023, o instalador mais recente é fornecido por padrão a cada
atualização para todas as versões com suporte do Visual Studio 2017, Visual Studio
2019 e Visual Studio 2022. Portanto, se você estiver usando uma dessas versões do
produto, não precisará fazer nada explicitamente para obter a última versão do
instalador com a funcionalidade mais recente e correções de bugs.

Se você estiver usando uma versão do Visual Studio que foi enviada antes de junho de
2023, recomendamos que você sempre use o Instalador do Visual Studio mais recente
no layout e distribua-o para os clientes. Por exemplo, se você distribuir o instalador do
Visual Studio 2022 no layout do Visual Studio 2019, os clientes do Visual Studio 2019
com base nesse layout têm a capacidade de alterar o local de origem de atualizações ou
remover facilmente componentes sem suporte. Mais detalhes estão descritos abaixo.

A funcionalidade para garantir programaticamente que você está usando o instalador


mais recente só está disponível para bootstrappers do Visual Studio 2019 criados após o
Visual Studio 2022 enviado originalmente. Portanto, o vs_enterprise.exe no exemplo
abaixo deve ser uma versão enviada após 10 de novembro de 2021.

Para criar um layout do produto inteiro que usa o maior e mais recente instalador
disponível, execute

shell

vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller

Mantendo o layout
É uma melhor prática atualizar periodicamente o layout do Visual Studio para a versão
segura mais recente do produto. Isso garantirá que o layout possa ser usado como um
ponto de instalação e como uma fonte de atualização para instalações do cliente. A
seção a seguir descreve as operações de manutenção de layout mais comuns ou úteis.

Se você hospedar um layout em um compartilhamento de arquivos de rede, baixe um


layout atualizado em um compartilhamento local privado (por exemplo,
c:\VSLayoutUpdate) e, depois que todo o conteúdo atualizado for baixado, copie-o no
compartilhamento de arquivos de rede de layout (por exemplo, \server\products\VS). Se
você não fizer isso, os usuários que executarem a instalação enquanto você estiver
atualizando o layout poderão observar uma incompatibilidade de conteúdo do layout
porque ele ainda não foi atualizado por completo.

Atualizar o layout para a versão mais atual do produto


A Microsoft lança com frequência versões atualizadas do produto para corrigir
problemas de funcionalidade ou segurança. É altamente recomendável que você
mantenha seu layout atualizado com a versão mais recente do produto para que os
clientes sempre tenham acesso à versão mais recente e segura do produto. Isso é ainda
mais importante quando os clientes não tem acesso à Internet e podem apenas receber
atualizações do produto por meio do layout. O Visual Studio costuma lançar
atualizações de segurança na segunda terça-feira do mês, conhecida como "terça-feira
de patch", portanto, uma boa estratégia é atualizar todos os layouts nas tardes da terça-
feira de patch.

Quando você cria o layout inicial, as opções especificadas, como quais cargas de
trabalho e idiomas incluir no layout, são salvas no arquivo de configuração do layout
layout.json . Posteriormente, ao atualizar o layout para uma versão mais recente do

produto, você não precisará especificar novamente quais componentes do produto


deseja no layout. Uma atualização de layout simplesmente atualiza os componentes
existentes no layout para a versão mais atual.

Suponha que você já tenha criado esse layout parcial usando um dos bootstrappers
evergreen da tabela acima.

shell

vs_enterprise.exe --layout c:\VSLayout --add


Microsoft.VisualStudio.Workload.ManagedDesktop --lang en-US

É fácil atualizar esse layout para a versão mais recente do produto, oferecida pela
Microsoft e hospedada em servidores Microsoft. Basta usar o inicializador persistente
existente no layout e executar o comando --layout em um prompt com privilégios
elevados para baixar os pacotes mais recentes no layout, da seguinte maneira:

shell

vs_enterprise.exe --layout c:\VSLayout

Você também pode atualizar o layout para uma versão atualizada de maneira
autônoma. A operação de layout executa o processo de configuração em uma nova
janela do console. A janela é deixada aberta para que os administradores possam ver o
resultado final da atualização de layout e um resumo dos erros que podem ter ocorrido.
Se você quiser executar uma operação de atualização de layout de maneira autônoma
(por exemplo, se você tiver um script que é executado regularmente para atualizar seu
layout para a versão mais recente), então, use o parâmetro --passive e o processo
fechará automaticamente a janela.

shell

vs_enterprise.exe --layout c:\VSLayout --passive

Atualizar o layout para uma versão específica do produto


Às vezes, talvez você queira atualizar seu layout para uma determinada versão do
produto. Por exemplo, talvez você queira fazer com que seu layout corresponda à versão
mais recente segura da linha de base de manutenção que você padronizou na sua
organização. Veja como fazer isso:

Você pode acessar a página Histórico de Versões do Visual Studio 2022 e baixar um
bootstrapper de versão fixa específico, copiá-lo em seu layout e usá-lo para atualizar o
layout para essa versão especificada no bootstrapper. Você usaria exatamente a mesma
sintaxe acima.

Você pode usar uma atualização de administrador para atualizar o layout para uma
versão específica do produto. Para obter a atualização do administrador, acesse o
Catálogo do Microsoft Update e pesquise a atualização que deseja usar para atualizar
o layout. Baixe o update.exe no computador que hospeda o layout, abra um prompt de
comando com privilégios elevados nesse computador e execute um comando como
este:

shell

visualstudioupdate-17.0.0to17.4.4.exe layout --layoutPath c:\VSLayout

Observe que uma atualização de administrador não iniciará a criação de um layout,


apenas atualizará um layout existente. Você precisará usar um inicializador para criar o
layout inicial.

Garantir que o layout de rede seja baseado em uma


versão com suporte
Ocasionalmente, à medida que os canais fazem a transição para fora do suporte, você
precisará garantir que o layout de rede continuará sendo baseado em um canal com
suporte para que seus clientes possam continuar a receber notificações de atualizações
de segurança. Se o layout for baseado no canal VisualStudio.17.Release.LTSC.17.0,
depois que o canal 17.0 LTSC sair do suporte em julho de 2023, não lançaremos mais
atualizações de segurança para ele e o layout e os clientes ficarão sem segurança. Veja
aqui as datas de suporte de vários canais do Visual Studio 2022.

Para alterar o canal no qual o layout se baseia, adquira o inicializador do canal desejado
na página Histórico de Versões do Visual Studio 2022, copiá-lo na sua pasta de layout e
executar uma atualização normal. Em seguida, seus clientes devem ser notificados
adequadamente sobre a atualização para que também possam se manter seguros.

Modificar o conteúdo de um layout


É possível modificar um layout parcial e adicionar outras cargas de trabalho,
componentes ou idiomas. Não é possível remover componentes de um layout de modo
confiável.

No exemplo a seguir, adicionaremos a carga de trabalho do Azure e um idioma


localizado ao layout que foi criado anteriormente apenas com a carga de trabalho da
Área de Trabalho Gerenciada e o idioma inglês. Depois de fazermos a modificação, as
cargas de trabalho da Área de Trabalho Gerenciada e do Azure, e recursos em inglês e
alemão, serão incluídos neste layout. Além de adicionar componentes, o comando --
layout também fará com que o layout seja atualizado para a versão especificada pelo

bootstrapper. Portanto, se você estiver usando o bootstrapper evergreen, o layout


resultante terá o novo componente, o novo idioma e todo o conteúdo do layout será
atualizado para a versão mais recente no canal do bootstrapper.

shell

vs_enterprise.exe --layout c:\VSLayout --add


Microsoft.VisualStudio.Workload.Azure --lang de-DE

Se você quiser atualizar um layout existente para que se torne um layout completo, use
a opção --all, como mostrado no exemplo a seguir. Novamente, esse comando fará com
que o conteúdo do layout seja atualizado para a versão especificada pelo bootstrapper.

shell

vs_enterprise.exe --layout c:\VSLayout --all

Você pode adicionar componentes a um layout passando um arquivo vsconfig que


contém os componentes adicionais desejados no layout.

shell

vs_enterprise.exe --layout C:\VSLayout --config "C:\myconfig.vsconfig"

Por fim, você pode editar diretamente o arquivo de configuração layout.json na pasta
de layout e atualizar a seção "add" desse arquivo para incluir os componentes adicionais
que deseja incluir no layout. Em seguida, você precisará atualizar o layout usando --
layout , conforme descrito anteriormente para baixar os componentes mais recentes.

7 Observação

A maneira mais fácil de instalar os componentes de layout recém-adicionados em


um computador cliente é executar o bootstrapper no layout do computador
cliente. A seção 'add' do arquivo response.json no layout determinará quais
componentes são selecionados por padrão na interface do usuário do instalador
do cliente. Se você modificou o layout usando um dos métodos acima, convém
verificar manualmente e, possivelmente, ajustar a seção 'add' no arquivo
response.json para que ela corresponda mais adequadamente ao conteúdo na

seção 'add' do arquivo layout.json recém-modificado.

Configure o layout para remover componentes fora de


suporte no computador cliente.
Algumas empresas vão querer aproveitar o recurso introduzido no Visual Studio 2022
versão 17.4, que remove componentes que passaram para um estado sem suporte. É
algo relativamente fácil de configurar se você estiver gerenciando um layout e se seus
clientes estiverem recebendo atualizações de administrador. Primeiro, você precisará
configurar o layout para ter o versão mais recente do instalador, conforme descrito
abaixo. Em segundo lugar, você precisará adicionar a linha "removeOos": true ao
arquivo response.json . Se o layout tiver esses dois detalhes definidos corretamente, as
atualizações subsequentes do administrador respeitarão a configuração e removerão
componentes sem suporte dos computadores cliente.

Verificar um layout
Use --verify para executar a verificação no layout de rede que confirma se os arquivos
de pacotes estão ausentes ou inválidos. No final da verificação, a lista de arquivos
ausentes e inválidos é impressa.

A verificação funciona apenas para a versão mais recente de uma versão secundária
específica do Visual Studio. Assim que uma nova versão for lançada, a verificação não
funcionará em layouts com versões anteriores.

shell

vs_enterprise.exe --layout <layoutDir> --verify

7 Observação

Alguns arquivos de metadados importantes necessários para a opção --verify


devem estar na pasta do layout. Se esses arquivos de metadados estiverem
ausentes, "--verify" não poderá ser executado e a instalação apresentará um erro.
Se esse erro ocorrer com você, tente atualizar novamente o layout ou recrie um
novo layout de rede em uma pasta diferente.
Lembre-se de que a Microsoft envia atualizações ao Visual Studio periodicamente,
portanto, se você estiver usando um bootstrapper evergreen, um layout mais recente
poderá não conter a mesma versão do layout inicial. No entanto, se você usar
bootstrappers de link fixo, (quase) sempre obterá um conjunto de arquivos
determinístico.

Corrigir um layout
Use --fix para executar a mesma verificação que --verify e também tentar corrigir os
problemas identificados. O processo --fix precisa de uma conexão de Internet,
portanto, verifique se o computador está conectado à Internet antes de você invocar --
fix .

shell

vs_enterprise.exe --layout <layoutDir> --fix

Remover versões mais antigas de um layout


Depois de executar atualizações de layout em um cache de rede, a pasta de layout pode
ter alguns pacotes obsoletos que não são mais requeridos pela instalação do Visual
Studio mais recente. Você pode usar a opção --clean para remover pacotes obsoletos
de uma pasta de layout de rede.

Para fazer isso, você precisará dos caminhos de arquivo para os manifestos de catálogo
que contêm esses pacotes obsoletos. Você pode encontrar os que manifestos de
catálogo na pasta "Arquivo morto" do cache de layout de rede. Eles são salvos nela
quando você atualiza um layout. Na pasta "Arquivo morto", há uma ou mais pastas
chamadas "GUID", cada qual contendo um manifesto de catálogo obsoleto. O número
de pastas "GUID" deve ser o mesmo que o número de atualizações feitas em seus
layouts.

Alguns arquivos são salvos dentro de cada pasta "GUID". Os dois arquivos mais
interessantes são um arquivo "catalog.json" e um arquivo "version.txt". O arquivo
"catalog.json" é o manifesto de catálogo obsoleto que você precisará passar para a
opção --clean . O outro arquivo, version.txt, contém a versão deste manifesto de
catálogo obsoleto. Com base no número de versão, você pode decidir se deseja
remover pacotes obsoletos do manifesto de catálogo. Você pode fazer o mesmo ao
percorrer as outras pastas "GUID". Depois de tomar a decisão sobre os catálogos que
deseja limpar, execute o comando --clean fornecendo os caminhos de arquivos para
esses catálogos.
Aqui está um exemplo de como usar a opção --clean:

shell

c:\VSLayout\vs_enterprise.exe --layout c:\VSLayout --clean


c:\VSLayout\Archive\1cd70189-fc55-4583-8ad8-a2711e928325\Catalog.json --
clean c:\VSLayout\Archive\d420889f-6aad-4ba4-99e4-ed7833795a10\Catalog.json

Quando você executa esse comando, a instalação analisa sua pasta de layout de rede
para localizar a lista de arquivos que ela removerá. Você terá a oportunidade de
examinar os arquivos que serão excluídos e confirmar as exclusões.

Configurar o layout para sempre incluir e fornecer o


instalador mais recente

7 Observação

A partir de junho de 2023, o instalador mais recente é enviado por padrão a cada
atualização de versões com suporte do Visual Studio 2017, Visual Studio 2019 e
Visual Studio 2022. Portanto, você não precisará fazer nada explicitamente para
obter a versão mais recente do instalador com a funcionalidade e correções de
bugs mais recentes no seu layout e em seus clientes.

No entanto, se você estiver usando um layout criado antes de junho de 2023, também
poderá configurar explicitamente o layout para sempre incluir e fornecer o instalador
mais recente aos clientes, mesmo que o instalador seja considerado parte de uma
versão mais recente do Visual Studio. Assim, ao atualizar o cliente com esse layout, o
cliente adquirirá o instalador mais recente incluído e fornecido por esse layout. O
benefício é que, depois que o instalador mais recente estiver no cliente, as instalações
do cliente poderão aproveitar as correções de bugs e novas funcionalidades que
continuamos a adicionar ao instalador.

Há várias maneiras de habilitar o layout para incluir e fornecer o instalador mais recente:

Você pode usar uma versão do Visual Studio criada em junho de 2023 ou após
essa data.

Você pode passar o parâmetro --useLatestInstaller para o bootstrapper ao criar


ou atualizar o layout. Isso fará com que uma configuração seja definida no arquivo
layout.json , que pode ser encontrado no diretório raiz do layout. Aqui está um
exemplo de como atualizar o layout e configurá-lo para usar o melhor e mais
recente instalador disponível.

shell

vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller

Você pode editar o arquivo layout.json para adicionar essa configuração.

Example

{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri":
"\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.16.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise",

"useLatestInstaller": true,
"removeOos": true

Não há como remover programaticamente essa configuração do arquivo layout.json ,


portanto, se você quiser que o layout pare de usar o instalador mais recente que a
Microsoft disponibiliza e, em vez disso, use a versão do instalador que corresponde ao
inicializador (que provavelmente é mais antigo que o instalador mais recente), edite o
arquivo layout.json e remova a configuração "UseLatestInstaller": true .

Observe que você também pode encontrar essa configuração "UseLatestInstaller":


true no arquivo response.json do layout, mas ela é ignorada lá para garantir que o

layout sempre tenha o instalador mais recente. O arquivo response.json é usado para
definir opções de configuração padrão no cliente quando o cliente instala ou atualiza a
partir de um layout. Essa configuração "useLatestInstaller": true específica no
arquivo layout.json é usada para garantir que o conteúdo do layout contenha o
instalador mais recente, para que os computadores cliente possam adquirir o instalador
mais recente do layout.

Códigos de erro
Se você tiver usado o parâmetro --wait , dependendo do resultado da operação, a
variável de ambiente %ERRORLEVEL% será definida como um dos seguintes valores:
ノ Expand table

Valor Resultado

0 A operação foi concluída com êxito

740 Elevação necessária

1001 O processo do instalador do Visual Studio está em execução

1003 O Visual Studio está em uso

1602 A operação foi cancelada

1618 Outra instalação em execução

1641 A operação foi concluída com êxito e a reinicialização foi iniciada

3010 A operação foi concluída com êxito, mas a instalação requer a reinicialização
antes de ser usada

5003 O inicializador falhou ao baixar o instalador

5004 A operação foi cancelada

5005 Erro de análise de linha de comando do inicializador

5007 A operação foi bloqueada – o computador não atende aos requisitos

8001 Falha na verificação do computador Arm

8002 Falha de pré-verificação de download em segundo plano

8003 Falha selecionável sem suporte

8004 Falha no diretório de destino

8005 Falha de verificação de conteúdo de origem

8006 Processos do Visual Studio em execução

8010 Sistema operacional sem suporte. Consulte os Requisitos do Sistema

-1073720687 Falha de conectividade

–1073741510 O Instalador do Microsoft Visual Studio foi terminado (por usuário ou processo
externo)

Outro Condição de falha ocorreu. Verifique os logs para obter mais informações
(por
exemplo:
-1, 1, 1.603)
Obter suporte para o layout de rede
Caso você tenha um problema com o layout de rede, gostaríamos de saber a respeito. A
melhor maneira de nos comunicar o assunto é usando a ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você for
um Administrador de TI e não tiver o Visual Studio instalado, poderá enviar comentários
de Administração de TI aqui . Ao usar essa ferramenta, será muito útil se você puder
enviar os logs da ferramenta VS Collect , que pode nos ajudar a diagnosticar e corrigir
o problema.

Também oferecemos uma opção de suporte por meio de chat de instalação (somente
em inglês) para problemas relacionados à instalação.

Também temos outras opções de suporte disponíveis. Confira nossa Visual Studio
Developer Community .

Conteúdo relacionado
Guia do administrador do Visual Studio
Implantar o Visual Studio usando um layout em um computador cliente
Atualizar uma instalação em rede do Visual Studio
Solução de erros relacionados à rede ao instalar ou usar o Visual Studio
Configurar políticas para implantações empresariais do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
IDs de carga de trabalho e de componente do Visual Studio
Instalar os certificados necessários para instalação offline do Visual Studio
Implantar o Visual Studio em um
computador cliente usando um layout
Artigo • 16/01/2024

Para implantar um layout em um computador cliente, você precisará considerar os


seguintes tópicos primeiro:

Preparar o layout: verifique se o layout está pronto para ser instalado no cliente.
Preparar os computadores cliente: verifique se os computadores cliente estão
prontos para instalar o Visual Studio e se os usuários têm as permissões certas.
Configurar políticas globais no computador cliente: controle outros
comportamentos de instalação, atualização, notificação e download do Visual
Studio.
Configurar os padrões de instalação inicial do cliente: inicialize a instalação do
cliente com configurações personalizadas.
Executar atualizações regulares: mantenha os computadores cliente atualizados e
seguros.

Instalar o Visual Studio em um computador


cliente usando um layout
Os administradores podem implantar um layout do Visual Studio em estações de
trabalho cliente programaticamente como parte de um script de instalação.

Instalar usando um layout de rede


Um usuário com permissões de administrador pode instalar o Visual Studio usando um
layout de rede em um modo autônomo executando o comando a seguir. Os
response.json no layout fornece as configurações padrão para a instalação.

shell

\\server\products\VS\vs_enterprise.exe --quiet --wait

Se o usuário selecionar itens que não estiverem disponíveis no layout, o instalador


tentará obter esses arquivos adicionais de servidores hospedados pela Microsoft na
Internet. Para garantir que o instalador não tente acessar a Internet ao instalar o
produto, use a opção --noweb . Por exemplo, use este comando para executar a
instalação e impedir que o computador cliente acesse a Internet:
shell

\\server\products\VS\vs_enterprise.exe --noWeb --wait --passive --add


Microsoft.VisualStudio.Workload.ManagedDesktop --add
Microsoft.VisualStudio.Workload.NetWeb --includeOptional

7 Observação

Seja paciente. Verifique se você concluiu --wait para o instalador e para o produto.
Ao instalar ou atualizar um cliente a partir de um layout, primeiro sempre será
instalado ou atualizado o instalador e depois o próprio produto do Visual Studio.
Esses dois processos precisam ser concluídos para uma atualização ser considerada
bem-sucedida.

Ao executar a instalação ou atualização como parte de um arquivo em lote


automatizado autônomo, a opção --wait é útil para garantir que o processo
vs_enterprise.exe aguarde até que a instalação seja concluída antes de retornar

um código de saída. Isso é útil se um administrador corporativo quiser executar


ações adicionais na instalação concluída, tal como aplicar uma chave de produto a
uma instalação bem-sucedida. O uso da opção --wait impede que as próximas
operações sejam disparadas antecipadamente. Se você não usar --wait , o
processo vs_enterprise.exe poderá ser encerrado antes que as duas partes da
instalação sejam concluídas e retornará um código de saída impreciso, que não
representará o estado da operação de instalação.

Instalar por meio de um local interno da intranet


Algumas empresas querem hospedar o layout em um local de intranet para gerenciar
melhor gargalos de desempenho geográfico e aproveitar o cache da Web. Para
implantar um layout hospedado na intranet em um computador cliente, um usuário
com permissões de administrador precisa executar um script do PowerShell com
privilégios elevados semelhante ao seguinte para inicializar a instalação no computador
cliente.

shell

#Do the initial installation from the web hosted layout onto the client
in an elevated PowerShell script

#ADMIN CONFIGURATION
#Enter layout URI here
$LayoutUri = "http://MyCompanyIntranetSite/VS2022Enterprise/"
#Enter bootstrapper name which is present in layout.
$BootstrapperName = "vs_Enterprise.exe"

#Add any arguments which you intend to send to bootstrapper.


$Arguments = "--passive --wait"

#SCRIPT FUNCTIONALITY
#Forming URI for bootstrapper
Write-Verbose "LayoutUri: $LayoutUri"
$BootstrapperUri = "$LayoutUri/$BootstrapperName"
Write-Verbose "BootstrapperUri: $BootstrapperUri"

$Arguments += " --layoutUri $LayoutUri"


Write-Verbose "Arguments: $Arguments"

#Creating temp folder and download bootstrapper


$VSLayoutFolderPath = Join-Path -Path $env:TEMP -ChildPath VSLayout
$BootstrapperFile = Join-Path -Path $VSLayoutFolderPath -ChildPath
$BootstrapperName
Write-Verbose "The bootstrapper path is: $BootstrapperFile"

if (Test-Path $VSLayoutFolderPath)
{
Write-Verbose "The directory exists - $VSLayoutFolderPath"
if (Test-Path $BootstrapperFile)
{
Write-Verbose "Deleting file - $BootstrapperFile"
Remove-Item $BootstrapperFile
}
}
else
{
Write-Verbose "Creating folder - $VSLayoutFolderPath"
New-Item -ItemType Directory -Path $VSLayoutFolderPath
}

Write-Verbose "Downloading bootstrapper from - $BootstrapperUri to


$BootstrapperFile"
Invoke-WebRequest -Uri $BootstrapperUri -OutFile $BootstrapperFile

Write-Verbose "Starting bootstrapper -$BootstrapperFile with arguments


$Arguments"
start-process $BootstrapperFile $Arguments

Preparar os computadores cliente

Permissões
Verifique se a conta do sistema ou do usuário que está executando a instalação tem
acesso adequado ao compartilhamento de rede que contém o layout. Para obter mais
informações, confira a página Solucionar erros relacionados à rede ao instalar ou usar o
Visual Studio.

Instalar em um cliente sem acesso à Internet


Você precisa verificar se todos os computadores cliente offline têm os certificados
corretos instalados.

Quando você instala usando um layout, o instalador no cliente sempre procura os


pacotes do Visual Studio no local do layout. No entanto, se o instalador tentar instalar
componentes que não estejam incluídos no layout, ele tentará adquirir os pacotes do
Visual Studio do origem de atualização, que os administradores geralmente configuram
para apontar de volta para si mesmos.

Se você quiser impedir explicitamente que o Instalador do Visual Studio tente baixar
conteúdo ausente dos servidores hospedados pela Microsoft na Web, use o parâmetro -
-noWeb. Se --noWeb for usado e o layout estiver sem um componente que esteja
selecionado para ser instalado, a instalação falhará. Além disso, se --noWeb for usado e
o layout estiver hospedado nos servidores Web da intranet, não em um
compartilhamento de rede de arquivos, a configuração falhará.

Usar a opção --noweb geralmente corrige a mensagem de erro "Não foi possível
encontrar um produto que corresponda aos parâmetros a seguir".

Recursos do computador
Verifique se o caminho de instalação completo tem menos de 80 caracteres e se o
computador tem amplo armazenamento. Uma instalação completa do Visual Studio
requer no mínimo 45 a 50 GB de espaço em disco.

Códigos de erro
Se você tiver usado o parâmetro --wait , dependendo do resultado da operação, a
variável de ambiente %ERRORLEVEL% será definida como um dos seguintes valores:

ノ Expandir a tabela

Valor Resultado

0 A operação foi concluída com êxito


Valor
740 Resultado
Elevação necessária

1001 O processo do instalador do Visual Studio está em execução

1003 O Visual Studio está em uso

1602 A operação foi cancelada

1618 Outra instalação em execução

1641 A operação foi concluída com êxito e a reinicialização foi iniciada

3010 A operação foi concluída com êxito, mas a instalação requer a reinicialização
antes de ser usada

5003 O inicializador falhou ao baixar o instalador

5004 A operação foi cancelada

5005 Erro de análise de linha de comando do inicializador

5007 A operação foi bloqueada – o computador não atende aos requisitos

8001 Falha na verificação do computador Arm

8002 Falha de pré-verificação de download em segundo plano

8003 Falha selecionável sem suporte

8004 Falha no diretório de destino

8005 Falha de verificação de conteúdo de origem

8006 Processos do Visual Studio em execução

8010 Sistema operacional sem suporte. Consulte os Requisitos do Sistema

-1073720687 Falha de conectividade

–1073741510 O Instalador do Microsoft Visual Studio foi terminado (por usuário ou processo
externo)

Outro Condição de falha ocorreu. Verifique os logs para obter mais informações
(por
exemplo:
-1, 1, 1.603)

Obter suporte para implantar o layout


Se você tiver algum problema ao implantar o layout em um computador cliente,
informe-nos. A melhor maneira de nos comunicar o assunto é usando a ferramenta
Relatar um Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio.
Se você for um Administrador de TI e não tiver o Visual Studio instalado, poderá enviar
comentários de Administração de TI aqui . Ao usar essa ferramenta, você pode enviar
os logs pela ferramenta VS Collect para nos ajudar a diagnosticar e corrigir o
problema.

Também oferecemos uma opção de suporte por meio de chat de instalação (somente
em inglês) para problemas relacionados à instalação.

Também temos outras opções de suporte disponíveis. Confira nossa Visual Studio
Developer Community .

Conteúdo relacionado
Guia do administrador do Visual Studio
Atualizar uma instalação em rede do Visual Studio
Solução de erros relacionados à rede ao instalar ou usar o Visual Studio
Atualizações de controle para implantações do Visual Studio com base em rede
Configurar políticas para implantações empresariais do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
IDs de carga de trabalho e de componente do Visual Studio
Instalar os certificados necessários para instalação offline do Visual Studio
Definir as configurações padrão de
instalação usando um arquivo de
resposta
Artigo • 04/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá a criar um arquivo de resposta que ajuda a automatizar a
instalação do Visual Studio. Você pode usar esse arquivo para especificar cargas de
trabalho, componentes e outras opções de instalação a serem usadas ao instalar o
Visual Studio com base em um layout. Use também esse arquivo para especificar o local
em que o cliente deve procurar atualizações.

O arquivo de resposta do Visual Studio é um arquivo JSON cujo conteúdo contém


personalizações usadas durante a instalação inicial do Visual Studio no cliente. O
conteúdo espelha os argumentos e os parâmetros da linha de comando. As opções de
configuração comuns incluem:

A capacidade de configurar quais cargas de trabalho, componentes ou idiomas


devem ser selecionados por padrão durante a instalação inicial.
Capacidade de especificar de onde o cliente deve receber atualizações. Os
exemplos incluem os servidores padrão hospedados pela Microsoft na Internet ou
um local de layout de rede controlado pelo administrador.
A capacidade de especificar se componentes sem suporte devem ser removidos
durante as atualizações.

Criar o arquivo de resposta


O arquivo response.json normalmente é criado quando um administrador cria um
layout e fica na pasta raiz do layout. No entanto, você pode criar seu próprio arquivo de
resposta com um dos exemplos abaixo.

Especificar o arquivo de resposta


Se um administrador implantar o Visual Studio invocando o bootstrapper de um layout,
o arquivo de resposta encontrado na raiz do layout será usado automaticamente. Os
administradores também podem optar por especificar explicitamente um arquivo de
resposta diferente usando o parâmetro --in , como no exemplo a seguir:
shell

\\server\share\layoutdirectory\vs_enterprise.exe --in customInstall.json

Conteúdos do arquivo de resposta


O arquivo de resposta encapsula os parâmetros de linha de comando e segue estas
regras gerais:

Se um parâmetro de linha de comando não usa nenhum argumento (por exemplo,


--quiet , --passive , etc.), o valor no arquivo de resposta deve ser verdadeiro/falso.

Se o parâmetro usa um argumento (por exemplo, --installPath <dir> ), o valor no


arquivo de resposta deverá ser uma cadeia de caracteres.
Se o parâmetro usa um argumento e pode aparecer na linha de comando mais de
uma vez (por exemplo, --add <id> ), o valor no arquivo de resposta deverá ser uma
matriz de cadeias de caracteres.

Parâmetros que são especificados na linha de comando substituem as configurações


que foram incluídas no arquivo de resposta, exceto quando os parâmetros recebem
várias entradas (por exemplo, --add ). Quando você tiver várias entradas, as entradas
fornecidas na linha de comando serão mescladas com as configurações do arquivo de
resposta.

Configurar o arquivo de resposta usado ao


instalar usando um layout
Se você criou um layout usando o comando --layout , um arquivo response.json
padrão será criado na raiz da pasta de layout. Espera-se que os administradores
modifiquem e personalizem o arquivo de resposta adequadamente antes de fazer a
instalação em um computador cliente. Dessa forma, eles podem controlar as
configurações iniciais do cliente.

As configurações no arquivo response.json são referenciadas somente ao executar um


bootstrapper (por exemplo, vs_enterprise.exe). Normalmente, os bootstrappers são
usados para executar a instalação inicial no cliente, mas às vezes também são usados
para atualizar um cliente. O response.json nunca é usado quando você inicia o
instalador localmente no cliente.

Se o administrador criou um layout parcial, o arquivo response.json padrão no layout


especificará apenas as cargas de trabalho e os idiomas incluídos no layout parcial.
Preste atenção especial à configuração channelUri, que configura onde o cliente vai
procurar atualizações. A configuração padrão é que o cliente examine os servidores
hospedados pela Microsoft na Internet para obter atualizações. Você precisará alterar o
valor de channelUri e apontá-lo para o layout se quiser que os clientes obtenham
atualizações do layout. Exemplos de como fazer isso estão detalhados abaixo. Você
sempre pode alterar onde um cliente procura atualizações no futuro executando o
instalador no cliente e invocando o comando modifySettings.

Se a instalação original não for feita usando o modo --quiet , os usuários poderão
substituir os padrões especificados em response.json e selecionar ou cancelar a seleção
de mais cargas de trabalho e componentes para instalação.

2 Aviso

É fundamental que você não exclua nenhuma das propriedades em response.json ,


que foram definidas quando o layout foi criado. Você pode alterar os valores, mas
não pode remover nenhum item.

O arquivo response.json base em um layout deve ser semelhante ao exemplo a seguir,


exceto pelo fato de que a productID refletiria a edição em seu layout.

Default

{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "https://aka.ms/vs/17/release/channel",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise"
}

Default

{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "https://aka.ms/vs/17/release.ltsc.17.0/channel",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release.LTSC.17.0",
"productId": "Microsoft.VisualStudio.Product.Enterprise"
}

Quando você cria ou atualiza um layout, um arquivo response.template.json também é


criado. Esse arquivo contém todas as IDs de carga de trabalho, de componente e de
idioma que podem ser usadas. Esse arquivo é fornecido como um modelo para o qual
todas poderiam ser incluídas em uma instalação personalizada. Os administradores
podem usar esse arquivo como um ponto de partida para um arquivo de resposta
personalizado. Basta remover as IDs dos itens que você não deseja instalar e salvá-las
em um arquivo response.json ou no próprio arquivo de resposta. Não personalize o
arquivo response.template.json, caso contrário, as alterações serão perdidas sempre que
o layout for atualizado.

Exemplo de conteúdo de arquivo de resposta


de layout de exemplo
O exemplo de arquivo response.json a seguir inicializará uma instalação de cliente do
Visual Studio 2019 Enterprise para selecionar várias cargas de trabalho e componentes
comuns, para selecionar os idiomas da interface do usuário em inglês e francês e para
contar com o local de atualização configurado para procurar fontes em um layout
hospedado na rede. Observe que, para o Visual Studio 2019, o local de atualização
(channelUri) só pode ser configurado durante a instalação inicial e não pode ser
alterado após o fato , a menos que você use a funcionalidade no instalador mais recente.
Confira Configurar políticas para implantações corporativas do Visual Studio e
Configurar o layout para sempre incluir e fornecer o instalador mais recente para obter
informações sobre como configurá-lo.

Example

{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.16.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise",

"installPath": "C:\\VS2019",
"quiet": false,
"passive": false,
"includeRecommended": true,
"norestart": false,
"useLatestInstaller": true,
"removeOos": true,

"addProductLang": [
"en-US",
"fr-FR"
],

"add": [
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.VisualStudio.Workload.Data",
"Microsoft.VisualStudio.Workload.NativeDesktop",
"Microsoft.VisualStudio.Workload.NetWeb",
"Microsoft.VisualStudio.Workload.Office",
"Microsoft.VisualStudio.Workload.Universal",
"Component.GitHub.VisualStudio"
]
}

O exemplo de arquivo response.json a seguir inicializará uma instalação de cliente do


Visual Studio Enterprise 2022 para selecionar várias cargas de trabalho e componentes
comuns, selecionar os idiomas de interface do usuário em inglês e francês, sempre
remover componentes que ficarem sem suporte quando o cliente for atualizado e ter o
local de atualização configurado para procurar fontes em um layout http. Confira a lista
de componentes fora do suporte aqui.

Example

{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri":
"http://MyCompanyIntranetSite/VS2022Enterprise/ChannelManifest.json",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise",

"installPath": "C:\\VS2022",
"quiet": false,
"passive": false,
"includeRecommended": true,
"norestart": false,
"useLatestInstaller": true,
"removeOos": true,

"addProductLang": [
"en-US",
"fr-FR"
],

"add": [
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.VisualStudio.Workload.Data",
"Microsoft.VisualStudio.Workload.NativeDesktop",
"Microsoft.VisualStudio.Workload.NetWeb",
"Microsoft.VisualStudio.Workload.Office",
"Microsoft.VisualStudio.Workload.Universal"
]
}

2 Aviso
Se você estiver usando layouts hospedados na Web da intranet, a definição de
“noWeb”: true no response.json não funcionará. Isso desabilitará o protocolo http e
impedirá que o cliente acesse o site.

Solução de problemas
Se você tiver um problema com o bootstrapper do Visual Studio lançando um erro ao
emparelhá-lo com um arquivo response.json , confira Solucionar erros relacionados à
rede ao instalar ou usar a página do Visual Studio para obter mais informações.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Guia de Administradores do Visual Studio
Criar e manter uma instalação de rede do Visual Studio
Implantar o Visual Studio usando um layout em um computador cliente
Configurar políticas para implantações empresariais
IDs de carga de trabalho e de componente do Visual Studio
Solução de erros relacionados à rede ao instalar ou usar o Visual Studio
Aplicar chaves do produto (Product
Keys) durante a implantação do Visual
Studio
Artigo • 13/01/2024

É possível aplicar a chave do produto (Product Key) de forma programática como parte
de um script usado para automatizar a implantação do Visual Studio. Você pode definir
a chave do produto (Product Key) em um dispositivo de forma programática durante a
instalação do Visual Studio ou após a conclusão de uma instalação.

Aplicar a licença após a instalação


É possível ativar uma versão instalada do Visual Studio com uma chave do produto
(Product Key) usando o utilitário StorePID.exe nos computadores de destino no modo
sem confirmação. StorePID.exe é um programa utilitário instalado com o Visual Studio
2022 no seguinte local padrão:

shell

C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE

Execute StorePID.exe com privilégios elevados, usando um agente do System Center ou


em um prompt de comandos com privilégios elevados. Em seguida, informe a chave do
produto (Product Key) e o MPC (código de produto da Microsoft).

) Importante

Verifique se você incluiu os traços na chave do produto (Product Key).

shell

StorePID.exe [product key including the dashes] [MPC]

O exemplo a seguir mostra uma linha de comando para aplicar a licença ao Visual
Studio 2022 Enterprise, que tem um MPC de 09660, uma chave do produto (Product
Key) AAAAA-BBBBB-CCCCC-DDDDD-EEEEE e pressupõe um local padrão para a instalação:

shell
"C:\Program Files\Microsoft Visual
Studio\2022\Enterprise\Common7\IDE\StorePID.exe" AAAAA-BBBBB-CCCCC-DDDDD-
EEEEE 09660

ノ Expandir a tabela

Edição do Visual Studio MPC

Visual Studio Enterprise 2022 09660

Visual Studio Professional 2022 09662

Se StorePID.exe aplicar a chave do produto (Product Key) com êxito, ele retornará um
%ERRORLEVEL% de 0. Se encontrar erros, ele retornará um dos códigos a seguir,

dependendo da condição de erro:

ノ Expandir a tabela

Erro Código

PID_ACTION_SUCCESS 0

PID_ACTION_NOTINSTALLED 1

PID_ACTION_INVALID 2

PID_ACTION_EXPIRED 3

PID_ACTION_INUSE 4

PID_ACTION_FAILURE 5

PID_ACTION_NOUPGRADE 6

7 Observação

Ao executar uma instância virtual do Visual Studio, procure virtualizar também a


pasta AppData local e o registro. Para solucionar problemas de instâncias virtuais,
execute <Visual Studio installation directory>\Common7\IDE\DDConfigCA.exe .

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar o Visual Studio
Criar uma instalação offline do Visual Studio
Instalar e usar o Visual Studio e os Serviços do
Azure atrás de um firewall ou servidor proxy
Artigo • 27/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Se você ou sua organização usa medidas de segurança como um firewall ou um servidor proxy, há URLs de
domínio que você talvez queira adicionar a uma "lista de permissões" e portas e protocolos que talvez você
queira abrir para que tenha a melhor experiência ao instalar e usar o Visual Studio e os Serviços do Azure.

Instalar o Visual Studio: essas tabelas incluem as URLs de domínio para adicionar uma lista de permissões
para que você tenha acesso a todos os componentes e cargas de trabalho desejados.

Usar o Visual Studio e Serviços do Azure: essa tabela inclui as URLs de domínio para adicionar uma lista
de permissões e as portas e protocolos a serem abertos para que você tenha acesso a todos os recursos e
serviços desejados.

7 Observação

Este artigo foi escrito para o Visual Studio no Windows, mas determinadas informações também são
aplicáveis à instalação do Visual Studio para Mac por trás de um firewall ou de um servidor proxy.

Instalar o Visual Studio

URLs para adicionar a uma lista de permissões


Como o Instalador do Visual Studio baixa arquivos de vários domínios e seus servidores de download, aqui estão
as URLs que talvez você deseje adicionar a uma lista de permissões como confiáveis na interface do usuário ou
em seus scripts de implantação.

Domínios da Microsoft

ノ Expand table

Domínio Finalidade

go.microsoft.com Resolução da URL de instalação

aka.ms Resolução da URL de instalação

download.visualstudio.microsoft.com Local de download de pacotes de instalação

download.microsoft.com Local de download de pacotes de instalação

download.visualstudio.com Local de download de pacotes de instalação

dl.xamarin.com Local de download de pacotes de instalação

xamarin-downloads.azureedge.net Local da lista de download dos pacotes do SDK do Android

marketplace.visualstudio.com Local de download de extensões do Visual Studio

*.gallerycdn.vsassets.io Local de download de extensões do Visual Studio


Domínio Finalidade

visualstudio.microsoft.com Local da documentação

learn.microsoft.com Local da documentação

msdn.microsoft.com Local da documentação

www.microsoft.com Local da documentação

*.windows.net Local de conexão

*.microsoftonline.com Local de conexão

*.live.com Local de conexão

github-releases.githubusercontent.com Desenvolvimento em Linux

objects.githubusercontent.com Ferramentas de build do Windows

github.com Git para Windows & Ferramentas de Build do Windows

az837173.vo.msecnd.net Desenvolvimento com o Armazenamento do Azure

Domínios que não são da Microsoft

ノ Expand table

Domínio Instala essas cargas de trabalho

archive.apache.org Desenvolvimento móvel com JavaScript (Cordova)

cocos2d-x.org Desenvolvimento de jogos com C++ (Cocos)

download.epicgames.com Desenvolvimento de jogos com C++ (Unreal Engine)

launcher-public-service- Desenvolvimento de jogos com C++ (Unreal Engine)


prod06.ol.epicgames.com

download.oracle.com Desenvolvimento móvel com JavaScript (SDK do Java)

Desenvolvimento móvel com .NET (SDK do Java)

public-cdn.cloud.unity3d.com Desenvolvimento de jogos com Unity (Unity)

download.unity3d.com Desenvolvimento de jogos com Unity (Unity)

netstorage.unity3d.com Desenvolvimento de jogos com Unity (Unity)

dl.google.com Desenvolvimento móvel com JavaScript (NDK e SDK do Android,


Emulador)

Desenvolvimento móvel com .NET (NDK e SDK do Android, Emulador)

ib-downloads-official.s3.amazonaws.com Desenvolvimento de jogos com C++ (IncrediBuild)

www.incredibuild.com Desenvolvimento de jogos com C++ (IncrediBuild)

incredibuildvs2017i.azureedge.net Desenvolvimento de jogos com C++ (IncrediBuild)

www.python.org Desenvolvimento do Python (Python)

Ciência de dados e aplicativos analíticos (Python)


Domínio Instala essas cargas de trabalho

developerservices2.apple.com Xamarin.iOS provisioning

developer.apple.com Xamarin.iOS provisioning

appstoreconnect.apple.com Xamarin.iOS provisioning

idmsa.apple.com Xamarin.iOS provisioning

akamaized.net Rede de Distribuição de Conteúdo (Akamai Technologies)

developer.arm.com Desenvolvimento do ARM

Usar o Visual Studio e Serviços do Azure

URLs a serem adicionadas a uma lista de permissões e portas e


protocolos a serem abertos
Para certificar-se de que você tem acesso a tudo o que é necessário ao usar o Visual Studio ou Serviços do Azure
por trás de um firewall ou servidor proxy, aqui estão as URLs que devem ser adicionadas a uma lista de
permissões e as portas e protocolos que talvez você deseje abrir.

ノ Expand table

Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição


serviço

URL go.microsoft.com Usada para reduzir as URLs, que, em seguida,


resolução resolvem em URLs mais longas
aka.ms

Start Page vsstartpage.blob.core.windows.net 443 Usada para exibir as Novidades do


Desenvolvedor mostradas na página inicial
(somente Visual Studio 2017)

Start Page vsstartpagenewsfeed.azureedge.net 443 Usada para exibir as Novidades do


Desenvolvedor mostradas na página inicial
(Visual Studio 2019 em diante)

Direcionado targetednotifications-tm.trafficmanager.net 443 Usada para filtrar uma lista global de


Notificação notificações para uma lista aplicável somente
Serviço www.research.net 443 a tipos específicos de cenários de
uso/computadores

Extensão marketplace.visualstudio.com 443 Usada para fornecer notificações quando uma


verificação de extensão instalada tem uma atualização
atualização *.windows.net disponível
*.microsoftonline.com
*.live.com Usada como um local de conexão

Projeto do AI az861674.vo.msecnd.net 443 Usada para configurar novos projetos para


Integração enviar dados de uso para sua conta do
Application Insights registrada

CodeLens codelensprodscus1su0.app. 443 Usada para fornecer informações no editor


codelens.visualstudio.com sobre quando um arquivo foi atualizado pela
última, a linha do tempo de alterações, os
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

itens de trabalho aos quais as alterações estão


associadas, os autores e muito mais

Experimental visualstudio-devdiv-c2s.msedge.net 80 Usada para ativar novos recursos


de recurso experimentais ou alterações de recurso
experimental

Identidade app.vssps.visualstudio.com 443 Usada para exibir o nome do usuário e o


"badge" avatar no IDE
(nome de app.vsspsext.visualstudio.com
usuário e avatar) Usada para garantir que as alterações de
e app.vssps.visualstudio.com configuração atravessem de um computador
Configurações de para outro
roaming ns-sb2-prod-ch1-002.cloudapp.net

az700632.vo.msecnd.net

api.vstsusers.visualstudio.com/profiles/*

Configurações az700632.vo.msecnd.net 443 Usada para desativar extensões que são


Remotas conhecidas por causar problemas no Visual
Studio

Ferramentas do developer.microsoft.com https/443 Usada para cenários de armazenamento de


Windows aplicativos do Windows
dev.windows.com

appdev.microsoft.com

JSON Schema json.schemastore.org http/80 Usada para descobrir e baixar os esquemas


Descoberta schemastoreorg.azurewebsites.net https/443 JSON que o usuário pode usar durante a
edição de documentos JSON
JSON Schema json-schema.org http/80
Definição Usada para obter o esquema de
schema.management.azure.com https/443 metavalidação para JSON
JSON Schema
Dar suporte à Usada para obter o esquema atual para
para modelos de implantação do Azure Resource
Recursos do Manager
Azure

Pacote Npm Skimdb.npmjs.com https/443 Requerido para pesquisar pacotes npm e


descobrir usado para instalação de pacotes de scripts no
Registry.npmjs.org http/80 & lado do cliente em projetos Web
https/443
Api.npms.io https/443

Pacote de Bower Bower.io http/80 Fornece o ícone padrão do pacote de Bower


ícones
bowercache.azurewebsites.net https/443 Fornece a capacidade de pesquisar pacotes de
Pacote de Bower go.microsoft.com http/80 Bower
pequisa Registry.bower.io https/443

NuGet api.nuget.org https/443 Usada para verificar pacotes NuGet assinados.


www.nuget.org
Pacote NuGet nuget.org http/80 & Necessária para pesquisar versões e pacotes
descobrir azuresearch-usnc.nuget.org https/443 NuGet
azuresearch-ussc.nuget.org
licenses.nuget.org
nuget.cdn.azure.cn
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

azuresearch-ea.nuget.org
azuresearch-sea.nuget.org

crl3.digicert.com
crl4.digicert.com
ocsp.digicert.com
cacerts.digicert.com

Informações do api.github.com https/443 Necessária para obter informações adicionais


repositório sobre pacotes de Bower
GitHub

Linters da Web Eslint.org http/80

www.Bing.com

www.coffeelint.org

Criação do api.github.com https/443 Usada para descobrir modelos online de


projeto do raw.githubusercontent.com nosso feed recomendado e de repositórios
Explorador do go.microsoft.com GitHub
Cookiecutter
descoberta pypi.org Usada para criar um projeto de um modelo de
pypi.python.org cookiecutter que requer uma instalação sob
Criação do demanda única de um pacote do Python de
projeto do cookiecutter do PyPI (índice de pacote do
Explorador do Python)
Cookiecutter
criação

Pacote do pypi.org https/443 Fornece a capacidade de pesquisar pacotes de


Python pip
descobrir pypi.python.org
bootstrap.pypa.io Usada para instalar o pip automaticamente se
Pacote do ele estiver ausente
Python go.microsoft.com
gerenciamento Usada para resolver os seguintes novos
modelos de projeto do Python para URLs de
Novo modelo do cookiecutter:
Python – Projeto de classificador
projeto – Projeto de clustering
templates – Projeto de regressão
– PyGame usando PyKinect
– Projeto Pyvot

Web do Office verificationservice.osi.office.net https/443 Usada para validar os manifestos de


add-in suplementos de Web do Office
Manifest
Verificação
Serviço

Suplementos do sharepoint.com https/443 Usada para publicar e testar o SharePoint e os


SharePoint microsoft.com/microsoft-365 Complementos do Office para o SharePoint
Suplementos do microsoftonline.com Online
Office outlook.com

Serviço de teste http/12292 Uma regra de firewall que é criada


do automaticamente para testar suplementos do
Gerenciador de SharePoint com fluxos de trabalho
Fluxo de
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

Trabalho
Host

Estatísticas de vortex.data.microsoft.com https/443 Usada para enviar as estatísticas de


confiabilidade confiabilidade (dados de travamento ou de
coletadas dc.services.visualstudio.com falta de reposta) do usuário à Microsoft. Os
automaticamente despejos de travamento/falta de resposta
e outros reais ainda serão carregados se o Relatório de
CEIP (Programa Erros do Windows estiver habilitado, apenas
de informações estatísticas serão suprimidas;
Aperfeiçoamento Usada para revelar padrões de uso à extensão
da do SDK de Ferramentas do Azure para o Visual
Experiência do Studio e para padrões de uso para
Usuário) ferramentas do SQL para Visual Studio
para o SDK do
Azure
para Ferramentas
do SQL

Visual Studio vortex.data.microsoft.com https/443 Usada para coletar logs de erro e padrões de
CEIP (Programa dc.services.visualstudio.com uso
de visualstudio-devdiv-c2s.msedge.net
Aperfeiçoamento az667904.vo.msecnd.net Usada para rastrear problemas de
da scus-breeziest-in.cloudapp.net congelamento da interface do usuário
Experiência do mobile.events.data.microsoft.com
Usuário) events.data.microsoft.com

PerfWatson.exe

Criação e management.azure.com https/443 Usada para criar sites do Azure ou outros


Gerenciamento management.core.windows.net recursos para dar suporte à publicação de
de aplicativos Web, Azure Functions ou WebJobs
Recursos do
Azure

Recomendações marketplace.visualstudio.com https/443 Usada para verificar a disponibilidade de


de ferramentas de publicação atualizadas. Se
extensão e desabilitada, uma potencial extensão
verificações de recomendada para publicação Web poderá
filmes não ser mostrada

Informações de *.blob.core.windows.net https/443 Usada para atualizar os pontos de


ponto de extremidade usados para a criação de
extremidade de Recursos do Azure para determinados
criação Serviços do Azure. Se desabilitada, as últimas
de Recurso do localizações de ponto de extremidade
Azure atualizadas baixadas ou inseridas são usadas

Depuração *.cloudapp.net 4022 Usada para anexar o depurador remoto a sites


remota e *.azurewebsites.net do Azure. Se desabilitada, a anexação do
Criação de perfil depurador remoto a sites do Azure não
remota de funcionará
Websites do
Azure

Active Directory graph.windows.net https/443 Usado para provisionar novos aplicativos do


Grafo Microsoft Entra. Também usado pelo provedor
de serviço conectado MSGraph do Microsoft
365
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

Verificação de functionscdn.azureedge.net https/443 Usada para verificar as versões atualizadas da


Atualização de CLI do Azure Functions. Se desabilitada, uma
CLI do cópia armazenada em cache (ou a cópia
Verificação carregada pelo componente do Azure
Functions) da CLI será usada

Cordova npmjs.org http/80 & O HTTP é usado para downloads de Gradle


gradle.org https/443 durante o build. O HTTPS é usado para incluir
plug-ins do Cordova nos projetos

Gerenciador de 1. <clusterendpoint> 1. Exemplo: test12.eastus.cloudapp.com


Nuvem Service Fabric 1.https/19080 2. Recupera as assinaturas e recupera/gerencia
2. <management endpoint> 2. https/443 recursos do Azure
Exp. de nuvem geral 3. https/443 3. Recupera assinaturas do Azure Stack
3. <graph endpoint> 4. https/443 4. Gerencia recursos de armazenamento
General Cloud Exp 5. https/443 (exemplo:
4. <storage account endpoint> 6. https/443 mystorageaccount.blob.core.windows.net)
Nós de Armazenamento 7.tcp/dynamic 5. Opção do menu de contexto “Abrir no
5. <Azure portal URLs> Portal” (Abre um recurso no Portal do Azure)
Exp. de nuvem geral 6. Cria e usa cofres de chaves para a
6. <key vault endpoints> depuração de VM (exemplo:
Nós de VM do Azure Resource Manager myvault.vault.azure.net)
7. <PublicIPAddressOfCluster>
Depuração remota do Service Fabric e 7. Aloca dinamicamente o bloco de portas
Rastreamentos de ETW com base no número de nós no cluster e as
portas disponíveis.

Um bloco de portas tentará obter três vezes o


número dos nós com um mínimo de 10
portas.

Para rastreamentos de Streaming, é feita uma


tentativa para obter o bloco de portas de 810.
Se qualquer um dos blocos de portas já
estiver em uso, será feita uma tentativa de
obter o próximo bloco e assim por diante. (Se
o balanceador de carga estiver vazio,
provavelmente serão usadas as portas do 810)

Da mesma forma para depuração, quatro


conjuntos de blocos de portas são reservados:
- connectorPort: 30398,
- forwarderPort: 31398,
- forwarderPortx86: 31399,
- fileUploadPort: 32398

Serviços de 1. RDP 1. rdp/3389 1. Área de Trabalho Remota com VM de


Nuvem Serviços de Nuvem
2. core.windows.net 2. https/443
2. Componente de conta de armazenamento
3. management.azure.com 3. https/443 da configuração de diagnóstico privada
management.core.windows.net
4. https/443 3. Portal do Azure
4. *.blob.core.windows.net
*.queue.core.windows.net 5. https/443 4. 4. Gerenciador de Servidores –
*.table.core.windows.net Armazenamento do Microsoft Azure * é a
6. tcp conta de armazenamento nomeada do
5. portal.azure.com a) 30398 usuário
b) 30400
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

6. <user's cloud service>.cloudapp.net c) 31398 5. 5. Links para abrir o portal / Baixar o


<user's VM>.<region>.azure.com d) 31400 certificado de assinatura / Publicar arquivos de
e) 32398 configurações
f) 32400
6. a) Porta local do conector para depuração
remota para serviço de nuvem e VM
6. b) Porta pública do conector para
depuração remota para serviço de nuvem e
VM
6. c) Porta local do encaminhador para
depuração remota para serviço de nuvem e
VM
6. d) Porta pública do encaminhador para
depuração remota para serviço de nuvem e
VM
6. e) Porta local do carregador de arquivos
para depuração remota para serviço de nuvem
e VM
6. f) Porta pública do carregador de arquivos
para depuração remota para serviço de nuvem
e VM

Service Fabric 1. https/443 1. Documentação


learn.microsoft.com
aka.ms 2. Criar o recurso de cluster
go.microsoft.com
3. O *; é o nome do Azure Key Vault (Exemplo:
2. test11220180112110108.vault.azure.net
vssftools.blob.core.windows.net
Vault.azure.com 4. O * é dinâmico (Exemplo:
Portal.azure.com vsspsextprodch1su1.vsspsext.visualstudio.com)

3. * vault.azure.net

4.
app.vsaex.visualstudio.com
* .vsspsext.visualstudio.com
clouds.vsrm.visualstudio.com
clouds.visualstudio.com
app.vssps.visualstudio.com
* .visualstudio.com

Instantâneo 1. go.microsoft.com 1. https/443 1. Consultar arquivo .json para o tamanho do


Depurador 2. management.azure.com 2. https/443 SKU do serviço de aplicativo
3. *.azurewebsites.net 3. http/80 2. Várias chamadas do RM do Azure
4. *.scm.azurewebsites.net 4. https/443 3. Chamada de aquecimento do site por meio
5. api.nuget.org/v3/index.json 5. https/443 de
6. Endereço IP do Serviço 6. Concord/ 4. Ponto de extremidade Kudu do Serviço de
Remoto/Servidores/FQDN 4022 Aplicativo de destino do cliente
(dependente da 5. Consultar versão da Extensão de Site
versão do Visual publicada em nuget.org
Studio) 6. Depuração remota

Azure Stream Management.azure.com https/443 Usada para exibir, enviar, executar e gerenciar
Analytics trabalhos ASA

HDInsight Usada para navegar em clusters HDI e enviar,


diagnosticar e depurar trabalhos HDI
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

Azure Data Lake *.azuredatalakestore.net https/443 Usada para compilar, enviar, exibir,
*.azuredatalakeanalytics.net diagnosticar e depurar os trabalhos, usada
para navegar em arquivos ADLS, usada para
carregar e baixar arquivos

Empacotar [conta].visualstudio.com https/443 O *.npmjs.org, *.nuget.org e *.nodejs.org são


serviço [conta].*.visualstudio.com necessários somente para determinados
*.blob.core.windows.net cenários de tarefas de build (por exemplo:
registry.npmjs.org instalador de ferramentas do NuGet,
nodejs.org instalador de ferramenta de nós) ou se você
dist.nuget.org desejar usar upstreams públicos com os
nuget.org Feeds. Os outros três domínios são
necessários para a funcionalidade principal do
serviço de empacotamento.

Azure DevOps *.vsassets.io Usado para conectar-se ao Azure DevOps


Services static2.sharepointonline.com Services
dev.azure.com

Barramento de *.servicebus.windows.net ampq/5671 e Usado para criar filas, tópicos e assinaturas.


Serviço do Azure 5672, Também usado para enviar/receber
sbmp/9350- mensagens de/para filas e tópicos do
9354, Barramento de Serviço.
http/80,
https/443

Azure Cosmos *.documents.azure.com https/443 Usado para chamar APIs de banco de dados
DB de documentos principais.

Comunidade de sendvsfeedback2.azurewebsites.net/api https/443 Usado para chamar APIs da Ferramenta de


Desenvolvedores Comentários Developer Community (meus
problemas, pesquisa, votação, comentário,
envio, upload, retomada)

IntelliCode *.intellicode.vsengsaas.visualstudio.com https/443 Usado para chamar APIs do Intellicode

Live Share *.liveshare.vsengsaas.visualstudio.com https/443 Usado para chamar APIs do Live Share

Codespaces do *.online.visualstudio.com https/443 Usado para chamar APIs de Codespaces do


GitHub GitHub

Aquisição registry.npmjs.org https/443 Usado para instalar definições de tipo


automática de TypeScript para fornecer o IntelliSense para
tipo JavaScript bibliotecas JavaScript populares

Serviço de 1. app.vssps.visualstudio.com/apis/ https/443 Licenciamento para ativação online


Licenciamento Licensing/ClientRights
Assinaturas do
Visual Studio 2.
api.subscriptions.visualstudio.microsoft.com/
Me/Entitlements/IDEBenefits

Depurador 1. https/443 1.
vsdebugger.blob.core.windows.net Usado para baixar bits de depurador para
vsdebugger.azureedge.net depuração do .NET Core no Unix/macOS por
SSH
2.
download.visualstudio.com/*/ 2.
onecore.msvsmon.*.zip Usado para baixar bits do depurador para
depuração remota de contêiner do Docker do
Cenário ou Ponto de extremidade DNS Protocolo/Porta Descrição
serviço

3. referencesource.microsoft.com/symbols Windows

4. 3. Usado para a etapa de origem do .NET


symbols.nuget.org/download/symbols Framework

5. visualstudio.com 4.
(Se o usuário aceitar) Usado para baixar
6. msdl.microsoft.com/download/symbols símbolos publicados em nuget.org servidor de
símbolos.

5. (Se o usuário aceitar) Usado para baixar


símbolos ms e binários, também pode ser
necessário para depurar código gerenciado
em despejos

Codespaces do *.online.visualstudio.com https/443 Usado para chamar APIs de Codespaces do


GitHub GitHub

Publicação de *.googleapis.com https/443 Usado para interagir com o serviço Google


aplicativos do play.google.com Play Store para publicar/carregar aplicativos
Xamarin Android accounts.google.com Xamarin Android diretamente do Visual
Studio.

Serviço de data-ai.microsoft.com/search https/443 Usado para fornecer o Serviço de Pesquisa do


Pesquisa do Visual Studio habilitado para IA na caixa de
Visual Studio pesquisa Ctrl+Q

Registro de *.azurecr.io https/443 Acessar registros de contêiner hospedados no


Contêiner do Azure, para configuração de pipelines CICD
Azure

Visual Studio software.xamarin.com https/443 Usado para obter a lista de atualizações


para Mac disponíveis
Updater

relatório de erros nw-umwatson.events.data.microsoft.com https/443 Usado para coletar relatórios de confiabilidade


Visual Studio para falhas, falta de resposta e atrasos
para Mac

Solucionar problemas de erros relacionados à rede


Às vezes, você pode encontrar erros relacionados à rede ou ao proxy ao instalar ou usar o Visual Studio atrás de
um firewall ou servidor proxy. Para obter mais informações sobre as soluções para essas mensagens de erro,
consulte a página Solução de erros relacionados à rede ao instalar ou usar o Visual Studio.

Obter suporte
Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas
relacionados à instalação.

Aqui estão algumas outras opções de suporte:

Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador
do Visual Studio e no IDE do Visual Studio.
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de
Desenvolvedores do Visual Studio .
Use sua conta do GitHub para falar conosco e com outros desenvolvedores do Visual Studio nas
conversas sobre o Visual Studio na comunidade do Gitter .

Conteúdo relacionado
Requisitos de conectividade do Live Share
Criar uma instalação de rede do Visual Studio
Solução de erros relacionados à rede no Visual Studio
Guia do administrador do Visual Studio
Instalar por trás de um firewall ou de um servidor proxy (Visual Studio para Mac)
Solucionar problemas de erros
relacionados à rede ao instalar, atualizar
ou usar o Visual Studio
Artigo • 19/04/2023

Aplica-se a: Visual Studio 2022

Você pode encontrar erros relacionados à rede ou proxy ao instalar, atualizar ou usar o
Visual Studio por trás de um firewall, um servidor proxy ou em um computador cliente
que não tenha acesso à Internet. Este artigo fornece resoluções para alguns cenários
comuns desses problemas.

Erro "Autorização de proxy necessária"


Esse erro geralmente ocorre quando os usuários se conectam à Internet por meio de um
servidor proxy. Em seguida, o servidor proxy bloqueia as chamadas que o Visual Studio
faz para alguns recursos de rede.

Solução
Para resolve esse problema, experimente estas etapas:

1. Reinicie o Visual Studio. Uma caixa de diálogo de autenticação de proxy deve ser
exibida. Insira suas credenciais quando solicitado na caixa de diálogo.

2. Se reiniciar o Visual Studio não resolver o problema, pode ser porque o servidor
proxy não solicita credenciais para http://go.microsoft.com endereços, mas o faz
para *.visualStudio.microsoft.com endereços. Para esses servidores, adicione as
seguintes URLs a uma lista de permissões para desbloquear todos os cenários de
entrada no Visual Studio:

*.windows.net
*.microsoftonline.com

*.visualstudio.microsoft.com
*.microsoft.com

*.live.com

3. Recomendamos que você remova o http://go.microsoft.com endereço da lista de


permissões. A remoção do endereço permite que a caixa de diálogo de
autenticação de proxy apareça para o http://go.microsoft.com endereço e os
pontos de extremidade do servidor quando o Visual Studio é reiniciado.

Ou se você quiser usar suas credenciais padrão com seu proxy, siga estas etapas:

1. Encontre devenv.exe.config (o arquivo de configuração do devenv.exe) em:

Visual Studio 2019: %ProgramFiles%\Microsoft Visual


Studio\2019\Enterprise\Common7\IDE ou %ProgramFiles(x86)%\Microsoft
Visual Studio\2019\Enterprise\Common7\IDE.
Visual Studio 2022: %ProgramFiles%\Microsoft Visual
Studio\2022\Enterprise\Common7\IDE ou %ProgramFiles(x86)%\Microsoft
Visual Studio\2022\Enterprise\Common7\IDE.

2. No arquivo de configuração, localize o <system.net> bloco e adicione este código:

XML

<defaultProxy enabled="true" useDefaultCredentials="true">


<proxy bypassonlocal="True"
proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>

Você deve inserir o endereço proxy correto para sua rede em proxyaddress="
<http://<yourproxy:port#> .

7 Observação

Para obter mais informações, consulte as <páginas elemento defaultProxy>


(Configurações de Rede) e <elemento proxy> (Configurações de Rede).

Erro "Desconectado do Visual Studio" ao tentar


relatar um problema
Esse erro geralmente ocorre quando um usuário se conecta à Internet por meio de um
servidor proxy. Em seguida, o servidor proxy bloqueia as chamadas que o Visual Studio
faz para alguns recursos de rede.

Solução
Para resolver esse problema, siga estas etapas:
1. Encontre feedback.exe.config (o arquivo de configuração do feedback.exe) em:
%ProgramFiles(x86)%\Microsoft Visual Studio\Installer ou
%ProgramFiles%\Microsoft Visual Studio\Installer.

2. No arquivo de configuração, marcar se o código a seguir está presente. Se o


código não estiver presente, adicione-o antes da última </configuration> linha.

XML

<system.net>
<defaultProxy useDefaultCredentials="true" />
</system.net>

Erro "A conexão subjacente foi fechada"


Se você estiver usando o Visual Studio em uma rede privada que tenha um firewall,
talvez o Visual Studio não seja capaz de se conectar a alguns recursos de rede. Esses
recursos podem incluir Azure DevOps Services para serviços de entrada e licenciamento,
NuGet e Azure. Se o Visual Studio não se conectar a um desses recursos, você poderá
ver a seguinte mensagem de erro:

A conexão subjacente foi fechada: ocorreu um erro inesperado no envio.

O Visual Studio usa o protocolo TLS (Transport Layer Security) 1.2 para se conectar aos
recursos de rede. Dispositivos de segurança em algumas redes privadas bloqueiam
determinadas conexões de servidor quando o Visual Studio usa o TLS 1.2.

Solução
Habilite as conexões adicionando essas URLs de domínio a uma lista de permissões.

Erro "Falha ao analisar a ID do processo pai"


Você pode encontrar essa mensagem de erro ao usar um bootstrapper do Visual Studio
e um arquivo response.json em uma unidade de rede. A origem do erro é o UAC
(Controle de Conta de Usuário) no Windows.

É por isso que esse erro pode acontecer: uma unidade de rede mapeada ou um
compartilhamento UNC está vinculado ao token de acesso de um usuário. Quando o
UAC está habilitado, dois tokens de acesso do usuário são criados: um com acesso de
administrador e outro sem acesso de administrador. Quando uma unidade de rede ou
compartilhamento é criado, o token de acesso atual do usuário é vinculado a ele. Como
o bootstrapper deve ser executado como administrador, ele não poderá acessar a
unidade de rede ou compartilhar se a unidade ou o compartilhamento não estiver
vinculado a um token de acesso do usuário que tenha acesso ao administrador.

Solução
Para resolve esse problema, use o net use comando ou altere a configuração de
Política de Grupo UAC. Para obter mais informações sobre essas soluções alternativas e
como implementá-las, confira:

As unidades mapeadas não estão disponíveis a partir de um prompt elevado


quando o UAC é configurado como "Solicitar credenciais" no Windows
Os programas podem não conseguir acessar alguns locais de rede depois de ativar
o Controle da Conta de Usuário nos sistemas operacionais Windows

O produto falha ao instalar ou atualizar porque


as permissões de compartilhamento de rede
não estão configuradas corretamente
Verifique se a conta que executa a instalação ou a atualização tem acesso suficiente aos
compartilhamentos de rede.

ノ Expandir a tabela

Problema Solução

A conta de Se o usuário tiver permissões de administrador no computador e estiver


usuário não instalando ou atualizando de um layout, você precisará garantir que as ACLs
pode acessar (permissões de compartilhamento de rede) estejam configuradas para conceder
arquivos. aos usuários acesso de leitura antes que o local da rede seja compartilhado.

A conta do Às vezes, a instalação ou atualização é executada usando a conta do sistema em


sistema não vez de uma conta de usuário. Isso normalmente acontece quando as atualizações
pode acessar de administrador são usadas para manter o computador atualizado e seguro.
arquivos. Você precisará garantir que as contas do sistema dos computadores cliente
tenham permissões de leitura para o compartilhamento de arquivos de rede.
Você pode fazer isso criando um grupo do Active Directory que contém as
contas do computador que precisam de acesso ao compartilhamento e
concedendo a esse grupo do AD acesso ao compartilhamento.

Suporte ou solução de problemas


Se a instalação do Visual Studio falhar, consulte Solucionar problemas de instalação e
atualização do Visual Studio para obter diretrizes passo a passo.

Mais opções de suporte:

Oferecemos uma opção de suporte para chat de instalação (somente inglês)


para problemas relacionados à instalação.
Relatar problemas de produto para nós por meio da ferramenta Relatar um
problema que aparece no Instalador do Visual Studio e no IDE do Visual Studio. Se
você for um administrador de TI e não tiver o Visual Studio instalado, você poderá
enviar comentários Administração de TI aqui .
Sugira um recurso, acompanhe problemas de produto e encontre respostas no
Visual Studio Developer Community .

Referências
Solucionar problemas de layout de rede ou instalação offline
Instalar e usar o Visual Studio por trás de um firewall ou servidor proxy
Guia de administrador do Visual Studio

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Modelos Administrativos (ADMX)
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os administradores de TI nas organizações podem querer controlar determinados


aspectos do comportamento do Visual Studio para conseguir consistência,
conformidade ou compatibilidade nos computadores cliente. Uma maneira fácil de
atingir esse nível de controle é configurar e, em seguida, implantar as configurações de
política de grupo nos computadores cliente. As políticas do Visual Studio são
consolidadas no Modelo ADMX do Visual Studio em diferentes categorias, tornando-
as facilmente compreensíveis e detectáveis.

A abordagem recomendada para descobrir e configurar as políticas do Visual Studio em


sua organização é usar o catálogo de configurações do Microsoft Intune. Abordagens
alternativas são descritas abaixo.

As configurações de política de grupo do Visual Studio contidas no arquivo ADMX são


para todos os computadores e usuários, o que significa que elas pretendem abranger
todas as instâncias, versões e SKUs aplicáveis instalados do Visual Studio. Às vezes, uma
política é específica para uma determinada versão do Visual Studio e o modelo chama
isso claramente.

Categorias de políticas do Visual Studio


Há quatro categorias principais de políticas do Visual Studio incluídas nos ADMX
(Modelos Administrativos do Visual Studio):

Comentários – controla o comportamento do recurso Enviar um Smiley.


Instalar e atualizar – controla o comportamento de aquisição de produtos.
Live Share – controla as configurações de usuários e hosts.
Privacidade – controla as configurações do Intellicode e do Programa de
Aperfeiçoamento da Experiência do Usuário .
Túnel do Desenvolvedor - controla a funcionalidade de teste

Adquirindo o Modelo Administrativo do Visual


Studio (ADMX)
O Modelo Administrativo do Visual Studio (ADMX) pode ser baixado no Centro de
Download da Microsoft. O caminho de instalação padrão é
C:\Windows\PolicyDefinitions , um local que os torna instantaneamente visíveis para a

ferramenta Editor de Política de Grupo (gpedit.exe), mas você pode instalá-los em


qualquer lugar. Os modelos são atualizados periodicamente, portanto, se você usá-los,
recomendamos que você confira novamente de forma periódica para obter as
atualizações mais recentes.

Implantando as políticas
Para ambientes conectados à nuvem gerenciados pelo Microsoft Intune, você tem duas
opções para configurar e implantar as políticas do Visual Studio.

1. Você pode acessar as políticas do Visual Studio por meio do catálogo de


configurações.
2. Você também pode importar os Modelos Administrativos do Visual Studio (ADMX)
em seus Dispositivos>Perfis de configuração e, em seguida, criar um Perfil de
configuração personalizado com base nos arquivos ADMX importados. Os
Modelos Administrativos do Visual Studio (ADMX) dependem do modelo
administrativo do Windows (Windows.admx), portanto, importe-o manualmente
também.

Para computadores em uma rede corporativa, você pode usar o Editor de Política de
Grupo ou o Gerenciador de Ponto de Extremidade da Microsoft (SCCM) para implantar
as políticas do Visual Studio.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Confira também
Guia de Administradores do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Criar uma instalação de rede do Visual Studio
IDs de carga de trabalho e de componente do Visual Studio
Configurar políticas para implantações
empresariais do Visual Studio
Artigo • 27/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode configurar determinados aspectos da implantação e do comportamento de


atualização do Visual Studio por meio de políticas. Algumas dessas configurações são
específicas para uma instância instalada do Visual Studio, e algumas das configurações
podem ser globais e se aplicar a todas as instâncias do Visual Studio no computador
cliente. Os comportamentos configuráveis incluem:

Se usuários sem permissões de administrador tiverem autorização para atualizar


ou modificar o Visual Studio
Se os componentes sem suporte devem ser removidos do computador
Quando alguns pacotes compartilhados com outras versões ou instâncias estão
instalados
Onde e se os pacotes são armazenados em cache
Se as atualizações de administrador devem ser habilitadas e como elas devem ser
aplicadas
Quais canais de atualização estão disponíveis e como eles são apresentados ao
cliente
Como as notificações aparecem ou não aparecem

Você pode usar o catálogo de configurações do Microsoft Intune ou importar nosso


ADMX de Modelos Administrativos do Visual Studio para ferramentas herdadas, como o
editor de Políticas de Grupo, para configurar e implantar as políticas globais para todos
os computadores em toda a sua organização. Você também pode definir valores do
registro diretamente no computador cliente. Comportamentos por instância costumam
ser controlados usando opções de linha de comando no computador cliente.

Chaves do Registro
Há vários locais no registro em que você pode definir essas políticas. O Visual Studio
procura sequencialmente para verificar se políticas empresariais foram definidas. Assim
que um valor de política é descoberto na ordem abaixo, as chaves restantes são
ignoradas.

1. HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\VisualStudio\Setup
2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup
3. HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\Setup (em
sistemas operacionais de 64 bits)

Alguns valores de registro são definidos automaticamente na primeira vez em que são
usados, caso ainda não estejam definidos. Isso garante que as instalações subsequentes
usem os mesmos valores. Esses valores são armazenados na segunda chave do Registro,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup .

Você pode definir os valores de registro a seguir:

Controle do comportamento de instalação,


download e atualização
As configurações do Registro nesta seção controlam como e onde o produto do Visual
Studio é baixado e instalado no computador cliente.

ノ Expand table

Nome Tipo Default Descrição

AllowStandardUserControl REG_DWORD 0 Permite que usuários


sem autorização de
administrador
gerenciem suas
instalações do Visual
Studio: se definido como
1, os usuários sem
permissões de
administrador poderão
atualizar ou reverter uma
atualização sem precisar
fornecer uma senha de
administrador. Se
definido como 2, os
usuários sem permissões
de administrador
poderão usar todas as
funcionalidades do
Instalador do Visual
Studio, incluindo
modificar e instalar na
guia Disponível.

CachePath REG_SZ ou %ProgramData% Manifesto do pacote e


REG_EXPAND_SZ \Microsoft caminho do cache de
conteúdo: o Instalador
Nome Tipo Default Descrição

\VisualStudio do Visual Studio impõe


\Pacotes um limite de 50
caracteres para o
caminho desse diretório
de cache de
armazenamento. Para
saber mais, confira a
página Desabilitar ou
mover o cache do pacote

KeepDownloadedPayloads REG_DWORD 1 Manter os conteúdos do


pacote após a instalação:
desabilitar a política
remove os conteúdos do
pacote armazenados em
cache para a instância
que você reparar ou
modificar. Você pode
alterar o valor a qualquer
momento. Para saber
mais, confira a página
Desabilitar ou mover o
cache do pacote.

SharedInstallationPath REG_SZ ou %ProgramFiles(x86)% Caminho de instalação


REG_EXPAND_SZ \Microsoft Visual compartilhado: o
Studio diretório em que alguns
\Compartilhado pacotes compartilhados
entre versões de
instâncias do Visual
Studio estão instalados.
Você pode alterar o valor
a qualquer momento,
mas isso afetará apenas
instalações futuras. Todos
os produtos já instalados
no local antigo não
devem ser movidos ou
poderão não funcionar
corretamente. O
Instalador do Visual
Studio impõe um limite
de 150 caracteres para o
caminho.

BackgroundDownloadDisabled REG_DWORD 0 Desabilitar o download


de atualizações
automaticamente: se
Nome Tipo Default Descrição

definido como 1, a
instalação não poderá
baixar atualizações
automaticamente para
todos os produtos
instalados do Visual
Studio. Você pode alterar
o valor a qualquer
momento.

RemoveOos REG_DWORD 0 Remover componentes


fora do suporte durante
as atualizações: se
definido como 1, o
instalador do Visual
Studio removerá todos os
componentes instalados
que fizeram a transição
para um estado sem
suporte durante todas as
atualizações
subsequentes. Se
definido como 0 ou
estiver totalmente
ausente, o
comportamento
removeOos respeitará
outros locais em que isso
pode ser configurado,
como o parâmetro de
linha de comando ou a
caixa de diálogo
Configurações de
Atualização. Para saber
mais, confira a postagem
no blog Remover
componentes fora do
suporte . Essa
funcionalidade requer
que o instalador do
Visual Studio 2022 versão
17.4 seja instalado no
computador cliente.

DisableRollback REG_DWORD 0 Desabilitar a capacidade


de reverter ou desfazer
uma atualização do
Visual Studio: se definida
Nome Tipo Default Descrição

como 1, os usuários não


poderão acessar a
capacidade de reversão,
o que impedirá o Visual
Studio de reverter a
atualização mais recente
que pode conter uma
correção de segurança.
Se definido como 0 ou
totalmente ausente, os
usuários poderão acessar
o recurso de reversão no
Visual Studio e poderão
desfazer uma atualização
e reverter suas instâncias
do Visual Studio para a
versão instalada
anteriormente. Para saber
mais, confira a postagem
no blog .

HideAvailableTab REG_DWORD 0 Ocultar a guia Disponível


do instalador: se definido
como 1, os
administradores poderão
ocultar a guia Disponível
do instalador, o que pode
impedir que os usuários
da organização instalem
acidentalmente o
produto errado.

DisableSound REG_DWORD 0 Desabilitar sons no


instalador: se definido
como 1, os usuários
poderão desabilitar sons
no Instalador do Visual
Studio, o que impedirá
qualquer indicação de
áudio quando uma
operação do instalador
for concluída ou quando
houver um erro. Isso
inclui instalar, atualizar,
modificar e muitas outras
operações feitas pelo
instalador ou quaisquer
caixas de diálogo de erro
Nome Tipo Default Descrição

ao tentar a operação
solicitada. Se definido
como 0 ou ausente
inteiramente, os usuários
poderão reabilitar sons
no instalador. Para obter
mais informações, confira
a postagem do blog
DesabilitarSom .

) Importante

Se você alterar a política do Registro CachePath após qualquer instalação, deverá


mover o pacote de cache para o novo local e verificar se ele está protegido para
que SYSTEM e Administrators tenham Controle total e que Everyone tenha acesso
de Leitura. A falha ao mover o cache existente ou protegê-lo pode causar
problemas com instalações futuras.

Controlando atualizações de administrador


As configurações do Registro nesta seção controlam se e como as atualizações de
administrador são aplicadas ao computador cliente.

ノ Expand table

Nome Tipo Default Descrição

AdministratorUpdatesEnabled REG_DWORD 0 Habilitar atualizações de


administrador: permite que
as atualizações do
administrador sejam aplicadas
ao computador cliente. Se
esse valor estiver ausente ou
estiver definido como 0, as
atualizações do administrador
serão bloqueadas. Um valor 1
disponibiliza o computador
cliente para atualizações
implantadas por meio do
canal WSUS/SCCM. O valor
recomendado de 2
disponibiliza o computador
cliente para receber
Nome Tipo Default Descrição

atualizações implantadas por


meio do canal WSUS/SCCM
ou do canal do Gerenciador
do Windows Update para
Empresas/Intune/Microsoft
Endpoint. Essa chave do
Registro é para o usuário
administrador. Para obter
mais informações, confira
Habilitar Atualizações de
Administrador.

AdministratorUpdatesNotifications REG_DWORD 0 Permite que os


administradores notifiquem
os usuários solicitando que
fechem o Visual Studio para
desbloquear a atualização do
administrador: se o Visual
Studio estiver aberto ou em
uso, a atualização do
administrador não poderá ser
aplicada. Ao definir essa chave
do Registro, o administrador
pode fazer com que um
pequeno pop-up com um
prompt de notificação do
sistema do Windows solicite
que o usuário feche o Visual
Studio e salve seu trabalho
para que a atualização
pendente possa ser aplicada.
Essa chave do Registro é para
o usuário administrador. Para
obter mais informações,
consulte o comunicado da
postagem no blog .

AdministratorUpdatesOptOut REG_DWORD 0 Recusar atualizações de


administrador: indica que o
usuário não deseja receber
atualizações de administrador
para o Visual Studio. A
ausência do valor de registro
ou um valor definido de 0
significa que o usuário do
Visual Studio deseja receber
atualizações de administrador
para o Visual Studio. Essa
Nome Tipo Default Descrição

política é para o usuário


desenvolvedor configurar se
tiver permissões de
administrador na máquina
cliente.

Observe que a chave


AdministratorUpdatesOptOut
para codificar a preferência do
usuário é priorizada sobre a
chave
AdministratorUpdatesEnabled,
que codifica a intenção do
administrador de TI. Se
AdministratorUpdatesOptOut
estiver definido como 1, a
atualização será bloqueada no
cliente, mesmo que a chave
AdministratorUpdatesEnabled
também esteja definida como
1. Essa ação pressupõe que os
administradores de TI possam
acessar e monitorar quais
desenvolvedores optam por
não participar e que as duas
partes possam discutir quais
necessidades são mais
importantes. Os
administradores de TI sempre
podem alterar qualquer chave
sempre que quiserem.

UpdateConfigurationFile REG_SZ ou %ProgramData% Caminho personalizado para


REG_EXPAND_SZ \Microsoft o arquivo de configuração de
\VisualStudio atualização: o caminho para o
\updates.config arquivo no cliente que pode
ser usado para configurar as
Atualizações Administrativas.
Por padrão, esse arquivo não
existe e a política não está
definida. Se você optar por
adicionar essa política ao
computador cliente e definir
um local de arquivo de
configuração personalizado, a
atualização do Administrador
procurará esse arquivo; se o
arquivo não existir, uma
Nome Tipo Default Descrição

exceção será gerada e a


atualização falhará. Para obter
mais informações, confira
Métodos para configurar uma
atualização de administrador.

) Importante

Os computadores cliente conectados à nuvem gerenciados pelo Intune devem ser


configurados para o Windows Update for Business e ter a opção "Habilitar
atualizações para outros produtos da Microsoft" ativada para poder receber
atualizações de administrador do Visual Studio por meio do canal Windows Update
for Business do Microsoft Update.

Configurar o local de origem para atualizações


As configurações nesta seção permitem que um administrador personalize e controle
quais canais de atualização estão disponíveis e como eles aparecem para clientes em
uma organização corporativa. Para obter informações sobre quais são as configurações
de atualização e como elas funcionam, confira a documentação Configurar o local de
origem das atualizações. Essa funcionalidade requer que o cliente esteja usando o
instalador do Visual Studio 2022 e o layout esteja usando uma versão de inicializador
2019 que foi enviada a partir de 10 de novembro de 2021. As diretrizes de como
habilitar isso estão disponíveis na documentação Como obter o instalador do Visual
Studio 2022 em seus computadores cliente por meio de um layout do Visual Studio
2019.

As chaves nesta seção se aplicam somente ao caminho do registro


Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup

ノ Expand table

Nome Tipo Descrição

Channels Key Caminho da subchave para armazenar informações do canal de


layout personalizado. O nome dessa chave é considerado o nome
do canal e é o que aparece no menu suspenso Atualizar canal. O
valor ChannelURI deve estar presente na subchave Channels .

DisabledChannels Key Caminho da subchave para suprimir canais e impedir que apareçam
na caixa de diálogo Atualizar canal. Se o canal for definido aqui
Nome Tipo Descrição

(juntamente com o valor ChannelURI ), ele será filtrado para fora da


caixa de diálogo.

ChannelURI REG_SZ O channelURI deve ser adicionado à lista de valores de canal de


atualização adicionando à seção Channels ou suprimido da lista de
canais de atualização adicionando à seção de registro
DisabledChannels . Para canais hospedados pela Microsoft, o
channelURI é "https://aka.ms/vs/16/release/channel" ou
"https://aka.ms/vs/16/pre/channel". Para layouts, esse valor precisa
apontar para o ChannelManifest.json do layout. Confira os
exemplos abaixo.

Description REG_SZ Uma descrição personalizada de duas linhas do canal. Se você já


instalou a partir de um layout, o padrão da interface do usuário de
configurações de atualização é "Canal privado" e você pode alterá-
lo usando esta descrição.

Abaixo estão alguns exemplos de arquivo de registro que ilustram como um


administrador de TI pode querer personalizar a Interface do Usuário de Configurações
de Atualização.

O primeiro exemplo de registro pode ser usado em uma situação em que o cliente
tenha instalado anteriormente de um layout de rede localizado em
\\vslayoutserver3\vs\2019_Enterprise . Conforme mencionado anteriormente, o Visual

Studio usa como padrão o nome do canal para esse layout como "Canal Privado". Veja
como você personalizaria o nome e a descrição do canal para este layout.

example

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\Channels]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\Channels\More
meaningful name of my existing layout]
"channelUri"="\\\\vslayoutserver3\\vs\\2019_Enterprise\\ChannelManifest.json
"
"Description"="Dev Tools based on VS 2019 16.9.Spring.2020 servicing
baseline"

Confira como adicionar mais algumas entradas de layout para outros canais de
atualização personalizados que estão disponíveis como uma fonte para atualizações e
também como suprimir a exibição do canal de visualização.

example
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\Channels]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\Channels\Spring
2021 dev toolset]
"channelUri"="\\\\new2019layoutserver\\share\\new2019layout\\ChannelManifest
.json"
"Description"="Dev Tools based on VS 2019 16.11.Spring.2021 servicing
baseline"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\Channels\Next gen
dev tools using VS 2022 toolset]
"channelUri"="\\\\vs2022Layoutserver\\share\\2022Enterprise\\ChannelManifest
.json"
"Description"="Developer Tools based on the VS 2022 17.0.Winter.2021 LSTC
servicing baseline"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\DisabledChannels\P
review]
"channelUri"="https://aka.ms/vs/16/pre/channel"

Notificações de controle no IDE do Visual


Studio
Conforme descrito anteriormente, o Visual Studio verifica o local do qual foi instalado,
tal como um compartilhamento de rede ou a Internet, para ver se há atualizações
disponíveis. Quando uma atualização está disponível, o Visual Studio notifica o usuário
com um ícone de notificação no canto inferior direito da janela.

Se não quiser que os usuários finais sejam notificados sobre atualizações, desabilite as
notificações. (Por exemplo, você talvez queira desabilitar as notificações se fornecer
atualizações por meio de um mecanismo de distribuição de software central.)

Já que o Visual Studio 2022 armazena as entradas do Registro em um Registro privado,


você não pode editar diretamente o Registro da maneira típica. No entanto, o Visual
Studio inclui um utilitário vsregedit.exe que você pode usar para alterar as
configurações do Visual Studio. Você pode desativar as notificações com o seguinte
comando:
shell

vsregedit.exe set "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"


HKCU ExtensionManager AutomaticallyCheckForUpdates2Override dword 0

Você pode reativar as notificações com o seguinte comando:

shell

vsregedit.exe set "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"


HKCU ExtensionManager AutomaticallyCheckForUpdates2Override dword 1

Para voltar ao comportamento padrão, você também pode excluir o valor com o
seguinte comando:

shell

vsregedit.exe remove "c:\Program Files\Microsoft Visual


Studio\2022\Enterprise" HKCU ExtensionManager
AutomaticallyCheckForUpdates2Override

Depois de executar o comando para alterar as configurações do Visual Studio, inicie o


Visual Studio. Todas as instâncias já em execução do Visual Studio não alterarão o
comportamento até que o Visual Studio seja desligado e reiniciado. Como outra opção,
você pode reiniciar o computador para garantir que a configuração entre em vigor.

Você pode confirmar a configuração com o seguinte comando:

shell

vsregedit.exe read "c:\Program Files\Microsoft Visual


Studio\2022\Enterprise" HKCU ExtensionManager
AutomaticallyCheckForUpdates2Override dword

Se o valor não existir (essa é a condição padrão), o comando anterior indicará que ele
falhou em ler o valor. Se você definir o valor, o comando anterior refletirá o valor na
configuração do Visual Studio (ele indicará 0 ou 1 ou qualquer valor definido – apenas 0
ou 1 são esperados).

(Verifique se você substituiu o diretório para coincidir com a instância instalada que
você deseja editar.)

 Dica
Use vswhere.exe para localizar uma instância específica do Visual Studio em uma
estação de trabalho cliente.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar o Visual Studio
Guia do administrador do Visual Studio
Aplicar atualizações de administrador
Desabilitar ou mover o cache do pacote
Usar parâmetros de linha de comando para instalar o Visual Studio
Habilitar atualizações do administrador
no Visual Studio com o Microsoft
Endpoint Configuration Manager
Artigo • 04/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Sempre que uma nova atualização do Visual Studio for lançada, a Microsoft publicará
um pacote de atualização do administrador do Visual Studio nos servidores do
Microsoft Update. O administrador pode distribuir esse pacote de atualização do
administrador do Visual Studio por meio do WSUS (Windows Server Update Services)
usando o SCCM (Configuration Manager) ou por meio do WUfB (Windows Update para
Empresas) usando o Microsoft Endpoint Manager (Intune ) . O agente do Windows
Update nos computadores cliente reconhecerá que a atualização está disponível e
iniciará a atualização.

Usar o Microsoft Endpoint Manager (Intune)


para atualizar os dispositivos conectados à
nuvem usando as atualizações do
administrador do Visual Studio
O Microsoft Endpoint Manager pode ser usado para configurar as políticas de
dispositivo em toda a organização, como registrar os dispositivos no WUfB (Windows
Update para Empresas) e habilitar o MUUpdateServicePolicy. Os dispositivos
configurados dessa maneira estarão automaticamente qualificados para receber e
instalar as atualizações do administrador de segurança do Visual Studio aplicáveis por
meio do canal "Receber atualizações para outros produtos da Microsoft" no Windows
Update.

Habilitar o SCCM (Configuration Manager) para


receber e distribuir atualizações do
administrador do Visual Studio
O Configuration Manager (SCCM) pode ser definido para sincronizar e baixar as
atualizações do administrador do Visual Studio do catálogo do WSUS (Windows Server
Update Services). O SCCM pode implantar as atualizações do administrador em
computadores cliente do Visual Studio em toda a organização.

Para executar o SCCM (Configuration Manager), você precisará de uma versão


licenciada atual do Windows Server executando o Microsoft Endpoint
Configuration Manager (branch atual) e o WSUS (Windows Server Update
Services). Você não pode usar o próprio WSUS para implantar essas atualizações;
ele deve ser usado em conjunto com o SCCM.

O SCCM deve estar configurado para receber notificações quando os pacotes de


atualização do administrador do Visual Studio estiverem disponíveis. Para fazer
isso, use as etapas a seguir e, para obter mais informações, confira Introdução às
atualizações de software no SCCM (Microsoft Endpoint Configuration Manager).

1. No console do SCCM, selecione Administração (canto inferior esquerdo) e,


em seguida, Configuração do Site (meio à esquerda), selecione Sites e
escolha o servidor do site.
2. Na faixa de opções da guia Página Inicial na parte superior, no botão de
grupo Configurações, selecione Configurar Componentes do Site e, em
seguida, escolha Ponto de Atualização de Software.
3. Na caixa de diálogo Propriedades do Componente do Ponto de Atualização
de Software:
Na guia Produtos, na hierarquia Ferramentas para Desenvolvedores,
Runtimes e Redistribuíveis, escolha as versões do Visual Studio que você
deseja sincronizar.
Na guia Classificações, verifique se "Atualizações de segurança", "Feature
Packs" e "Atualizações" estão selecionados.
4. Sincronize as atualizações de software com o servidor WSUS escolhendo a
Biblioteca de Software (parte inferior esquerda) e, em seguida, na faixa de
opções da guia Página Inicial na parte superior, selecionando o botão
Sincronizar Atualizações de Software. A sincronização de Atualizações de
Software tornará visíveis as atualizações do administrador do Visual Studio
disponíveis e poderá ser implantada no console do SCCM.

Por padrão, somente as atualizações do administrador de segurança do Visual


Studio são publicadas no WSUS. Se você quiser implantar atualizações do
administrador de qualidade ou recursos por meio do SCCM, precisará importá-las
manualmente do Catálogo da Microsoft e implantá-las.

Depois de executar essas etapas, você pode usar os recursos de gerenciamento de


atualização de software do SCCM (Configuration Manager) para implantar as
atualizações do administrador do Visual Studio. Os diferentes tipos e características das
atualizações de administrador do Visual Studio são descritos na aplicação de
atualizações de administrador, que fornece diretrizes sobre como e quando elas devem
ser distribuídas em toda a sua organização.

Para obter mais informações sobre a funcionalidade e as opções do SCCM


(Configuration Manager), confira Implantar atualizações de software no SCCM
(Microsoft Endpoint Configuration Manager).

Habilitar (ou desabilitar) a capacidade dos


computadores cliente de receber atualizações
do administrador do Visual Studio
Os computadores cliente deverão estar configurados corretamente para reconhecer e
aceitar atualizações do administrador do Visual Studio por meio do SCCM ou Intune.

Codificar a intenção do administrador nos computadores


cliente
Os computadores cliente devem estar habilitados para receber as atualizações do
administrador do Visual Studio. Esta etapa é necessária para garantir que as atualizações
não sejam enviadas de maneira não intencional ou acidentalmente para computadores
cliente desavisados.

A política AdministratorUpdatesEnabled, implementada por meio de uma chave do


registro, foi projetada para o administrador codificar a intenção de administrador. Para
obter detalhes sobre como definir essa política, veja Configurar políticas para
implantações corporativas. É necessário o acesso do administrador no computador
cliente para criar e definir o valor dessa política.

Garantir que a conta tenha os privilégios e as permissões


certas
Por padrão, a conta SYSTEM do computador cliente baixará e instalará as atualizações
do administrador do Visual Studio. Portanto, a conta SYSTEM deve ter privilégios
administrativos no computador. Além disso, dependendo da localização na qual o
cliente está configurado para obter as fontes de produto, a conta SYSTEM também deve
ter acesso aos pontos de extremidade do Visual Studio na Internet ou ter permissões
suficientes para ler do local de layout de rede para baixar os bits de produto
atualizados.
7 Observação

Uma maneira fácil de conceder permissões às contas SYSTEM dos computadores


cliente para que eles possam acessar um compartilhamento de rede é conceder
permissões ao grupo "Computadores de Domínio" do AD.

Códigos e condições de erros


Os códigos de erro para atualizações do Administrador do Visual Studio são definidos
na página Aplicar Atualizações do Administrador.

Utilitário do Detector de Cliente do Visual Studio


O Utilitário do Detector de Cliente do Visual Studio deve ser instalado nos
computadores cliente para que as atualizações do administrador do Visual Studio sejam
reconhecidas e recebidas corretamente. Esse utilitário é usado para determinar a
localização das instâncias do Visual Studio no disco.

O Utilitário do Detector de Clientes do Visual Studio está incluído e instalado com todas
as atualizações de produtos do Visual Studio lançadas em 12 de maio de 2020 ou após
essa data. Ele está incluído como um pré-requisito com todas as atualizações de
administrador do Visual Studio e também está disponível no Catálogo do Microsoft
Update para implantar e instalar de forma independente.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Você pode usar os seguintes métodos para fornecer comentários sobre as atualizações
do administrador do Visual Studio ou informar sobre problemas que afetam as
atualizações:

Faça perguntas à comunidade no Fórum de P e R de Configuração do Visual


Studio.
Acesse a página de suporte do Visual Studio e verifique se o problema está
listado nas perguntas frequentes.
Forneça comentários sobre recursos ou relate um problema à equipe do Visual
Studio em relação à sua experiência.
Entre em contato com o gerente de contas técnicas da Microsoft na sua
organização.

Confira também
Para saber mais, explore os seguintes recursos adicionais:

Aplicar atualizações de administrador


Guia do administrador do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Instalar o Visual Studio
Atualizar o Visual Studio
Perguntas frequentes do Catálogo do Microsoft Update
O que é o Windows Update para Empresas
Conceitos básicos do Intune
Documentação do SCCM (Microsoft Endpoint Configuration Manager)
Importar atualizações do Catálogo da Microsoft no Configuration Manager
Documentação do WSUS (Windows Server Update Services)
Aplicar atualizações do administrador
que usam o SCCM ou Intune (Microsoft
Endpoint Manager)
Artigo • 28/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este documento descreve tipos e características diferentes das atualizações do


administrador do Visual Studio. Neste artigo, você encontrará informações sobre como
e quando eles devem ser distribuídos em toda a organização, quais opções de
configuração estão disponíveis e como exibir relatórios e solucionar problemas.

Pré-requisitos
Para obter mais informações sobre os pré-requisitos para usar atualizações de
administrador, confira Habilitar atualizações de administrador.

Lembre-se de que as atualizações de administrador são atualizações, não instalações


iniciais. Elas presumem que o Visual Studio já esteja instalado no computador. Em
outras palavras, a aplicação de atualizações do administrador não iniciará uma nova
instalação.

Noções básicas sobre atualizações do


administrador do Visual Studio
O pacote de atualização do administrador do Visual Studio publicado no sistema do
Microsoft Update está disponível por meio de três canais de distribuição:

1. O canal WSUS (Windows Server Update Server), que normalmente é controlado


pelo SCCM Configuration Manager, que faz parte da solução de gerenciamento de
dispositivos do Microsoft Endpoint Manager.
2. O canal Windows Update para Empresas do Microsoft Update, que normalmente é
controlado pelo Intune, faz parte da solução de gerenciamento de dispositivos do
Microsoft Endpoint Manager . Atualmente, somente as atualizações de segurança
são publicadas neste canal.
3. O canal do Catálogo do Microsoft Update , no qual você pode baixar o pacote e
usá-lo para atualizar um layout ou atualizar uma instância de cliente.
A grande maioria dos computadores cliente é atualizada usando os canais WSUS/SCCM
ou Windows Update para Empresas/Microsoft Update/Intune. Em ambos os cenários, a
atualização do administrador do Visual Studio é publicada nos servidores do Microsoft
Update, no qual é detectada como disponível e aplicável pelo agente cliente do
Windows Update nativo.

O pacote de atualização do administrador do Visual Studio contém informações que o


instalador do Visual Studio nos computadores cliente precisa para conseguir baixar e
iniciar a atualização. O Instalador do Visual Studio baixa os binários reais de atualização
de produto do local que o computador cliente está configurado para baixar
atualizações, seja da Internet ou de um layout.

O pacote de atualização do administrador não contém informações suficientes para


executar uma instalação limpa do produto, nem contém nenhum dos binários reais do
produto. As atualizações do administrador do Visual Studio são cumulativas, o que
significa que qualquer atualização do Visual Studio que tenha um número de versão de
produto mais alto e uma data de lançamento posterior é um superconjunto de uma
versão mais antiga e anterior.

7 Observação

Por padrão, a conta SYSTEM do computador cliente baixará e instalará as


atualizações do administrador do Visual Studio, o que significa que a conta SYSTEM
deve ter privilégios administrativos para o computador e também deve ter acesso
à Internet ou ao local de layout de rede para baixar os bits de produtos
atualizados.

As atualizações do administrador do Visual Studio só se aplicam a versões de


manutenção do Visual Studio que ainda tenham suporte. Para obter mais informações
sobre quais linhas de base de manutenção do Visual Studio ainda têm suporte durante
um período específico, confira Ciclo de vida e manutenção do produto do Visual Studio.
Todas as linhas de base de manutenção do Visual Studio com suporte serão mantidas
seguras.

Tipos e características de atualizações do


administrador
Há três tipos de atualizações do administrador para o Visual Studio:

As atualizações de segurança são aplicáveis a todas as edições do Visual Studio


(por exemplo, Enterprise, Professional, Community etc.) e contêm alterações
limitadas, altamente direcionadas e compatíveis no nível de manutenção. As
atualizações de segurança não avançarão o cliente para uma versão secundária
posterior; elas foram projetadas para fornecer correções para vulnerabilidades de
segurança ao cliente que já está em um nível de versão secundária específico. As
atualizações de segurança terão pelo menos uma correção de segurança, mas a
correção de segurança pode ou não estar em um componente ou carga de
trabalho instalado no computador cliente. Por exemplo, poderíamos corrigir uma
vulnerabilidade de segurança nos componentes do .NET e rotular a atualização
como uma atualização de segurança, mas ela realmente não teria nenhum efeito
significativo no computador cliente que tivesse apenas componentes C++
instalados. As atualizações de segurança também podem conter outras correções
de confiabilidade ou outras atualizações de componentes necessárias. As
atualizações de segurança são publicadas nos três canais de distribuição listados
anteriormente.

As atualizações de recursos permitem que os administradores de TI avancem os


computadores da organização para uma versão secundária mais recente do Visual
Studio. As atualizações de recursos se aplicam apenas às edições do Visual Studio
que normalmente são encontradas em empresas, como SKUs das Ferramentas de
Build, do Enterprise e do Professional. Todas as atualizações de recursos serão
publicadas somente no Catálogo do Microsoft Update como "Feature Packs", em
que estão disponíveis para serem importadas manualmente, como opção, no
SCCM Configuration Manager. As atualizações de recursos são cumulativas e
conterão mais qualidade e correções de segurança anteriores.

As atualizações de qualidade também são aplicáveis somente às edições do Visual


Studio que são comumente encontradas em empresas e contêm alterações
limitadas, altamente direcionadas e compatíveis no nível de manutenção. As
atualizações de qualidade não avançarão o cliente para uma versão secundária
posterior; elas foram projetadas para fornecer correções de desempenho e
confiabilidade ou outras atualizações de componente necessárias ao cliente que já
está em um nível de versão secundária específico. As atualizações de qualidade se
acumulam junto com as atualizações de segurança e, portanto, conterão correções
de segurança somente se a correção de segurança já tiver sido lançada
independentemente. As atualizações de qualidade também serão publicadas
somente no Catálogo do Microsoft Update como "Atualizações", em que estão
disponíveis para serem importadas manualmente, como opção, no SCCM
Configuration Manager.

Decodificação dos títulos das atualizações do


administrador
O título de cada administrador atualiza a versão resultante da atualização. Por exemplo,

A atualização do Visual Studio 2022 versão 17.0.3 classificada como "Atualização


de Segurança" será aplicada a qualquer edição do Visual Studio 2022 no cliente
que esteja no Canal atual ou no canal LTSC 17.0 e o atualizará para a versão 17.0.3.
A atualização do Visual Studio 2022 versão 17.1.0 classificada como "Feature
Pack" será aplicada às edições do Visual Studio 2022 licenciadas para uso
empresarial no cliente que está no Canal atual e o atualizará para a versão 17.1.0.
A atualização do Visual Studio 2022 versão 17.2.7 classificada como "Atualização
de Segurança" será aplicada a qualquer edição do Visual Studio 2022 no cliente
que esteja no Canal atual ou no canal LTSC 17.2 e o atualizará para a versão 17.2.7.
A atualização de segurança do Visual Studio 2022 versão 17.3.7 aplicada a
qualquer edição do Visual Studio 2022 no cliente que esteja no Canal atual e o
atualizará para a versão 17.3.7.

Se a instância do cliente for maior que a versão da atualização do administrador que


está sendo aplicada, a atualização do administrador não terá efeito.

Configurar o computador cliente para receber


Atualizações do Administrador

Opções de configuração
Há algumas opções de configuração que podem ser usadas para personalizar a
experiência de atualização do administrador do Visual Studio para que ela seja
compatível e esteja alinhada com as preferências e os requisitos de implantação da
organização.

As opções de configuração mais comuns são as seguintes:

Aceitação do Windows Update para Empresas do Microsoft Update**

Os computadores cliente conectados à nuvem gerenciados pelo Intune devem ser


configurados para o Windows Update para Empresas e ter a opção
AllowMUUpdateServicePolicy habilitada para receber atualizações de
administrador do Visual Studio por meio do canal Windows Update para Empresas
do Microsoft Update.

Aceitação de atualização do administrador do Visual Studio

Essa chave do Registro é necessária para que o computador cliente receba


atualizações de administrador por meio dos canais do WSUS ou do Windows
Update para Empresas do Microsoft Update. É uma chave do registro para todo o
computador, o que significa que ela se aplica a todas as instâncias do Visual Studio
instaladas na caixa.

Local de origem dos bits de produto atualizados

Ao executar a atualização, os computadores cliente baixarão os bits de produto


atualizados da Internet por meio da CDN da Microsoft ou de um
compartilhamento de layout de rede que o administrador preparou e manteve. Em
ambos os casos, a conta no computador cliente que está executando a atualização
(normalmente SYSTEM, mas pode ser personalizada para USER) deve ter privilégios
administrativos no computador e acesso ao local de origem dos bits de produtos.
Se o produto for originado da Internet, a conta SYSTEM que executa a
atualização deverá ter acesso a pelo menos os pontos de extremidade do Visual
Studio.
Se o produto for originado de um local de layout de rede, as seguintes
condições deverão ser verdadeiras antes que a atualização do administrador
possa ser implantada com êxito:
A conta que executa a atualização deve ter permissões para o
compartilhamento de rede. Por exemplo, se as contas SYSTEM estiverem
executando as atualizações do administrador, você precisará conceder as
permissões de grupo "Computadores de Domínio" no compartilhamento de
layout de rede.
O computador cliente deve ter, em algum momento, já executado o
bootstrapper a partir desse local de layout de rede. Idealmente, a instalação
original do cliente teria ocorrido usando o bootstrapper do layout de rede, mas
também é possível ter acabado de instalar uma atualização usando um
bootstrapper atualizado nesse mesmo local de rede. Qualquer uma dessas
ações deveria inserir, no computador cliente, uma conexão com esse local de
layout específico.
O local de layout de rede (no qual o cliente está conectado) deve estar
atualizado para conter os bits de produtos atualizados que a atualização do
administrador deseja implantar.

Para obter uma lista completa de todos os comportamentos com suporte de atualização
do administrador, confira a documentação Controlar Políticas de Grupo de Atualização
do Administrador ou Usar parâmetros de linha de comando para atualizar o Visual
Studio.

Métodos para configurar uma atualização do


administrador
Há três métodos principais de configuração de atualizações de administrador: por meio
de políticas) por meio de um arquivo de configuração no computador cliente, ou por
meio de uma modificação do pacote de implantação de Atualização do Administrador
no SCCM Configuration Manager ou no Microsoft Endpoint Manager.

Políticas

As atualizações de administrador procuram uma configuração de política específica,


como AdministratorUpdatesEnabled, conforme descrito em Configurar políticas para
implantações empresariais. O acesso do administrador no computador cliente é
necessário para configurar políticas.

Arquivo de configuração

Algumas configurações podem ser preservadas no computador cliente em um arquivo


de configuração opcional, que tem o benefício de defini-lo apenas uma vez e tê-lo
aplicado a todas as atualizações futuras do administrador. A abordagem do arquivo de
configuração se comporta como uma chave do registro e é aplicável a todos os
computadores, o que significa que ela se aplicará a todas as instalações do Visual Studio
instaladas no computador cliente. O local padrão do arquivo de configuração é em
C:\ProgramData\Microsoft\VisualStudio\updates.config . No entanto, se você quiser

usar outro local para armazenar o arquivo, poderá fazer isso configurando a política
UpdateConfigurationFile e definindo o valor como o caminho do arquivo de
configuração.

O arquivo de configuração, que está no formato JSON, dá suporte à opção


installerUpdateArgs , que é uma matriz de cadeias de caracteres separadas por vírgulas

que especificam mais opções que você pode passar no instalador do Visual Studio. Se o
conteúdo do arquivo incluir um campo inválido ou uma opção sem suporte, a
atualização falhará. Para obter mais informações, confira Usar parâmetros de linha de
comando para instalar o Visual Studio.

Aqui está um arquivo de configuração de exemplo:

JSON

"installerUpdateArgs" : ["--quiet", "--keepWindowsUpdateOn"],


"checkPendingReboot" : "true"

Atualizar manualmente o Pacote de Atualizações do Administrador


no SCCM ou no Intune
Os parâmetros de linha de comando de um pacote de atualização de administrador
individual podem ser modificados manualmente no SCCM ou no Microsoft Endpoint
Manager pelo Administrador de TI. Geralmente, não recomendamos essa abordagem,
embora seja tecnicamente possível.

Verificação, códigos de erro e solução de


problemas

Determinar que o Visual Studio foi atualizado


Você pode usar um dos seguintes métodos para verificar se a atualização do
administrador foi instalada corretamente:

No computador cliente, inicie o Visual Studio, selecione Ajuda>Sobre, e verifique


se o número de versão corresponde ao último número no título da atualização
pretendida.
Use a ferramenta vswhere no computador cliente para identificar as várias versões
do Visual Studio no computador. Para obter mais informações, confira Ferramentas
para detectar e gerenciar instâncias do Visual Studio.
Cada tentativa de atualização administrativa gera vários arquivos de log no
diretório %temp% do computador cliente que capturam o progresso da operação
de atualização. Classifique a pasta por data e procure os arquivos começando com
dd_updatedriver , dd_bootstrapper , dd_client e dd_setup para as atualizações

administrativas, o bootstrapper, o Instalador do Visual Studio e o mecanismo de


instalação, respectivamente. Verifique se esses arquivos de log contêm um 0,
indicando que a atualização foi aplicada com êxito. Esses arquivos de log também
podem ser usados para verificar se o arquivo de configuração está sendo usado.
Confira a Ferramenta de Coleta de Logs do Visual Studio para obter mais
detalhes.

Códigos e condições de erros

) Importante

Lembre-se de que o Visual Studio deve ser fechado antes de instalar a atualização.
Se o Visual Studio estiver aberto ou em uso, a instalação da atualização será
cancelada.

As atualizações do administrador podem informar os seguintes códigos de retorno:


Código de Definição
erro

0 A atualização administrativa foi instalada com êxito.

1001 O Instalador do Visual Studio ou um processo de instalação relacionado está em


execução. A atualização não foi aplicada.

1002 O Instalador do Visual Studio está em pausa. A atualização não foi aplicada.

1003 O Visual Studio está em uso, portanto, a atualização foi cancelada. Essa condição
pode ser anulada usando o sinalizador --force .

1004 Nenhuma internet detectada. A atualização não conseguiu contactar o local da


Internet que contém os arquivos atualizados. A atualização não foi aplicada.

1005 O valor do registro AdministratorUpdatesEnabled está definido como 0 ou não está


definido. A atualização não foi aplicada.

1006 O valor do registro AdministratorUpdatesOptOut está definido como 1. A


atualização não foi aplicada. A chave destina-se a computadores cliente que não
devem ser atualizados pelo administrador.

1007 O Instalador do Visual Studio não está instalado.

1009 A instância do Visual Studio está configurada para usar um layout, mas estão
faltando pacotes no layout para executar a atualização.

3010 O sistema requer uma reinicialização. A atualização pode ou não ter sido aplicada.
Reinicialize o computador e tente a atualização novamente.

8006 A atualização foi cancelada porque o processo relacionado ao VS está em execução

862968 A atualização foi bem-sucedida e é recomendada uma reinicialização, mas não é


necessária.

8007070 A atualização foi cancelada porque não há espaço suficiente no disco.

Outro Erro ao tentar aplicar a atualização. A atualização não foi aplicada.

Para obter uma lista completa de códigos de erro do cliente, confira Usar parâmetros de
linha de comando para instalar o Visual Studio.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.
Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Você pode usar os seguintes métodos para fornecer comentários sobre as atualizações
do administrador do Visual Studio ou informar sobre problemas que afetam as
atualizações:

Faça perguntas à comunidade no Fórum de P e R de Configuração do Visual


Studio.
Acesse a página de suporte do Visual Studio e verifique se o problema está
listado nas perguntas frequentes.
Forneça comentários sobre recursos ou relate um problema à equipe do Visual
Studio em relação à sua experiência.
Entre em contato com o gerente de contas técnicas da Microsoft na sua
organização.

Confira também
Para saber mais, explore os seguintes recursos adicionais:

Habilitar atualizações de administrador


Guia do administrador do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Instalar o Visual Studio
Atualizar o Visual Studio
Usar Parâmetros de Linha de Comando para instalar o Visual Studio
Ferramentas para detectar e gerenciar instâncias do Visual Studio
Criar uma instalação de rede do Visual Studio
Atualizar um cliente do Visual Studio que foi instalado de um layout de rede
Perguntas frequentes do Catálogo do Microsoft Update
Documentação do SCCM (Microsoft Endpoint Configuration Manager)
Importar atualizações do Catálogo da Microsoft no Configuration Manager
Documentação do WSUS (Windows Server Update Services)
Atualizar um cliente do Visual Studio
que foi instalado por meio de um layout
Artigo • 12/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode e deve atualizar periodicamente todas as instalações do Visual Studio para
que elas recebam as correções de segurança e funcionalidade mais recentes.

Se o Visual Studio estiver instalado em um computador em uma organização e tiver sido


originalmente instalado por meio de um layout, provavelmente o computador cliente
fará parte de um "ambiente gerenciado", o que significa que ele é regido por uma
equipe administrativa central e precisa seguir as políticas organizacionais. Para atualizar
computadores cliente em ambientes gerenciados, considere as perguntas abaixo
porque as respostas informarão como você deve abordar o processo de atualização.

De onde vêm as atualizações: de um layout ou de servidores hospedados pela


Microsoft? Se a atualização veio de um layout, o layout foi atualizado? O layout
está hospedado em um compartilhamento de rede ou em um servidor Web de
intranet interno?
A atualização será iniciada manualmente pelo usuário ou será um evento iniciado
pelo administrador, como por meio de uma atualização de administrador ou de
um comando programático? Lembre-se de que o responsável por executar a
atualização deve ter permissões de administrador no computador cliente.

Preparar a origem da atualização


Se os clientes estiverem configurados para adquirir atualizações de servidores
hospedados pela Microsoft, eles precisarão ter acesso à Internet. Durante a atualização,
os clientes baixarão e instalarão a última versão disponível da Microsoft no canal de
atualização que o cliente assinou.

Se os clientes estiverem configurados para adquirir atualizações usando um layout, a


primeira etapa para atualizar o cliente é verificar se o layout contém a versão atualizada
do Visual Studio. O administrador de TI deve atualizar o layout existente com as
atualizações mais recentes do produto para que as novas instalações ou as atualizações
do cliente possam receber a versão atualizada ou criar um novo layout em um diretório
de layout diferente usado para atualizar os computadores cliente. A melhor prática é
atualizar os layouts na segunda terça-feira do mês logo após o lançamento das
atualizações de segurança.
Verifique se a conta de usuário ou a de sistema que está executando a atualização tem
acesso adequado ao compartilhamento de rede ou ao site interno que contém o layout.
Confira mais informações em Solucionar problemas de erros relacionados à rede ao
instalar ou usar o Visual Studio.

Iniciar manualmente a atualização no


computador cliente
Um usuário no computador cliente com permissões suficientes pode iniciar
manualmente a atualização do Visual Studio por conta própria. O cliente do Visual
Studio vai procurar no local de origem as atualizações para determinar se algum pacote
de atualização está disponível. É por isso que é importante manter o layout de origem
atualizado.

Os usuários podem atualizar manualmente uma instância do Visual Studio:

iniciando o Instalador do Visual Studio. Se a atualização estiver disponível, eles


poderão clicar em Atualizar.
iniciando o IDE do Visual Studio e respondendo ao sinalizador ou à mensagem de
notificação ou, para atualizações, escolhendo Ajuda > Verificar se há atualizações.

Se algum arquivo estiver em uso quando a atualização for iniciada, por exemplo, se o
Visual Studio estiver aberto, a atualização será bloqueada até que o Visual Studio seja
fechado. Ocasionalmente, a atualização exigirá uma reinicialização.

Configurar manualmente onde o cliente do Visual Studio


procura atualizações
Quando o Visual Studio é instalado inicialmente no computador cliente, ele registra o
local em que deve verificar se há atualizações. Se o Visual Studio foi instalado a partir de
servidores hospedados pela Microsoft, ele procurará, por padrão, as atualizações nos
servidores hospedados pela Microsoft. Se o Visual Studio foi instalado ou atualizado
invocando um bootstrapper em um layout de rede ou executando o script a ser
instalado por meio de um layout hospedado na Web, ele vai procurar atualizações no
local especificado pelo layout.

Para ver e configurar manualmente o local de atualização no qual o cliente vai procurar
atualizações, abra Configurações de Atualização e verifique se ele está configurado
corretamente. Em seguida, você pode iniciar a atualização do cliente.

Atualizar notificações
Se houver uma atualização disponível no local em que o cliente estiver procurando
atualizações, ele exibirá uma mensagem ou um sinalizador de notificação.

Para obter detalhes sobre como controlar quando as notificações de atualização são
apresentadas aos usuários, confira Controlar as atualizações nas implantações do Visual
Studio com base em rede.

Usar atualizações de administrador para


atualizar os computadores cliente
Se você está em uma organização, a prática recomendada é registrar os computadores
cliente em atualizações de administrador do Visual Studio. As versões de segurança do
Visual Studio normalmente ficam disponíveis em "terças-feiras de patch", que é a
segunda terça-feira do mês. O Administrador de TI deve ter o hábito de manter e
atualizar os layouts mensalmente, como toda manhã da segunda quarta-feira do mês, e
usar o Microsoft Endpoint Manager para implantar as atualizações de segurança do
Visual Studio nos computadores cliente na organização. As atualizações de
administrador disparam clientes para examinar o local de origem da atualização em
busca de novas atualizações e, se o layout foi atualizado, a atualização é aplicada
automaticamente ao computador cliente (considerando que o Visual Studio não esteja
em uso).

Atualizar programaticamente os computadores


cliente
Os administradores podem atualizar programaticamente as instalações do cliente do
Visual Studio emitindo os comandos ao instalador do lado do cliente ou invocando um
bootstrapper no layout da rede.

Atualizar programaticamente o Visual Studio usando o


Instalador do Visual Studio
Você pode iniciar uma atualização do Visual Studio invocando programaticamente o
instalador do cliente e emitindo o comando de atualização. Esse comando atualiza o
Visual Studio com base nos bits do produto disponíveis no local de origem de
atualizações. Se você quiser alterar o local de origem da atualização no cliente durante a
atualização, faça isso programaticamente passando o parâmetro --channelUri junto
com o comando de atualização. Por exemplo:
Você pode alterar o canal para um layout de rede e executar um comando de
atualização no cliente da seguinte maneira:

shell

"C:\program files (x86)\microsoft\visual studio\installer\>setup.exe" update


--installPath "C:\Program Files\Microsoft Visual Studio\2019\Enterprise" --
channelUri "\\\\server\\share\\newlayoutdir\\channelmanifest.json"

ou desta maneira, que define a origem das atualizações em um local hospedado pela
Microsoft:

shell

"C:\program files (x86)\microsoft\visual studio\installer\>setup.exe" update


--installPath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" --
channelUri "https://aka.ms/vs/17/release/channel"

Observe que nos dois exemplos anteriores, você não pode iniciar o instalador
programaticamente no mesmo diretório em que o instalador reside.

Atualizar programaticamente o Visual Studio usando um


bootstrapper
Você pode atualizar o Visual Studio chamando programaticamente um bootstrapper do
mesmo local do qual originalmente você instalou. Se você baixou um bootstrapper da
Microsoft e, se o cliente tem acesso à Internet, baixe e use qualquer bootstrapper
atualizado para atualizar o cliente do Visual Studio. Preste atenção ao canal do
bootstrapper, pois isso pode fazer com que o canal de atualização do cliente seja
alterado.

Se o bootstrapper estiver localizado em um compartilhamento de layout de rede, o


administrador deverá primeiro atualizar o layout de rede para conter as atualizações do
produto Visual Studio para que o cliente possa usar esse bootstrapper na atualização.

O exemplo a seguir atualiza o cliente usando o bootstrapper existente no layout de rede


original. Esse método considera que o administrador de TI já atualizou o layout.

shell

\\server\share\originalinstallVSdirectory\vs_enterprise.exe update --
installPath "C:\clientmachine\installpath" --quiet
Você também pode iniciar uma atualização do cliente do Visual Studio chamando um
bootstrapper programaticamente de um local de layout de rede diferente que contém a
versão do produto de destino da atualização do cliente. Se você executar o
bootstrapper de um novo layout hospedado na rede, o canal de atualização no cliente
será definido como o local de atualização especificado no layout. Por exemplo, você
pode executar esse comando no computador cliente usando um novo bootstrapper em
um novo layout hospedado na rede:

shell

\\server\share\desiredupdatelayoutdir\vs_enterprise.exe update --
installPath "C:\clientmachine\installpath" --quiet

Qualquer que seja o valor do channelUri no arquivo response.json do novo layout, ele
será o local onde o cliente vai procurar atualizações futuras.

7 Observação

Use o comando vswhere.exe para identificar o caminho de instalação de uma


instância existente do Visual Studio em um computador cliente.

Atualizar programaticamente um cliente que não tem


acesso à Internet
Se o computador cliente não tiver acesso à Internet, ele precisará adquirir as
atualizações por meio de um layout. Lembre-se de que há duas partes que precisam ser
atualizadas sempre que o Visual Studio é atualizado. O primeiro é o instalador e o
segundo é o próprio produto Visual Studio. Para layouts hospedados na rede, você
pode invocar o bootstrapper ou o instalador a fim de atualizar o cliente. Para layouts
hospedados em servidor Web da intranet, você pode fazer a atualização invocando o
instalador no cliente. O exemplo a seguir ilustra as duas situações e ambas consideram
que o administrador já atualizou o layout ao máximo de bits seguros.

Este exemplo instrui o Visual Studio a procurar explicitamente esses dois componentes
usando um layout de rede. O primeiro comando força o instalador a atualizar usando o
layout e o segundo comando impede que todos os pacotes sejam baixados dos
servidores hospedados pela Microsoft na Internet.

shell

\\server\share\VSlayoutdirectory\vs_enterprise.exe --quiet --update --


wait --offline
\\server\share\VSlayoutdirectory\vs_enterprise.exe update --installPath
"C:\clientmachine\installpath" --noWeb --wait --quiet --norestart

Este exemplo instrui o Visual Studio a se atualizar usando o conteúdo incluído no layout
interno hospedado no servidor Web da intranet.

shell

"C:\program files (x86)\microsoft\visual studio\installer\>setup.exe"


update --installPath "C:\Program Files\Microsoft Visual
Studio\2019\Enterprise"

Obter suporte para o layout de rede


Caso você tenha um problema com o layout de rede, gostaríamos de saber a respeito. A
melhor maneira de nos comunicar o assunto é usando a ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você for
Administrador de TI e não tiver o Visual Studio instalado, envie os comentários de
Administrador de TI aqui . Ao usar essa ferramenta, é muito útil se você puder enviar
os logs da ferramenta VS Collect , que pode nos ajudar a diagnosticar e corrigir o
problema.

Também oferecemos uma opção de suporte por meio de chat de instalação (somente
em inglês) para problemas relacionados à instalação.

Também temos outras opções de suporte disponíveis. Confira nossa Visual Studio
Developer Community .

Confira também
Criar e manter um layout de rede
Guia do administrador do Visual Studio
Solução de erros relacionados à rede ao instalar ou usar o Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Ferramentas para detectar e gerenciar instâncias do Visual Studio
Configurar políticas para implantações empresariais do Visual Studio
Ciclo de vida e manutenção do produto Visual Studio
Atualizar o Visual Studio usando um layout offline mínimo
Artigo • 28/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Para computadores não conectados à Internet, criar um layout mínimo é a maneira mais fácil e rápida de atualizar suas instâncias offline do
Visual Studio.

A ferramenta de layout mínimo gera um layout adaptado especificamente às necessidades da sua equipe. Administradores do Enterprise
podem usar essa ferramenta para criar layouts de atualização para a maioria das versões do Visual Studio, inclusive a de 2017. Diferente de
um layout completo do Visual Studio, um layout mínimo contém apenas os pacotes atualizados, de modo que sempre é menor e mais
rápido de gerar e implantar. Você pode minimizar ainda mais o tamanho do layout de atualização especificando apenas os idiomas, as
cargas de trabalho e os componentes desejados.

Como gerar um layout mínimo

) Importante

Essas instruções pressupõem que você já tenha criado e usado layouts. Para obter mais informações sobre como fazer isso, consulte a
página Atualizar uma instalação do Visual Studio baseada em rede.

Para ter uma melhor compreensão do ciclo devida do Visual Studio, consulte a página Ciclo de Vida e Manutenção de Produtos do
Visual Studio.

Essa ferramenta cria layouts de atualização para o Visual Studio 2017 (15.9) em diante. O layout pode ser implantado em computadores em
rede/offline para atualizar instâncias do Visual Studio. Durante a criação normal do layout, todos os pacotes dessa versão específica são
baixados. A criação normal do layout é necessária para reparar, desinstalar e para outras operações padrão em instâncias do Visual Studio.
O layout mínimo baixa apenas pacotes atualizados, portanto, de modo que é menor e mais fácil de copiar para computadores offline.

Instalando a ferramenta de layout mínimo


1. Primeiro, baixe a ferramenta de layout mínimo localizada aqui . Escolha Salvar quando solicitado e, em seguida, selecione Executar.

2. Em seguida, aceite o prompt do Controle de Conta de Usuário clicando em Sim.

3. A ferramenta de layout mínimo será instalada em C:\Program Files (x86)\Microsoft Visual Studio\MinimalLayout .

Como usar a ferramenta de layout mínimo


MinimalLayout.exe usa os comandos e as opções a seguir para gerar o layout. Pelo menos um comando é necessário para executar a
ferramenta. Veja como você executará a ferramenta:

MinimalLayout.exe [command] <options>...


Comandos
Visualizar: use este comando para visualizar quantos pacotes serão baixados e o espaço total usado para criar o layout.

Gerar: use este comando para gerar o layout mínimo para atualizar o Visual Studio.

Regenerar: use este comando para regenerar um layout usando um arquivo de resposta de layout mínimo existente. Cada layout
mínimo produz um arquivo de resposta MinimalLayout.json , que contém os parâmetros de entrada do layout mínimo original. Você
pode usar o comando Regenerar e um arquivo de resposta MinimalLayout.json para regenerar o layout mínimo. Isso será útil se você
quiser criar um layout mínimo para uma nova atualização do Visual Studio com base no arquivo de resposta do layout mínimo
anterior.

Para esse comando, é necessário um caminho de arquivo MinimalLayout.json de um layout já gerado.

shell

MinimalLayout.exe regenerate --filePath C:\MinimalLayout\MinimalLayout.json

Verificar: use este comando para determinar se a pasta de layout está corrompida.

Corrigir: use este comando para corrigir uma pasta de layout corrompida, incluindo a substituição de pacotes ausentes da pasta de
layout.

Opções

Opções Descrição Obrigatório/Opcional Exemplo

--targetLocation Especifica um diretório no qual criar um layout Obrigatório --targetLocation c:\VSLayout\


<dir> mínimo offline.

--baseVersion O layout mínimo offline será gerado começando Obrigatório --baseVersion 16.4.0
<versão> nesta versão.

--targetVersion O layout mínimo offline será gerado até esta Obrigatório --targetVersion 16.4.4
<versão> versão, incluindo-a.

--languages Especifica os idiomas a serem incluídos no layout Obrigatório --languages en-US fr-FR
mínimo offline. Vários valores podem ser
especificados, separados por espaços.

--productIds <uma As IDs dos produtos com base nos quais o layout Obrigatório --productIds
ou mais IDs de mínimo offline será gerado, separadas por vírgulas. Microsoft.VisualStudio.Product.Enterprise,Microsoft.VisualStud
produto>
Microsoft.VisualStudio.Product.Enterprise
Microsoft.VisualStudio.Product.Professional
Microsoft.VisualStudio.Product.BuildTools
Microsoft.VisualStudio.Product.TestAgent
Microsoft.VisualStudio.Product.TestController
Microsoft.VisualStudio.Product.TeamExplorer

--filePath O caminho do arquivo MinimalLayout.json de um Necessário para o --filePath C:\VSLayout\minimalLayout.json


layout já criado. Essa opção é usada apenas com o comando Regenerar
comando Regenerar. Observe que o comando Regenerate usa apenas --filePath c

--add <uma ou mais Especifica uma ou mais IDs de carga de trabalho Opcional --add Microsoft.VisualStudio.Workload.ManagedDesktop
IDs de componente ou de componente a serem adicionadas. Microsoft.VisualStudio.Workload.NetWeb Component.GitHub.
ou carga de Componentes adicionais podem ser adicionados
trabalho> globalmente usando --includeRecommended e/ou
–-includeOptional. Várias IDs de componente ou
cargas de trabalho podem ser especificadas,
separadas por um espaço.

-- Inclui os componentes recomendados para as Opcional Para uma carga de trabalho específica:
includeRecommended cargas de trabalho que estão instaladas, mas não --add Microsoft.VisualStudio.Workload. ManagedDesktop;incl
os componentes opcionais.
Para aplicar a todas as cargas de trabalho: --includeRecomme

--includeOptional Inclui os componentes opcionais para as cargas de Opcional Para uma carga de trabalho específica:
trabalho que estão instaladas, incluindo os --add Microsoft.VisualStudio.Workload. ManagedDesktop;incl
componentes recomendados.
Para aplicar a todas as cargas de trabalho: --includeOptional
Gerando um layout mínimo

) Importante

Essas instruções pressupõem que você tenha criado um layout de instalação de rede. Para obter mais informações sobre como fazer
isso, consulte a página Criar uma instalação de rede do Visual Studio.

Crie um layout mínimo usando o comando gerar para o intervalo de versões especificado. Você também precisará conhecer a productId, os
idiomas e as cargas de trabalho específicas necessárias. Esse layout mínimo atualizará qualquer instância do Visual Studio da versão base
até, e incluindo, a versão de destino.

Antes de criar o layout, você pode descobrir o tamanho total do download e o número de pacotes incluídos usando o comando visualizar.
Esse comando usa as mesmas opções que o comando gerar e os detalhes são gravados no console.

Vamos percorrer alguns exemplos de como visualizar, gerar e regenerar um layout mínimo:

Primeiro, veja um exemplo de como visualizar um layout para o Visual Studio Enterprise versões 16.4.0 a 16.4.4, somente para inglês.

shell

MinimalLayout.exe preview --targetLocation c:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Enterprise --


baseVersion 16.4.0 --targetVersion 16.4.4 --languages en-US

Veja como gerar esse mesmo layout com uma carga de trabalho.

shell

MinimalLayout.exe generate --targetLocation c:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Enterprise --


baseVersion 16.4.0 --targetVersion 16.4.4 --add Microsoft.VisualStudio.Workload.ManagedDesktop;includeOptional --
languages en-US

E veja como regenerar um layout mínimo offline usando um arquivo de resposta existente.

shell

MinimalLayout.exe regenerate --filepath c:\VSLayout\MinimalLayout.json

Alguns outros exemplos usando o comando gerar:

Veja como adicionar uma carga de trabalho adicional e incluir apenas os pacotes recomendados.

shell

MinimalLayout.exe generate --targetLocation c:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Professional --


baseVersion 16.4.0 --targetVersion 16.4.4 --add Microsoft.VisualStudio.Workload.ManagedDesktop
Microsoft.VisualStudio.Workload.NetWeb;includeRecommended --languages en-US

Você também pode gerar um layout mínimo offline que dá suporte a vários produtos.

shell

MinimalLayout.exe generate --targetLocation c:\VSLayout\ --productIds


Microsoft.VisualStudio.Product.Enterprise,Microsoft.VisualStudio.Product.Professional --baseVersion 16.4.0 --
targetVersion 16.4.4 --languages en-US

E, por fim, veja como você incluiria vários idiomas no layout mínimo.

shell

MinimalLayout.exe generate --targetLocation c:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Enterprise --


baseVersion 16.4.0 --targetVersion 16.4.4 --add Microsoft.VisualStudio.Workload.ManagedDesktop;includeOptional --
languages en-US fr-FR

Como manter um layout mínimo


Use os comandos verificar e corrigir para manter o layout mínimo depois que ele for criado. O comando verificar determina se há pacotes
corrompidos ou ausentes layout mínimo. Se você encontrar problemas depois de executar o comando verificar, use o comando corrigir
para corrigir esses pacotes ausentes ou corrompidos.

Veja como verificar se um layout tem pacotes corrompidos ou ausentes:

shell

MinimalLayout.exe Verify --targetLocation c:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Enterprise --


baseVersion 16.4.0 --targetVersion 16.4.4 --add Microsoft.VisualStudio.Workload.ManagedDesktop --includeRecommended --
languages en-US

E veja como corrigir esse layout:

shell

MinimalLayout.exe fix --targetLocation C:\VSLayout\ --productIds Microsoft.VisualStudio.Product.Enterprise --


baseVersion 16.4.0 --targetVersion 16.4.4 --add Microsoft.VisualStudio.Workload.ManagedDesktop;includeRecommended --
languages en-US

7 Observação

Esse layout não pode ser usado para reparar uma instalação do Visual Studio. Para reparar uma instância existente do Visual Studio,
consulte Reparar o Visual Studio.

Como usar um layout mínimo offline para atualizar uma instalação existente do Visual
Studio
Após gerar um layout mínimo, você pode copiar toda a pasta de layout mínimo para um computador cliente. Isso será necessário se o
computador não tiver acesso à pasta de layout mínimo no local original.

Navegue até a pasta e identifique o nome do aplicativo bootstrapper. O nome do aplicativo bootstrapper depende do valor de ProductId
especificado ao gerar o layout mínimo. Consulte a tabela abaixo para obter exemplos comuns.

Valor de ProductId Nome do aplicativo

Microsoft.VisualStudio.Product.Enterprise vs_enterprise.exe

Microsoft.VisualStudio.Product.Professional vs_professional.exe

Microsoft.VisualStudio.Product.BuildTools vs_buildtools.exe

A atualização é aplicada a uma instância do Visual Studio em duas etapas. Comece atualizando o Instalador do Visual Studio e, em seguida,
atualize o Visual Studio.

1. Atualizar o Instalador do Visual Studio

Execute o comando a seguir, substituindo vs_enterprise.exe pelo nome correto do aplicativo bootstrapper, se necessário.

shell

vs_enterprise.exe --quiet --update --offline C:\VSLayout\vs_installer.opc

2. Atualizar o aplicativo do Visual Studio

Para atualizar o Visual Studio, você precisa especificar o installPath da instância do Visual Studio que deseja atualizar. Se várias
instâncias do Visual Studio estiverem instaladas, cada uma precisará ser atualizada separadamente. É altamente recomendável
especificar a opção –noWeb com o comando atualizar para impedir a instalação de componentes que não estão no layout mínimo. Isso
impede que você deixe o Visual Studio em um estado inutilizável.

Execute o comando a seguir, substituindo o parâmetro de linha de comando installPath adequadamente. Não deixe de usar o nome
correto do aplicativo bootstrapper também.

shell

vs_enterprise.exe update --noWeb --quiet --installpath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"


Suporte ou solução de problemas
Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução de problemas de instalação e atualização do
Visual Studio para obter diretrizes passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador do Visual Studio e no IDE
do Visual Studio. Se você for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários de Administrador de TI
aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de Desenvolvedores do Visual
Studio .

Confira também
Instalar o Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Ferramentas para detectar e gerenciar instâncias do Visual Studio
Como definir as configurações em um arquivo de resposta
Atualizações de controle para implantações do Visual Studio com base em rede
Ciclo de vida e manutenção do produto Visual Studio
Desabilitar ou mover o cache do pacote
Artigo • 13/01/2024

O cache de pacotes fornece uma fonte de pacotes instalados. Esses pacotes são
necessários para reparar o Visual Studio ou outros produtos relacionados quando não
há conexão com a Internet. Com algumas unidades ou configurações de sistema, no
entanto, não convém manter todos os pacotes. O instalador os baixará quando
necessário. Portanto, se você deseja salvar ou recuperar espaço em disco, pode
desabilitar ou mover o cache de pacotes.

Desabilitar o cache do pacote


Antes de instalar, modificar ou reparar o Visual Studio ou outros produtos com o novo
instalador, você pode iniciar o instalador com a opção --nocache para o instalador.

shell

"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe" --


nocache

Qualquer operação que você fizer em um produto removerá os pacotes existentes desse
produto e evitará salvar pacotes após a instalação. Se os pacotes forem necessários para
modificar ou reparar o Visual Studio, serão automaticamente baixados e removidos
após a instalação.

Se você quiser reabilitar o cache, passe --cache em vez disso. Somente os pacotes
necessários serão armazenados em cache. Se você precisar restaurar todos os pacotes,
recomendamos que repare o Visual Studio antes de se desconectar da rede.

shell

"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe"


repair --passive --norestart --cache

Você também pode definir a KeepDownloadedPayloads política do Registro para


desabilitar o cache antes de instalar, modificar ou reparar o Visual Studio.

Mover o cache do pacote


Uma configuração comum do sistema é ter o Windows instalado em um SSD com um
(ou mais) disco rígido maior para as necessidades de desenvolvimento, como códigos-
fonte, binários de programa e muito mais. Se quiser trabalhar offline em vez disso, você
poderá mover o cache do pacote.

No momento, você só poderá essa operação se definir a CachePath política do registro


antes de instalar, modificar ou reparar o Visual Studio.

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar o Visual Studio
Configurar políticas para implantações empresariais
Usar parâmetros de linha de comando para instalar o Visual Studio
Ferramentas para detectar e gerenciar
instâncias do Visual Studio
Artigo • 13/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Existem várias ferramentas que você pode usar para detectar e gerenciar instalações do
Visual Studio em computadores cliente.

Detectando instâncias existentes do Visual


Studio
As seguintes ferramentas e utilitários ajudarão você a detectar e gerenciar instâncias
instaladas do Visual Studio em computadores cliente:

vswhere : um executável integrado ao Visual Studio ou disponível para


distribuição separada que ajuda a encontrar o local de todas as instâncias do
Visual Studio em um computador específico.
VSSetup.PowerShell : scripts do PowerShell que usam a API de Configuração de
Instalação para identificar instâncias instaladas do Visual Studio.
VS-Setup-Samples : amostras de C# e C++ que demonstram como usar a API de
Configuração de Instalação para consultar uma instalação existente.
Instrumentação de Gerenciamento do Windows (WMI): as informações da
instância do Visual Studio podem ser consultadas por meio da classe
MSFT_VSInstance do Visual Studio.
A API de Configuração de Instalação fornece interfaces para desenvolvedores que
desejam criar seus próprios utilitários para interrogar instâncias do Visual Studio.
Inventário de software do Microsoft Endpoint Configuration Manager: pode ser
usado para coletar informações sobre instâncias do Visual Studio em dispositivos
cliente.

Usar o vswhere.exe
vswhere.exe é incluído automaticamente no Visual Studio 2017 e posterior, ou você

pode baixá-lo na páginas de versões do vswhere . Use o vswhere -? para obter


informações de ajuda sobre a ferramenta. Por exemplo, este comando mostra todas as
versões do Visual Studio, incluindo versões mais antigas do produto e pré-lançamentos
e gera os resultados no formato JSON:
shell

C:\Program Files (x86)\Microsoft Visual Studio\Installer>vswhere.exe -legacy


-prerelease -format json

Usando WMI (Instrumentação de


Gerenciamento do Windows)
Se o Utilitário Detector de Clientes do Visual Studio estiver instalado no computador,
você poderá consultar informações da instância do Visual Studio usando o WMI. O
Utilitário Detector de Clientes do Visual Studio é instalado por padrão com todas as
atualizações do Visual Studio 2017, do Visual Studio 2019 e do Visual Studio 2022
lançadas em ou após 12 de maio de 2020. Ele também estará disponível no Catálogo do
Microsoft Update se você quiser instalá-lo de forma independente. Para obter um
exemplo de como usar o utilitário para retornar informações de instância do Visual
Studio, abra o PowerShell como administrador no computador cliente e digite o
seguinte comando:

shell

Get-CimInstance MSFT_VSInstance -Namespace root/cimv2/vs

Usando o Microsoft Endpoint Configuration


Manager
O inventário de software do Microsoft Endpoint Configuration Manager: pode ser usado
para coletar informações sobre instâncias do Visual Studio em dispositivos cliente. Por
exemplo, a consulta a seguir retornará o nome de exibição, a versão e o nome do
dispositivo em que o Visual Studio está instalado para todas as instâncias instaladas do
Visual Studio 2017, 2019 e 2022:

WQL

select distinct SMS_G_System_COMPUTER_SYSTEM.Name,


SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName,
SMS_G_System_ADD_REMOVE_PROGRAMS.Version from SMS_R_System inner join
SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID =
SMS_R_System.ResourceId inner join SMS_G_System_ADD_REMOVE_PROGRAMS on
SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where
SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "Visual Studio %[a-z]%
201[7,9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "Visual
Studio %[a-z]% 2022"

A edição do Registro para uma instância do


Visual Studio
No Visual Studio, configurações do Registro são armazenadas em um local privado, o
que permite várias instâncias lado a lado no mesmo computador com a mesma versão
do Visual Studio.

Como essas entradas não são armazenadas no Registro global, há instruções especiais
para usar o Editor do Registro para fazer alterações nas configurações do Registro:

1. Se você tiver uma instância do Visual Studio aberta, feche-a.

2. Inicie o regedit.exe .

3. Selecione o nó HKEY_LOCAL_MACHINE .

4. No menu principal do Regedit, selecione Arquivo>Carregar Hive... e selecione o


arquivo de Registro privado, que é armazenado na pasta AppData\Local. Por
exemplo:

shell

%localappdata%\Microsoft\VisualStudio\<config>\privateregistry.bin

7 Observação

<config> corresponde à instância do Visual Studio que você deseja procurar.

Você precisará fornecer um nome de hive, que se tornará o nome do hive isolado.
Depois de fazer isso, você poderá pesquisar o Registro no hive isolado que criou.

) Importante

Antes de iniciar o Visual Studio novamente, você deve descarregar a seção isolada
que criou. Para fazer isso, selecione Arquivo>Descarregar Hive no menu principal
do Regedit. (Se você não fizer isso, o arquivo permanecerá bloqueado e o Visual
Studio não poderá ser iniciado.)
Suporte ou solução de problemas
Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Guia do administrador do Visual Studio
IDs de carga de trabalho e de
componente do Visual Studio
Artigo • 14/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Clique nos nomes de edição na tabela a seguir para ver as IDs de carga de trabalho e de
componente disponíveis que você precisa para instalar o Visual Studio usando uma
linha de comando ou para especificar como uma dependência em um manifesto do
VSIX.

Atualizado para a versão 17.8

Edição ID Descrição

Visual Studio Microsoft.VisualStudio.Product.Enterprise Solução Microsoft DevOps para


Enterprise produtividade e coordenação
2022 entre equipes de qualquer
tamanho

Visual Studio Microsoft.VisualStudio.Product.Professional Ferramentas para


Professional desenvolvedores profissionais e
2022 serviços para equipes pequenas

Visual Studio Microsoft.VisualStudio.Product.Community IDE gratuita e completa para


Community estudantes, desenvolvedores
2022 individuais e de software livre

Team Explorer Microsoft.VisualStudio.Product.TeamExplorer Interaja com o Team Foundation


do Visual Server e com o Azure DevOps
Studio 2022 Services sem um conjunto de
ferramentas de desenvolvedor
do Visual Studio

Ferramentas Microsoft.VisualStudio.Product.BuildTools As Ferramentas de Build do


de Build do Visual Studio permitem que você
Visual Studio compile aplicativos baseados em
2022 MSBuild nativos e gerenciados,
sem exigir o IDE do Visual Studio.
Há opções para instalar
compiladores e bibliotecas do
Visual C++, além do suporte a
C++/CLI, ATL e MFC.

Test Agent do Microsoft.VisualStudio.Product.TestAgent Dá suporte à execução de testes


Visual Studio automatizados e carrega testes
Edição ID Descrição

2022 remotamente

Visual Studio Microsoft.VisualStudio.Product.TestController Distribuir testes automatizados


Load Test para vários computadores
Controller
2022

Para obter mais informações sobre como usar essas listas, consulte as páginas Usar
parâmetros de linha de comando para instalar o Visual Studio e Atualizar uma extensão
do Visual Studio para o Visual Studio 2022.

7 Observação

Para obter uma lista de IDs de carga de trabalho e de componente para a versão
anterior, confira IDs de carga de trabalho e de componente do Visual Studio 2019

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
Guia do administrador do Visual Studio para o Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Atualizar uma instalação em rede do Visual Studio
Criar uma instalação offline do Visual Studio
Diretório de componentes do Visual Studio
Enterprise
Artigo • 22/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio na linha de comando ou
que podem ser especificadas como uma dependência em um manifesto do VSIX. Adicionaremos outros
componentes quando lançarmos atualizações para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de trabalho e por uma tabela dos
componentes que estão disponíveis para a carga de trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são afiliados a nenhuma carga
de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de Componente. Use as
tabelas desta página para determinar as dependências mínimas de componentes. Em alguns cenários, isso pode
significar que somente um componente de uma carga de trabalho é especificado. Em outros cenários, isso pode
significar que vários componentes de uma única carga de trabalho ou que vários componentes de várias cargas de
trabalho são especificados. Para obter mais informações, confira a página Como migrar projetos de extensibilidade
para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar parâmetros de linha de comando
para instalar o Visual Studio. Para conseguir uma lista de IDs de carga de trabalho e de componente para outros
produtos, confira a página IDs de carga de trabalho e de componente do Visual Studio. Por fim, confira a página
componentes sem suporte do Visual Studio para ter uma listagem desses componentes que fizeram a transição
para fora de suporte e agora são considerados inseguros. Recomendamos que você remova os componentes
durante a próxima atualização.

Editor principal do Visual Studio (incluído no Visual Studio


Enterprise 2022)
ID: Microsoft.VisualStudio.Workload.CoreEditor

Descrição: a experiência de shell do Visual Studio Core, incluindo a edição de código com reconhecimento de
sintaxe, controle do código-fonte e gerenciamento de itens de trabalho.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de dependência

Microsoft.VisualStudio.Component.CoreEditor Editor do Visual Studio Core 17.8.34129.139 Obrigatório

Desenvolvimento do Azure
ID: Microsoft.VisualStudio.Workload.Azure
Descrição: SDK, ferramentas e projetos do Azure para o desenvolvimento de aplicativos na nuvem e a criação de
recursos usando o .NET ou o .NET Framework. Também inclui ferramentas para conteinerizar seu aplicativo,
incluindo o suporte do Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Obrigatório


Azure WebJobs

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para .NET

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do 17.8.34129.139 Obrigatório


Azure para .NET

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
ID do componente Nome Versão Tipo de
dependência

de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F# para
projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha 17.8.34129.139 Obrigatório


de comando do
SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.Azure.Prerequisites Pré-requisitos de 17.8.34129.139 Obrigatório


desenvolvimento
do Azure

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para Azure
Functions e Azure
WebJobs

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure 17.8.34129.139 Recomendadas


Data Lake e Stream
Analytics

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework
4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.AspNet Modelos de item e 17.8.34129.139 Recomendadas


projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Recomendadas


avançados do
ASP.NET

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de 17.8.34129.139 Recomendadas


Criação do Azure

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de 17.8.34129.139 Recomendadas


Computação do
Azure

Microsoft.VisualStudio.Component.Azure.Powershell Powershell do 17.8.34129.139 Recomendadas


Azure

Microsoft.VisualStudio.Component.Azure.ResourceManager.Tools Principais 17.8.34129.139 Recomendadas


ferramentas do
Azure Resource
Manager

Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools Ferramentas do 17.8.34129.139 Recomendadas


Service Fabric
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Azure.Waverton Principais 17.8.34129.139 Recomendadas


ferramentas dos
Serviços de Nuvem
do Azure

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de 17.8.34129.139 Recomendadas


build dos Serviços
de Nuvem do
Azure

Microsoft.VisualStudio.Component.Debugger.Snapshot Depurador de 17.8.34129.139 Recomendadas


instantâneo

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
.NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web

Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices Ferramentas dos 17.8.34129.139 Recomendadas


Serviços de Nuvem
do Azure

Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools Ferramentas do 17.8.34129.139 Recomendadas


Azure Resource
Manager

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1
ID do componente Nome Versão Tipo de
dependência

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Armazenamento de dados e processamento


ID: Microsoft.VisualStudio.Workload.Data

Descrição: conectar, desenvolver e testar soluções de dados com o SQL Server, Azure Data Lake ou Hadoop.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure Data 17.8.34129.139 Recomendadas


Lake e Stream Analytics

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Recomendadas

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Recomendadas

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Recomendadas


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Recomendadas


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Recomendadas


Server
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Recomendadas


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Recomendadas


de texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Opcional


área de trabalho

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Aplicativos de ciência de dados e análise


ID: Microsoft.VisualStudio.Workload.DataScience

Descrição: linguagens e ferramentas para criar aplicativos de ciência de dados, incluindo Python e F#.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Recomendadas


Python

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Recomendadas


área de trabalho

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Recomendadas


JavaScript e TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional


ID do componente Nome Versão Tipo de
dependência

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Desenvolvimento para área de trabalho com .NET


ID: Microsoft.VisualStudio.Workload.ManagedDesktop

Descrição: crie WPF, Windows Forms e aplicativos de console usando C#, Visual Basic e F# com .NET e .NET
Framework.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
ID do componente Nome Versão Tipo de
dependência

trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
área de trabalho do
.NET

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR 17.8.34129.139 Obrigatório


do SQL Server

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.ComponentGroup.Blend Blend for Visual 17.8.34129.139 Recomendadas


Studio

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Recomendadas


ClickOnce para .NET

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
para .NET

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
.NET

Microsoft.VisualStudio.Component.DotNetModelBuilder ML.NET Model 17.8.34129.139 Recomendadas


Builder

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do 17.8.34129.139 Recomendadas


Entity Framework 6

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Recomendadas


F#

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Recomendadas


linguagens JavaScript
e TypeScript

Microsoft.VisualStudio.Component.LiveUnitTesting Live Unit Testing 17.8.34129.139 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Recomendadas


pacotes NuGet

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Recomendadas


Web e ASP.NET

Component.Dotfuscator Proteção PreEmptive 17.8.34129.139 Opcional


– Dotfuscator

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Opcional


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Opcional


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework
4.6.2-4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.8.1

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Opcional


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.ClassDesigner Designer de Classe 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.CodeClone Clone de Código 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.CodeMap Mapa de Códigos 17.8.34129.139 Opcional


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e
publicação

Microsoft.VisualStudio.Component.DependencyValidation.Enterprise Validação de 17.8.34129.139 Opcional


dependência
dinâmica

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem 17.8.34129.139 Opcional


F# da área de
trabalho

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Opcional


F# para projetos Web

Microsoft.VisualStudio.Component.GraphDocument Editor DGML 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL
Server

Microsoft.VisualStudio.Component.PortableLibrary Pacote de 17.8.34129.139 Opcional


direcionamento da
Biblioteca Portátil do
.NET

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL
Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Opcional


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Opcional


Tools

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Managed Ferramentas de 17.8.34129.139 Opcional


arquitetura e análise
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Opcional


Empacotamento
MSIX

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cs modelos do SDK do 17.8.34129.139 Opcional


Aplicativo Windows
C#

Desenvolvimento de jogos com Unity


ID: Microsoft.VisualStudio.Workload.ManagedGame

Descrição: criar jogos 2D e 3D com o Unity, um ambiente de desenvolvimento avançado de plataforma cruzada.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento 17.8.34129.139 Obrigatório


do .NET Framework 4.7.1

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Obrigatório


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Unity Ferramentas do Visual 17.8.34129.139 Obrigatório


Studio para Unity

Component.UnityEngine.x64 Unity Hub 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Linux e desenvolvimento integrado com C++


ID: Microsoft.VisualStudio.Workload.NativeCrossPlat

Descrição: crie e depure aplicativos em execução em um ambiente Linux ou em um dispositivo inserido.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Component.MDD.Linux Desenvolvimento do C++ 17.8.34129.139 Obrigatório


para Linux

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Obrigatório


do C++

Component.Linux.CMake Ferramentas CMake do 17.8.34129.139 Recomendadas


C++ para Linux

Component.Linux.RemoteFileExplorer Explorador de Arquivos 17.8.34129.139 Recomendadas


Remoto para Linux

Microsoft.VisualStudio.Component.Embedded Ferramentas inseridas e 17.8.34129.139 Recomendadas


IoT

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.MDD.Linux.GCC.arm Ferramentas herdadas 17.8.34129.139 Opcional


inseridas e de IoT

Desenvolvimento para desktop com C++


ID: Microsoft.VisualStudio.Workload.NativeDesktop

Descrição: crie aplicativos C++ modernos para Windows usando as ferramentas de sua escolha, incluindo MSVC,
Clang, CMake ou MSBuild.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis do
C++ 2022

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core Principais recursos 17.8.34129.139 Obrigatório


de área de
trabalho do C++

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build Insights 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Recomendadas


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Recomendadas


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SecurityIssueAnalysis Análise de 17.8.34129.139 Recomendadas


problemas de
segurança

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.ATL ATL do C++ para 17.8.34129.139 Recomendadas


as mais recentes
ferramentas de
build v143 (x86 &
x64)

Microsoft.VisualStudio.Component.VC.CMake.Project Ferramentas 17.8.34129.139 Recomendadas


CMake do C++
para Windows

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
C++

Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest Adaptador de 17.8.34129.139 Recomendadas


Teste para
Boost.Test

Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest Adaptador de 17.8.34129.139 Recomendadas


Teste para Google
Test

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86 (mais
recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


ID do componente Nome Versão Tipo de
dependência

pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Recomendadas


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.CMake Editor JSON 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Microsoft.Component.VC.Runtime.UCRTSDK SDK do CRT 17.8.34129.139 Opcional


Universal do
Windows

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows C++ para
ferramentas de
build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
para ferramentas
de build v143
(ARM64EC)

Microsoft.VisualStudio.Component.VC.140 MSVC v140 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2015 (v14.00)

Microsoft.VisualStudio.Component.VC.ATLMFC MFC do C++ para 17.8.34129.139 Opcional


as mais recentes
ferramentas de
ID do componente Nome Versão Tipo de
dependência

build v143 (x86 &


x64)

Microsoft.VisualStudio.Component.VC.CLI.Support Suporte do 17.8.34129.139 Opcional


C++/CLI para
ferramentas de
build v143 (mais
recente)

Microsoft.VisualStudio.Component.VC.Llvm.Clang Compilador do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5)

Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset Suporte do 17.8.34129.139 Opcional


MSBuild para o
conjunto de
ferramentas LLVM
(clang-cl)

Microsoft.VisualStudio.Component.VC.Modules.x86.x64 Módulos do C++ 17.8.34129.139 Opcional


para ferramentas
de build v143
(x64/x86 –
experimental)

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de
build do VS 2022
C++
ARM64/ARM64EC
(mais recentes)

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2017 x64/x86
(v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang Ferramentas do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5 -
x64/x86)

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2019 x64/x86
(v14.29)

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cpp Modelos do SDK 17.8.34129.139 Opcional


do Aplicativo
Windows C++

Desenvolvimento de jogos com C++


ID: Microsoft.VisualStudio.Workload.NativeGame

Descrição: usar todo o poder do C++ para criar jogos profissionais da plataforma DirectX, Unreal ou Cocos2d.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do
C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis
do C++ 2022

Microsoft.VisualStudio.Component.Windows10SDK Runtime C 17.8.34129.139 Obrigatório


Universal do
Windows

Component.Unreal.Ide Suporte do IDE 17.8.34129.139 Recomendadas


para Unreal
Engine

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build 17.8.34129.139 Recomendadas


Insights

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Component.Android.NDK.R23C Android NDK 17.8.34129.139 Opcional


(R23C)

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Opcional


SDK do Android

Component.Cocos Cocos 17.8.34129.139 Opcional

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.Android Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Android para
C++

Component.OpenJDK OpenJDK 17.8.34129.139 Opcional


(distribuição da
Microsoft)

Component.Unreal Instalador do 17.8.34129.139 Opcional


Unreal Engine

Component.Unreal.Android Suporte do IDE 17.8.34129.139 Opcional


do Android para
Unreal Engine

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
ID do componente Nome Versão Tipo de
dependência

do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.Net.ComponentGroup.TargetingPacks.Common Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as 17.8.34129.139 Opcional


tarefas de
compilação do
NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Opcional


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Unreal.TestAdapter Adaptador de 17.8.34129.139 Opcional


Teste do Unreal
Engine

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)

Desenvolvimento móvel com C++


ID: Microsoft.VisualStudio.Workload.NativeMobile

Descrição: criar aplicativos de plataforma cruzada para o iOS, Android ou Windows usando o C++.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Component.Android.SDK.MAUI Configuração do SDK do Android 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais do C++ 17.8.34129.139 Obrigatório

Component.Android.Emulator.MDD Google Android Emulator (instalação 17.8.34129.139 Recomendadas


local)

Component.Android.NDK.R23C Android NDK (R23C) 17.8.34129.139 Recomendadas

Component.HAXM.Private Intel HAXM (Hardware Accelerated 17.8.34129.139 Recomendadas


Execution Manager) (instalação local)

Component.MDD.Android Ferramentas de desenvolvimento do 17.8.34129.139 Recomendadas


Android para C++

Component.OpenJDK OpenJDK (distribuição da Microsoft) 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – Aceleração de Build 17.8.34129.139 Opcional

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.IOS Ferramentas de desenvolvimento do iOS 17.8.34129.139 Opcional


para C++

Desenvolvimento do .NET Multi-Platform App UI


ID: Microsoft.VisualStudio.Workload.NetCrossPlat

Descrição: crie aplicativos Android, iOS, Windows e Mac a partir de uma única base de código usando C# com .NET
MAUI.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

android SDK do .NET 34.0.43.0 Obrigatório


para Android

Component.OpenJDK OpenJDK 17.8.34129.139 Obrigatório


(distribuição da
Microsoft)

Component.Xamarin.RemotedSimulator Xamarin 17.8.34129.139 Obrigatório


Remoted
Simulator

ios SDK do .NET 17.0.8478.0 Obrigatório


para iOS

maccatalyst SDK do .NET 17.0.8478.0 Obrigatório


para Mac
Catalyst

maui.blazor SDK do .NET 8.0.3.0 Obrigatório


MAUI para
ID do componente Nome Versão Tipo de
dependência

Blazor Desktop

maui.core .NET MAUI SDK 8.0.3.0 Obrigatório


Core

maui.windows SDK do .NET 8.0.3.0 Obrigatório


MAUI para
Windows

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

microsoft.net.runtime.android Ferramentas de 8.0.23.53103 Obrigatório


build do Android
do .NET

microsoft.net.runtime.android.aot AoT 8.0.23.53103 Obrigatório


(Ferramentas de
Build do
Android) do .NET

microsoft.net.runtime.android.aot.net7 AoT 8.0.23.53103 Obrigatório


(Ferramentas de
Build do
Android) do .NET
7.0

microsoft.net.runtime.android.net7 .NET 7.0 Android 8.0.23.53103 Obrigatório


Build Tools

microsoft.net.runtime.ios Ferramentas de 8.0.23.53103 Obrigatório


Build do .NET
para iOS

microsoft.net.runtime.ios.net7 Ferramentas de 8.0.23.53103 Obrigatório


Build do .NET 7.0
para iOS

microsoft.net.runtime.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

microsoft.net.runtime.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do
Catalisador do
Mac do .NET 7.0
ID do componente Nome Versão Tipo de
dependência

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Obrigatório


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Obrigatório


Compartilhadas
de Build Móveis
do .NET 7.0

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.Merq Ferramentas 17.8.34129.139 Obrigatório


internas comuns
do Xamarin

Microsoft.VisualStudio.Component.MonoDebugger Depurador mono 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.All .NET MAUI 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.Android MAUI do .NET 17.8.34129.139 Obrigatório


para Android

Microsoft.VisualStudio.ComponentGroup.Maui.Blazor Suporte do 17.8.34129.139 Obrigatório


Blazor para
aplicativos MAUI
do .NET

Microsoft.VisualStudio.ComponentGroup.Maui.iOS MAUI do .NET 17.8.34129.139 Obrigatório


para iOS

Microsoft.VisualStudio.ComponentGroup.Maui.MacCatalyst .NET MAUI para 17.8.34129.139 Obrigatório


Mac Catalyst
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.Maui.Shared Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET MAUI

Microsoft.VisualStudio.ComponentGroup.Maui.Windows .NET MAUI para 17.8.34129.139 Obrigatório


Windows

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento
MSIX

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.TemplateEngine Mecanismo de 17.8.34129.139 Obrigatório


modelagem
ASP.NET

runtimes.ios Runtimes do iOS 8.0.23.53103 Obrigatório


do .NET

runtimes.ios.net7 Runtimes do iOS 8.0.23.53103 Obrigatório


do .NET 7.0

runtimes.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

runtimes.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do
Catalisador do
Mac do .NET 7.0

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Recomendadas


SDK do Android

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.LiveUnitTesting Live Unit Testing 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Xamarin Xamarin 17.8.34129.139 Opcional

Desenvolvimento Web e ASP.NET


ID: Microsoft.VisualStudio.Workload.NetWeb

Descrição: compile aplicativos Web usando ASP.NET Core, ASP.NET, HTML/JavaScript e contêineres incluindo
suporte ao Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services
ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para
.NET

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F#
para projetos
Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de 17.8.34129.139 Obrigatório


linha de
comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL
Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server 17.8.34129.139 Obrigatório


Express 2019
LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Obrigatório


de modelo de
texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Recomendadas


Azure WebJobs

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.AspNet Modelos de item 17.8.34129.139 Recomendadas


e projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Recomendadas


avançados do
ASP.NET

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just- 17.8.34129.139 Recomendadas


In-Time

Microsoft.VisualStudio.Component.Debugger.Snapshot Depurador de 17.8.34129.139 Recomendadas


instantâneo

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do 17.8.34129.139 Recomendadas


Entity Framework
6

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.LiveUnitTesting Live Unit Testing 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web

Microsoft.VisualStudio.Component.WslDebugging Depuração do 17.8.34129.139 Recomendadas


.NET com WSL

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
para Azure
Functions e
Azure WebJobs

Microsoft.VisualStudio.ComponentGroup.Web.CloudTools Ferramentas de 17.8.34129.139 Recomendadas


nuvem de
desenvolvimento
para a Web
ID do componente Nome Versão Tipo de
dependência

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.5.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.5.2

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net6 Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET 6.0

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Opcional


Compartilhadas
de Build Móveis
do .NET 7.0

microsoft.net.sdk.emscripten Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
(Emscripten)
ID do componente Nome Versão Tipo de
dependência

microsoft.net.sdk.emscripten.net6 Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
.NET6
(Emscripten)

microsoft.net.sdk.emscripten.net7 Ferramentas de 8.0.9.3002 Opcional


Build do .NET
WebAssembly
.NET7
(Emscripten)

Microsoft.NetCore.Component.Runtime.6.0 Runtime do .NET 17.8.34308.169 Opcional


6.0 (suporte a
longo prazo)

Microsoft.VisualStudio.Component.ClassDesigner Designer de 17.8.34129.139 Opcional


Classe

Microsoft.VisualStudio.Component.CodeClone Clone de Código 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.CodeMap Mapa de 17.8.34129.139 Opcional


Códigos

Microsoft.VisualStudio.Component.DependencyValidation.Enterprise Validação de 17.8.34129.139 Opcional


dependência
dinâmica

Microsoft.VisualStudio.Component.GraphDocument Editor DGML 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.TeamsFx Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Microsoft
Teams

Microsoft.VisualStudio.Component.TestTools.WebLoadTest Ferramentas de 17.8.34129.139 Opcional


desempenho
para a Web e de
teste de carga

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.ComponentGroup.AdditionalWebProjectTemplates Modelos de 17.8.34129.139 Opcional


projeto
adicionais
(versões
anteriores)

Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Managed Ferramentas de 17.8.34129.139 Opcional


arquitetura e
análise

Microsoft.VisualStudio.ComponentGroup.IISDevelopment Suporte ao IIS no 17.8.34129.139 Opcional


tempo de
desenvolvimento

wasm.tools Ferramentas de 8.0.23.53103 Opcional


build do .NET
WebAssembly
ID do componente Nome Versão Tipo de
dependência

wasm.tools.net6 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 6.0

wasm.tools.net7 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 7.0

Desenvolvimento do Node.js
ID: Microsoft.VisualStudio.Workload.Node

Descrição: criar aplicativos de rede escaláveis usando o Node.js, um runtime JavaScript controlado por evento
assíncrono.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript

Microsoft.VisualStudio.Component.Node.Tools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento em
Node.js

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Obrigatório


ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Desenvolvimento para Office/SharePoint


ID: Microsoft.VisualStudio.Workload.Office

Descrição: criar suplementos do Office e SharePoint, soluções do SharePoint e suplementos do VSTO usando o C#,
VB e JavaScript.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para .NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento para
.NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise 17.8.34129.139 Obrigatório


do Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
ID do componente Nome Versão Tipo de
dependência

publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Obrigatório


F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Obrigatório


F# para projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
área de trabalho do
.NET

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Obrigatório


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Obrigatório


comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Sharepoint.Tools Office Developer Tools 17.8.34129.139 Obrigatório


para Visual Studio

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Obrigatório


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Obrigatório


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.Component.Workflow Windows Workflow 17.8.34129.139 Obrigatório


Foundation

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web 17.8.34129.139 Obrigatório


e ASP.NET

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.TeamOffice VSTO (Visual Studio 17.8.34129.139 Recomendadas


Tools para Office)

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
ID do componente Nome Versão Tipo de
dependência

.NET Framework 4.8.1

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Opcional

Microsoft.VisualStudio.ComponentGroup.Sharepoint.WIF Windows Identity 17.8.34129.139 Opcional


Foundation 3.5

Desenvolvimento em Python
ID: Microsoft.VisualStudio.Workload.Python

Descrição: edição, depuração, desenvolvimento interativo e controle do código-fonte para o Python.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Obrigatório


Python

Component.CPython39.x64 Python 3 de 64 bits (3.9.13) 3.9.13 Opcional


(sem suporte)

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Opcional

Component.Microsoft.VisualStudio.RazorExtension Razor Language Services 17.8.34129.139 Opcional

Component.Microsoft.Web.LibraryManager Gerenciador de Biblioteca 17.8.34129.139 Opcional

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Opcional

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Opcional

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Opcional

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do ClickOnce 17.8.34129.139 Opcional


para .NET

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Opcional


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Opcional

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Opcional


ID do componente Nome Versão Tipo de
dependência

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Opcional

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da Web
para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de Criação do 17.8.34129.139 Opcional


Azure

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do Azure para 17.8.34129.139 Opcional


.NET

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de Computação 17.8.34129.139 Opcional


do Azure

Microsoft.VisualStudio.Component.Azure.Waverton Principais ferramentas dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de build dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem F# 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem F# para 17.8.34129.139 Opcional


projetos Web

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Opcional


JavaScript e TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Opcional


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Opcional


NuGet
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Opcional


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Opcional


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Opcional


de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Opcional


ASP.NET

Desenvolvimento para a Plataforma Universal do Windows


ID: Microsoft.VisualStudio.Workload.Universal

Descrição: criar aplicativos para a Plataforma Universal do Windows com o C#, VB ou, opcionalmente, o C++.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.NetFX.Native .NET Nativo 17.8.34129.139 Obrigatório


ID do componente
Microsoft.ComponentGroup.Blend Nome
Blend for Visual Versão
17.8.34129.139 Tipo de
Obrigatório
Studio dependência

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Obrigatório


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Obrigatório


criação de perfil do
.NET

Microsoft.VisualStudio.Component.Graphics Editores de imagens e 17.8.34129.139 Obrigatório


modelos 3D

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR 17.8.34129.139 Obrigatório


do SQL Server

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Obrigatório


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento
MSIX

Microsoft.VisualStudio.ComponentGroup.UWP.NetCoreAndStandard .NET Native e .NET 17.8.34129.139 Obrigatório


Standard

Microsoft.VisualStudio.ComponentGroup.UWP.Support Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows

Microsoft.VisualStudio.ComponentGroup.UWP.Xamarin Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows para
Xamarin

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.ClassDesigner Designer de Classe 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.CodeClone Clone de Código 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.CodeMap Mapa de Códigos 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.DependencyValidation.Enterprise Validação de 17.8.34129.139 Opcional


dependência
dinâmica
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.GraphDocument Editor DGML 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Opcional


gráficos e criador de
perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Opcional


2019 LocalDB

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da 17.8.34129.139 Opcional


Plataforma Universal
do Windows C++
para ferramentas de
build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
para ferramentas de
build v143
(ARM64EC)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Opcional


principais do C++

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de build
do VS 2022 C++
ARM64/ARM64EC
(mais recentes)

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
ID do componente Nome Versão Tipo de
dependência

do C++ para VS 2017


ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
x64/x86 (v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.IpOverUsb Conectividade de 17.8.34129.139 Opcional


dispositivos USB

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Managed Ferramentas de 17.8.34129.139 Opcional


arquitetura e análise

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v141)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v142 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v142)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
x64/x86 (v14.29)

Desenvolvimento de extensões do Visual Studio


ID: Microsoft.VisualStudio.Workload.VisualStudioExtension

Descrição: criar complementos e extensões para o Visual Studio, incluindo novos comandos, analisadores de
código e janelas de ferramentas.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.6.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.6

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VSSDK SDK do Visual 17.8.34129.139 Obrigatório


Studio

Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites Pré-requisitos 17.8.34129.139 Obrigatório


para o
desenvolvimento
de extensões do
Visual Studio

Microsoft.Component.CodeAnalysis.SDK SDK da 17.8.34129.139 Recomendadas


Plataforma do
Compilador .NET

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd IntelliTrace 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Recomendadas


de modelo de
texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Opcional


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DslTools SDK de 17.8.34129.139 Opcional


Modelagem
Componentes não afiliados
Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas que podem ser
selecionados como um componente individual.

ID do componente Nome Versão

Component.Xamarin.Profiler Criador de perfil do Xamarin 17.8.34129.139

macOS SDK do .NET para macOS 14.0.8478.0

Microsoft.Component.HelpViewer Visualizador da Ajuda 17.8.34129.139

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de desenvolvimento do 17.8.34129.139


.NET Framework 3.5

Microsoft.Net.Component.4.6.1.SDK SDK do .NET Framework 4.6.1 17.8.34129.139

Microsoft.Net.Component.4.6.2.SDK SDK do .NET Framework 4.6.2 17.8.34129.139

Microsoft.Net.Component.4.7.1.SDK .NET Framework 4.7.1 SDK 17.8.34129.139

Microsoft.Net.Component.4.7.2.SDK SDK do .NET Framework 4.7.2 17.8.34129.139

Microsoft.Net.Component.4.7.SDK SDK do .NET Framework 4.7 17.8.34129.139

Microsoft.Net.Core.Component.SDK.2.1 Runtime do .NET Core 2.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.3.1 Runtime do .NET Core 3.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.5.0 Runtime do .NET 5.0 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.7.0 Runtime do .NET 7.0 17.8.34308.169

Microsoft.NetCore.ComponentGroup.DevelopmentTools.2.1 Ferramentas de desenvolvimento para 17.8.34129.139


.NET Core 2.1 (sem suporte)

Microsoft.NetCore.ComponentGroup.Web.2.1 Ferramentas de desenvolvimento da 17.8.34129.139


Web para .NET Core 2.1 (sem suporte)

Microsoft.VisualStudio.Component.AzureDevOps.OfficeIntegration Integração do Azure DevOps ao 17.8.34129.139


Office

Microsoft.VisualStudio.Component.Debugger.Arm64RemoteDebugger Depurador remoto ARM64 17.8.34129.139

Microsoft.VisualStudio.Component.Git Git para Windows 17.8.34129.139

Microsoft.VisualStudio.Component.LinqToSql Ferramentas do LINQ to SQL 17.8.34129.139

Microsoft.VisualStudio.Component.TestTools.CodedUITest Teste de interface do usuário 17.8.34129.139


codificado

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64 ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.Spectre ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v142 (14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64 MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.Spectre MFC C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64 MSVC v142 – ferramentas de build do 17.8.34129.139


C++ para VS 2019 x64/x86 (v14.29-
16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 x64/x86 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM (v14.30-
17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM64 (v14.30-
ID do componente Nome Versão

17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64 ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64 C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64.Spectre MSVC v143: VS 2022 C++ x64/x86 libs 17.8.34129.139


mitigados por Spectre (v14.30-17.0)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(Sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64 ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64 C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.31 – 17.1) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre de VS 2022 C++
ARM (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ ARM64 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
ARM64 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64 ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
ID do componente Nome Versão

Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64 C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ x64/x86 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64.Spectre MSVC v143 – VS 2022 C++ x64/x86 17.8.34129.139


Spectre-mitigated libs (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64 ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64.Spectre ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.33-17.3) (sem
ID do componente Nome Versão

suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64 MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.33 – 17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64 ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64.Spectre ATL do C++ v14.34(17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64 C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64 Ferramentas de build do MSVC v143 – 17.8.34129.139


VS 2022 C++ x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


pelo Espectro do VS 2022 C++
x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM.Spectre MSVC v143: VS 2022 C++ ARM libs 17.8.34129.139


mitigados por Spectre (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64 MSVC v143: VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de
build (v14.35-17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.35 – 17.5)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM.Spectre ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64 ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64 MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.35 – 17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ID do componente Nome Versão

ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64 ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64 C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.Spectre MFC do C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.37 – 17.7)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64 ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.Spectre ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64 MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.37 - 17.7)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM.Spectre MSVC v143 – Libs atenuadas pelo 17.8.34129.139


ARM do VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64 MSVC v143 – VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de
build (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64.Spectre MSVC v143 - VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC Libs mitigadas pelo
espectro (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com ARM
(Mitigações de Spectre)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64 ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64.Spectre C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64 C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64.Spectre MSVC v143 - VS 2022 C++ x64/x86 17.8.34129.139


Libs mitigadas pelo espectro (v14.38-
ID do componente Nome Versão

17.8)

Microsoft.VisualStudio.Component.VC.ATL.ARM ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM64 ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes com mitigações
de Spectre (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.MFC.ARM MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM64 MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes com
mitigações de Spectre
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.Redist.MSM MSMs dos Pacotes Redistribuíveis do 17.8.34129.139


C++ 2022

Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(mais recente)

Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (mais recentes)

Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM64 (v14.16)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.v141.ATL ATL do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64 ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v141 (14.16)

Microsoft.VisualStudio.Component.VC.v141.MFC MFC do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64 MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 x64/x86 (v14.16)

Microsoft.VisualStudio.Component.VisualStudioData Fontes de dados e referências de 17.8.34129.139


serviço

Microsoft.VisualStudio.Component.WinXP Suporte do Windows XP do C++ para 17.8.34129.139


ferramentas do VS 2017 (v141)
[Preterido]

Microsoft.VisualStudio.Web.Mvc4.ComponentGroup ASP.NET MVC 4 17.8.34129.139

tvOS SDK do .NET para tvOS 17.0.8478.0

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução de problemas de
instalação e atualização do Visual Studio para obter diretrizes passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas
relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador do
Visual Studio e no IDE do Visual Studio. Se você for Administrador de TI e não tiver o Visual Studio instalado,
envie os comentários de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de
Desenvolvedores do Visual Studio .

Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes do Visual Studio
Professional
Artigo • 22/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio na linha de comando ou
que podem ser especificadas como uma dependência em um manifesto do VSIX. Adicionaremos outros
componentes quando lançarmos atualizações para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de trabalho e por uma tabela dos
componentes que estão disponíveis para a carga de trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são afiliados a nenhuma carga
de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de Componente. Use as
tabelas desta página para determinar as dependências mínimas de componentes. Em alguns cenários, isso pode
significar que somente um componente de uma carga de trabalho é especificado. Em outros cenários, isso pode
significar que vários componentes de uma única carga de trabalho ou que vários componentes de várias cargas de
trabalho são especificados. Para obter mais informações, confira a página Como migrar projetos de extensibilidade
para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar parâmetros de linha de comando
para instalar o Visual Studio. Para conseguir uma lista de IDs de carga de trabalho e de componente para outros
produtos, confira a página IDs de carga de trabalho e de componente do Visual Studio. Por fim, confira a página
componentes sem suporte do Visual Studio para ter uma listagem desses componentes que fizeram a transição
para fora de suporte e agora são considerados inseguros. Recomendamos que você remova os componentes
durante a próxima atualização.

Editor principal do Visual Studio (incluído no Visual Studio


Professional 2022)
ID: Microsoft.VisualStudio.Workload.CoreEditor

Descrição: a experiência de shell do Visual Studio Core, incluindo a edição de código com reconhecimento de
sintaxe, controle do código-fonte e gerenciamento de itens de trabalho.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de dependência

Microsoft.VisualStudio.Component.CoreEditor Editor do Visual Studio Core 17.8.34129.139 Obrigatório

Desenvolvimento do Azure
ID: Microsoft.VisualStudio.Workload.Azure
Descrição: SDK, ferramentas e projetos do Azure para o desenvolvimento de aplicativos na nuvem e a criação de
recursos usando o .NET ou o .NET Framework. Também inclui ferramentas para conteinerizar seu aplicativo,
incluindo o suporte do Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Obrigatório


Azure WebJobs

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para .NET

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do 17.8.34129.139 Obrigatório


Azure para .NET

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
ID do componente Nome Versão Tipo de
dependência

de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F# para
projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha 17.8.34129.139 Obrigatório


de comando do
SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.Azure.Prerequisites Pré-requisitos de 17.8.34129.139 Obrigatório


desenvolvimento
do Azure

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para Azure
Functions e Azure
WebJobs

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure 17.8.34129.139 Recomendadas


Data Lake e Stream
Analytics

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework
4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.AspNet Modelos de item e 17.8.34129.139 Recomendadas


projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Recomendadas


avançados do
ASP.NET

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de 17.8.34129.139 Recomendadas


Criação do Azure

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de 17.8.34129.139 Recomendadas


Computação do
Azure

Microsoft.VisualStudio.Component.Azure.Powershell Powershell do 17.8.34129.139 Recomendadas


Azure

Microsoft.VisualStudio.Component.Azure.ResourceManager.Tools Principais 17.8.34129.139 Recomendadas


ferramentas do
Azure Resource
Manager

Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools Ferramentas do 17.8.34129.139 Recomendadas


Service Fabric
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Azure.Waverton Principais 17.8.34129.139 Recomendadas


ferramentas dos
Serviços de Nuvem
do Azure

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de 17.8.34129.139 Recomendadas


build dos Serviços
de Nuvem do
Azure

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
.NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web

Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices Ferramentas dos 17.8.34129.139 Recomendadas


Serviços de Nuvem
do Azure

Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools Ferramentas do 17.8.34129.139 Recomendadas


Azure Resource
Manager

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Armazenamento de dados e processamento


ID: Microsoft.VisualStudio.Workload.Data

Descrição: conectar, desenvolver e testar soluções de dados com o SQL Server, Azure Data Lake ou Hadoop.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure Data 17.8.34129.139 Recomendadas


Lake e Stream Analytics

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Recomendadas

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Recomendadas

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Recomendadas


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Recomendadas


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Recomendadas


Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Recomendadas


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Recomendadas


de texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Opcional


área de trabalho

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Aplicativos de ciência de dados e análise


ID: Microsoft.VisualStudio.Workload.DataScience

Descrição: linguagens e ferramentas para criar aplicativos de ciência de dados, incluindo Python e F#.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Recomendadas


Python

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Recomendadas


área de trabalho

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Recomendadas


JavaScript e TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Desenvolvimento para área de trabalho com .NET


ID: Microsoft.VisualStudio.Workload.ManagedDesktop

Descrição: crie WPF, Windows Forms e aplicativos de console usando C#, Visual Basic e F# com .NET e .NET
Framework.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
ID do componente Nome Versão Tipo de
dependência

área de trabalho do
.NET

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.ComponentGroup.Blend Blend for Visual Studio 17.8.34129.139 Recomendadas

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Recomendadas


ClickOnce para .NET

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento para
.NET

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de criação 17.8.34129.139 Recomendadas


de perfil do .NET

Microsoft.VisualStudio.Component.DotNetModelBuilder ML.NET Model Builder 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do Entity 17.8.34129.139 Recomendadas


Framework 6

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Recomendadas


F#

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Recomendadas


JavaScript e TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web 17.8.34129.139 Recomendadas


e ASP.NET

Component.Dotfuscator Proteção PreEmptive – 17.8.34129.139 Opcional


Dotfuscator

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional


ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Opcional


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Opcional


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.8.1

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise 17.8.34129.139 Opcional


do Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem 17.8.34129.139 Opcional


F# da área de trabalho

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Opcional


F# para projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL
Server

Microsoft.VisualStudio.Component.PortableLibrary Pacote de 17.8.34129.139 Opcional


direcionamento da
Biblioteca Portátil do
.NET

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Opcional


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Opcional


Empacotamento MSIX

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cs modelos do SDK do 17.8.34129.139 Opcional


Aplicativo Windows C#

Desenvolvimento de jogos com Unity


ID: Microsoft.VisualStudio.Workload.ManagedGame

Descrição: criar jogos 2D e 3D com o Unity, um ambiente de desenvolvimento avançado de plataforma cruzada.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento 17.8.34129.139 Obrigatório


do .NET Framework 4.7.1

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Obrigatório


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Unity Ferramentas do Visual 17.8.34129.139 Obrigatório


Studio para Unity

Component.UnityEngine.x64 Unity Hub 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Linux e desenvolvimento integrado com C++


ID: Microsoft.VisualStudio.Workload.NativeCrossPlat

Descrição: crie e depure aplicativos em execução em um ambiente Linux ou em um dispositivo inserido.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.MDD.Linux Desenvolvimento do C++ 17.8.34129.139 Obrigatório


para Linux

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Obrigatório


do C++

Component.Linux.CMake Ferramentas CMake do 17.8.34129.139 Recomendadas


C++ para Linux

Component.Linux.RemoteFileExplorer Explorador de Arquivos 17.8.34129.139 Recomendadas


Remoto para Linux

Microsoft.VisualStudio.Component.Embedded Ferramentas inseridas e 17.8.34129.139 Recomendadas


IoT

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.MDD.Linux.GCC.arm Ferramentas herdadas 17.8.34129.139 Opcional


inseridas e de IoT

Desenvolvimento para desktop com C++


ID: Microsoft.VisualStudio.Workload.NativeDesktop
Descrição: crie aplicativos C++ modernos para Windows usando as ferramentas de sua escolha, incluindo MSVC,
Clang, CMake ou MSBuild.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis do
C++ 2022

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core Principais recursos 17.8.34129.139 Obrigatório


de área de
trabalho do C++

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build Insights 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Recomendadas


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Recomendadas


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SecurityIssueAnalysis Análise de 17.8.34129.139 Recomendadas


problemas de
segurança

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.ATL ATL do C++ para 17.8.34129.139 Recomendadas


as mais recentes
ID do componente Nome Versão Tipo de
dependência

ferramentas de
build v143 (x86 &
x64)

Microsoft.VisualStudio.Component.VC.CMake.Project Ferramentas 17.8.34129.139 Recomendadas


CMake do C++
para Windows

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
C++

Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest Adaptador de 17.8.34129.139 Recomendadas


Teste para
Boost.Test

Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest Adaptador de 17.8.34129.139 Recomendadas


Teste para Google
Test

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86 (mais
recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Recomendadas


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.CMake Editor JSON 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Microsoft.Component.VC.Runtime.UCRTSDK SDK do CRT 17.8.34129.139 Opcional


Universal do
Windows

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows C++ para
ferramentas de
build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
para ferramentas
de build v143
(ARM64EC)

Microsoft.VisualStudio.Component.VC.140 MSVC v140 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2015 (v14.00)

Microsoft.VisualStudio.Component.VC.ATLMFC MFC do C++ para 17.8.34129.139 Opcional


as mais recentes
ferramentas de
build v143 (x86 &
x64)

Microsoft.VisualStudio.Component.VC.CLI.Support Suporte do 17.8.34129.139 Opcional


C++/CLI para
ferramentas de
build v143 (mais
recente)

Microsoft.VisualStudio.Component.VC.Llvm.Clang Compilador do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5)

Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset Suporte do 17.8.34129.139 Opcional


MSBuild para o
conjunto de
ferramentas LLVM
(clang-cl)

Microsoft.VisualStudio.Component.VC.Modules.x86.x64 Módulos do C++ 17.8.34129.139 Opcional


para ferramentas
de build v143
(x64/x86 –
experimental)

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de
build do VS 2022
C++
ARM64/ARM64EC
(mais recentes)
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2017 x64/x86
(v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang Ferramentas do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5 -
x64/x86)

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2019 x64/x86
(v14.29)

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cpp Modelos do SDK 17.8.34129.139 Opcional


do Aplicativo
Windows C++

Desenvolvimento de jogos com C++


ID: Microsoft.VisualStudio.Workload.NativeGame

Descrição: usar todo o poder do C++ para criar jogos profissionais da plataforma DirectX, Unreal ou Cocos2d.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do
ID do componente Nome Versão Tipo de
dependência

C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis
do C++ 2022

Microsoft.VisualStudio.Component.Windows10SDK Runtime C 17.8.34129.139 Obrigatório


Universal do
Windows

Component.Unreal.Ide Suporte do IDE 17.8.34129.139 Recomendadas


para Unreal
Engine

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build 17.8.34129.139 Recomendadas


Insights

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Component.Android.NDK.R23C Android NDK 17.8.34129.139 Opcional


(R23C)

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Opcional


SDK do Android

Component.Cocos Cocos 17.8.34129.139 Opcional

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build
ID do componente Nome Versão Tipo de
dependência

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.Android Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Android para
C++

Component.OpenJDK OpenJDK 17.8.34129.139 Opcional


(distribuição da
Microsoft)

Component.Unreal Instalador do 17.8.34129.139 Opcional


Unreal Engine

Component.Unreal.Android Suporte do IDE 17.8.34129.139 Opcional


do Android para
Unreal Engine

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.Net.ComponentGroup.TargetingPacks.Common Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as 17.8.34129.139 Opcional


tarefas de
compilação do
NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Opcional


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Unreal.TestAdapter Adaptador de 17.8.34129.139 Opcional


Teste do Unreal
Engine
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)

Desenvolvimento móvel com C++


ID: Microsoft.VisualStudio.Workload.NativeMobile

Descrição: criar aplicativos de plataforma cruzada para o iOS, Android ou Windows usando o C++.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Android.SDK.MAUI Configuração do SDK do Android 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais do C++ 17.8.34129.139 Obrigatório

Component.Android.Emulator.MDD Google Android Emulator (instalação 17.8.34129.139 Recomendadas


local)

Component.Android.NDK.R23C Android NDK (R23C) 17.8.34129.139 Recomendadas

Component.HAXM.Private Intel HAXM (Hardware Accelerated 17.8.34129.139 Recomendadas


Execution Manager) (instalação local)

Component.MDD.Android Ferramentas de desenvolvimento do 17.8.34129.139 Recomendadas


Android para C++

Component.OpenJDK OpenJDK (distribuição da Microsoft) 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – Aceleração de Build 17.8.34129.139 Opcional

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.IOS Ferramentas de desenvolvimento do iOS 17.8.34129.139 Opcional


para C++

Desenvolvimento do .NET Multi-Platform App UI


ID: Microsoft.VisualStudio.Workload.NetCrossPlat

Descrição: crie aplicativos Android, iOS, Windows e Mac a partir de uma única base de código usando C# com .NET
MAUI.
Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

android SDK do .NET 34.0.43.0 Obrigatório


para Android

Component.OpenJDK OpenJDK 17.8.34129.139 Obrigatório


(distribuição da
Microsoft)

Component.Xamarin.RemotedSimulator Xamarin 17.8.34129.139 Obrigatório


Remoted
Simulator

ios SDK do .NET 17.0.8478.0 Obrigatório


para iOS

maccatalyst SDK do .NET 17.0.8478.0 Obrigatório


para Mac
Catalyst

maui.blazor SDK do .NET 8.0.3.0 Obrigatório


MAUI para
Blazor Desktop

maui.core .NET MAUI SDK 8.0.3.0 Obrigatório


Core

maui.windows SDK do .NET 8.0.3.0 Obrigatório


MAUI para
Windows

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

microsoft.net.runtime.android Ferramentas de 8.0.23.53103 Obrigatório


build do Android
do .NET

microsoft.net.runtime.android.aot AoT 8.0.23.53103 Obrigatório


(Ferramentas de
Build do
Android) do .NET

microsoft.net.runtime.android.aot.net7 AoT 8.0.23.53103 Obrigatório


(Ferramentas de
Build do
ID do componente Nome Versão Tipo de
dependência

Android) do .NET
7.0

microsoft.net.runtime.android.net7 .NET 7.0 Android 8.0.23.53103 Obrigatório


Build Tools

microsoft.net.runtime.ios Ferramentas de 8.0.23.53103 Obrigatório


Build do .NET
para iOS

microsoft.net.runtime.ios.net7 Ferramentas de 8.0.23.53103 Obrigatório


Build do .NET 7.0
para iOS

microsoft.net.runtime.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

microsoft.net.runtime.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do
Catalisador do
Mac do .NET 7.0

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Obrigatório


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Obrigatório


Compartilhadas
de Build Móveis
do .NET 7.0

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.Merq Ferramentas 17.8.34129.139 Obrigatório


internas comuns
do Xamarin

Microsoft.VisualStudio.Component.MonoDebugger Depurador mono 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.All .NET MAUI 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.Android MAUI do .NET 17.8.34129.139 Obrigatório


para Android

Microsoft.VisualStudio.ComponentGroup.Maui.Blazor Suporte do 17.8.34129.139 Obrigatório


Blazor para
aplicativos MAUI
do .NET

Microsoft.VisualStudio.ComponentGroup.Maui.iOS MAUI do .NET 17.8.34129.139 Obrigatório


para iOS

Microsoft.VisualStudio.ComponentGroup.Maui.MacCatalyst .NET MAUI para 17.8.34129.139 Obrigatório


Mac Catalyst

Microsoft.VisualStudio.ComponentGroup.Maui.Shared Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET MAUI

Microsoft.VisualStudio.ComponentGroup.Maui.Windows .NET MAUI para 17.8.34129.139 Obrigatório


Windows

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento
MSIX

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.TemplateEngine Mecanismo de 17.8.34129.139 Obrigatório


modelagem
ASP.NET

runtimes.ios Runtimes do iOS 8.0.23.53103 Obrigatório


do .NET

runtimes.ios.net7 Runtimes do iOS 8.0.23.53103 Obrigatório


do .NET 7.0

runtimes.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

runtimes.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do
Catalisador do
Mac do .NET 7.0

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Recomendadas


SDK do Android

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional


ID do componente Nome Versão Tipo de
dependência

Component.Xamarin Xamarin 17.8.34129.139 Opcional

Desenvolvimento Web e ASP.NET


ID: Microsoft.VisualStudio.Workload.NetWeb

Descrição: compile aplicativos Web usando ASP.NET Core, ASP.NET, HTML/JavaScript e contêineres incluindo
suporte ao Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para
.NET
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F#
para projetos
Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de 17.8.34129.139 Obrigatório


linha de
comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL
Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server 17.8.34129.139 Obrigatório


Express 2019
LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Obrigatório


de modelo de
texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Recomendadas


Azure WebJobs

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.AspNet Modelos de item 17.8.34129.139 Recomendadas


e projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Recomendadas


avançados do
ASP.NET

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just- 17.8.34129.139 Recomendadas


In-Time

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do 17.8.34129.139 Recomendadas


Entity Framework
6

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.WslDebugging Depuração do 17.8.34129.139 Recomendadas


.NET com WSL

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
para Azure
Functions e
Azure WebJobs

Microsoft.VisualStudio.ComponentGroup.Web.CloudTools Ferramentas de 17.8.34129.139 Recomendadas


nuvem de
desenvolvimento
para a Web

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net6 Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET 6.0

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Opcional


Compartilhadas
ID do componente Nome Versão Tipo de
dependência

de Build Móveis
do .NET 7.0

microsoft.net.sdk.emscripten Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
(Emscripten)

microsoft.net.sdk.emscripten.net6 Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
.NET6
(Emscripten)

microsoft.net.sdk.emscripten.net7 Ferramentas de 8.0.9.3002 Opcional


Build do .NET
WebAssembly
.NET7
(Emscripten)

Microsoft.NetCore.Component.Runtime.6.0 Runtime do .NET 17.8.34308.169 Opcional


6.0 (suporte a
longo prazo)

Microsoft.VisualStudio.Component.TeamsFx Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Microsoft
Teams

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.ComponentGroup.AdditionalWebProjectTemplates Modelos de 17.8.34129.139 Opcional


projeto
adicionais
(versões
anteriores)

Microsoft.VisualStudio.ComponentGroup.IISDevelopment Suporte ao IIS no 17.8.34129.139 Opcional


tempo de
desenvolvimento

wasm.tools Ferramentas de 8.0.23.53103 Opcional


build do .NET
WebAssembly

wasm.tools.net6 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 6.0

wasm.tools.net7 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 7.0

Desenvolvimento do Node.js
ID: Microsoft.VisualStudio.Workload.Node
Descrição: criar aplicativos de rede escaláveis usando o Node.js, um runtime JavaScript controlado por evento
assíncrono.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript

Microsoft.VisualStudio.Component.Node.Tools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento em
Node.js

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Obrigatório


ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Desenvolvimento para Office/SharePoint


ID: Microsoft.VisualStudio.Workload.Office

Descrição: criar suplementos do Office e SharePoint, soluções do SharePoint e suplementos do VSTO usando o C#,
VB e JavaScript.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para .NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento para
.NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise 17.8.34129.139 Obrigatório


do Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Obrigatório


F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Obrigatório


F# para projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
área de trabalho do
.NET

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Obrigatório


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Obrigatório


comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Sharepoint.Tools Office Developer Tools 17.8.34129.139 Obrigatório


para Visual Studio

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Obrigatório


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Obrigatório


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.Component.Workflow Windows Workflow 17.8.34129.139 Obrigatório


Foundation

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web 17.8.34129.139 Obrigatório


e ASP.NET
ID do componente Nome Versão Tipo de
dependência

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.TeamOffice VSTO (Visual Studio 17.8.34129.139 Recomendadas


Tools para Office)

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.8.1

Microsoft.VisualStudio.ComponentGroup.Sharepoint.WIF Windows Identity 17.8.34129.139 Opcional


Foundation 3.5

Desenvolvimento em Python
ID: Microsoft.VisualStudio.Workload.Python

Descrição: edição, depuração, desenvolvimento interativo e controle do código-fonte para o Python.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Obrigatório


Python

Component.CPython39.x64 Python 3 de 64 bits (3.9.13) 3.9.13 Opcional


(sem suporte)

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Opcional

Component.Microsoft.VisualStudio.RazorExtension Razor Language Services 17.8.34129.139 Opcional

Component.Microsoft.Web.LibraryManager Gerenciador de Biblioteca 17.8.34129.139 Opcional

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Opcional

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Opcional

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Opcional

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do ClickOnce 17.8.34129.139 Opcional


para .NET

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Opcional


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Opcional

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Opcional

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Opcional

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da Web
para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de Criação do 17.8.34129.139 Opcional


Azure

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do Azure para 17.8.34129.139 Opcional


.NET

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de Computação 17.8.34129.139 Opcional


do Azure

Microsoft.VisualStudio.Component.Azure.Waverton Principais ferramentas dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de build dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem F# 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem F# para 17.8.34129.139 Opcional


projetos Web

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Opcional


JavaScript e TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Opcional


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Opcional


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Opcional


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Opcional


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Opcional


de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Opcional


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Opcional


ASP.NET

Desenvolvimento para a Plataforma Universal do Windows


ID: Microsoft.VisualStudio.Workload.Universal

Descrição: criar aplicativos para a Plataforma Universal do Windows com o C#, VB ou, opcionalmente, o C++.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.NetFX.Native .NET Nativo 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.Blend Blend for Visual 17.8.34129.139 Obrigatório


Studio

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Obrigatório


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Obrigatório


criação de perfil do
.NET

Microsoft.VisualStudio.Component.Graphics Editores de imagens e 17.8.34129.139 Obrigatório


modelos 3D

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


ID do componente Nome Versão Tipo de
dependência

pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR 17.8.34129.139 Obrigatório


do SQL Server

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Obrigatório


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento MSIX

Microsoft.VisualStudio.ComponentGroup.UWP.NetCoreAndStandard .NET Native e .NET 17.8.34129.139 Obrigatório


Standard

Microsoft.VisualStudio.ComponentGroup.UWP.Support Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows

Microsoft.VisualStudio.ComponentGroup.UWP.Xamarin Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows para
Xamarin

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos 17.8.34129.139 Opcional


e criador de perfil de
GPU do DirectX

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows
C++ para ferramentas
de build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows
do C++ para
ferramentas de build
v143 (ARM64EC)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Opcional


principais do C++
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de build
do VS 2022 C++
ARM64/ARM64EC
(mais recentes)

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
x64/x86 (v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.IpOverUsb Conectividade de 17.8.34129.139 Opcional


dispositivos USB

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v141)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v142 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
ID do componente Nome Versão Tipo de
dependência

do Windows do C++
(v142)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
x64/x86 (v14.29)

Desenvolvimento de extensões do Visual Studio


ID: Microsoft.VisualStudio.Workload.VisualStudioExtension

Descrição: criar complementos e extensões para o Visual Studio, incluindo novos comandos, analisadores de
código e janelas de ferramentas.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.6.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.6

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VSSDK SDK do Visual 17.8.34129.139 Obrigatório


Studio

Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites Pré-requisitos 17.8.34129.139 Obrigatório


para o
desenvolvimento
de extensões do
Visual Studio
ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.CodeAnalysis.SDK SDK da 17.8.34129.139 Recomendadas


Plataforma do
Compilador .NET

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Recomendadas


de modelo de
texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Opcional


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DslTools SDK de 17.8.34129.139 Opcional


Modelagem

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas que podem ser
selecionados como um componente individual.

ID do componente Nome Versão

macOS SDK do .NET para macOS 14.0.8478.0

Microsoft.Component.HelpViewer Visualizador da Ajuda 17.8.34129.139

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de desenvolvimento do 17.8.34129.139


.NET Framework 3.5

Microsoft.Net.Component.4.6.1.SDK SDK do .NET Framework 4.6.1 17.8.34129.139

Microsoft.Net.Component.4.6.2.SDK SDK do .NET Framework 4.6.2 17.8.34129.139

Microsoft.Net.Component.4.7.1.SDK .NET Framework 4.7.1 SDK 17.8.34129.139

Microsoft.Net.Component.4.7.2.SDK SDK do .NET Framework 4.7.2 17.8.34129.139

Microsoft.Net.Component.4.7.SDK SDK do .NET Framework 4.7 17.8.34129.139

Microsoft.Net.Core.Component.SDK.2.1 Runtime do .NET Core 2.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.3.1 Runtime do .NET Core 3.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.5.0 Runtime do .NET 5.0 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.7.0 Runtime do .NET 7.0 17.8.34308.169

Microsoft.NetCore.ComponentGroup.DevelopmentTools.2.1 Ferramentas de desenvolvimento para 17.8.34129.139


.NET Core 2.1 (sem suporte)
ID do componente Nome Versão

Microsoft.NetCore.ComponentGroup.Web.2.1 Ferramentas de desenvolvimento da 17.8.34129.139


Web para .NET Core 2.1 (sem suporte)

Microsoft.VisualStudio.Component.AzureDevOps.OfficeIntegration Integração do Azure DevOps ao 17.8.34129.139


Office

Microsoft.VisualStudio.Component.ClassDesigner Designer de Classe 17.8.34129.139

Microsoft.VisualStudio.Component.Debugger.Arm64RemoteDebugger Depurador remoto ARM64 17.8.34129.139

Microsoft.VisualStudio.Component.DependencyValidation.Community Validação de dependência 17.8.34129.139

Microsoft.VisualStudio.Component.Git Git para Windows 17.8.34129.139

Microsoft.VisualStudio.Component.GraphDocument Editor DGML 17.8.34129.139

Microsoft.VisualStudio.Component.LinqToSql Ferramentas do LINQ to SQL 17.8.34129.139

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64 ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.Spectre ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v142 (14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64 MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.Spectre MFC C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64 MSVC v142 – ferramentas de build do 17.8.34129.139


C++ para VS 2019 x64/x86 (v14.29-
16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 x64/x86 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM (v14.30-
17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM64 (v14.30-
17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64 ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
ID do componente Nome Versão

(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64 C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64.Spectre MSVC v143: VS 2022 C++ x64/x86 libs 17.8.34129.139


mitigados por Spectre (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(Sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64 ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64 C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.31 – 17.1) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre de VS 2022 C++
ARM (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ ARM64 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
ARM64 (v14.32-17.2)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64 ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64 C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ x64/x86 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64.Spectre MSVC v143 – VS 2022 C++ x64/x86 17.8.34129.139


Spectre-mitigated libs (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.33-17.3)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64 ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64.Spectre ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64 MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.33-17.3)
ID do componente Nome Versão

(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.33 – 17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64 ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64.Spectre ATL do C++ v14.34(17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64 C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
ID do componente Nome Versão

Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64 Ferramentas de build do MSVC v143 – 17.8.34129.139


VS 2022 C++ x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


pelo Espectro do VS 2022 C++
x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM.Spectre MSVC v143: VS 2022 C++ ARM libs 17.8.34129.139


mitigados por Spectre (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64 MSVC v143: VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de
build (v14.35-17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.35 – 17.5)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM.Spectre ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64 ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64 MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.35 – 17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64 ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.36.17.6.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64 C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.Spectre MFC do C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64 ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.Spectre ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64 MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM.Spectre MSVC v143 – Libs atenuadas pelo 17.8.34129.139


ARM do VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64 MSVC v143 – VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de
build (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64.Spectre MSVC v143 - VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC Libs mitigadas pelo
espectro (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com ARM
(Mitigações de Spectre)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64 ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64.Spectre C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 com
ID do componente Nome Versão

Mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64 C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64.Spectre MSVC v143 - VS 2022 C++ x64/x86 17.8.34129.139


Libs mitigadas pelo espectro (v14.38-
17.8)

Microsoft.VisualStudio.Component.VC.ATL.ARM ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM64 ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes com mitigações
de Spectre (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.MFC.ARM MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM64 MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes com
mitigações de Spectre
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.Redist.MSM MSMs dos Pacotes Redistribuíveis do 17.8.34129.139


C++ 2022

Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(mais recente)

Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (mais recentes)

Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ATL ATL do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64 ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v141 (14.16)

Microsoft.VisualStudio.Component.VC.v141.MFC MFC do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64 MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 x64/x86 (v14.16)

Microsoft.VisualStudio.Component.VisualStudioData Fontes de dados e referências de 17.8.34129.139


serviço

Microsoft.VisualStudio.Component.WinXP Suporte do Windows XP do C++ para 17.8.34129.139


ferramentas do VS 2017 (v141)
[Preterido]

Microsoft.VisualStudio.Web.Mvc4.ComponentGroup ASP.NET MVC 4 17.8.34129.139

tvOS SDK do .NET para tvOS 17.0.8478.0

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução de problemas de
instalação e atualização do Visual Studio para obter diretrizes passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas
relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador do
Visual Studio e no IDE do Visual Studio. Se você for Administrador de TI e não tiver o Visual Studio instalado,
envie os comentários de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de
Desenvolvedores do Visual Studio .

Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes do Visual Studio
Community
Artigo • 22/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio na linha de comando ou
que podem ser especificadas como uma dependência em um manifesto do VSIX. Adicionaremos outros
componentes quando lançarmos atualizações para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de trabalho e por uma tabela dos
componentes que estão disponíveis para a carga de trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são afiliados a nenhuma carga
de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de Componente. Use as
tabelas desta página para determinar as dependências mínimas de componentes. Em alguns cenários, isso pode
significar que somente um componente de uma carga de trabalho é especificado. Em outros cenários, isso pode
significar que vários componentes de uma única carga de trabalho ou que vários componentes de várias cargas de
trabalho são especificados. Para obter mais informações, confira a página Como migrar projetos de extensibilidade
para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar parâmetros de linha de comando
para instalar o Visual Studio. Para conseguir uma lista de IDs de carga de trabalho e de componente para outros
produtos, confira a página IDs de carga de trabalho e de componente do Visual Studio. Por fim, confira a página
componentes sem suporte do Visual Studio para ter uma listagem desses componentes que fizeram a transição
para fora de suporte e agora são considerados inseguros. Recomendamos que você remova os componentes
durante a próxima atualização.

Editor principal do Visual Studio (incluído no Visual Studio


Community 2022)
ID: Microsoft.VisualStudio.Workload.CoreEditor

Descrição: a experiência de shell do Visual Studio Core, incluindo a edição de código com reconhecimento de
sintaxe, controle do código-fonte e gerenciamento de itens de trabalho.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de dependência

Microsoft.VisualStudio.Component.CoreEditor Editor do Visual Studio Core 17.8.34129.139 Obrigatório

Desenvolvimento do Azure
ID: Microsoft.VisualStudio.Workload.Azure
Descrição: SDK, ferramentas e projetos do Azure para o desenvolvimento de aplicativos na nuvem e a criação de
recursos usando o .NET ou o .NET Framework. Também inclui ferramentas para conteinerizar seu aplicativo,
incluindo o suporte do Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Obrigatório


Azure WebJobs

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para .NET

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do 17.8.34129.139 Obrigatório


Azure para .NET

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
ID do componente Nome Versão Tipo de
dependência

de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F# para
projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha 17.8.34129.139 Obrigatório


de comando do
SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.Azure.Prerequisites Pré-requisitos de 17.8.34129.139 Obrigatório


desenvolvimento
do Azure

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para Azure
Functions e Azure
WebJobs

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure 17.8.34129.139 Recomendadas


Data Lake e Stream
Analytics

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework
4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de 17.8.34129.139 Recomendadas


Criação do Azure

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de 17.8.34129.139 Recomendadas


Computação do
Azure

Microsoft.VisualStudio.Component.Azure.Powershell Powershell do 17.8.34129.139 Recomendadas


Azure

Microsoft.VisualStudio.Component.Azure.ResourceManager.Tools Principais 17.8.34129.139 Recomendadas


ferramentas do
Azure Resource
Manager

Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools Ferramentas do 17.8.34129.139 Recomendadas


Service Fabric

Microsoft.VisualStudio.Component.Azure.Waverton Principais 17.8.34129.139 Recomendadas


ferramentas dos
Serviços de Nuvem
do Azure

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de 17.8.34129.139 Recomendadas


build dos Serviços
ID do componente Nome Versão Tipo de
dependência

de Nuvem do
Azure

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
.NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web

Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices Ferramentas dos 17.8.34129.139 Recomendadas


Serviços de Nuvem
do Azure

Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools Ferramentas do 17.8.34129.139 Recomendadas


Azure Resource
Manager

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1

Microsoft.VisualStudio.Component.AspNet Modelos de item e 17.8.34129.139 Opcional


projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Opcional


avançados do
ID do componente Nome Versão Tipo de
dependência

ASP.NET

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Armazenamento de dados e processamento


ID: Microsoft.VisualStudio.Workload.Data

Descrição: conectar, desenvolver e testar soluções de dados com o SQL Server, Azure Data Lake ou Hadoop.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.Azure.DataLake.Tools Ferramentas Azure Data 17.8.34129.139 Recomendadas


Lake e Stream Analytics

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Recomendadas

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Recomendadas

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Recomendadas


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Recomendadas


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Recomendadas


Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Recomendadas


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Recomendadas


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Recomendadas


de texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Opcional


área de trabalho

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Aplicativos de ciência de dados e análise


ID: Microsoft.VisualStudio.Workload.DataScience

Descrição: linguagens e ferramentas para criar aplicativos de ciência de dados, incluindo Python e F#.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Recomendadas


Python

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Recomendadas


do .NET Framework 4.7.2

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Recomendadas


conectividade e publicação

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem F# da 17.8.34129.139 Recomendadas


área de trabalho

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Recomendadas


JavaScript e TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Desenvolvimento para área de trabalho com .NET


ID: Microsoft.VisualStudio.Workload.ManagedDesktop

Descrição: crie WPF, Windows Forms e aplicativos de console usando C#, Visual Basic e F# com .NET e .NET
Framework.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
ID do componente Nome Versão Tipo de
dependência

área de trabalho do
.NET

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.ComponentGroup.Blend Blend for Visual Studio 17.8.34129.139 Recomendadas

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Recomendadas


ClickOnce para .NET

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento para
.NET

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de criação 17.8.34129.139 Recomendadas


de perfil do .NET

Microsoft.VisualStudio.Component.DotNetModelBuilder ML.NET Model Builder 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do Entity 17.8.34129.139 Recomendadas


Framework 6

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Recomendadas


F#

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Recomendadas


JavaScript e TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Recomendadas


NuGet

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web 17.8.34129.139 Recomendadas


e ASP.NET

Component.Dotfuscator Proteção PreEmptive – 17.8.34129.139 Opcional


Dotfuscator

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional


ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Opcional


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Opcional


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.8.1

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise 17.8.34129.139 Opcional


do Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp.Desktop Suporte à linguagem 17.8.34129.139 Opcional


F# da área de trabalho

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Opcional


F# para projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL
Server

Microsoft.VisualStudio.Component.PortableLibrary Pacote de 17.8.34129.139 Opcional


direcionamento da
Biblioteca Portátil do
.NET

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Opcional


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Opcional


Empacotamento MSIX

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Opcional


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cs modelos do SDK do 17.8.34129.139 Opcional


Aplicativo Windows C#

Desenvolvimento de jogos com Unity


ID: Microsoft.VisualStudio.Workload.ManagedGame

Descrição: criar jogos 2D e 3D com o Unity, um ambiente de desenvolvimento avançado de plataforma cruzada.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento 17.8.34129.139 Obrigatório


do .NET Framework 4.7.1

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Obrigatório


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Unity Ferramentas do Visual 17.8.34129.139 Obrigatório


Studio para Unity

Component.UnityEngine.x64 Unity Hub 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Linux e desenvolvimento integrado com C++


ID: Microsoft.VisualStudio.Workload.NativeCrossPlat

Descrição: crie e depure aplicativos em execução em um ambiente Linux ou em um dispositivo inserido.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.MDD.Linux Desenvolvimento do C++ 17.8.34129.139 Obrigatório


para Linux

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Obrigatório


do C++

Component.Linux.CMake Ferramentas CMake do 17.8.34129.139 Recomendadas


C++ para Linux

Component.Linux.RemoteFileExplorer Explorador de Arquivos 17.8.34129.139 Recomendadas


Remoto para Linux

Microsoft.VisualStudio.Component.Embedded Ferramentas inseridas e 17.8.34129.139 Recomendadas


IoT

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Recomendadas


ASP.NET

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.MDD.Linux.GCC.arm Ferramentas herdadas 17.8.34129.139 Opcional


inseridas e de IoT

Desenvolvimento para desktop com C++


ID: Microsoft.VisualStudio.Workload.NativeDesktop
Descrição: crie aplicativos C++ modernos para Windows usando as ferramentas de sua escolha, incluindo MSVC,
Clang, CMake ou MSBuild.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis do
C++ 2022

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core Principais recursos 17.8.34129.139 Obrigatório


de área de
trabalho do C++

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build Insights 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In- 17.8.34129.139 Recomendadas


Time

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Recomendadas


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Recomendadas


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SecurityIssueAnalysis Análise de 17.8.34129.139 Recomendadas


problemas de
segurança

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.ATL ATL do C++ para 17.8.34129.139 Recomendadas


as mais recentes
ID do componente Nome Versão Tipo de
dependência

ferramentas de
build v143 (x86 &
x64)

Microsoft.VisualStudio.Component.VC.CMake.Project Ferramentas 17.8.34129.139 Recomendadas


CMake do C++
para Windows

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil do
C++

Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest Adaptador de 17.8.34129.139 Recomendadas


Teste para
Boost.Test

Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest Adaptador de 17.8.34129.139 Recomendadas


Teste para Google
Test

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86 (mais
recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Recomendadas


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.CMake Editor JSON 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Microsoft.Component.VC.Runtime.UCRTSDK SDK do CRT 17.8.34129.139 Opcional


Universal do
Windows

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework
4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Opcional


JavaScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows C++ para
ferramentas de
build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
para ferramentas
de build v143
(ARM64EC)

Microsoft.VisualStudio.Component.VC.140 MSVC v140 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2015 (v14.00)

Microsoft.VisualStudio.Component.VC.ATLMFC MFC do C++ para 17.8.34129.139 Opcional


as mais recentes
ferramentas de
build v143 (x86 &
x64)

Microsoft.VisualStudio.Component.VC.CLI.Support Suporte do 17.8.34129.139 Opcional


C++/CLI para
ferramentas de
build v143 (mais
recente)

Microsoft.VisualStudio.Component.VC.Llvm.Clang Compilador do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5)

Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset Suporte do 17.8.34129.139 Opcional


MSBuild para o
conjunto de
ferramentas LLVM
(clang-cl)

Microsoft.VisualStudio.Component.VC.Modules.x86.x64 Módulos do C++ 17.8.34129.139 Opcional


para ferramentas
de build v143
(x64/x86 –
experimental)

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de
build do VS 2022
C++
ARM64/ARM64EC
(mais recentes)
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2017 x64/x86
(v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang Ferramentas do 17.8.34129.139 Opcional


C++ Clang para
Windows (16.0.5 -
x64/x86)

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de
build do C++ para
VS 2019 x64/x86
(v14.29)

Microsoft.VisualStudio.ComponentGroup.WindowsAppSDK.Cpp Modelos do SDK 17.8.34129.139 Opcional


do Aplicativo
Windows C++

Desenvolvimento de jogos com C++


ID: Microsoft.VisualStudio.Workload.NativeGame

Descrição: usar todo o poder do C++ para criar jogos profissionais da plataforma DirectX, Unreal ou Cocos2d.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do
ID do componente Nome Versão Tipo de
dependência

C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos 17.8.34129.139 Obrigatório


Pacotes
Redistribuíveis
do C++ 2022

Microsoft.VisualStudio.Component.Windows10SDK Runtime C 17.8.34129.139 Obrigatório


Universal do
Windows

Component.Unreal.Ide Suporte do IDE 17.8.34129.139 Recomendadas


para Unreal
Engine

Microsoft.VisualStudio.Component.CppBuildInsights C++ Build 17.8.34129.139 Recomendadas


Insights

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de 17.8.34129.139 Recomendadas


gráficos e criador
de perfil de GPU
do DirectX

Microsoft.VisualStudio.Component.HLSL HLSL Tools 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.VC.ASAN C++ 17.8.34129.139 Recomendadas


AddressSanitizer

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Recomendadas


build do MSVC
v143 - VS 2022
C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.Vcpkg gerenciador de 17.8.34129.139 Recomendadas


pacotes vcpkg

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 17.8.34129.139 Recomendadas


11 (10.0.22621.0)

Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit Windows 17.8.34129.139 Recomendadas


Performance
Toolkit

Component.Android.NDK.R23C Android NDK 17.8.34129.139 Opcional


(R23C)

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Opcional


SDK do Android

Component.Cocos Cocos 17.8.34129.139 Opcional

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – 17.8.34129.139 Opcional


Aceleração de
Build
ID do componente Nome Versão Tipo de
dependência

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.Android Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Android para
C++

Component.OpenJDK OpenJDK 17.8.34129.139 Opcional


(distribuição da
Microsoft)

Component.Unreal Instalador do 17.8.34129.139 Opcional


Unreal Engine

Component.Unreal.Android Suporte do IDE 17.8.34129.139 Opcional


do Android para
Unreal Engine

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.Net.ComponentGroup.TargetingPacks.Common Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as 17.8.34129.139 Opcional


tarefas de
compilação do
NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Opcional


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Unreal.TestAdapter Adaptador de 17.8.34129.139 Opcional


Teste do Unreal
Engine
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 17.8.34129.139 Opcional


10 (10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 17.8.34129.139 Opcional


11 (10.0.22000.0)

Desenvolvimento móvel com C++


ID: Microsoft.VisualStudio.Workload.NativeMobile

Descrição: criar aplicativos de plataforma cruzada para o iOS, Android ou Windows usando o C++.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Android.SDK.MAUI Configuração do SDK do Android 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais do C++ 17.8.34129.139 Obrigatório

Component.Android.Emulator.MDD Google Android Emulator (instalação 17.8.34129.139 Recomendadas


local)

Component.Android.NDK.R23C Android NDK (R23C) 17.8.34129.139 Recomendadas

Component.HAXM.Private Intel HAXM (Hardware Accelerated 17.8.34129.139 Recomendadas


Execution Manager) (instalação local)

Component.MDD.Android Ferramentas de desenvolvimento do 17.8.34129.139 Recomendadas


Android para C++

Component.OpenJDK OpenJDK (distribuição da Microsoft) 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Incredibuild IncrediBuild – Aceleração de Build 17.8.34129.139 Opcional

Component.IncredibuildMenu IncredibuildMenu 1.6.0.6 Opcional

Component.MDD.IOS Ferramentas de desenvolvimento do iOS 17.8.34129.139 Opcional


para C++

Desenvolvimento do .NET Multi-Platform App UI


ID: Microsoft.VisualStudio.Workload.NetCrossPlat

Descrição: crie aplicativos Android, iOS, Windows e Mac a partir de uma única base de código usando C# com .NET
MAUI.
Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

android SDK do .NET 34.0.43.0 Obrigatório


para Android

Component.OpenJDK OpenJDK 17.8.34129.139 Obrigatório


(distribuição da
Microsoft)

Component.Xamarin.RemotedSimulator Xamarin 17.8.34129.139 Obrigatório


Remoted
Simulator

ios SDK do .NET 17.0.8478.0 Obrigatório


para iOS

maccatalyst SDK do .NET 17.0.8478.0 Obrigatório


para Mac
Catalyst

maui.blazor SDK do .NET 8.0.3.0 Obrigatório


MAUI para
Blazor Desktop

maui.core .NET MAUI SDK 8.0.3.0 Obrigatório


Core

maui.windows SDK do .NET 8.0.3.0 Obrigatório


MAUI para
Windows

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

microsoft.net.runtime.android Ferramentas de 8.0.23.53103 Obrigatório


build do Android
do .NET

microsoft.net.runtime.android.aot AoT 8.0.23.53103 Obrigatório


(Ferramentas de
Build do
Android) do .NET

microsoft.net.runtime.android.aot.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do Android
ID do componente Nome Versão Tipo de
dependência

para .NET 7.0


(AoT)

microsoft.net.runtime.android.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do Android
para .NET 7.0

microsoft.net.runtime.ios Ferramentas de 8.0.23.53103 Obrigatório


Build do .NET
para iOS

microsoft.net.runtime.ios.net7 Ferramentas de 8.0.23.53103 Obrigatório


Build do iOS
para .NET 7.0

microsoft.net.runtime.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

microsoft.net.runtime.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do Mac
Catalyst para o
.NET 7.0

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Obrigatório


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Obrigatório


Compartilhadas
de Build Móveis
do .NET 7.0

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.Merq Ferramentas 17.8.34129.139 Obrigatório


internas comuns
do Xamarin

Microsoft.VisualStudio.Component.MonoDebugger Depurador mono 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.All .NET MAUI 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.Maui.Android MAUI do .NET 17.8.34129.139 Obrigatório


para Android

Microsoft.VisualStudio.ComponentGroup.Maui.Blazor Suporte do 17.8.34129.139 Obrigatório


Blazor para
aplicativos MAUI
do .NET

Microsoft.VisualStudio.ComponentGroup.Maui.iOS MAUI do .NET 17.8.34129.139 Obrigatório


para iOS

Microsoft.VisualStudio.ComponentGroup.Maui.MacCatalyst .NET MAUI para 17.8.34129.139 Obrigatório


Mac Catalyst

Microsoft.VisualStudio.ComponentGroup.Maui.Shared Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET MAUI

Microsoft.VisualStudio.ComponentGroup.Maui.Windows .NET MAUI para 17.8.34129.139 Obrigatório


Windows

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento
MSIX

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.TemplateEngine Mecanismo de 17.8.34129.139 Obrigatório


modelagem
ASP.NET

runtimes.ios Runtimes do iOS 8.0.23.53103 Obrigatório


do .NET

runtimes.ios.net7 Runtimes do iOS 8.0.23.53103 Obrigatório


para .NET 7.0

runtimes.maccatalyst Ferramentas de 8.0.23.53103 Obrigatório


build do Catalyst
do .NET Mac

runtimes.maccatalyst.net7 Ferramentas de 8.0.23.53103 Obrigatório


build do Mac
Catalyst para o
.NET 7.0

Component.Android.SDK.MAUI Configuração do 17.8.34129.139 Recomendadas


SDK do Android

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional


ID do componente Nome Versão Tipo de
dependência

Component.Xamarin Xamarin 17.8.34129.139 Opcional

Desenvolvimento Web e ASP.NET


ID: Microsoft.VisualStudio.Workload.NetWeb

Descrição: compile aplicativos Web usando ASP.NET Core, ASP.NET, HTML/JavaScript e contêineres incluindo
suporte ao Docker.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para
.NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 17.8.34308.169 Obrigatório


8.0

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
da Web para
.NET
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
de contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à 17.8.34129.139 Obrigatório


linguagem F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à 17.8.34129.139 Obrigatório


linguagem F#
para projetos
Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às 17.8.34129.139 Obrigatório


linguagens
JavaScript e
TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga 17.8.34129.139 Obrigatório


de trabalho de
área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de 17.8.34129.139 Obrigatório


linha de
comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados 17.8.34129.139 Obrigatório


CLR do SQL
Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados 17.8.34129.139 Obrigatório


para suporte do
SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server 17.8.34129.139 Obrigatório


Express 2019
LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data 17.8.34129.139 Obrigatório


Tools
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Obrigatório


de modelo de
texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento
para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento 17.8.34129.139 Obrigatório


Web e ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Component.Microsoft.VisualStudio.Web.AzureFunctions Ferramentas do 17.8.34129.139 Recomendadas


Azure WebJobs

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento
do .NET
Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
do .NET
Framework 4.8

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Recomendadas


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just- 17.8.34129.139 Recomendadas


In-Time

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.EntityFramework Ferramentas do 17.8.34129.139 Recomendadas


Entity Framework
6

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da 17.8.34129.139 Recomendadas


Web

Microsoft.VisualStudio.Component.WslDebugging Depuração do 17.8.34129.139 Recomendadas


.NET com WSL

Microsoft.VisualStudio.ComponentGroup.AzureFunctions Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento
para Azure
Functions e
Azure WebJobs
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.Web.CloudTools Ferramentas de 17.8.34129.139 Recomendadas


nuvem de
desenvolvimento
para a Web

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento
do .NET
Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do .NET
Framework 4.8.1

microsoft.net.runtime.mono.tooling Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET

microsoft.net.runtime.mono.tooling.net6 Ferramentas de 8.0.23.53103 Opcional


build móvel
compartilhadas
do .NET 6.0

microsoft.net.runtime.mono.tooling.net7 Ferramentas 8.0.23.53103 Opcional


Compartilhadas
de Build Móveis
do .NET 7.0

microsoft.net.sdk.emscripten Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
(Emscripten)
ID do componente Nome Versão Tipo de
dependência

microsoft.net.sdk.emscripten.net6 Ferramentas de 8.0.9.3002 Opcional


build do .NET
WebAssembly
.NET6
(Emscripten)

microsoft.net.sdk.emscripten.net7 Ferramentas de 8.0.9.3002 Opcional


Build do .NET
WebAssembly
.NET7
(Emscripten)

Microsoft.NetCore.Component.Runtime.6.0 Runtime do .NET 17.8.34308.169 Opcional


6.0 (suporte a
longo prazo)

Microsoft.VisualStudio.Component.AspNet Modelos de item 17.8.34129.139 Opcional


e projeto .NET
Framework

Microsoft.VisualStudio.Component.AspNet45 Recursos 17.8.34129.139 Opcional


avançados do
ASP.NET

Microsoft.VisualStudio.Component.TeamsFx Ferramentas de 17.8.34129.139 Opcional


desenvolvimento
do Microsoft
Teams

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Opcional


Communication
Foundation

Microsoft.VisualStudio.ComponentGroup.AdditionalWebProjectTemplates Modelos de 17.8.34129.139 Opcional


projeto
adicionais
(versões
anteriores)

Microsoft.VisualStudio.ComponentGroup.IISDevelopment Suporte ao IIS no 17.8.34129.139 Opcional


tempo de
desenvolvimento

wasm.tools Ferramentas de 8.0.23.53103 Opcional


build do .NET
WebAssembly

wasm.tools.net6 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 6.0

wasm.tools.net7 Ferramentas de 8.0.23.53103 Opcional


Build do
WebAssembly do
.NET 7.0

Desenvolvimento do Node.js
ID: Microsoft.VisualStudio.Workload.Node
Descrição: criar aplicativos de rede escaláveis usando o Node.js, um runtime JavaScript controlado por evento
assíncrono.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript

Microsoft.VisualStudio.Component.Node.Tools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento em
Node.js

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Obrigatório


ASP.NET

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Recomendadas

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Recomendadas


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Desenvolvimento para Office/SharePoint


ID: Microsoft.VisualStudio.Workload.Office

Descrição: criar suplementos do Office e SharePoint, soluções do SharePoint e suplementos do VSTO usando o C#,
VB e JavaScript.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Component.Microsoft.VisualStudio.RazorExtension Razor Language 17.8.34129.139 Obrigatório


Services

Component.Microsoft.Web.LibraryManager Gerenciador de 17.8.34129.139 Obrigatório


Biblioteca

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Obrigatório

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do 17.8.34129.139 Obrigatório


ClickOnce para .NET

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento do
.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do
.NET Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento para
.NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento da
Web para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise 17.8.34129.139 Obrigatório


do Desenvolvedor

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Obrigatório


conectividade e
publicação

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem 17.8.34129.139 Obrigatório


F#

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem 17.8.34129.139 Obrigatório


F# para projetos Web

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do 17.8.34129.139 Obrigatório


JavaScript

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Obrigatório


JavaScript e TypeScript
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de 17.8.34129.139 Obrigatório


trabalho de área de
trabalho gerenciada

Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de
área de trabalho do
.NET

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL 17.8.34129.139 Obrigatório


Server

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Obrigatório


comando do SQL
Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Obrigatório


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Sharepoint.Tools Office Developer Tools 17.8.34129.139 Obrigatório


para Visual Studio

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do 17.8.34129.139 Obrigatório


SQL Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Obrigatório


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 17.8.34129.139 Obrigatório


2019 LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Wcf.Tooling Windows 17.8.34129.139 Obrigatório


Communication
Foundation

Microsoft.VisualStudio.Component.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.Component.Workflow Windows Workflow 17.8.34129.139 Obrigatório


Foundation

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré- 17.8.34129.139 Obrigatório


requisitos de
desenvolvimento para
Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web 17.8.34129.139 Obrigatório


e ASP.NET
ID do componente Nome Versão Tipo de
dependência

Microsoft.Net.Component.4.8.TargetingPack Pacote de 17.8.34129.139 Recomendadas


direcionamento do
.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do
.NET Framework 4.8

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.TeamOffice VSTO (Visual Studio 17.8.34129.139 Recomendadas


Tools para Office)

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8.1

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do
.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.6.2-
4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do
.NET Framework 4.8.1

Microsoft.VisualStudio.ComponentGroup.Sharepoint.WIF Windows Identity 17.8.34129.139 Opcional


Foundation 3.5

Desenvolvimento em Python
ID: Microsoft.VisualStudio.Workload.Python

Descrição: edição, depuração, desenvolvimento interativo e controle do código-fonte para o Python.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.PythonTools Suporte da linguagem 17.8.34129.139 Obrigatório


Python

Component.CPython39.x64 Python 3 de 64 bits (3.9.13) 3.9.13 Opcional


(sem suporte)

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Component.Microsoft.VisualStudio.LiveShare.2022 Live Share 1.0.5886 Opcional

Component.Microsoft.VisualStudio.RazorExtension Razor Language Services 17.8.34129.139 Opcional

Component.Microsoft.Web.LibraryManager Gerenciador de Biblioteca 17.8.34129.139 Opcional

Component.Microsoft.WebTools.BrowserLink.WebLivePreview Web Live Preview 17.8.18.11108 Opcional

Microsoft.Component.ClickOnce Publicação ClickOnce 17.8.34129.139 Opcional

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Opcional

Microsoft.Component.PythonTools.Web Suporte Web do Python 17.8.34129.139 Opcional

Microsoft.ComponentGroup.ClickOnce.Publish Publicação do ClickOnce 17.8.34129.139 Opcional


para .NET

Microsoft.ComponentGroup.PythonTools.NativeDevelopment Ferramentas de 17.8.34129.139 Opcional


desenvolvimento nativo do
Python

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento 17.8.34129.139 Opcional


do .NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Opcional

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.7.2

Microsoft.NetCore.Component.DevelopmentTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento para .NET

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Opcional

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Opcional

Microsoft.NetCore.Component.Web Ferramentas de 17.8.34129.139 Opcional


desenvolvimento da Web
para .NET

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de Análise do 17.8.34129.139 Opcional


Desenvolvedor

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de Criação do 17.8.34129.139 Opcional


Azure

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do Azure para 17.8.34129.139 Opcional


.NET

Microsoft.VisualStudio.Component.Azure.Compute.Emulator Emulador de Computação 17.8.34129.139 Opcional


do Azure

Microsoft.VisualStudio.Component.Azure.Waverton Principais ferramentas dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de build dos 17.8.34129.139 Opcional


Serviços de Nuvem do Azure

Microsoft.VisualStudio.Component.Common.Azure.Tools Ferramentas de 17.8.34129.139 Opcional


conectividade e publicação

Microsoft.VisualStudio.Component.Debugger.JustInTime Depurador Just-In-Time 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.DockerTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento de
contêiner

Microsoft.VisualStudio.Component.FSharp Suporte à linguagem F# 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.FSharp.WebTemplates Suporte à linguagem F# para 17.8.34129.139 Opcional


projetos Web

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos e 17.8.34129.139 Opcional


criador de perfil de GPU do
DirectX

Microsoft.VisualStudio.Component.IISExpress IIS Express 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Opcional

Microsoft.VisualStudio.Component.JavaScript.Diagnostics Diagnóstico do JavaScript 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.JavaScript.TypeScript Suporte às linguagens 17.8.34129.139 Opcional


JavaScript e TypeScript

Microsoft.VisualStudio.Component.ManagedDesktop.Core Núcleo da carga de trabalho 17.8.34129.139 Opcional


de área de trabalho
gerenciada

Microsoft.VisualStudio.Component.MSODBC.SQL Driver ODBC do SQL Server 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils Utilitários de linha de 17.8.34129.139 Opcional


comando do SQL Server

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes 17.8.34129.139 Opcional


NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Opcional


e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR do SQL 17.8.34129.139 Opcional


Server

Microsoft.VisualStudio.Component.SQL.DataSources Fontes de dados para 17.8.34129.139 Opcional


suporte do SQL Server

Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime SQL Server Express 2019 17.8.34129.139 Opcional


LocalDB

Microsoft.VisualStudio.Component.SQL.SSDT SQL Server Data Tools 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.TextTemplating Transformação de modelo 17.8.34129.139 Opcional


de texto

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Opcional


ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades principais 17.8.34129.139 Opcional


do C++

Microsoft.VisualStudio.Component.VC.DiagnosticTools Ferramentas de criação de 17.8.34129.139 Opcional


perfil do C++

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Opcional

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Opcional


Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.Web ASP.NET e pré-requisitos de 17.8.34129.139 Opcional


desenvolvimento para Web

Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions Desenvolvimento Web e 17.8.34129.139 Opcional


ASP.NET

Desenvolvimento para a Plataforma Universal do Windows


ID: Microsoft.VisualStudio.Workload.Universal

Descrição: criar aplicativos para a Plataforma Universal do Windows com o C#, VB ou, opcionalmente, o C++.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.NetFX.Native .NET Nativo 17.8.34129.139 Obrigatório

Microsoft.ComponentGroup.Blend Blend for Visual 17.8.34129.139 Obrigatório


Studio

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Obrigatório


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Obrigatório


criação de perfil do
.NET

Microsoft.VisualStudio.Component.Graphics Editores de imagens e 17.8.34129.139 Obrigatório


modelos 3D

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


ID do componente Nome Versão Tipo de
dependência

pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn 17.8.34129.139 Obrigatório


do C# e Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.SQL.CLR Tipos de dados CLR 17.8.34129.139 Obrigatório


do SQL Server

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Obrigatório


(10.0.22621.0)

Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging Ferramentas de 17.8.34129.139 Obrigatório


Empacotamento MSIX

Microsoft.VisualStudio.ComponentGroup.UWP.NetCoreAndStandard .NET Native e .NET 17.8.34129.139 Obrigatório


Standard

Microsoft.VisualStudio.ComponentGroup.UWP.Support Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows

Microsoft.VisualStudio.ComponentGroup.UWP.Xamarin Ferramentas da 17.8.34129.139 Obrigatório


Plataforma Universal
do Windows para
Xamarin

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Opcional


Framework 4.8

Microsoft.VisualStudio.Component.Graphics.Tools Depurador de gráficos 17.8.34129.139 Opcional


e criador de perfil de
GPU do DirectX

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows
C++ para ferramentas
de build v143
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows
do C++ para
ferramentas de build
v143 (ARM64EC)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Opcional


principais do C++
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – 17.8.34129.139 Opcional


Ferramentas de build
do VS 2022 C++
ARM64/ARM64EC
(mais recentes)

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ ARM64EC
(mais recente)

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build 17.8.34129.139 Opcional


do MSVC v143 - VS
2022 C++ x64/x86
(mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2017
x64/x86 (v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.IpOverUsb Conectividade de 17.8.34129.139 Opcional


dispositivos USB

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.UWP.VC Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v143)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
do Windows do C++
(v141)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v142 Ferramentas da 17.8.34129.139 Opcional


Plataforma Universal
ID do componente Nome Versão Tipo de
dependência

do Windows do C++
(v142)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – 17.8.34129.139 Opcional


ferramentas de build
do C++ para VS 2019
x64/x86 (v14.29)

Desenvolvimento de extensões do Visual Studio


ID: Microsoft.VisualStudio.Workload.VisualStudioExtension

Descrição: criar complementos e extensões para o Visual Studio, incluindo novos comandos, analisadores de
código e janelas de ferramentas.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.6.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.6

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet Gerenciador de 17.8.34129.139 Obrigatório


pacotes NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.VSSDK SDK do Visual 17.8.34129.139 Obrigatório


Studio

Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites Pré-requisitos 17.8.34129.139 Obrigatório


para o
desenvolvimento
de extensões do
Visual Studio
ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.CodeAnalysis.SDK SDK da 17.8.34129.139 Recomendadas


Plataforma do
Compilador .NET

Microsoft.VisualStudio.Component.DiagnosticTools Ferramentas de 17.8.34129.139 Recomendadas


criação de perfil
do .NET

Microsoft.VisualStudio.Component.IntelliCode IntelliCode 17.8.34219.23 Recomendadas

Microsoft.VisualStudio.Component.TextTemplating Transformação 17.8.34129.139 Recomendadas


de modelo de
texto

Component.GitHub.Copilot GitHub Copilot 1.116.0.0 Opcional

Microsoft.VisualStudio.Component.AppInsights.Tools Ferramentas de 17.8.34129.139 Opcional


Análise do
Desenvolvedor

Microsoft.VisualStudio.Component.DslTools SDK de 17.8.34129.139 Opcional


Modelagem

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas que podem ser
selecionados como um componente individual.

ID do componente Nome Versão

macOS SDK do .NET para macOS 14.0.8478.0

Microsoft.Component.HelpViewer Visualizador da Ajuda 17.8.34129.139

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de desenvolvimento do 17.8.34129.139


.NET Framework 3.5

Microsoft.Net.Component.4.6.1.SDK SDK do .NET Framework 4.6.1 17.8.34129.139

Microsoft.Net.Component.4.6.2.SDK SDK do .NET Framework 4.6.2 17.8.34129.139

Microsoft.Net.Component.4.7.1.SDK .NET Framework 4.7.1 SDK 17.8.34129.139

Microsoft.Net.Component.4.7.2.SDK SDK do .NET Framework 4.7.2 17.8.34129.139

Microsoft.Net.Component.4.7.SDK SDK do .NET Framework 4.7 17.8.34129.139

Microsoft.Net.Core.Component.SDK.2.1 Runtime do .NET Core 2.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.3.1 Runtime do .NET Core 3.1 (sem 17.8.34308.169


suporte)

Microsoft.NetCore.Component.Runtime.5.0 Runtime do .NET 5.0 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.7.0 Runtime do .NET 7.0 17.8.34308.169

Microsoft.NetCore.ComponentGroup.DevelopmentTools.2.1 Ferramentas de desenvolvimento para 17.8.34129.139


.NET Core 2.1 (sem suporte)
ID do componente Nome Versão

Microsoft.NetCore.ComponentGroup.Web.2.1 Ferramentas de desenvolvimento da 17.8.34129.139


Web para .NET Core 2.1 (sem suporte)

Microsoft.VisualStudio.Component.AzureDevOps.OfficeIntegration Integração do Azure DevOps ao 17.8.34129.139


Office

Microsoft.VisualStudio.Component.ClassDesigner Designer de Classe 17.8.34129.139

Microsoft.VisualStudio.Component.Debugger.Arm64RemoteDebugger Depurador remoto ARM64 17.8.34129.139

Microsoft.VisualStudio.Component.DependencyValidation.Community Validação de dependência 17.8.34129.139

Microsoft.VisualStudio.Component.Git Git para Windows 17.8.34129.139

Microsoft.VisualStudio.Component.GraphDocument Editor DGML 17.8.34129.139

Microsoft.VisualStudio.Component.LinqToSql Ferramentas do LINQ to SQL 17.8.34129.139

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64 ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.Spectre ATL C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v142 (14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64 MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.Spectre MFC C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64 MSVC v142 – ferramentas de build do 17.8.34129.139


C++ para VS 2019 x64/x86 (v14.29-
16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64.Spectre MSVC v142 – bibliotecas com 17.8.34129.139


mitigação de Spectre do C++ para VS
2019 x64/x86 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM (v14.30-
17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64.Spectre MSVC v143: VS 2022 libs mitigados 17.8.34129.139


por Spectre do C++ ARM64 (v14.30-
17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64 ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.Spectre ATL C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
ID do componente Nome Versão

(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64 C++ v14.30 (17.0) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64.Spectre MSVC v143: VS 2022 C++ x64/x86 libs 17.8.34129.139


mitigados por Spectre (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(Sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64 ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.Spectre ATL C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64 C++ v14.31 (17.1) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.31-17.1)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.31 – 17.1) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre de VS 2022 C++
ARM (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ ARM64 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64.Spectre MSVC v143 - bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
ARM64 (v14.32-17.2)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64 ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64 C++ v14.32 (17.2) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64 Ferramentas de build do MSVC v143 - 17.8.34129.139


VS 2022 C++ x64/x86 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64.Spectre MSVC v143 – VS 2022 C++ x64/x86 17.8.34129.139


Spectre-mitigated libs (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM.Spectre MSVC v143: VS 2022 C++ libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64 (v14.33-17.3)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64 ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64.Spectre ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.Spectre ATL C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64 MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 MSVC v143: Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.33-17.3)
ID do componente Nome Versão

(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.33 – 17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64 ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64.Spectre ATL do C++ v14.34(17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64 C++ v14.34 (17.4) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
ID do componente Nome Versão

Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64 Ferramentas de build do MSVC v143 – 17.8.34129.139


VS 2022 C++ x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


pelo Espectro do VS 2022 C++
x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM.Spectre MSVC v143: VS 2022 C++ ARM libs 17.8.34129.139


mitigados por Spectre (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64 MSVC v143: VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de
build (v14.35-17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.35 – 17.5)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM.Spectre ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64 ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.Spectre ATL C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM)
(sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64 MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.35-17.5)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.35 – 17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64 ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.Spectre ATL C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.36.17.6.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64 C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64.Spectre MFC C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.Spectre MFC do C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ ARM64/ARM64EC
(v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64 ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64.Spectre ATL C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.Spectre ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.CLI.Support Suporte de C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64 MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 MSVC v143: ferramentas de build do 17.8.34129.139


VS 2022 C++ x64/x86 (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64.Spectre MSVC v143: bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
x64/x86 (v14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM para VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigações Spectre do ARM para VS
2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64 MSVC v143 – ferramentas de build do 17.8.34129.139


ARM64/ARM64EC para VS 2022 C++
(v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigações Spectre do
ARM64/ARM64EC para VS 2022 C++
(v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM.Spectre C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64 C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64.Spectre C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.Spectre C++ v14.38 (17.8) ATL para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.CLI.Support Suporte à C++/CLI para ferramentas 17.8.34129.139


de build v143 (14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64 C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.Spectre C++ v14.38 (17.8) MFC para 17.8.34129.139


ferramentas de build v143 com
mitigações Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64 MSVC v143 – Ferramentas de build do 17.8.34129.139


x64/x86 para VS 2022 C++ (v14.38-
17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigações Spectre do x64/x86 para
VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.ATL.ARM ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM64 ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes com mitigações
de Spectre (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.MFC.ARM MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM64 MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre MFC C++ para as ferramentas de 17.8.34129.139


build v143 mais recentes com
mitigações de Spectre
(ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.Redist.MSM MSMs dos Pacotes Redistribuíveis do 17.8.34129.139


C++ 2022

Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre MSVC v143 – bibliotecas mitigadas 17.8.34129.139


por espectro de VS 2022 C++ ARM
(mais recente)

Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre MSVC v143 – Bibliotecas com 17.8.34129.139


mitigação de Spectre do VS 2022 C++
ARM64/ARM64EC (mais recentes)

Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre MSVC v143 – bibliotecas com 17.8.34129.139


mitigação de Spectre VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ATL ATL do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64 ATL do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre ATL do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.CLI.Support Suporte do C++/CLI para ferramentas 17.8.34129.139


de build v141 (14.16)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.v141.MFC MFC do C++ para ferramentas de 17.8.34129.139


build v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64 MFC do C++ para ferramentas de 17.8.34129.139


build v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre MFC do C++ para ferramentas de 17.8.34129.139


build v141 com Mitigações de
Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre MSVC v141 – bibliotecas com 17.8.34129.139


mitigação de Espectro do C++ para
VS 2017 x64/x86 (v14.16)

Microsoft.VisualStudio.Component.VisualStudioData Fontes de dados e referências de 17.8.34129.139


serviço

Microsoft.VisualStudio.Component.WinXP Suporte do Windows XP do C++ para 17.8.34129.139


ferramentas do VS 2017 (v141)
[Preterido]

Microsoft.VisualStudio.Web.Mvc4.ComponentGroup ASP.NET MVC 4 17.8.34129.139

tvOS SDK do .NET para tvOS 17.0.8478.0

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução de problemas de
instalação e atualização do Visual Studio para obter diretrizes passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas
relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador do
Visual Studio e no IDE do Visual Studio. Se você for Administrador de TI e não tiver o Visual Studio instalado,
envie os comentários de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de
Desenvolvedores do Visual Studio .

Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes do Team
Explorer para Visual Studio
Artigo • 14/11/2023

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio
na linha de comando ou que podem ser especificadas como uma dependência em um
manifesto do VSIX. Adicionaremos outros componentes quando lançarmos atualizações
para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de
trabalho e por uma tabela dos componentes que estão disponíveis para a carga de
trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da
carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e
Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são
afiliados a nenhuma carga de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de


Componente. Use as tabelas desta página para determinar as dependências mínimas de
componentes. Em alguns cenários, isso pode significar que somente um componente de
uma carga de trabalho é especificado. Em outros cenários, isso pode significar que
vários componentes de uma única carga de trabalho ou que vários componentes de
várias cargas de trabalho são especificados. Para obter mais informações, confira a
página Como migrar projetos de extensibilidade para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar
parâmetros de linha de comando para instalar o Visual Studio. Para conseguir uma lista
de IDs de carga de trabalho e de componente para outros produtos, confira a página
IDs de carga de trabalho e de componente do Visual Studio. Por fim, confira a página
componentes sem suporte do Visual Studio para ter uma listagem desses componentes
que fizeram a transição para fora de suporte e agora são considerados inseguros.
Recomendamos que você remova os componentes durante a próxima atualização.

Editor principal do Visual Studio (incluído no


Team Explorer para Visual Studio 2022)
ID: Microsoft.VisualStudio.Workload.CoreEditor

Descrição: a experiência de shell do Visual Studio Core, incluindo a edição de código


com reconhecimento de sintaxe, controle do código-fonte e gerenciamento de itens de
trabalho.

Componentes incluídos por essa carga de trabalho

ノ Expandir a tabela

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.Component.CoreEditor Editor do 17.8.34129.139 Obrigatório


Visual Studio
Core

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas
que podem ser selecionados como um componente individual.

ノ Expandir a tabela

ID do componente Nome Versão

N/D N/D N/D

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes das Ferramentas de Build
do Visual Studio
Artigo • 22/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio na linha de comando ou que
podem ser especificadas como uma dependência em um manifesto do VSIX. Adicionaremos outros componentes
quando lançarmos atualizações para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de trabalho e por uma tabela dos
componentes que estão disponíveis para a carga de trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são afiliados a nenhuma carga de
trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de Componente. Use as tabelas
desta página para determinar as dependências mínimas de componentes. Em alguns cenários, isso pode significar que
somente um componente de uma carga de trabalho é especificado. Em outros cenários, isso pode significar que
vários componentes de uma única carga de trabalho ou que vários componentes de várias cargas de trabalho são
especificados. Para obter mais informações, confira a página Como migrar projetos de extensibilidade para o Visual
Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar parâmetros de linha de comando para
instalar o Visual Studio. Para conseguir uma lista de IDs de carga de trabalho e de componente para outros produtos,
confira a página IDs de carga de trabalho e de componente do Visual Studio. Por fim, confira a página componentes
sem suporte do Visual Studio para ter uma listagem desses componentes que fizeram a transição para fora de suporte
e agora são considerados inseguros. Recomendamos que você remova os componentes durante a próxima
atualização.

Para instalar esses componentes usando o instalador manual, baixe e execute Ferramentas de Compilação para o
Visual Studio .

Ferramentas de build de desenvolvimento do Azure


ID: Microsoft.VisualStudio.Workload.AzureBuildTools

Descrição: tarefas e destinos do MSBuild para o build de aplicativos do Azure.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Obrigatório


.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do .NET
Framework 4.7.2
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Azure.AuthoringTools Ferramentas de Criação do 17.8.34129.139 Obrigatório


Azure

Microsoft.VisualStudio.Component.Azure.ClientLibs Bibliotecas do Azure para .NET 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools Ferramentas de build dos 17.8.34129.139 Obrigatório


Serviços de Nuvem do Azure

Microsoft.VisualStudio.Component.DockerTools.BuildTools Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento de contêiner
– Ferramentas de Build

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Wcf.BuildTools.ComponentGroup Ferramentas de build do 17.8.34129.139 Obrigatório


Windows Communication
Foundation

Microsoft.VisualStudio.Web.BuildTools.ComponentGroup Ferramentas de build de 17.8.34129.139 Obrigatório


desenvolvimento para a Web

Microsoft.Net.Component.4.8.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.8

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 3.5

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET Framework 4.8.1 17.8.34129.139 Opcional

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.6.2-4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.8.1

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Opcional

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Opcional


Ferramentas de build de processamento e armazenamento de
dados
ID: Microsoft.VisualStudio.Workload.DataBuildTools

Descrição: Criar Projetos de Banco de Dados do SQL Server

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.8.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.8

Microsoft.Net.ComponentGroup.TargetingPacks.Common Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.8

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# e 17.8.34129.139 Recomendadas


Visual Basic

Microsoft.VisualStudio.Component.Roslyn.LanguageServices C# e Visual Basic 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.SQL.SSDTBuildSku SQL Server Data Tools – 17.8.34129.139 Recomendadas


Ferramentas de Build

Ferramentas de build de área de trabalho do .NET


ID: Microsoft.VisualStudio.Workload.ManagedDesktopBuildTools

Descrição: ferramentas para o build de aplicativos de console, Windows Forms e WPF usando C#, Visual Basic e F#.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Obrigatório


.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# e 17.8.34129.139 Obrigatório


Visual Basic
ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.ClickOnce.MSBuild Ferramentas de build do 17.8.34129.139 Recomendadas


ClickOnce

Microsoft.Net.Component.4.8.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de 17.8.34129.139 Recomendadas


desenvolvimento do .NET
Framework 4.8

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Recomendadas

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Recomendadas

Microsoft.VisualStudio.Component.TestTools.BuildTools Recursos principais de 17.8.34129.139 Recomendadas


ferramentas de teste –
Ferramentas de Build

Microsoft.VisualStudio.Wcf.BuildTools.ComponentGroup Ferramentas de build do 17.8.34129.139 Recomendadas


Windows Communication
Foundation

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 3.5

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET Framework 4.8.1 17.8.34129.139 Opcional

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.6.2-4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de 17.8.34129.139 Opcional


desenvolvimento do .NET
Framework 4.8.1

Microsoft.VisualStudio.Component.FSharp.MSBuild compilador F# 17.8.34129.139 Opcional

Ferramentas do MSBuild
ID: Microsoft.VisualStudio.Workload.MSBuildTools

Descrição: fornece as ferramentas necessárias para criar aplicativos baseados em MSBuild.

Componentes incluídos por essa carga de trabalho


ID do componente Nome Versão Tipo de
dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.CoreBuildTools Principais Ferramentas de Build do 17.8.34129.139 Obrigatório


Visual Studio

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# e Visual 17.8.34129.139 Obrigatório


Basic

Ferramentas de compilação do Node.js


ID: Microsoft.VisualStudio.Workload.NodeBuildTools

Descrição: tarefas e destinos do MSBuild para criar aplicativos de rede escalonáveis usando o Node.js, um runtime
JavaScript controlado por eventos assíncronos.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de dependência

Microsoft.VisualStudio.Component.Node.Build Suporte ao MSBuild do Node.js 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Ferramentas de build do Office/SharePoint


ID: Microsoft.VisualStudio.Workload.OfficeBuildTools

Descrição: crie suplementos do Office, do SharePoint e do VSTO.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.ClickOnce.MSBuild Ferramentas de build do 17.8.34129.139 Obrigatório


ClickOnce

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Obrigatório


.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de desenvolvimento 17.8.34129.139 Obrigatório


do .NET Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet Gerenciador de pacotes NuGet 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# e 17.8.34129.139 Obrigatório


Visual Basic

Microsoft.VisualStudio.Component.Sharepoint.BuildTools Ferramentas de build de 17.8.34129.139 Obrigatório


desenvolvimento do
ID do componente Nome Versão Tipo de
dependência

Office/SharePoint

Microsoft.VisualStudio.Component.Workflow.BuildTools Ferramentas de Build do 17.8.34129.139 Obrigatório


Windows Workflow Foundation

Microsoft.VisualStudio.Wcf.BuildTools.ComponentGroup Ferramentas de build do 17.8.34129.139 Obrigatório


Windows Communication
Foundation

Microsoft.VisualStudio.Web.BuildTools.ComponentGroup Ferramentas de build de 17.8.34129.139 Obrigatório


desenvolvimento para a Web

Microsoft.Net.Component.4.8.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Recomendadas


do .NET Framework 4.8

Microsoft.VisualStudio.Component.TeamOffice.BuildTools Ferramentas de build do VSTO 17.8.34129.139 Recomendadas


(Ferramentas do Visual Studio
para Office)

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET Framework 4.8.1 17.8.34129.139 Opcional

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Opcional


do .NET Framework 4.6.2-4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Opcional


do .NET Framework 4.8.1

Ferramentas de build da Plataforma Universal do Windows


ID: Microsoft.VisualStudio.Workload.UniversalBuildTools

Descrição: fornece as ferramentas necessárias para criar aplicativos da Plataforma Universal do Windows.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Component.NetFX.Native .NET Nativo 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório


ID do componente Nome Versão Tipo de
dependência

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# 17.8.34129.139 Obrigatório


e Visual Basic

Microsoft.VisualStudio.ComponentGroup.UWP.BuildTools Pré-requisitos de build da 17.8.34129.139 Obrigatório


Plataforma Universal do
Windows

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Recomendadas


(10.0.22621.0)

Microsoft.Net.Component.4.7.2.SDK SDK do .NET Framework 17.8.34129.139 Opcional


4.7.2

Microsoft.VisualStudio.Component.UWP.VC.ARM64 Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows C++
para ferramentas de build
v143 (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.UWP.VC.ARM64EC Suporte da Plataforma 17.8.34129.139 Opcional


Universal do Windows do
C++ para ferramentas de
build v143 (ARM64EC)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64 MSVC v142 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2019 ARM64 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.Tools.ARM Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
ARM (mais recente)

Microsoft.VisualStudio.Component.VC.Tools.ARM64 MSVC v143 – Ferramentas 17.8.34129.139 Opcional


de build do VS 2022 C++
ARM64/ARM64EC (mais
recentes)

Microsoft.VisualStudio.Component.VC.Tools.ARM64EC Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
ARM64EC (mais recente)

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Opcional


MSVC v143 - VS 2022 C++
x64/x86 (mais recente)

Microsoft.VisualStudio.Component.VC.v141.ARM MSVC v141 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2017 ARM (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64 MSVC v141 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2017 ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2017 x64/x86 (v14.16)
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.19041.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.BuildTools Ferramentas da Plataforma 17.8.34129.139 Opcional


Universal do Windows do
C++ (v143)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141.BuildTools Ferramentas da Plataforma 17.8.34129.139 Opcional


Universal do Windows do
C++ (v141)

Microsoft.VisualStudio.ComponentGroup.UWP.VC.v142.BuildTools Ferramentas da Plataforma 17.8.34129.139 Opcional


Universal do Windows do
C++ (v142)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2019 x64/x86 (v14.29)

Desenvolvimento para desktop com C++


ID: Microsoft.VisualStudio.Workload.VCTools

Descrição: crie aplicativos C++ modernos para Windows usando as ferramentas de sua escolha, incluindo MSVC,
Clang, CMake ou MSBuild.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do 17.8.34129.139 Obrigatório


C# e Visual Basic

Microsoft.VisualStudio.Component.TextTemplating Transformação de 17.8.34129.139 Obrigatório


modelo de texto

Microsoft.VisualStudio.Component.VC.CoreBuildTools Funcionalidades 17.8.34129.139 Obrigatório


principais das
Ferramentas de Build do
C++

Microsoft.VisualStudio.Component.VC.CoreIde Funcionalidades 17.8.34129.139 Obrigatório


principais do C++

Microsoft.VisualStudio.Component.VC.Redist.14.Latest Atualização dos Pacotes 17.8.34129.139 Obrigatório


Redistribuíveis do C++
2022

Microsoft.VisualStudio.Component.Windows10SDK Runtime C Universal do 17.8.34129.139 Obrigatório


Windows
ID do componente Nome Versão Tipo de
dependência

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core Principais recursos de 17.8.34129.139 Obrigatório


área de trabalho do C++

Microsoft.VisualStudio.Component.TestTools.BuildTools Recursos principais de 17.8.34129.139 Recomendadas


ferramentas de teste –
Ferramentas de Build

Microsoft.VisualStudio.Component.VC.ASAN C++ AddressSanitizer 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Component.VC.CMake.Project Ferramentas CMake do 17.8.34129.139 Recomendadas


C++ para Windows

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de build do 17.8.34129.139 Recomendadas


MSVC v143 - VS 2022
C++ x64/x86 (mais
recente)

Microsoft.VisualStudio.Component.Windows11SDK.22621 SDK do Windows 11 17.8.34129.139 Recomendadas


(10.0.22621.0)

Microsoft.Component.VC.Runtime.UCRTSDK SDK do CRT Universal do 17.8.34129.139 Opcional


Windows

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Opcional


direcionamento do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 17.8.34129.139 Opcional


4.8

Microsoft.VisualStudio.Component.VC.140 MSVC v140 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2015 (v14.00)

Microsoft.VisualStudio.Component.VC.ATL ATL do C++ para as mais 17.8.34129.139 Opcional


recentes ferramentas de
build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.ATLMFC MFC do C++ para as 17.8.34129.139 Opcional


mais recentes
ferramentas de build
v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.CLI.Support Suporte do C++/CLI para 17.8.34129.139 Opcional


ferramentas de build
v143 (mais recente)

Microsoft.VisualStudio.Component.VC.Llvm.Clang Compilador do C++ 17.8.34129.139 Opcional


Clang para Windows
(16.0.5)

Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset Suporte do MSBuild para 17.8.34129.139 Opcional


o conjunto de
ferramentas LLVM (clang-
cl)

Microsoft.VisualStudio.Component.VC.Modules.x86.x64 Módulos do C++ para 17.8.34129.139 Opcional


ferramentas de build
v143 (x64/x86 –
experimental)

Microsoft.VisualStudio.Component.VC.v141.x86.x64 MSVC v141 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
ID do componente Nome Versão Tipo de
dependência

2017 x64/x86 (v14.16)

Microsoft.VisualStudio.Component.Windows10SDK.18362 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.18362.0)

Microsoft.VisualStudio.Component.Windows10SDK.19041 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.19041.0)

Microsoft.VisualStudio.Component.Windows10SDK.20348 SDK do Windows 10 17.8.34129.139 Opcional


(10.0.20348.0)

Microsoft.VisualStudio.Component.Windows11SDK.22000 SDK do Windows 11 17.8.34129.139 Opcional


(10.0.22000.0)

Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang Ferramentas do C++ 17.8.34129.139 Opcional


Clang para Windows
(16.0.5 - x64/x86)

Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 MSVC v142 – ferramentas 17.8.34129.139 Opcional


de build do C++ para VS
2019 x64/x86 (v14.29)

Desenvolvimento de extensões do Visual Studio


ID: Microsoft.VisualStudio.Workload.VisualStudioExtensionBuildTools

Descrição: ferramentas para criar complementos e extensões para Visual Studio, inclusive novos comandos,
analisadores de código e janelas de ferramentas.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.6.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.6

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de 17.8.34129.139 Obrigatório


direcionamento
do .NET
Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET 17.8.34129.139 Obrigatório


Framework 4.8

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de 17.8.34129.139 Obrigatório


desenvolvimento
do .NET
Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as 17.8.34129.139 Obrigatório


tarefas de
compilação do
NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores 17.8.34129.139 Obrigatório


Roslyn do C# e
ID do componente Nome Versão Tipo de
dependência

Visual Basic

Microsoft.VisualStudio.Component.VSSDKBuildTools Núcleo de 17.8.34129.139 Obrigatório


Ferramentas de
Build do SDK do
Visual Studio

Microsoft.VisualStudio.ComponentGroup.VisualStudioExtensionBuildTools.Prerequisites Pré-requisitos 17.8.34129.139 Obrigatório


para o
desenvolvimento
de extensões do
Visual Studio

Component.Dotfuscator Proteção 17.8.34129.139 Opcional


PreEmptive –
Dotfuscator

Microsoft.Component.VC.Runtime.OSSupport runtime da 17.8.34129.139 Opcional


Plataforma
Universal do
Windows do
C++ para
ferramentas de
build v142

Microsoft.VisualStudio.Component.VC.ATL ATL do C++ para 17.8.34129.139 Opcional


as mais recentes
ferramentas de
build v143 (x86
& x64)

Microsoft.VisualStudio.Component.VC.ATLMFC MFC do C++ 17.8.34129.139 Opcional


para as mais
recentes
ferramentas de
build v143 (x86
& x64)

Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Ferramentas de 17.8.34129.139 Opcional


build do MSVC
v143 - VS 2022
C++ x64/x86
(mais recente)

Ferramentas de build de desenvolvimento para a Web


ID: Microsoft.VisualStudio.Workload.WebBuildTools

Descrição: tarefas e destinos do MSBuild para a compilação de aplicativos Web.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.Net.Component.4.7.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Obrigatório


.NET Framework 4.7.2

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório


ID do componente Nome Versão Tipo de
dependência

Microsoft.Net.ComponentGroup.DevelopmentPrerequisites Ferramentas de desenvolvimento 17.8.34129.139 Obrigatório


do .NET Framework 4.7.2

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.TypeScript.TSServer TypeScript Server 17.8.34129.139 Obrigatório

Microsoft.VisualStudio.Web.BuildTools.ComponentGroup Ferramentas de build de 17.8.34129.139 Obrigatório


desenvolvimento para a Web

Microsoft.Component.ClickOnce.MSBuild Ferramentas de build do 17.8.34129.139 Recomendadas


ClickOnce

Microsoft.Net.Component.4.8.TargetingPack Pacote de direcionamento do 17.8.34129.139 Recomendadas


.NET Framework 4.8

Microsoft.Net.ComponentGroup.4.8.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Recomendadas


do .NET Framework 4.8

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Recomendadas

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Recomendadas

Microsoft.VisualStudio.Component.DockerTools.BuildTools Ferramentas de desenvolvimento 17.8.34129.139 Recomendadas


de contêiner – Ferramentas de
Build

Microsoft.VisualStudio.Component.TestTools.BuildTools Recursos principais de 17.8.34129.139 Recomendadas


ferramentas de teste –
Ferramentas de Build

Microsoft.VisualStudio.Component.WebDeploy Implantação da Web 17.8.34129.139 Recomendadas

Microsoft.VisualStudio.Wcf.BuildTools.ComponentGroup Ferramentas de build do 17.8.34129.139 Recomendadas


Windows Communication
Foundation

Microsoft.Net.Component.3.5.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Opcional


do .NET Framework 3.5

Microsoft.Net.Component.4.6.2.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.6.2

Microsoft.Net.Component.4.7.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7.1

Microsoft.Net.Component.4.7.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.7

Microsoft.Net.Component.4.8.1.SDK SDK do .NET Framework 4.8.1 17.8.34129.139 Opcional

Microsoft.Net.Component.4.8.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Opcional


.NET Framework 4.8.1

Microsoft.Net.ComponentGroup.4.6.2-4.7.1.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Opcional


do .NET Framework 4.6.2-4.7.1

Microsoft.Net.ComponentGroup.4.8.1.DeveloperTools Ferramentas de desenvolvimento 17.8.34129.139 Opcional


do .NET Framework 4.8.1

microsoft.net.runtime.mono.tooling Ferramentas de build móvel 8.0.23.53103 Opcional


compartilhadas do .NET
ID do componente Nome Versão Tipo de
dependência

microsoft.net.runtime.mono.tooling.net6 Ferramentas de build móvel 8.0.23.53103 Opcional


compartilhadas do .NET 6.0

microsoft.net.runtime.mono.tooling.net7 Ferramentas Compartilhadas de 8.0.23.53103 Opcional


Build Móveis do .NET 7.0

microsoft.net.sdk.emscripten Ferramentas de build do .NET 8.0.9.3002 Opcional


WebAssembly (Emscripten)

microsoft.net.sdk.emscripten.net6 Ferramentas de build do .NET 8.0.9.3002 Opcional


WebAssembly .NET6
(Emscripten)

microsoft.net.sdk.emscripten.net7 Ferramentas de Build do .NET 8.0.9.3002 Opcional


WebAssembly .NET7
(Emscripten)

wasm.tools Ferramentas de build do .NET 8.0.23.53103 Opcional


WebAssembly

wasm.tools.net6 Ferramentas de Build do 8.0.23.53103 Opcional


WebAssembly do .NET 6.0

wasm.tools.net7 Ferramentas de Build do 8.0.23.53103 Opcional


WebAssembly do .NET 7.0

Desenvolvimento do .NET Multi-Platform App UI


ID: Microsoft.VisualStudio.Workload.XamarinBuildTools

Descrição: crie aplicativos Android, iOS, Windows e Mac a partir de uma única base de código usando C# com .NET
MAUI.

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

android SDK do .NET para Android 34.0.43.0 Obrigatório

Component.OpenJDK OpenJDK (distribuição da 17.8.34129.139 Obrigatório


Microsoft)

ios SDK do .NET para iOS 17.0.8478.0 Obrigatório

maccatalyst SDK do .NET para Mac Catalyst 17.0.8478.0 Obrigatório

maui.blazor SDK do .NET MAUI para Blazor 8.0.3.0 Obrigatório


Desktop

maui.core .NET MAUI SDK Core 8.0.3.0 Obrigatório

maui.windows SDK do .NET MAUI para Windows 8.0.3.0 Obrigatório

Microsoft.Component.MSBuild MSBuild 17.8.34129.139 Obrigatório

Microsoft.Component.NetFX.Native .NET Nativo 17.8.34129.139 Obrigatório

Microsoft.Net.Component.4.6.1.TargetingPack Pacote de direcionamento do 17.8.34129.139 Obrigatório


.NET Framework 4.6.1
ID do componente Nome Versão Tipo de
dependência

Microsoft.Net.Component.4.8.SDK SDK do .NET Framework 4.8 17.8.34129.139 Obrigatório

microsoft.net.runtime.android Ferramentas de build do Android 8.0.23.53103 Obrigatório


do .NET

microsoft.net.runtime.android.aot AoT (Ferramentas de Build do 8.0.23.53103 Obrigatório


Android) do .NET

microsoft.net.runtime.android.aot.net7 AoT (Ferramentas de Build do 8.0.23.53103 Obrigatório


Android) do .NET 7.0

microsoft.net.runtime.android.net7 .NET 7.0 Android Build Tools 8.0.23.53103 Obrigatório

microsoft.net.runtime.ios Ferramentas de Build do .NET 8.0.23.53103 Obrigatório


para iOS

microsoft.net.runtime.ios.net7 Ferramentas de Build do .NET 7.0 8.0.23.53103 Obrigatório


para iOS

microsoft.net.runtime.maccatalyst Ferramentas de build do Catalyst 8.0.23.53103 Obrigatório


do .NET Mac

microsoft.net.runtime.maccatalyst.net7 Ferramentas de build do 8.0.23.53103 Obrigatório


Catalisador do Mac do .NET 7.0

microsoft.net.runtime.mono.tooling Ferramentas de build móvel 8.0.23.53103 Obrigatório


compartilhadas do .NET

microsoft.net.runtime.mono.tooling.net7 Ferramentas Compartilhadas de 8.0.23.53103 Obrigatório


Build Móveis do .NET 7.0

Microsoft.NetCore.Component.Runtime.8.0 Runtime do .NET 8.0 17.8.34308.169 Obrigatório

Microsoft.NetCore.Component.SDK SDK .NET 17.8.34308.169 Obrigatório

Microsoft.VisualStudio.Component.NuGet.BuildTools Os destinos e as tarefas de 17.8.34129.139 Obrigatório


compilação do NuGet

Microsoft.VisualStudio.Component.Roslyn.Compiler Compiladores Roslyn do C# e 17.8.34129.139 Obrigatório


Visual Basic

Microsoft.VisualStudio.ComponentGroup.UWP.BuildTools Pré-requisitos de build da 17.8.34129.139 Obrigatório


Plataforma Universal do Windows

runtimes.ios Runtimes do iOS do .NET 8.0.23.53103 Obrigatório

runtimes.ios.net7 Runtimes do iOS do .NET 7.0 8.0.23.53103 Obrigatório

runtimes.maccatalyst Ferramentas de build do Catalyst 8.0.23.53103 Obrigatório


do .NET Mac

runtimes.maccatalyst.net7 Ferramentas de build do 8.0.23.53103 Obrigatório


Catalisador do Mac do .NET 7.0

Component.Android.SDK.MAUI Configuração do SDK do Android 17.8.34129.139 Recomendadas

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas que podem ser selecionados
como um componente individual.
ID do componente Nome Versão

macOS SDK do .NET para macOS 14.0.8478.0

Microsoft.Net.Core.Component.SDK.2.1 Runtime do .NET Core 2.1 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.3.1 Runtime do .NET Core 3.1 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.5.0 Runtime do .NET 5.0 (sem suporte) 17.8.34308.169

Microsoft.NetCore.Component.Runtime.6.0 Runtime do .NET 6.0 (suporte a longo 17.8.34308.169


prazo)

Microsoft.NetCore.Component.Runtime.7.0 Runtime do .NET 7.0 17.8.34308.169

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM MSVC v142 – ferramentas de build do 17.8.34129.139


C++ para VS 2019 ARM (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM.Spectre MSVC v142 – bibliotecas com mitigação 17.8.34129.139


de Spectre do C++ para VS 2019 ARM
(v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ARM64.Spectre MSVC v142 – bibliotecas com mitigação 17.8.34129.139


de Spectre do C++ para VS 2019 ARM64
(v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL ATL C++ v14.29 (16.11) para ferramentas 17.8.34129.139


de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM ATL C++ v14.29 (16.11) para ferramentas 17.8.34129.139


de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64 ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.ARM64.Spectre ATL do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.ATL.Spectre ATL C++ v14.29 (16.11) para ferramentas 17.8.34129.139


de build v142 com Mitigações de Spectre
(x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.CLI.Support Suporte do C++/CLI para ferramentas de 17.8.34129.139


build v142 (14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64 MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 (ARM64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.ARM64.Spectre MFC do C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Espectro (ARM64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.29.16.11.MFC.Spectre MFC C++ v14.29 (16.11) para 17.8.34129.139


ferramentas de build v142 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64 MSVC v142 – ferramentas de build do 17.8.34129.139


C++ para VS 2019 x64/x86 (v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.29.16.11.x86.x64.Spectre MSVC v142 – bibliotecas com mitigação 17.8.34129.139


de Spectre do C++ para VS 2019 x64/x86
(v14.29-16.11)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM.Spectre MSVC v143: VS 2022 libs mitigados por 17.8.34129.139


Spectre do C++ ARM (v14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64 MSVC v143: Ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64 (v14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ARM64.Spectre MSVC v143: VS 2022 libs mitigados por 17.8.34129.139


Spectre do C++ ARM64 (v14.30-17.0)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM.Spectre ATL C++ v14.30 (17.0) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64 ATL do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.ARM64.Spectre ATL C++ v14.30 (17.0) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.ATL.Spectre ATL C++ v14.30 (17.0) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(x86 & x64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.CLI.Support Suporte à C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.30-17.0) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM C++ v14.30 (17.0) MFC para ferramentas 17.8.34129.139


de build v143 (ARM) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64 C++ v14.30 (17.0) MFC para ferramentas 17.8.34129.139


de build v143 (ARM64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.ARM64.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.30.17.0.MFC.Spectre MFC do C++ v14.30 (17.0) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.30.17.0.x86.x64.Spectre MSVC v143: VS 2022 C++ x64/x86 libs 17.8.34129.139


mitigados por Spectre (v14.30-17.0) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM MSVC v143: Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM.Spectre MSVC v143: VS 2022 C++ libs mitigados 17.8.34129.139


por Spectre (v14.31-17.1) (Sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64 MSVC v143: Ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64 (v14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM.Spectre ATL C++ v14.31 (17.1) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64 ATL do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.ARM64.Spectre ATL C++ v14.31 (17.1) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.ATL.Spectre ATL C++ v14.31 (17.1) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(x86 & x64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.CLI.Support Suporte à C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.31-17.1) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC C++ v14.31 (17.1) MFC para ferramentas 17.8.34129.139


de build v143 (x86 & x64) (sem suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM C++ v14.31 (17.1) MFC para ferramentas 17.8.34129.139


de build v143 (ARM) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64 C++ v14.31 (17.1) MFC para ferramentas 17.8.34129.139


de build v143 (ARM64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.ARM64.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.MFC.Spectre MFC do C++ v14.31 (17.1) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.31-17.1) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ x64/x86
(v14.31 – 17.1) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM.Spectre MSVC v143 - bibliotecas com mitigação 17.8.34129.139


de Spectre de VS 2022 C++ ARM
(v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64 Ferramentas de build do MSVC v143 - VS 17.8.34129.139


2022 C++ ARM64 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ARM64.Spectre MSVC v143 - bibliotecas com mitigação 17.8.34129.139


de Spectre VS 2022 C++ ARM64 (v14.32-
17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64 ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.ARM64.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.ATL.Spectre ATL do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.32.17.2.CLI.Support Suporte do C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM C++ v14.32 (17.2) MFC para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64 C++ v14.32 (17.2) MFC para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.ARM64.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.MFC.Spectre MFC do C++ v14.32 (17.2) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64 Ferramentas de build do MSVC v143 - VS 17.8.34129.139


2022 C++ x64/x86 (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.32.17.2.x86.x64.Spectre MSVC v143 – VS 2022 C++ x64/x86 17.8.34129.139


Spectre-mitigated libs (v14.32-17.2)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM.Spectre MSVC v143: VS 2022 C++ libs mitigados 17.8.34129.139


por Spectre (v14.33-17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64 (v14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64.Spectre MSVC v143: VS 2022 C++ ARM64 libs 17.8.34129.139


mitigados por Spectre (v14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM.Spectre ATL C++ v14.33 (17.3) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64 ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.ARM64.Spectre ATL do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.33.17.3.ATL.Spectre ATL C++ v14.33 (17.3) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(x86 & x64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.CLI.Support Suporte à C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.33-17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64 MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.ARM64.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.MFC.Spectre MFC do C++ v14.33 (17.3) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 MSVC v143: Ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.33-17.3) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ x64/x86
(v14.33 – 17.3) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM MSVC v143 – ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM.Spectre MSVC v143 – bibliotecas mitigadas por 17.8.34129.139


espectro de VS 2022 C++ ARM (v14.34-
17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64 MSVC v143 – Ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64/ARM64EC (v14.34 –
17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ARM64.Spectre MSVC v143 – Bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.34 – 17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
ID do componente Nome Versão

Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64 ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.ARM64.Spectre ATL do C++ v14.34(17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.ATL.Spectre ATL do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.CLI.Support Suporte do C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM C++ v14.34 (17.4) MFC para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64 C++ v14.34 (17.4) MFC para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.ARM64.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.MFC.Spectre MFC do C++ v14.34 (17.4) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64 Ferramentas de build do MSVC v143 – VS 17.8.34129.139


2022 C++ x64/x86 (v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.34.17.4.x86.x64.Spectre MSVC v143 – bibliotecas mitigadas pelo 17.8.34129.139


Espectro do VS 2022 C++ x64/x86
(v14.34-17.4)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM MSVC v143: ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM.Spectre MSVC v143: VS 2022 C++ ARM libs 17.8.34129.139


mitigados por Spectre (v14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64 MSVC v143: VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de build
(v14.35-17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.35 – 17.5)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
ID do componente Nome Versão

suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM.Spectre ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64 ATL do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64.Spectre ATL C++ v14.35 (17.5) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.Spectre ATL C++ v14.35 (17.5) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(x86 & x64) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.CLI.Support Suporte à C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.35-17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)
(sem suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64 MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.Spectre MFC do C++ v14.35 (17.5) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.35-17.5) (sem
suporte)

Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ x64/x86
(v14.35 – 17.5) (sem suporte)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM MSVC v143 – Ferramentas de build do VS 17.8.34129.139


2022 C++ ARM (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM.Spectre MSVC v143 – Bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ ARM (v14.36
– 17.6)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64 MSVC v143 – Ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64/ARM64EC (v14.36 –
17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ARM64.Spectre MSVC v143 – Bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM.Spectre ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64 ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.ARM64.Spectre ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL.Spectre ATL C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.CLI.Support Suporte de C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC MFC C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM MFC C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM.Spectre MFC C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64 C++ v14.36 (17.6) para ferramentas de 17.8.34129.139


build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.ARM64.Spectre MFC C++ v14.36 (17.6) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC.Spectre MFC do C++ v14.36 (17.6) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64 MSVC v143 – Ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64.Spectre MSVC v143 – Bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ x64/x86
(v14.36 – 17.6)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ ARM (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ ARM (v14.37
ID do componente Nome Versão

– 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ ARM64/ARM64EC (v14.37 –
17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ARM64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++
ARM64/ARM64EC (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM ATL C++ v14.37 (17.7) para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM.Spectre ATL C++ v14.37 (17.7) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64 ATL C++ v14.37 (17.7) para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.ARM64.Spectre ATL C++ v14.37 (17.7) para ferramentas 17.8.34129.139


de build v143 com mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.ATL.Spectre ATL do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.CLI.Support Suporte de C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64 MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.ARM64.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (ARM64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.MFC.Spectre MFC do C++ v14.37 (17.7) para 17.8.34129.139


ferramentas de build v143 com
mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 MSVC v143: ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.37 – 17.7)

Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64.Spectre MSVC v143: bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++ x64/x86
(v14.37 - 17.7)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM MSVC v143 – Ferramentas de build do 17.8.34129.139


ARM do VS 2022 C++ (v14.38-17.8)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM.Spectre MSVC v143 – Libs atenuadas pelo ARM 17.8.34129.139


do VS 2022 C++ (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64 MSVC v143 – VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC ferramentas de build
(v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ARM64.Spectre MSVC v143 - VS 2022 C++ 17.8.34129.139


ARM64/ARM64EC Libs mitigadas pelo
espectro (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL C++ v14.38 (17.8) ATL para ferramentas 17.8.34129.139


de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com ARM
(Mitigações de Spectre)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64 ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.ARM64.Spectre C++ v14.38 (17.8) ATL para ferramentas 17.8.34129.139


de build v143 com Mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL.Spectre ATL do C++ v14.38 (17.8) para 17.8.34129.139


ferramentas de build v143 com
Mitigações de Spectre (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.CLI.Support Suporte à C++/CLI para ferramentas de 17.8.34129.139


build v143 (14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 (x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM.Spectre C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 com Mitigações de Spectre
(ARM)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64 C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 (ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.ARM64.Spectre C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 com Mitigações de Spectre
(ARM64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.MFC.Spectre C++ v14.38 (17.8) MFC para ferramentas 17.8.34129.139


de build v143 com Mitigações de Spectre
(x86 & x64)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64 MSVC v143 – Ferramentas de build do VS 17.8.34129.139


2022 C++ x64/x86 (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64.Spectre MSVC v143 - VS 2022 C++ x64/x86 Libs 17.8.34129.139


mitigadas pelo espectro (v14.38-17.8)

Microsoft.VisualStudio.Component.VC.ATL.ARM ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.ATL.ARM64 ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre ATL C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes com mitigações de
Spectre (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.ATL.Spectre ATL do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (x86 & x64)

Microsoft.VisualStudio.Component.VC.MFC.ARM MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre MFC do C++ para as mais recentes 17.8.34129.139


ferramentas de build v143 com
Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.MFC.ARM64 MFC C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre MFC C++ para as ferramentas de build 17.8.34129.139


v143 mais recentes com mitigações de
Spectre (ARM64/ARM64EC)

Microsoft.VisualStudio.Component.VC.Modules.ARM64 Módulos do C++ para ferramentas de 17.8.34129.139


build v143 (ARM64 – experimental)

Microsoft.VisualStudio.Component.VC.Redist.MSM MSMs dos Pacotes Redistribuíveis do 17.8.34129.139


C++ 2022

Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre MSVC v143 – bibliotecas mitigadas por 17.8.34129.139


espectro de VS 2022 C++ ARM (mais
recente)

Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre MSVC v143 – Bibliotecas com mitigação 17.8.34129.139


de Spectre do VS 2022 C++
ARM64/ARM64EC (mais recentes)

Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre MSVC v143 – bibliotecas com mitigação 17.8.34129.139


de Spectre VS 2022 C++ x64/x86 (mais
recente)

Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre MSVC v141 – bibliotecas com mitigação 17.8.34129.139


de Espectro do C++ para VS 2017 ARM
(v14.16)

Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre MSVC v141 – bibliotecas com mitigação 17.8.34129.139


de Espectro do C++ para VS 2017
ARM64 (v14.16)

Microsoft.VisualStudio.Component.VC.v141.ATL ATL do C++ para ferramentas de build 17.8.34129.139


v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM ATL do C++ para ferramentas de build 17.8.34129.139


v141 (ARM)
ID do componente Nome Versão

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre ATL do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64 ATL do C++ para ferramentas de build 17.8.34129.139


v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre ATL do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro
(ARM64)

Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre ATL do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro (x86 &
x64)

Microsoft.VisualStudio.Component.VC.v141.CLI.Support Suporte do C++/CLI para ferramentas de 17.8.34129.139


build v141 (14.16)

Microsoft.VisualStudio.Component.VC.v141.MFC MFC do C++ para ferramentas de build 17.8.34129.139


v141 (x86 & x64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM MFC do C++ para ferramentas de build 17.8.34129.139


v141 (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre MFC do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro (ARM)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64 MFC do C++ para ferramentas de build 17.8.34129.139


v141 (ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre MFC do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro
(ARM64)

Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre MFC do C++ para ferramentas de build 17.8.34129.139


v141 com Mitigações de Espectro (x86 &
x64)

Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre MSVC v141 – bibliotecas com mitigação 17.8.34129.139


de Espectro do C++ para VS 2017
x64/x86 (v14.16)

Microsoft.VisualStudio.Component.WinXP Suporte do Windows XP do C++ para 17.8.34129.139


ferramentas do VS 2017 (v141)
[Preterido]

tvOS SDK do .NET para tvOS 17.0.8478.0

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução de problemas de
instalação e atualização do Visual Studio para obter diretrizes passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em inglês) para problemas
relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema, exibida no Instalador do
Visual Studio e no IDE do Visual Studio. Se você for Administrador de TI e não tiver o Visual Studio instalado,
envie os comentários de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na Comunidade de
Desenvolvedores do Visual Studio .
Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes do Test Agent
do Visual Studio
Artigo • 14/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio
na linha de comando ou que podem ser especificadas como uma dependência em um
manifesto do VSIX. Adicionaremos outros componentes quando lançarmos atualizações
para o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de
trabalho e por uma tabela dos componentes que estão disponíveis para a carga de
trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da
carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e
Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são
afiliados a nenhuma carga de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de


Componente. Use as tabelas desta página para determinar as dependências mínimas de
componentes. Em alguns cenários, isso pode significar que somente um componente de
uma carga de trabalho é especificado. Em outros cenários, isso pode significar que vários
componentes de uma única carga de trabalho ou que vários componentes de várias
cargas de trabalho são especificados. Para obter mais informações, confira a página
Como migrar projetos de extensibilidade para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar
parâmetros de linha de comando para instalar o Visual Studio. Para conseguir uma lista
de IDs de carga de trabalho e de componente para outros produtos, confira a página IDs
de carga de trabalho e de componente do Visual Studio. Por fim, confira a página
componentes sem suporte do Visual Studio para ter uma listagem desses componentes
que fizeram a transição para fora de suporte e agora são considerados inseguros.
Recomendamos que você remova os componentes durante a próxima atualização.

Test Agent
ID: Microsoft.VisualStudio.Workload.TestAgent

Descrição: dá suporte à execução de testes automatizados e testes de carga


remotamente

Componentes incluídos por essa carga de trabalho

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.ComponentGroup.TestTools.TestAgent Principais 17.8.34129.139 Obrigatório


recursos
do Test
Agent

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas
que podem ser selecionados como um componente individual.

ID do componente Nome Versão

N/D N/D N/D

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .
Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Diretório de componentes do Test
Controller do Visual Studio
Artigo • 14/11/2023

As tabelas desta página listam as IDs que podem ser usadas para instalar o Visual Studio na
linha de comando ou que podem ser especificadas como uma dependência em um
manifesto do VSIX. Adicionaremos outros componentes quando lançarmos atualizações para
o Visual Studio.

Além disso, observe o seguinte sobre a página:

Cada carga de trabalho tem sua própria seção, seguida pela ID da carga de trabalho e
por uma tabela dos componentes que estão disponíveis para a carga de trabalho.
Por padrão, os componentes Obrigatórios serão instalados durante a instalação da
carga de trabalho.
Se preferir, também será possível instalar os componentes Recomendados e Opcionais.
Também adicionamos uma seção que lista os componentes adicionais que não são
afiliados a nenhuma carga de trabalho.

Ao definir dependências no manifesto do VSIX, é necessário especificar somente IDs de


Componente. Use as tabelas desta página para determinar as dependências mínimas de
componentes. Em alguns cenários, isso pode significar que somente um componente de
uma carga de trabalho é especificado. Em outros cenários, isso pode significar que vários
componentes de uma única carga de trabalho ou que vários componentes de várias cargas
de trabalho são especificados. Para obter mais informações, confira a página Como migrar
projetos de extensibilidade para o Visual Studio 2017.

Para obter mais informações sobre como usar essas IDs, confira a página Usar parâmetros de
linha de comando para instalar o Visual Studio. Para conseguir uma lista de IDs de carga de
trabalho e de componente para outros produtos, confira a página IDs de carga de trabalho e
de componente do Visual Studio. Por fim, confira a página componentes sem suporte do
Visual Studio para ter uma listagem desses componentes que fizeram a transição para fora
de suporte e agora são considerados inseguros. Recomendamos que você remova os
componentes durante a próxima atualização.

Controlador de teste
ID: Microsoft.VisualStudio.Workload.TestController

Descrição: distribuir testes automatizados para vários computadores

Componentes incluídos por essa carga de trabalho


ノ Expandir a tabela

ID do componente Nome Versão Tipo de


dependência

Microsoft.VisualStudio.ComponentGroup.TestTools.TestController Principais 17.8.34129.139 Obrigatório


recursos
do Test
Controller

Componentes não afiliados


Estes são os componentes que não são incluídos com nenhuma carga de trabalho, mas que
podem ser selecionados como um componente individual.

ノ Expandir a tabela

ID do componente Nome Versão

N/D N/D N/D

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira Solução
de problemas de instalação e atualização do Visual Studio para obter diretrizes passo a
passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um Problema,
exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você for
Administrador de TI e não tiver o Visual Studio instalado, envie os comentários de
Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Confira também
IDs de carga de trabalho e de componente do Visual Studio
Guia do administrador do Visual Studio
Usar parâmetros de linha de comando para instalar o Visual Studio
Exemplos de parâmetro de linha de comando
Criar uma instalação offline do Visual Studio
Imagens do Visual Studio no Azure
Artigo • 28/08/2023

Usar o Visual Studio executando em uma máquina virtual (VM) do Azure pré-
configurada é a maneira mais fácil e rápida de partir do nada para um ambiente de
desenvolvimento atualizado. As imagens do sistema com diferentes configurações do
Visual Studio estão disponíveis no Azure Marketplace .

Você é novo no Azure? Crie uma conta gratuita do Azure .

Quais configurações e versões estão


disponíveis?
As imagens para as versões principais mais recentes, Visual Studio 2022, Visual Studio
2019, Visual Studio 2017 e Visual Studio 2015, podem ser encontradas no Azure
Marketplace. Cada uma dessas versões oferece as edições do Visual Studio Enterprise e
Visual Studio Community. Essas imagens são atualizadas pelo menos uma vez por mês
para incluir as atualizações mais recentes do Visual Studio e do Windows. Embora os
nomes das imagens permaneçam os mesmos, a descrição de cada imagem inclui a
versão do produto instalada e a data inicial da imagem.

ノ Expandir a tabela

Versão de lançamento Edições Versão do


produto

Visual Studio 2022 Enterprise, Versão 17.2


Community

Visual Studio 2022 (compatível com o Computador de Enterprise, Versão 17.5


Desenvolvimento da Microsoft) Professional

Visual Studio 2019: mais recente (versão 16.11) Enterprise, Versão 16.11
Community

Visual Studio 2019 (compatível com o Computador de Enterprise, Versão 16.11


Desenvolvimento da Microsoft) Professional

Visual Studio 2017: Mais recente (versão 15.9) Enterprise, Versão 15.9
Community

Visual Studio 2015: Mais recente (atualização 3) Enterprise, Versão


Community 14.0.25431.01
7 Observação

De acordo com a política de atendimento da Microsoft, a versão original (RTW) do


Visual Studio 2015 expirou para manutenção. O Visual Studio 2015 Atualização 3 é
a única versão restante oferecida para a linha de produtos Visual Studio 2015.

Para obter mais informações, consulte a Política de Atendimento do Visual Studio.

Cliente Windows para desenvolvedores (compatível com o Computador de


Desenvolvimento da Microsoft) , uma imagem do Windows 11 Enterprise deve ser
usada como ponto de partida para criar imagens personalizadas do Computador de
Desenvolvimento e contém ferramentas e configurações adicionais para otimizar a
experiência do desenvolvedor. Essa imagem não inclui o Visual Studio. Para
desenvolvedores do Visual Studio, recomendamos usar nosso Visual Studio 2022 ou
Visual Studio 2019 imagens compatíveis com o Computador de Desenvolvimento
como ponto de partida.

Quais recursos são instalados?


Cada imagem contém o conjunto de recursos recomendado para essa edição do Visual
Studio. Geralmente, a instalação inclui:

Todas as cargas de trabalho disponíveis, incluindo cada componente opcional


recomendado da carga de trabalho. Saiba mais sobre cargas de trabalho,
componentes e SDKs incluídos no Visual Studio.
SDKs do .NET 4.6.2, .NET 4.7 e .NET 4.8, Pacotes de Direcionamento e Ferramentas
para Desenvolvedores
Visual F#
Extensão do GitHub para Visual Studio
Ferramentas do LINQ to SQL

Usamos a linha de comando a seguir para instalar o Visual Studio ao compilar as


imagens:

shell

vs_enterprise.exe --allWorkloads --includeRecommended --passive ^


--add Microsoft.Net.Component.4.8.SDK ^
--add Microsoft.Net.Component.4.7.2.SDK ^
--add Microsoft.Net.Component.4.7.2.TargetingPack ^
--add Microsoft.Net.Component.4.6.2.SDK ^
--add Microsoft.Net.Component.4.6.2.TargetingPack ^
--add Microsoft.Net.ComponentGroup.4.8.DeveloperTools ^
--add Microsoft.Net.ComponentGroup.4.7.2.DeveloperTools ^
--add Microsoft.VisualStudio.Component.FSharp ^
--add Component.GitHub.VisualStudio ^
--add Microsoft.VisualStudio.Component.LinqToSql

Se as imagens não incluírem um recurso do Visual Studio do qual você precisa, forneça
comentário por meio da ferramenta de comentários no canto superior direito da página.

Qual tamanho de VM devo escolher?


O Azure oferece uma gama completa de tamanhos de máquina virtual. Uma vez que o
Visual Studio é um aplicativo multi-thread avançado, você quer um tamanho de VM que
inclua pelo menos dois processadores e 7 GB de memória. Estes são os tamanhos de
VM recomendados para as imagens do Visual Studio:

Standard_D2_v3
Standard_D2s_v3
Standard_D4_v3
Standard_D4s_v3
Standard_D2_v2
Standard_D2S_v2
Standard_D3_v2

Para obter mais informações sobre os tamanhos das máquinas mais recentes, consulte
Tamanhos das máquinas virtuais do Windows no Azure.

Com o Azure, é possível reequilibrar sua escolha inicial redimensionando a VM. É


possível fornecer uma nova VM com um tamanho mais apropriado ou redimensionar
sua VM existente para hardware subjacente diferente. Para obter mais informações,
consulte Redimensionar uma VM do Windows.

Depois que a VM estiver em execução, o que


vem a seguir?
O Visual Studio acompanha o modelo "traga sua própria licença" no Azure. De forma
semelhante a uma instalação em hardware proprietário, uma das primeiras etapas é o
licenciamento da instalação do Visual Studio. Para desbloquear o Visual Studio:

Entrar com uma conta da Microsoft associada a uma assinatura do Visual Studio
Desbloquear o Visual Studio com a chave do produto que acompanha a compra
inicial
Para obter mais informações, consulte Conectar-se ao Visual Studio e Como
desbloquear o Visual Studio.

Como posso salvar a VM de desenvolvimento


para uso futuro ou da equipe?
O espectro de ambientes de desenvolvimento é imenso e há custos reais associados à
compilação de ambientes mais complexos. Independentemente da configuração do seu
ambiente, você pode salvar ou capturar sua VM configurada como uma "imagem base"
para uso futuro ou para outros membros da sua equipe. A seguir, ao inicializar uma
nova VM, provisione-a a partir da imagem base e não da imagem do Marketplace do
Azure.

Resumo rápido: Utilize a ferramenta de Preparação do Sistema (Sysprep) e desligue a


VM em execução, a seguir, capture (Figura 1) a VM como uma imagem através da
Interface do Usuário no portal do Azure. O Azure salva o arquivo .vhd que contém a
imagem, na conta de armazenamento de sua escolha. A nova imagem aparecerá como
um recurso de imagem na lista de recursos da sua assinatura.

(Figura 1) Capturar uma imagem através da interface do usuário do Portal do Azure.

Para obter mais informações, consulte Criar uma imagem gerenciada de uma VM
generalizada no Azure.

) Importante

Não se esqueça de usar o Sysprep para preparar a máquina virtual. Se essa etapa
for ignorada, o Azure não poderá fornecer uma VM da imagem.

7 Observação

Você ainda tem algum custo para o armazenamento das imagens, mas esse custo
incremental pode ser insignificante em comparação aos custos de despesas gerais
para reconstruir a VM a partir do zero para cada membro da equipe que precise de
uma. Por exemplo, há o custo de alguns dólares para criar e armazenar uma
imagem de 127 GB por um mês que é reutilizável por todos os membros de sua
equipe. No entanto, esses custos são insignificantes em comparação com as horas
que cada funcionário investe para compilar e validar um desenvolvimento de caixa
devidamente configurado para o uso individual.

Além disso, suas tarefas ou tecnologias de desenvolvimento podem precisar de mais


escala, como variedades de configurações de desenvolvimento e múltiplas
configurações de computadores. Você pode usar o Azure DevTest Labs para criar
receitas que automatizam a construção de sua "imagem dourada". Também pode usar o
DevTest Labs para gerenciar políticas das VMs em execução da sua equipe. Usar Azure
DevTest Labs para desenvolvedores é a melhor fonte para obter mais informações sobre
DevTest Labs.

Conteúdo relacionado
Agora que você conhece as imagens pré-configuradas do Visual Studio, a próxima etapa
é criar uma nova VM:

Criar uma VM através do Portal do Azure


Visão geral de Máquinas Virtuais do Windows
Visual Studio em dispositivos com o
Arm
Artigo • 14/12/2023

O Visual Studio 2022 versão 17.4 agora está disponível como um aplicativo Arm64
nativo no Windows 11 Arm64, e é a primeira versão do Visual Studio que dá suporte
nativo à criação e depuração de aplicativos Arm64 em processadores baseados em Arm.
Com o Visual Studio 2022 versão 17.4 e posteriores, o Visual Studio elimina a
dependência da emulação x64 para a maioria das cargas de trabalho do desenvolvedor.

Introdução ao Visual Studio Arm64


Para começar a usar a experiência nativa do Visual Studio para Arm64:

Verifique se você tem um dispositivo Arm64 com Windows 11.


Desinstale todas as versões anteriores do Visual Studio do dispositivo Arm64.
Baixe e instale a versão mais recente do Visual Studio 2022 .

Instalando o Arm64 Visual Studio


Existe um único instalador para as arquiteturas Visual Studio x64 e Arm64. O Instalador
do Visual Studio detecta se a arquitetura do sistema é Arm64 e, se for o caso, baixa e
instala a versão Arm64 do Visual Studio em seu dispositivo Arm64 (o suporte é para o
Windows 11). Se estiver instalando o produto por meio de um layout, precisará
configurar explicitamente o layout para incluir os binários do ARM.

7 Observação

Para Windows 11 Arm64, você deve desinstalar todas as versões anteriores do


Visual Studio (x64, x86) antes de instalar o Visual Studio 2022 versão 17.4 (ou
posterior).

Cargas de trabalho com suporte


O ARM64 GA dá suporte às seguintes cargas de trabalho:

Desenvolvimento para área de trabalho com .NET


Desenvolvimento para desktop com C++
Desenvolvimento Web e ASP.NET
Desenvolvimento para a Plataforma Universal do Windows
Desenvolvimento de extensões do Visual Studio
Desenvolvimento de jogos com C++
Desenvolvimento do Node.js

Desenvolvedores gerenciados
Com esta versão, agora você pode criar aplicativos da área de trabalho (Windows Forms
e WPF) usando o .NET 6+ e o .NET Framework 4.8.1. .NET Framework 4.8.1 está incluído
na próxima atualização principal para Windows 11 e estará disponível para sistemas
operacionais anteriores no futuro.

O suporte inicial para cargas de trabalho gerenciadas inclui o Windows Forms, o WPF e
aplicativos Web. O suporte para SDK do Aplicativo Windows, .NET MAUI e Plataforma
Universal do Windows (UWP) estará disponível nas versões prévias subsequentes.

Desenvolvedores nativos
Com o lançamento da versão 17.4 do Visual Studio 2022 ou posterior, você pode
acessar o novo conjunto de ferramentas do compilador nativo Arm64 MSVC (Microsoft
Visual C++), incluindo Code Analysis C++, mantendo a capacidade de direcionar todas
as plataformas atualmente suportadas pelo MSVC.

ノ Expandir a tabela

Arquitetura do host Arquitetura de destino Caminho de instalação


(plataforma em que o (plataforma para a qual o
compilador está em compilador está gerando
execução) binários)

Arm64 Arm64 <Install location>\VC\Tools\MSVC\


<version>\bin\HostARM64\ARM64

Arm64 X64 <Install location>\VC\Tools\MSVC\


<version>\bin\HostARM64\x64

Arm64 X86 <Install location>\VC\Tools\MSVC\


<version>\bin\HostARM64\x86

Muitas bibliotecas C++ já estão disponíveis no Arm64. O Vcpkg também é executado


nativamente no Arm64 e, embora algumas ferramentas de terceiros dependentes ainda
possam ser executadas emuladas, você pode criar e consumir bibliotecas C++ 1700+
diretamente em seu ambiente de build nativo do Arm64.
Ao instalar a Carga de Trabalho da Área de Trabalho do C++, você pode carregar
qualquer projeto e solução C++ para desktop usando o MSBuild, para experimentar
qualquer funcionalidade de edição, criação e depuração com a qual já esteja
familiarizado no Visual Studio. Outras cargas de trabalho do C++ Visual Studio, por
exemplo, jogos e sistemas de criação, por exemplo, CMake, serão suportadas em
atualizações subsequentes.

Versões do Visual Studio antes da 17.4


As versões do Visual Studio 2022 anteriores à 17.4 podem ser executadas em
dispositivos com ARM por meio de emulação x64, embora alguns recursos não tenham
suporte para ARM. Dessa forma, não recomendamos a execução dessas versões do
Visual Studio em dispositivos que usam processadores baseados em ARM e, em vez
disso, recomendamos dispositivos ARM direcionados remotamente.

Consulte Requisitos de Sistema do Visual Studio 2022 para obter informações sobre
sistemas operacionais com suporte, hardware, idiomas com suporte e outros requisitos
e diretrizes.

Precisamos da sua ajuda!


Gostaríamos muito de ouvir sua opinião sobre as experiências que estamos trazendo
online. Conte-nos o que você gosta e se você tem sugestões para tornar o Visual Studio
ainda melhor no Arm64. Você pode compartilhar comentários conosco por meio da
Developer Community : relatar bugs ou problemas por meio da opção relatar um
problema e compartilhar suas sugestões para priorizar mais cargas de trabalho.
Instalar Ferramentas de Build em um
contêiner
Artigo • 29/01/2024

É possível instalar as Ferramentas de Build do Visual Studio em um contêiner do


Windows para oferecer suporte a fluxos de trabalho de CI e CD (integração contínua e
entrega contínua). Este artigo orienta sobre quais alterações de configuração do Docker
são necessárias, bem como quais cargas de trabalho e componentes podem ser
instalados em um contêiner.

Os contêineres são uma ótima maneira de empacotar um sistema de build


consistente e podem ser usados não somente em um ambiente de servidor CI/CD, mas
também em ambientes de desenvolvimento. Por exemplo, é possível pode montar o
código-fonte em um contêiner a ser criado por um ambiente personalizado e, ao
mesmo tempo, continuar a usar o Visual Studio ou outras ferramentas para escrever o
código. Caso o fluxo de trabalho CI/CD use a mesma imagem de contêiner, fique
tranquilo, o código será compilado de forma consistente. Também é possível usar os
contêineres para obter consistência em runtime, o que é comum em microsserviços que
usam vários contêineres com um sistema de orquestração, mas está fora do escopo
deste artigo.

Se as Ferramentas de Build do Visual Studio não têm o que você precisa para compilar o
código-fonte, estas etapas podem ser usadas em outros produtos do Visual Studio.
Observe, no entanto, que os contêineres do Windows não dão suporte a uma interface
do usuário interativa, portanto, todos os comandos devem ser automatizados.

Antes de começar
É esperada alguma familiaridade com o Docker abaixo. Se você ainda não estiver
familiarizado com a execução do Docker no Windows, leia como instalar e configurar o
mecanismo do Docker no Windows.

A imagem de base abaixo é uma amostra e pode não funcionar no seu sistema. Leia
Compatibilidade da versão do contêiner do Windows para determinar qual imagem de
base você deve usar para o seu ambiente.

Criar e compilar o Dockerfile


Salve o Dockerfile de exemplo a seguir em um novo arquivo no disco. Se o nome do
arquivo é simplesmente "Dockerfile", ele será reconhecido por padrão.

2 Aviso

Este Dockerfile de exemplo exclui apenas SDKs do Windows anteriores que não
podem ser instalados em contêineres. As versões anteriores causam uma falha no
comando de build.

1. Abra um prompt de comando.

2. Crie um novo diretório (recomendado):

shell

mkdir C:\BuildTools

3. Altere os diretórios para este novo diretório:

shell

cd C:\BuildTools

4. Salve o conteúdo a seguir em C:\BuildTools\Dockerfile.

Dockerfile

# escape=`

# Use the latest Windows Server Core 2022 image.


FROM mcr.microsoft.com/windows/servercore:ltsc2022

# Restore the default Windows shell for correct batch processing.


SHELL ["cmd", "/S", "/C"]

RUN `
# Download the Build Tools bootstrapper.
curl -SL --output vs_buildtools.exe
https://aka.ms/vs/17/release/vs_buildtools.exe `
`
# Install Build Tools with the
Microsoft.VisualStudio.Workload.AzureBuildTools workload, excluding
workloads and components with known issues.
&& (start /w vs_buildtools.exe --quiet --wait --norestart --nocache
`
--installPath "%ProgramFiles(x86)%\Microsoft Visual
Studio\2022\BuildTools" `
--add Microsoft.VisualStudio.Workload.AzureBuildTools `
--remove Microsoft.VisualStudio.Component.Windows10SDK.10240 `
--remove Microsoft.VisualStudio.Component.Windows10SDK.10586 `
--remove Microsoft.VisualStudio.Component.Windows10SDK.14393 `
--remove Microsoft.VisualStudio.Component.Windows81SDK `
|| IF "%ERRORLEVEL%"=="3010" EXIT 0) `
`
# Cleanup
&& del /q vs_buildtools.exe

# Define the entry point for the docker container.


# This entry point starts the developer command prompt and launches the
PowerShell shell.
ENTRYPOINT ["C:\\Program Files (x86)\\Microsoft Visual
Studio\\2022\\BuildTools\\Common7\\Tools\\VsDevCmd.bat", "&&",
"powershell.exe", "-NoLogo", "-ExecutionPolicy", "Bypass"]

 Dica

Para atingir 64 bits, especifique a opção -arch=amd64 no comando ENTRYPOINT


para iniciar o Prompt de Comando do Desenvolvedor para Visual Studio
( VSDevCmd.bat ).

Por exemplo: ENTRYPOINT ["C:\\Program Files (x86)\\Microsoft Visual


Studio\\2022\\BuildTools\\Common7\\Tools\\VsDevCmd.bat", "-arch=amd64",

"&&", "powershell.exe", "-NoLogo", "-ExecutionPolicy", "Bypass"]

2 Aviso

Se você basear sua imagem diretamente no microsoft/windowsservercore, o


.NET Framework poderá não ser instalado corretamente e nenhum erro de
instalação será indicado. Código gerenciado não poderá ser executado depois
que a instalação for concluída. Em vez disso, baseie a imagem no
microsoft/dotnet-framework:4.8 ou posterior. As imagens marcadas com a
versão 4.8 ou posterior também podem usar o PowerShell como o SHELL
padrão, o que causará uma falha nas instruções RUN e ENTRYPOINT .

Confira Compatibilidade de versão do contêiner do Windows para ver quais


versões do sistema operacional de contêiner têm suporte em quais versões
do sistema operacional host e solucionar problemas de contêineres do
Windows e das Ferramentas de Build para problemas conhecidos.

7 Observação
O código de erro 3010 é usado para indicar o êxito com uma reinicialização
necessária; confira mensagens de erro MsiExec.exe para obter mais
informações.

5. Execute o seguinte comando nesse diretório.

shell

docker build -t buildtools:latest -m 2GB .

Este comando cria o Dockerfile no diretório atual usando 2 GB de memória. O 1 GB


padrão não é suficiente quando algumas cargas de trabalho são instaladas. No
entanto, é possível compilar com apenas 1 GB de memória, de acordo com os
requisitos de build.

A imagem final contém uma marca "buildtools:latest", então, é possível executá-la


facilmente em um contêiner como "buildtools", visto que a marca "mais recente" é
o padrão se nenhuma marca é especificada. Caso queira utilizar uma versão
específica das Ferramentas de Build do Visual Studio em um cenário mais
avançado, em vez disso, é possível marcar o contêiner com um número de build
específico do Visual Studio, assim como "mais recente", para que os contêineres
usem uma versão específica constantemente.

Usar a imagem criada


Agora que a imagem foi criada, é possível executá-la em um contêiner para fazer builds
interativos e automatizados. O exemplo usa o Prompt de Comando do Desenvolvedor,
assim, PATH e outras variáveis de ambiente já estão configuradas.

1. Abra um prompt de comando.

2. Execute o contêiner para iniciar um ambiente do PowerShell com as variáveis de


ambiente de desenvolvedor configuradas:

shell

docker run -it buildtools

Para usar essa imagem no fluxo de trabalho CI/CD, publique-a no seu próprio Registro
de Contêiner do Azure ou em outro registro Docker interno, assim, os servidores só
precisarão efetuar pull dessa imagem.
7 Observação

Se o contêiner do Docker não for iniciado, provavelmente há um problema de


instalação do Visual Studio. Você pode atualizar o Dockerfile para remover a etapa
que chama o comando em lote do Visual Studio. Isso permite que você inicie o
contêiner do Docker e leia os logs de erros de instalação.

No arquivo Dockerfile, remova os parâmetros


C:\\BuildTools\\Common7\\Tools\\VsDevCmd.bat e && do comando ENTRYPOINT . O

comando agora deve ser ENTRYPOINT ["powershell.exe", "-NoLogo", "-


ExecutionPolicy", "Bypass"] . Em seguida, recompile o Dockerfile e execute o

comando run para acessar arquivos de contêiner. Para localizar os logs de erros de
instalação, acesse o diretório $env:TEMP e localize o arquivo
dd_setup_<timestamp>_errors.log .

Depois de identificar e corrigir o problema de instalação, você poderá adicionar os


parâmetros && e C:\\BuildTools\\Common7\\Tools\\VsDevCmd.bat de volta ao
comando ENTRYPOINT e recompilar o Dockerfile.

Para obter mais informações, confira Solucionar problemas de contêineres do


Windows e das Ferramentas de Build.

Solução de problemas de contêineres do


Windows e das Ferramentas de Build
Há alguns problemas ao instalar o Visual Studio em um contêiner do Docker.

Solucionar problemas de contêineres do Windows


Estes problemas conhecidos ocorrem quando as Ferramentas de Build do Visual Studio
são instaladas em um contêiner do Windows.

Passe -m 2GB (ou mais) ao compilar a imagem. Algumas cargas de trabalho exigem
mais memória que o padrão de 1 GB quando instaladas.

Configure o Docker para usar discos maiores que o padrão de 20 GB.

Passe --norestart na linha de comando. A partir dessa gravação, tentar reiniciar


um contêiner do Windows dentro do contêiner retorna ERROR_TOO_MANY_OPEN_FILES
para o host.
Se você basear sua imagem diretamente no
mcr.microsoft.com/windows/servercore, o .NET Framework poderá não ser
instalado corretamente e nenhum erro de instalação será indicado. Código
gerenciado não poderá ser executado depois que a instalação for concluída. Em
vez disso, baseie a imagem no microsoft/dotnet-framework:4.7.1 ou posterior. Por
exemplo, ao compilar com o MSBuild, você poderá ver um erro semelhante ao
seguinte:

C:\BuildTools\MSBuild\15.0\bin\Roslyn\Microsoft.CSharp.Core.targets(84,5):
erro MSB6003: Não foi possível executar o executável da tarefa especificado
"csc.exe". Não foi possível carregar o arquivo ou assembly
“System.IO.FileSystem, Version=4.0.1.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" ou uma de suas dependências. O sistema
não pode encontrar o arquivo especificado.

Solucionar problemas de contêineres de Ferramentas de


Build
Os problemas conhecidos a seguir podem ocorrer ao usar o contêiner das Ferramentas
de Build. Para ver se os problemas foram corrigidos ou se há outros problemas
conhecidos, acesse a Developer Community .

O IntelliTrace pode não funcionar em alguns cenários dentro de um contêiner.


Em versões mais antigas do Docker for Windows, o tamanho da imagem de
contêiner padrão é de apenas 20 GB e não cabe nas Ferramentas de Criação. Siga
as instruções para alterar o tamanho da imagem para 127 GB ou mais. Para
confirmar um problema de espaço em disco, verifique os arquivos de log para
obter mais informações. Seu arquivo vslogs\dd_setup_<timestamp>_errors.log
incluirá o seguinte se você ficar sem espaço em disco:

Pre-check verification: Visual Studio needs at least 91.99 GB of disk space.


Try to free up space on C:\ or change your target drive.
Pre-check verification failed with error(s) : SizePreCheckEvaluator.

Conteúdo relacionado
Exemplo avançado para contêineres
IDs de carga de trabalho e de componente das Ferramentas de Build do Visual
Studio
Exemplo avançado para contêineres
Artigo • 13/01/2024

O Dockerfile de exemplo em Instalar Ferramentas de Build em um contêiner sempre usa


a imagem microsoft/dotnet-framework:4.8 baseada na imagem
microsoft/windowsservercore e o instalador mais recente das Ferramentas de Build do
Visual Studio. Se essa imagem for publicada em um registro do Docker para que
outras pessoas efetuem pull, a imagem poderá ser boa para vários cenários. Entretanto,
na prática, é mais comum especificar qual imagem base você usa, quais binários você
baixa e quais versões de ferramenta você instala.

O Dockerfile de exemplo a seguir usa uma marca de versão específica da imagem


microsoft/dotnet-framework. Usar uma marca específica para uma imagem base é
comum e torna mais fácil lembrar dessa compilação ou recriar imagens que sempre têm
a mesma base.

7 Observação

Não é possível instalar o Visual Studio no


microsoft/windowsservercore:10.0.14393.1593 ou em qualquer imagem baseada
nele, que tem problemas conhecidos ao iniciar o instalador em um contêiner. Para
obter mais informações, veja Problemas conhecidos de contêineres.

O exemplo a seguir faz o download da versão mais recente das Ferramentas de Build.
Caso deseje usar uma versão anterior das Ferramentas de Build que possa ser instalada
em um contêiner posteriormente, primeiro você precisará criar e manter um layout.

Script de instalação
Para coletar logs quando ocorrerem erros de instalação, no diretório de trabalho, crie
um script em lotes chamado "Install.cmd" com o seguinte conteúdo:

shell

@if not defined _echo echo off


setlocal enabledelayedexpansion

call %*
if "%ERRORLEVEL%"=="3010" (
exit /b 0
) else (
if not "%ERRORLEVEL%"=="0" (
set ERR=%ERRORLEVEL%
call C:\TEMP\collect.exe -zip:C:\vslogs.zip

exit /b !ERR!
)
)

exit /b 0

Dockerfile
No diretório de trabalho, crie o "Dockerfile" com o seguinte conteúdo:

Dockerfile

# escape=`

# Use the latest Windows Server Core 2019 image.


ARG FROM_IMAGE=mcr.microsoft.com/windows/servercore:ltsc2019
FROM ${FROM_IMAGE}

# Restore the default Windows shell for correct batch processing.


SHELL ["cmd", "/S", "/C"]

# Copy our Install script.


COPY Install.cmd C:\TEMP\

# Download collect.exe in case of an install failure.


ADD https://aka.ms/vscollect.exe C:\TEMP\collect.exe

# Use the latest release channel. For more control, specify the location of
an internal layout.
ARG CHANNEL_URL=https://aka.ms/vs/17/release/channel
ADD ${CHANNEL_URL} C:\TEMP\VisualStudio.chman

RUN `
# Download the Build Tools bootstrapper.
curl -SL --output vs_buildtools.exe
https://aka.ms/vs/17/release/vs_buildtools.exe `
`
# Install Build Tools with the
Microsoft.VisualStudio.Workload.AzureBuildTools workload, excluding
workloads and components with known issues.
&& (call C:\TEMP\Install.cmd vs_buildtools.exe --quiet --wait --
norestart --nocache install `
--installPath "%ProgramFiles(x86)%\Microsoft Visual
Studio\2022\BuildTools" `
--channelUri C:\TEMP\VisualStudio.chman `
--installChannelUri C:\TEMP\VisualStudio.chman `
--add Microsoft.VisualStudio.Workload.AzureBuildTools `
--remove Microsoft.VisualStudio.Component.Windows10SDK.10240 `
--remove Microsoft.VisualStudio.Component.Windows10SDK.10586 `
--remove Microsoft.VisualStudio.Component.Windows10SDK.14393 `
--remove Microsoft.VisualStudio.Component.Windows81SDK) `
`
# Cleanup
&& del /q vs_buildtools.exe

# Define the entry point for the Docker container.


# This entry point starts the developer command prompt and launches the
PowerShell shell.
ENTRYPOINT ["C:\\Program Files (x86)\\Microsoft Visual
Studio\\2022\\BuildTools\\Common7\\Tools\\VsDevCmd.bat", "&&",
"powershell.exe", "-NoLogo", "-ExecutionPolicy", "Bypass"]

Execute o seguinte comando para criar a imagem no diretório de trabalho atual:

shell

docker build -t buildtools2022:17.0 -t buildtools2022:latest -m 2GB .

Opcionalmente, passar um ou os dois argumentos FROM_IMAGE e CHANNEL_URL usando a


opção de linha de comando --build-arg para especificar uma imagem de base
diferente ou o local de um layout interno para manter uma imagem fixa.

 Dica

Para obter uma lista de cargas de trabalho e componentes, confira o diretório do


componente Ferramentas de Build do Visual Studio.

Diagnosticando falhas de instalação


Este exemplo baixa ferramentas específicas e valida as correspondência dos hashes. Ele
também baixa o Visual Studio e o utilitário de coleção de logs do .NET, assim, se ocorrer
uma falha na instalação, será possível copiar os logs para o computador host, a fim de
analisar a falha.

shell

> docker build -t buildtools2022:17.0 -t buildtools2022:latest -m 2GB .


Sending build context to Docker daemon

...
Step 8/10 : RUN C:\TEMP\Install.cmd C:\TEMP\vs_buildtools.exe --quiet --wait
--norestart --nocache ...
---> Running in 4b62b4ce3a3c
The command 'cmd /S /C C:\TEMP\Install.cmd C:\TEMP\vs_buildtools.exe ...'
returned a non-zero code: 1603

> docker cp 4b62b4ce3a3c:C:\vslogs.zip "%TEMP%\vslogs.zip"

Depois do fim da execução da última linha, abra "%TEMP%\vslogs.zip" no computador


ou envie um problema no site da Comunidade de Desenvolvedores .

Suporte ou solução de problemas


Às vezes, as coisas podem dar errado. Se a instalação do Visual Studio falhar, confira
Solução de problemas de instalação e atualização do Visual Studio para obter diretrizes
passo a passo.

Aqui estão algumas outras opções de suporte:

Oferecemos uma opção de suporte por meio do chat de instalação (somente em


inglês) para problemas relacionados à instalação.
Relate problemas do produto para nós por meio da ferramenta Relatar um
Problema, exibida no Instalador do Visual Studio e no IDE do Visual Studio. Se você
for Administrador de TI e não tiver o Visual Studio instalado, envie os comentários
de Administrador de TI aqui .
Sugira um recurso, acompanhe os problemas do produto e encontre respostas na
Comunidade de Desenvolvedores do Visual Studio .

Conteúdo relacionado
Instalar ferramentas de build em um contêiner
Solução de problemas de contêineres do Windows e das Ferramentas de Build
IDs de carga de trabalho e de componente das Ferramentas de Build do Visual
Studio
Criar uma calculadora de console em
C++
Artigo • 24/03/2023

O ponto de partida usual para um programador do C++ é um aplicativo "Olá, mundo!"


que é executado na linha de comando. É isso que você cria primeiro no Visual Studio
neste artigo e passamos para algo mais desafiador: um aplicativo de calculadora.

Pré-requisitos
Ter o Visual Studio com a carga de trabalho Desenvolvimento para desktop com
C++ instalada e em execução no seu computador. Se ele ainda não estiver
instalado, confira Instalar suporte para C++ no Visual Studio.
Este tutorial demonstra um recurso chamado editar e continuar, o que permite que
você faça alterações no código enquanto o aplicativo está em execução. Para
garantir que a edição e a continuação possam funcionar para este artigo, no menu
principal, escolha Ferramentas>Opções>Depuração>Geral e verifique se Exigir
arquivos de origem para corresponder exatamente à versão original está
marcado.

Criar seu projeto de aplicativo


O Visual Studio usa os projetos para organizar o código em um aplicativo e as soluções
para organizar seus projetos. Um projeto contém todas as opções, configurações e
regras usadas para criar seus aplicativos. Ele também gerencia a relação entre todos os
arquivos de projeto e todos os arquivos externos. Para criar seu aplicativo, primeiro crie
um projeto e uma solução.

1. Se tiver começado a usar o Visual Studio, a caixa de diálogo Iniciar do Visual


Studio aparecerá. Escolha Criar um novo projeto para começar.
Caso contrário, na barra de menus no Visual Studio, escolha
Arquivo>Novo>Projeto. A janela Criar um novo projeto é aberta.

2. Na lista de modelos de projeto, escolha Aplicativo de Console e, em seguida,


escolha Avançar.

) Importante
É preciso que você escolha a versão do C++ do modelo do Aplicativo de
Console. Ele tem as marcas C++, Windows e Console, enquanto o ícone tem
"++" no canto.

3. Na caixa de diálogo Configurar novo projeto, selecione a caixa de edição Nome


do projeto, dê ao novo projeto o nome CalculatorTutorial e, em seguida, escolha
Criar.

Um aplicativo de console do Windows C++ vazio é criado. Os aplicativos de


console usam uma janela de console do Windows para exibir a saída e aceitar a
entrada do usuário. No Visual Studio, uma janela do editor é aberta e mostra o
código gerado:

C++

// CalculatorTutorial.cpp : This file contains the 'main' function.


Program execution begins and ends there.
//

#include <iostream>

int main()
{
std::cout << "Hello World!\n";
}

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu


// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started:
// 1. Use the Solution Explorer window to add/manage files
// 2. Use the Team Explorer window to connect to source control
// 3. Use the Output window to see build output and other messages
// 4. Use the Error List window to view errors
// 5. Go to Project > Add New Item to create new code files, or
Project > Add Existing Item to add existing code files to the project
// 6. In the future, to open this project again, go to File > Open >
Project and select the .sln file

Verificar se o novo aplicativo compila e executa


O modelo para um novo aplicativo de console do Windows cria um aplicativo simples
"Olá, Mundo" em C++. Neste ponto, você pode ver como o Visual Studio compila e
executa os aplicativos que você cria diretamente no IDE.

1. Para compilar o projeto, escolha Compilar Solução no menu Compilar. A janela de


Saída mostra os resultados do processo de build.

2. Para executar o código, na barra de menus, escolha Depurar, Iniciar sem


depuração.
Uma janela do console é aberta e, em seguida, executa seu aplicativo. Quando
você inicia um aplicativo de console no Visual Studio, ele é executado em seu
código e, em seguida, imprime "Pressione qualquer tecla para fechar esta janela. .
." para lhe dar a oportunidade de ver a saída. Parabéns! Você criou seu primeiro
aplicativo de console "Olá, mundo!" no Visual Studio!

3. Pressione uma tecla para ignorar a janela do console e retornar ao Visual Studio.

Agora você tem as ferramentas para compilar e executar seu aplicativo após cada
alteração para verificar se o código ainda funciona conforme o esperado.
Posteriormente, mostraremos como depurá-lo se ele não funcionar bem.

Editar o código
Agora vamos examinar o código neste modelo em um aplicativo de calculadora.

1. Substitua o conteúdo do arquivo CalculatorTutorial.cpp pelo código a seguir


para que ele corresponda a este exemplo:

C++

// CalculatorTutorial.cpp : This file contains the 'main' function.


Program execution begins and ends there.
//

#include <iostream>

using namespace std;

int main()
{
cout << "Calculator Console Application" << endl << endl;
cout << "Please enter the operation to perform. Format: a+b | a-b |
a*b | a/b"
<< endl;
return 0;
}

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu


// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started:
// 1. Use the Solution Explorer window to add/manage files
// 2. Use the Team Explorer window to connect to source control
// 3. Use the Output window to see build output and other messages
// 4. Use the Error List window to view errors
// 5. Go to Project > Add New Item to create new code files, or
Project > Add Existing Item to add existing code files to the project
// 6. In the future, to open this project again, go to File > Open >
Project and select the .sln file

Noções básicas sobre o código:

As instruções #include permitem que você consulte a código localizado


em outros arquivos. Às vezes, você poderá ver um nome de arquivo
delimitado por colchetes angulares (<>); outras vezes, entre aspas (" ").
Em geral, os colchetes angulares são usados ao fazer referência à
biblioteca padrão C++, enquanto as aspas são usadas para outros
arquivos.
A linha using namespace std; informa ao compilador para esperar que
coisas da Biblioteca Padrão C++ sejam usadas nesse arquivo. Sem essa
linha, cada palavra-chave da biblioteca precisaria ser precedida por
std:: para indicar seu escopo. Por exemplo, sem essa linha, cada
referência a cout precisaria ser escrito como std::cout . A instrução
using é adicionada para fazer com que o código tenha uma aparência

mais limpa.
A palavra-chave cout é usada para imprimir a saída padrão em C++. O
operador << informa ao compilador para enviar o que estiver à direita
para a saída padrão.
A palavra-chave endl é como a tecla Enter; encerra a linha e move o
cursor para a próxima linha. É uma melhor prática para colocar um \n
dentro da cadeia de caracteres (contido por "" ) para fazer a mesma
coisa, uma vez que endl sempre libera o buffer que pode prejudicar o
desempenho do programa. Como esse é um aplicativo muito pequeno, o
endl é usado para melhorar a legibilidade.

Todas as instruções C++ devem terminar com ponto e vírgula e todos os


aplicativos C++ devem conter uma função main() . Essa função é o que o
programa é executado no início. Todo o código deve estar acessível de
main() para ser usado.

2. Para salvar o arquivo, pressione Ctrl+S ou escolha o ícone Salvar ao lado da parte
superior do IDE, o ícone de disquete na barra de ferramentas na barra de menus.

3. Para executar o aplicativo, pressione CTRL+F5 ou vá para o menu Depurar e


escolha Iniciar Sem Depuração. Você deve ver uma janela do console em exibição
com o texto especificado no código.

4. Feche a janela do console ao terminar.

Adicionar código para fazer alguns cálculos


matemáticos
É hora de adicionar alguma lógica de matemática.

Para adicionar uma classe de Calculadora


1. Vá para o menu Projeto e escolha Adicionar Classe. Na caixa de edição Nome de
Classe, digite Calculadora. Selecione OK. Dois novos arquivos são adicionados ao
seu projeto. Para salvar todos os arquivos alterados de uma vez, pressione
Ctrl+Shift+S. É um atalho de teclado para Arquivo>Salvar Tudo. Também há um
botão de barra de ferramentas para Salvar Tudo, um ícone de dois disquetes,
encontrado ao lado do botão Salvar. Em geral, é uma boa prática executar Salvar
Tudo com frequência, para que você não perca nenhum arquivo ao salvar.
Uma classe é como um blueprint para um objeto que faz algo. Nesse caso,
definimos uma calculadora e como ela deve funcionar.

O assistente Adicionar Classe usado anteriormente criou arquivos .h e .cpp que


têm o mesmo nome que a classe. Você pode ver uma lista completa de seus
arquivos de projeto na janela Gerenciador de Soluções visível na lateral do IDE. Se
a janela não estiver visível, você poderá abri-la na barra de menus: escolha
Exibir>Gerenciador de Soluções.
Agora você deve ter três guias abertas no editor: CalculatorTutorial.cpp ,
Calculator.h e Calculator.cpp . Se você fechar acidentalmente uma delas, poderá

abri-la novamente clicando duas vezes na janela Gerenciador de Soluções.

2. Substitua o conteúdo de Calculator.h pelo seguinte código para que o arquivo


agora tenha esta aparência:

C++

#pragma once
class Calculator
{
public:
double Calculate(double x, char oper, double y);
};

Compreender o código

Este código declara uma nova função chamada Calculate , que usamos
para executar operações matemáticas para adição, subtração,
multiplicação e divisão.
O código C++ é organizado em arquivos de cabeçalho ( .h ) e origem
( .cpp ). Várias outras extensões de arquivo têm suporte pelos vários
compiladores, mas estes são os principais conhecer. Funções e variáveis
normalmente são declaradas, ou seja, recebem um nome e um tipo, nos
arquivos de cabeçalho, e implementadas ou recebem uma definição nos
arquivos de origem. Para acessar código definido em outro arquivo, você
poderá usar #include "filename.h" , em que filename.h é o nome do
arquivo que declara as variáveis ou funções que você deseja usar.
É uma boa prática organizar seu código em arquivos diferentes com base
no que ele faz, de modo que seja fácil encontrar o código de que você
precisa mais tarde. Em nosso caso, definimos a classe Calculator
separadamente do arquivo que contém a função main() , mas podemos
planejar fazer referência à classe Calculator em main() .

3. Um rabisque verde aparece em Calculate porque não definimos a função


Calculate no arquivo .cpp . Passe o mouse sobre Calculate , clique na seta para

baixo na chave de fenda exibida e escolha Criar definição de "Calcular" em


Calculator.cpp .
Um pop-up será exibido, possibilitando uma espiada na alteração de código que
foi feita em outro arquivo. O código foi adicionado ao Calculator.cpp .

Atualmente, retorna apenas 0,0. Vamos mudar isso. Pressione Esc para fechar o
pop-up.

4. Alterne para o arquivo Calculator.cpp na janela do editor. Remova as seções


Calculator() e ~Calculator() (como fez no arquivo .h ) e adicione o seguinte

código a Calculate() :

C++
#include "Calculator.h"

double Calculator::Calculate(double x, char oper, double y)


{
switch(oper)
{
case '+':
return x + y;
case '-':
return x - y;
case '*':
return x * y;
case '/':
return x / y;
default:
return 0.0;
}
}

Compreender o código

A função Calculate consome um número, um operador e um segundo


número e, em seguida, executa a operação solicitada nos números.
A instrução de opção verifica que operador foi fornecido e somente
executa o caso que corresponde a essa operação. O padrão: caso é uma
contingência se o usuário digita um operador que não é aceito, de modo
que o programa não seja interrompido. Em geral, é melhor manipular
uma entrada de usuário inválida de uma maneira mais elegante, mas isso
está além do escopo deste tutorial.
A palavra-chave double denota um tipo de número que dá suporte a
decimais. Dessa forma, a calculadora pode lidar com matemática decimal
e de inteiros. A função Calculate é necessária para sempre retornar esse
número devido ao double bem no início do código (isso denota o tipo
de retorno da função), e é por isso que devemos retornar 0,0 até mesmo
no caso padrão.
O arquivo .h declara a função protótipo, que informa ao compilador
antecipadamente quais parâmetros são necessários e que tipo de retorno
esperar dele. O arquivo .cpp tem todos os detalhes de implementação
da função.

Se você compilar e executar o código novamente neste ponto, ele ainda será encerrado
depois de perguntar qual operação executar. Modifique a função main para fazer alguns
cálculos.
Para chamar funções de membro da classe Calculator
1. Agora vamos atualizar a função main em CalculatorTutorial.cpp :

C++

// CalculatorTutorial.cpp : This file contains the 'main' function.


Program execution begins and ends there.
//

#include <iostream>
#include "Calculator.h"

using namespace std;

int main()
{
double x = 0.0;
double y = 0.0;
double result = 0.0;
char oper = '+';

cout << "Calculator Console Application" << endl << endl;


cout << "Please enter the operation to perform. Format: a+b | a-b |
a*b | a/b"
<< endl;

Calculator c;
while (true)
{
cin >> x >> oper >> y;
result = c.Calculate(x, oper, y);
cout << "Result " << "of " << x << oper << y << " is: " <<
result << endl;
}

return 0;
}

Compreender o código

Uma vez que os programas C++ sempre começam com a função main() ,
precisamos chamar o outro código daí, portanto, uma instrução #include
é necessária.
Algumas variáveis iniciais x , y , oper e result são declaradas para
armazenar o primeiro número, o segundo número, o operador e o
resultado final, respectivamente. É sempre uma boa prática fornecer
alguns valores iniciais para evitar um comportamento indefinido, o que é
feito aqui.
A linha Calculator c; declara um objeto chamado 'c' como uma
instância da classe Calculator . A classe em si é apenas o blueprint para
como as calculadoras funcionam; o objeto é a calculadora específica que
faz os cálculos.
A instrução while (true) é um loop. O código dentro do loop continua
sendo executado repetidamente enquanto a condição em () se aplicar.
Uma vez que a condição é simplesmente listada como true , ela é
sempre verdadeira, portanto, o loop é executado indefinidamente. Para
fechar o programa, o usuário deve fechar manualmente a janela do
console. Caso contrário, o programa sempre esperará a nova entrada.
A palavra-chave cin é usada para aceitar a entrada do usuário. Esse fluxo
de entrada é inteligente o suficiente para processar uma linha de texto
inserida na janela do console e colocá-la dentro de cada uma das
variáveis listadas, em ordem, supondo que a entrada do usuário
corresponda à especificação necessária. Você pode modificar essa linha
para aceitar diferentes tipos de entrada, como mais de dois números,
embora a função Calculate() também precise ser atualizada para lidar
com isso.
A expressão c.Calculate(x, oper, y); chama a função Calculate
definida anteriormente e fornece os valores de entrada inseridos. A
função retorna um número que é armazenado em result .
Por fim, result é impresso no console para que o usuário veja o
resultado do cálculo.

Compilar e testar o código novamente


Agora é hora de testar o programa novamente para verificar se que tudo está
funcionando bem.

1. Pressione Ctrl+F5 para recompilar e iniciar o aplicativo.

2. Insira 5+5 e pressione Enter. Verifique se o resultado será 10.


Depurar o aplicativo
Uma vez que o usuário é livre para digitar qualquer coisa na janela do console, vamos
garantir que a calculadora lide com alguma entrada conforme o esperado. Em vez de
executar o programa, vamos depurá-lo para que seja possível inspecionar o que ele está
fazendo em detalhes, passo a passo.

Para executar o aplicativo no depurador


1. Defina um ponto de interrupção na linha result = c.Calculate(x, oper, y); . Para
definir um ponto de interrupção, clique Para fazer isso, clique ao lado da linha na
barra vertical cinza ao longo da borda esquerda da janela do editor. Um ponto
vermelho é exibido.
Agora quando depuramos o programa, ele sempre pausa a execução nessa linha.
Já temos uma ideia superficial de que o programa funciona para casos simples.
Como não queremos pausar a execução toda vez, vamos tornar o ponto de
interrupção condicional.

2. Clique com o botão direito do mouse no ponto vermelho que representa o ponto
de interrupção e escolha Condições. Na caixa de edição para a condição, insira (y
== 0) && (oper == '/') . Escolha o botão Fechar quando terminar de salvar a

condição do ponto de interrupção.

Agora vamos pausar a execução no ponto de interrupção especificamente se você


tentar uma divisão por 0.

3. Para depurar o programa, pressione F5 ou escolha o botão da barra de


ferramentas Depurador Local do Windows que tem um ícone de seta verde. Em
seu aplicativo de console, se você digitar algo como "0-5", o programa se
comportará normalmente e continuará em execução. No entanto, se você digitar
"10 / 0", ele fará uma pausa no ponto de interrupção. Você pode até mesmo
colocar qualquer número de espaços entre o operador e os números. cin é
inteligente o suficiente para analisar a entrada de modo adequado.
Janelas úteis no depurador
Sempre que você depura seu código, pode perceber que algumas novas janelas
aparecem. Essas janelas podem ajudar a sua experiência de depuração. Dê uma olhada
na janela Autos. A janela Autos mostra os valores atuais das variáveis usadas pelo
menos três linhas antes e até a linha atual. Para ver todas as variáveis dessa função,
alterne para a janela Locais. Você pode modificar os valores dessas variáveis enquanto
depura para ver que efeito elas teriam sobre o programa. Neste caso, deixamos de lado.

Também é possível apenas focalizar variáveis no código em si para ver seus valores
atuais em que a execução está em pausa momento. Verifique se a janela do editor está
em foco clicando nela primeiro.
Para continuar a depuração
1. A seta amarela à esquerda mostra o ponto atual de execução. A linha atual que
chama Calculate , assim, pressione F11 para Depurar a função. Agora você está
executando o código no corpo da função Calculate . Tenha cuidado com o Step
Into porque ele entra em todas as funções na linha em que você está, incluindo
funções de biblioteca padrão. É bom entrar na biblioteca padrão, mas você pode
estar mais interessado em se concentrar em seu código em vez de código de
biblioteca.

2. Agora que o ponto de execução está no início da função Calculate , pressione F10
para ir para a próxima linha na execução do programa. F10 também é conhecido
como Depuração Parcial. Você pode usar Depuração Parcial para mover de uma
linha para outra, sem aprofundar-se nos detalhes do que está ocorrendo em cada
parte da linha. Em geral, você deve usar Step Over em vez de Step Into, a menos
que queira aprofundar-se no código que está sendo chamado de outro lugar
(como você fez para alcançar o corpo de Calculate ).

3. Continue usando F10 para realizar a Depuração Parcial de cada linha até que você
voltar para a função main() no outro arquivo e pare na linha cout .

Parece que o programa está fazendo o que é esperado: ele usa o primeiro número
e o divide pelo segundo. Na linha cout , focalize a variável result ou dê uma
olhada result na janela Autos. Seu valor inf , que não parece certo. Vamos
corrigir. A linha cout somente gera qualquer valor que esteja armazenado em
result , portanto, quando você avança mais uma linha usando F10, a janela do

console exibe:
Esse resultado acontece porque a divisão por zero é indefinida, portanto, o
programa não tem uma resposta numérica para a operação solicitada.

Para consertar o erro de "dividir por zero"


Vamos lidar com a divisão por zero mais normalmente para que seja mais fácil para o
usuário entender o problema.

1. Faça as seguintes alterações em CalculatorTutorial.cpp . (Você pode deixar o


programa em execução durante a edição, graças a um recurso do depurador
chamado Editar e Continuar). A alteração é adicionar uma instrução if depois de
cin >> x >> oper >> y; para verificar se há divisão por zero e gerar uma

mensagem para o usuário se isso acontecer. Caso contrário, o resultado será


impresso.

C++

// CalculatorTutorial.cpp : This file contains the 'main' function.


Program execution begins and ends there.
//

#include <iostream>
#include "Calculator.h"

using namespace std;

int main()
{
double x = 0.0;
double y = 0.0;
double result = 0.0;
char oper = '+';

cout << "Calculator Console Application" << endl << endl;


cout << "Please enter the operation to perform. Format: a+b | a-b |
a*b | a/b" << endl;

Calculator c;
while (true)
{
cin >> x >> oper >> y;
if (oper == '/' && y == 0)
{
cout << "Attempted to divide by zero!" << endl;
continue;
}
else
{
result = c.Calculate(x, oper, y);
}
cout << "Result " << "of " << x << oper << y << " is: " <<
result << endl;
}

return 0;
}

2. Agora pressione F5 uma vez. A execução do programa continua até ele precisar
pausar para pedir entrada do usuário. Insira 10 / 0 novamente. Agora, é impressa
uma mensagem mais útil. O usuário é solicitado a fornecer mais entradas e o
programa continua em execução normalmente.

7 Observação

Quando você edita o código no modo de depuração, há um risco de o código


se tornar obsoleto. Isso acontece quando o depurador ainda está executando
seu código antigo e não ainda o atualizou com suas alterações. O depurador
exibe uma caixa de diálogo para informá-lo quando isso acontece. Às vezes,
pode ser necessário pressionar F5 para atualizar o código que está sendo
executado. Em particular, se você fizer uma alteração dentro de uma função
enquanto o ponto de execução está dentro daquela função, precisará sair da
função e voltar para ela para obter o código atualizado. Se isso não funcionar
por alguma razão e você vir uma mensagem de erro, você poderá
interromper a depuração clicando no quadrado vermelho na barra de
ferramentas abaixo dos menus na parte superior do IDE e iniciar a depuração
novamente inserindo F5 ou escolhendo a seta " reproduzir" verde ao lado do
botão Parar na barra de ferramentas.
Outro motivo pelo qual a edição e a continuação pode falhar é se você vir
uma mensagem que diz "A opção Exigir arquivos de origem para
corresponder exatamente à configuração de versão original em Depurar-
>Opções->Geral precisa ser habilitada..." Para corrigir isso, no menu principal,
escolha Ferramentas>Opções>Depuração>Geral e verifique se Exigir
arquivos de origem para corresponder exatamente à versão original está
marcado.

Noções básicas sobre os atalhos de Executar e Depurar

F5 (ou Depurar>Iniciar Depuração) iniciará uma sessão de depuração se


uma ainda não estiver ativa e executará o programa até atingir um ponto
de interrupção ou o programa precisar de entrada do usuário. Se
nenhuma entrada do usuário for necessária e nenhum ponto de
interrupção estiver disponível para ser atingido, o programa será
encerrado e a janela do console fechará mesmo quando o programa for
encerrado. Se você tiver algo parecido com um programa "Olá, Mundo"
para ser executado, use CTRL+F5 ou defina um ponto de interrupção
antes de pressionar F5 para manter a janela aberta.
CTRL + F5 (ou Depurar>Iniciar sem Depuração) executa o aplicativo sem
entrar no modo de depuração. Isso é um pouco mais rápido do que a
depuração e a janela do console permaneça aberta depois de o
programa terminar a execução.
F10 (conhecido como Depuração Parcial) permite que você itere pelo
código linha por linha e visualize como o código é executado e quais
valores de variáveis estão em cada etapa de execução.
F11 (conhecido como Depurar) funciona da mesma forma que Depuração
Parcial, exceto que depura todas as funções chamadas na linha de
execução. Por exemplo, se a linha que está sendo executada chamar uma
função, pressionar F11 moverá o ponteiro para o corpo da função, de
modo que você possa seguir o código da função que está em execução
antes de voltar para a linha em que começou. Pressionar F10 faz a
depuração parcial da chamada de função e apenas se move para a
próxima linha; a chamada de função ainda acontece, mas o programa
não pausa para mostrar o você está fazendo.

Feche o aplicativo
Se ele ainda estiver em execução, feche a janela de console para o aplicativo de
calculadora.
Adicionar o controle do código-fonte do Git
Agora que você criou um aplicativo, pode ser interessante adicioná-lo a um repositório
Git. Nós podemos ajudar. O Visual Studio facilita esse processo com as ferramentas de
Git que você pode usar diretamente no IDE.

 Dica

O Git é o sistema de controle de versão moderno mais usado, portanto, se você é


um desenvolvedor profissional ou está aprendendo a codificar, o Git pode ser
muito útil. Se você é novo no Git, o site https://git-scm.com/ é um bom local
para começar. Lá você vai encontrar roteiros, um livro online popular e vídeos de
Conceitos Básicos do Git.

Para associar seu código ao Git, comece criando um repositório Git no local em que seu
código está localizado. Aqui está como:

1. Na barra de status no canto inferior direito do Visual Studio, selecione Adicionar


ao Controle do Código-Fonte e selecione Git.

2. Na caixa de diálogo Criar um repositório Git, entre no GitHub.


O nome do repositório é preenchido automaticamente com base no local da sua
pasta. Por padrão, o novo repositório é privado, o que significa que você é o único
que pode acessá-lo.

 Dica

Não importa se o repositório é público ou privado, é melhor ter um backup


remoto do código armazenado com segurança no GitHub. Mesmo que você
não esteja trabalhando com uma equipe, um repositório remoto disponibiliza
seu código para você em qualquer computador.

3. Selecione Criar e Efetuar Push.

Depois de criar o repositório, os detalhes do status aparecerão na barra de status.

O primeiro ícone com as setas mostra quantos commits de saída/entrada estão no


branch atual. Você pode usar esse ícone para efetuar pull de qualquer commit de
entrada ou efetuar push de commits de saída. Você também pode optar por exibir
primeiro esses commits. Para fazer isso, selecione o ícone e selecione Exibir
Saída/Entrada.

O segundo ícone com o lápis mostra o número de alterações não confirmadas no


código. Você pode selecionar este ícone para exibir essas alterações na janela
Alterações do Git.

Para saber mais sobre como usar o Git com seu aplicativo, veja a documentação de
controle de versão do Visual Studio.

O aplicativo finalizado
Parabéns! Você concluiu o código para o aplicativo de calculadora, o compilou e o
depurou e o adicionou a um repositório, tudo isso no Visual Studio.

Próximas etapas
Saiba mais sobre o Visual Studio para C++
Tutoriais do Visual Studio | C#
Crie aplicativos em C# com o Visual Studio.

Introdução

c GUIA DE INSTRUÇÕES

Baixar e instalar o Visual Studio

b COMEÇAR AGORA

Iniciar um tour guiado

f INÍCIO RÁPIDO

Criar um aplicativo Web "Olá, Mundo"

Criar aplicativos em C#

g TUTORIAL

Criar um aplicativo de console

Criar um aplicativo Web

Criar um aplicativo SDK do aplicativo do Windows

Criar um aplicativo da área de trabalho do Windows

Criar um aplicativo do Windows Forms

Saiba mais sobre a linguagem C#

Jogo de correspondência do Windows Forms

Teste de matemática do Windows Forms

Visualizador de imagens do Windows Forms

Aprender a usar o Visual Studio

g TUTORIAL
Executar um programa

Abrir código de um repositório

Escrever e editar o código

Compilar e criar

Depurar seu código

Testar seu código

c GUIA DE INSTRUÇÕES

Acessar dados
Tutoriais do Visual Studio | Visual Basic
Criar aplicativos Visual Basic com o Visual Studio.

Introdução

c GUIA DE INSTRUÇÕES

Instalar o Visual Studio

b COMEÇAR AGORA

Iniciar um tour guiado

Criar aplicativos Visual Basic

g TUTORIAL

Criar um aplicativo de console

Criar um aplicativo da área de trabalho do Windows

Criar um aplicativo do Windows Forms

Conheça a linguagem Visual Basic

Aprender a usar o Visual Studio

g TUTORIAL

Abrir código de um repositório

Escrever e editar o código

Compilar e criar

Depurar seu código

Testar seu código

c GUIA DE INSTRUÇÕES
Acessar dados
Tutoriais do Visual Studio | JavaScript e
TypeScript
Crie aplicativos JavaScript e TypeScript com o Visual Studio

Introdução

e VISÃO GERAL

JavaScript e TypeScript no Visual Studio

c GUIA DE INSTRUÇÕES

Instalar o Visual Studio

b COMEÇAR AGORA

Iniciar um tour guiado

Criar aplicativos JavaScript e TypeScript

f INÍCIO RÁPIDO

Criar um aplicativo Angular

Criar um aplicativo React

Criar um aplicativo Vue

g TUTORIAL

Criar um aplicativo Web com Angular e ASP.NET Core

Criar um aplicativo Web com React e ASP.NET Core

Criar um aplicativo Web com o Vue e o ASP.NET Core

Criar um aplicativo Web com o Node.js e o Express

Adicionar TypeScript a um aplicativo ASP.NET Core

A d Vi l S di
Aprender a usar o Visual Studio

c GUIA DE INSTRUÇÕES

Escrever e editar o código

Linting JavaScript

Compilar o código TypeScript usando TSC

Compilar o código TypeScript usando NuGet

Gerenciar pacotes npm

Depurar seu código

Desenvolver o código sem projetos nem soluções

Escrever e executar testes de unidade


Visual Studio | Documentação do
Python
Tutoriais e artigos conceituais sobre o desenvolvimento de aplicativos em Python com o
Visual Studio.

Introdução ao Python no Visual Studio

e VISÃO GERAL

Trabalhar com Python no Visual Studio no Windows

b COMEÇAR AGORA

Instalar o Python no Visual Studio

Escrever e editar seu código

Depurar seu código

Escrever e executar testes

Usar REPL interativo

Gerenciar ambientes do Python

Escrever extensões C/C++ para o Python

Desenvolvimento Web do Python

g TUTORIAL

Começar a usar o Python no Visual Studio

Criar aplicativos Web com Django

Criar aplicativos Web com Flask


Documentação do F#
Saiba como escrever qualquer aplicativo usando a linguagem de programação F# na
plataforma .NET.

Saiba como programar em F#

b COMEÇAR AGORA

O que é o F#?

Estratégia de F#

Primeiras etapas em F#

Instalar o F#

Introdução ao F# no Visual Studio

Introdução ao F# no Visual Studio Code

Mais aprendizado

q VIDEO

Iniciando a série de vídeos F#

a BAIXAR

Baixar o SDK do .NET

Guia da linguagem F#

e VISÃO GERAL

Guia da linguagem F#

i REFERÊNCIA

Especificação de linguagem F#

F# RFCs

Referência da biblioteca F#
Referência da biblioteca do .NET

Conceitos básicos do F#

e VISÃO GERAL

Visão geral

Tour do F#

Valores

p CONCEITO

Tipos e inferência

Conceitos funcionais

Provedores de tipos

g TUTORIAL

Usando funções

Correspondência de padrões

Programação de objeto

Programação assíncrona

F# na prática

e VISÃO GERAL

F# para desenvolvimento da Web

F# para aprendizado de máquina

F# para implantar recursos do Azure

d TREINAMENTO

Guia de estilo do F#

Diretrizes de formatação de código do F#


Convenções de codificação do F#

Ferramentas F#

e VISÃO GERAL

F# Interativo

Ferramentas de desenvolvimento para F#

Notebooks em F#

F# para JavaScript

Novos recursos do F#

h NOVIDADES

Novidades no F# 6

Novidades no F# 5

Novidades no F# 4.7

g TUTORIAL

Explorar tarefas

Explorar cadeias de caracteres interpoladas

Explorar registros anônimos


Desenvolvimento assistido por IA no
Visual Studio
Artigo • 18/12/2023

Neste artigo, você aprenderá sobre os recursos de desenvolvimento assistido por IA que
pode usar no Visual Studio para aumentar sua produtividade e eficiência, como o
GitHub Copilot e o IntelliCode.

Como o desenvolvimento assistido por IA


ajuda?
A tabela a seguir descreve as principais formas em que um assistente de IA pode ajudar
a desenvolver no Visual Studio:

Codificar mais rápido

Deixe a IA ajudar:
Gerando código e sugestões de funções inteiras (por exemplo, como escrever
código para executar uma tarefa descrevendo-a em linguagem natural)
Prever o que será codificado com base em seus padrões de programação
(conclusões)
Refatorar códigos por meio de recomendações com reconhecimento de contexto
orientadas por IA

Compreender melhor o código

Peça ao assistente de IA:


Explicações de seções de código (por exemplo, quando você está tentando
entender o código de outra pessoa)
Respostas para suas dúvidas de programação

Analisar e depurar mais rápido

Obtenha ajuda na criação de perfil e depuração de seu código:


Otimizar o desempenho com base em sugestões da IA
Resoluções e bugs identificados por IA

GitHub Copilot e IntelliCode


O GitHub Copilot e o IntelliCode ajudam você a escrever códigos mais rapidamente e
com maior precisão, ajudam a desenvolver uma compreensão mais profunda da base de
código e ajudam com outras tarefas de desenvolvimento, como escrever testes de
unidade, depuração e criação de perfil.

GitHub Copilot no Visual Studio


O GitHub Copilot é um programador de par de IA disponível como duas extensões no
Visual Studio Marketplace.

A extensão GitHub Copilot no Visual Studio , adiciona assistência de IA


aprimorada ao processo de desenvolvimento, gerando linhas inteiras ou blocos de
código com base no contexto fornecido por você. Ele aproveita modelos de IA
treinados em bilhões de linhas de código-fonte aberto para fornecer sugestões de
código no estilo autocompletar à medida que você codifica, em tempo real,
diretamente no editor. Ele ajuda você a escrever código mais rapidamente e com
menos trabalho.

Você pode obter sugestões do GitHub Copilot no IDE começando a escrever o


código que deseja usar ou escrevendo uma assinatura de função ou um
comentário em linguagem natural no arquivo de código, descrevendo o que quer
que o código faça. Você pode optar por usar o código sugerido aceitando-o.

A imagem a seguir mostra os recursos de geração de código do GitHub Copilot no


Visual Studio. Neste exemplo, você adiciona um comentário de linguagem natural
no arquivo de código, e o GitHub Copilot gera uma sugestão de código para você
em texto cinza. Se você optar por usar o código, poderá selecionar Tab para inseri-
lo no arquivo de código:

Introdução ao GitHub Copilot no Visual Studio. Observe que ele requer o Visual
Studio 2022 17.5.5 ou posterior.

A extensão do GitHub Copilot Chat no Visual Studio é uma experiência de chat


com tecnologia de IA totalmente integrada do GitHub Copilot diretamente no IDE
do Visual Studio. Ele permite que você interaja com o GitHub Copilot usando uma
interface de chat dentro do IDE. Ao fazer perguntas relacionadas à codificação em
linguagem natural, você pode receber sugestões de código específicas do
contexto, obter uma análise e uma explicação detalhadas de como um bloco de
código funciona, gerar testes de unidade, encontrar problemas e obter correções
propostas. Ele permite que você obtenha informações de codificação e suporte
sem sair do IDE, ajudando você a tomar decisões informadas e a escrever códigos
melhores.

A imagem a seguir mostra a janela de chat e a exibição em linha (Assistente de


Código interativo Perguntar ao Copilot) do GitHub Copilot Chat no Visual Studio.
Neste exemplo, você Pergunta ao Copilot para gerar uma função de teste usando
a janela Chat ou o Assistente de Código Interativo. Se o Chat do Copilot oferecer
uma sugestão de código que você deseja usar, você pode aceitar inserir o código
em seu arquivo de código:

Todos os usuários do GitHub Copilot for Individuals têm acesso ao GitHub


Copilot Chat. Saiba mais. Todos os GitHub Copilot for Business têm acesso a
uma versão beta limitada do GitHub Copilot Chat. Saiba mais.

IntelliCode no Visual Studio


O IntelliCode usa o contexto do código combinado com padrões que aprendeu com
milhares de códigos abertos públicos para fornecer aprimoramentos orientados por IA
para o Intellisense com sugestões, conclusões de código com reconhecimento de
contexto, conclusões de linha inteira e exemplos de uso de API . Usando inteligência
artificial, o IntelliCode utiliza o contexto e os padrões atuais do seu código para
classificar dinamicamente as sugestões no topo da lista de conclusão com um ícone de
estrela ao lado delas, ajudando você a escrever códigos precisos mais rapidamente.

A imagem a seguir mostra as conclusões do IntelliCode no Visual Studio:


Introdução ao IntelliCode.

Recursos de IA lado a lado


A tabela a seguir compara os recursos do GitHub Copilot (e do GitHub Copilot Chat) e
do IntelliCode.

) Importante

Você pode usar AMBOS o GitHub Copilot e o IntelliCode juntos. Você não precisa
escolher entre eles.

ノ Expandir a tabela

Recurso de assistência de IA GitHub Copilot IntelliCode

Disponível como Extensões para download: Interno por padrão na


– Conclusões do GitHub Copilot maioria das cargas de
(download ) trabalho e disponíveis por
– Complemento de chat do meio do Instalador do
GitHub Copilot (download ) Visual Studio

Baseado em assinatura Sim Não


Saiba mais

Interface do usuário Embutido Embutido


Janela do Chat

IntelliSense assistido por IA Sim Sim


com reconhecimento de Saiba mais Saiba mais
contexto

Conclusões de linha inteira em Sim Sim


texto cinza Saiba mais Saiba mais
Recurso de assistência de IA GitHub Copilot IntelliCode

Funções inteiras e conclusões Sim Não


de várias linhas em texto cinza Saiba mais

Detecção de edições repetidas Não Sim


Saiba mais

Converter comentários em Sim Não


linguagem natural em código Saiba mais

Resolver problemas de código Sim, com a extensão Chat Não


com a assistência de habilitada.
desenvolvimento orientada Saiba mais
por linguagem natural

Depuração de código Sim, com a extensão Chat Não


habilitada.
Saiba mais

Medir o desempenho do Sim, com a extensão Chat Não


aplicativo por meio da criação habilitada.
de perfil Saiba mais

Exemplos de uso de API Não Sim


Saiba mais

Idiomas com suporte Dá suporte a várias linguagens de C#, linguagem XAML, C++,
programação e estruturas, JavaScript, TypeScript,
incluindo, mas não se limitando a: Visual Basic
C#, C++, Python, JavaScript e
TypeScript

Próximas etapas
Para saber mais, considere explorar os seguintes recursos:

Extensão do GitHub Copilot: Introdução


Extensão do GitHub Copilot Chat: Introdução
GitHub Copilot: Comparar planos
Central de Confiabilidade do GitHub Copilot
O que é a extensão do GitHub Copilot
para Visual Studio?
Artigo • 13/01/2024
) Conteúdo assistido por IA. Este artigo foi parcialmente criado com a ajuda da inteligência
artificial. Um autor analisou e revisou o conteúdo conforme necessário. Saiba mais

As extensões GitHub Copilot e Chat do GitHub Copilot no Visual Studio permitem


que você tenha um desenvolvimento aprimorado assistido por AI no Visual Studio,
ajudando você a ser mais produtivo e eficiente ao escrever o código.

Neste artigo, você aprenderá sobre a extensão Copilot, uma extensão de programação
em pares da plataforma AI para o Visual Studio que fornece a você conclusões de
código com reconhecimento de contexto, sugestões e até mesmo trechos de código
inteiros. Essa ferramenta poderosa auxilia o desenvolvimento assistido por IA no Visual
Studio e ajuda os desenvolvedores a escrever código com mais eficiência, reduzir o
tempo gasto em tarefas repetitivas e minimizar erros.

Para obter mais informações sobre a extensão Chat do GitHub Copilot no Visual Studio,
consulte Sobre a extensão Chat do GitHub Copilot para Visual Studio.

Como funciona o GitHub Copilot


O GitHub Copilot funciona utilizando modelos avançados de machine learning treinados
em um vasto conjunto de dados de código disponível publicamente de repositórios do
GitHub. Conforme você digita código, a IA analisa o contexto e fornece sugestões
relevantes em tempo real. Você também pode receber sugestões escrevendo um
comentário em linguagem natural descrevendo o que deseja que o código faça.
Você também pode usar o GitHub Copilot para converter comentários em código, criar
testes de unidade, criar consultas SQL e muito mais.

Pré-requisitos
Para começar, você precisa do seguinte:

Visual Studio 2022 versão 17.4.4 ou posterior

uma assinatura do GitHub Copilot.

 Dica

O GitHub Copilot é gratuito para alunos verificados e para mantenedores de


projetos populares código aberto no GitHub. Se você não for um aluno ou
mantenedor de um projeto de software livre popular, poderá experimentar o
GitHub Copilot gratuitamente com uma avaliação única de 30 dias . Após
a avaliação gratuita, você precisará de uma assinatura paga para uso
contínuo.

O GitHub Copilot dá suporte a várias linguagens de programação e estruturas,


incluindo, mas não se limitando a: C#, C++e Python.

Instruções de instalação
Você pode instalar o GitHub Copilot como uma extensão, mas recomendamos que você
instale o GitHub Copilot como um componente usando o Instalador do Visual Studio.

Instalar usando o Instalador do Visual Studio


1. Inicie o Instalador do Visual Studio.

2. Selecione a instalação do Visual Studio que você deseja modificar e, em seguida,


selecione Modificar.

3. Selecione qualquer carga de trabalho, por exemplo, Desenvolvimento da área de


trabalho do .NET.

4. Selecione GitHub Copilot na lista de componentes Opcionais e, em seguida,


selecione Modificar para instalar a extensão.

7 Observação

Você usará a caixa de diálogo Gerenciar extensões para gerenciar


atualizações para a extensão do GitHub Copilot.

Instalar usando a caixa de diálogo Gerenciar Extensões


1. Abra o Visual Studio.
2. Na barra de menus, selecione Extensões>Gerenciar Extensões.
3. Na caixa Pesquisar, insira "GitHub Copilot".
4. Selecione a extensão GitHub Copilot e o botão Baixar.
5. Reinicie o Visual Studio para concluir o processo de instalação.

7 Observação

Para obter mais informações sobre autorização e ativação, confira a seção Instalar a
extensão do Visual Studio no GitHub Docs.

Após a instalação, você pode começar a usar o GitHub Copilot digitando código no
editor e observando as sugestões fornecidas pela IA.

Explorando o chat do GitHub Copilot


Para ver o GitHub Copilot em ação, confira o tutorial de vídeo a seguir.
Duração do vídeo: 1,19 minutos
https://www.youtube-nocookie.com/embed/kc_A12G4Elk

Próximas etapas
Para saber mais sobre a extensão atual do GitHub Copilot para Visual Studio, considere
explorar os seguintes recursos:

Extensão do GitHub Copilot: Introdução


GitHub Copilot: programador de par de IA
Central de Confiabilidade do GitHub Copilot
O que é a extensão Chat do GitHub
Copilot para Visual Studio?
Artigo • 19/01/2024

As extensões GitHub Copilot e Chat do GitHub Copilot no Visual Studio habilitam


o desenvolvimento aprimorado assistido por AI no Visual Studio, ajudando você a ser
mais produtivo e eficiente ao gravar código.

Neste artigo, você aprenderá sobre a extensão Copilot Chat no Visual Studio, uma
experiência de chat da plataforma AI totalmente integrada do GitHub Copilot
diretamente no IDE do Visual Studio. Ele permite que você obtenha informações e
suporte de codificação, como sintaxe, conceitos de programação, ajuda de código
específica do contexto, casos de teste, depuração e muito mais, sem sair do IDE.

Para obter mais informações sobre a extensão GitHub Copilot no Visual Studio, consulte
Sobre a extensão GitHub Copilot para Visual Studio.

Por que usar o Copilot Chat no Visual Studio?


O Copilot Chat fornece assistência de AI para ajudar você a tomar decisões informadas e
gravar códigos melhores. Com uma forte integração no Visual Studio, o Copilot Chat
entende no que você está trabalhando e pode ajudar você em tarefas de
desenvolvimento como:

Explicações de código: obtenha uma análise e uma explicação detalhadas de


como um bloco de código funciona
Ajuda de código: obtenha respostas às perguntas relacionadas à programação em
linguagem natural ou em formato de trecho de código
Refinamento de código: obter sugestões e recomendações de código específicas
do contexto
Teste de unidade: gerar testes de unidade
criação de perfil: otimizar o desempenho do código
Depuração: encontra problemas e obtém correções propostas de bugs e exceções.

Pré-requisitos
Para começar, você precisa do seguinte:

Visual Studio 2022 versão 17.8 ou posterior


Assinatura ativa do GitHub Copilot for Individuals ou do GitHub Copilot for
Business
Extensão do GitHub Copilot no Visual Studio

Instale a extensão do Visual Studio


Para instalar a extensão Chat do GitHub Copilot no Visual Studio:

1. Abra o Visual Studio.

2. Na barra de menus, selecione Extensões>Gerenciar Extensões.

3. Na caixa Pesquisar, insira "Chat do GitHub Copilot".

4. Selecione a extensão Chat do GitHub Copilot e, em seguida, selecione o botão


Download.

5. Reinicie o Visual Studio para concluir o processo de instalação.

7 Observação

Se você tiver problemas de autenticação após instalar a extensão, consulte


Solucionar problemas de autenticação com o Chat do GitHub Copilot .

Usar o Copilot Chat no Visual Studio


Você pode fazer suas perguntas relacionadas à codificação em linguagem natural e o
Chat do GitHub Copilot responderá a elas no seu contexto de desenvolvimento.

Existem dois locais onde você pode fazer essas perguntas ao Copilot: em uma janela de
chat ou diretamente no código que deseja modificar, utilizando a assistência de código
embutido. Para perguntas em que seu objetivo é modificar ou adicionar o código ao
arquivo de código que você deve ter aberto no editor, o assistente de código embutido
geralmente funciona melhor, enquanto perguntas mais gerais sobre codificação são
melhor respondidas no painel de chats.

Faça perguntas na janela de chat


A janela de chat do Copilot Chat no Visual Studio permite que você faça suas perguntas
e veja as respostas no painel de chat. Normalmente, essa é a melhor maneira de
trabalhar com o Copilot em questões de ajuda de programação e codificação em geral.
1. No Visual Studio, selecione Exibir>Chat do GitHub Copilot.

2. Na janela do Copilot Chat, digite uma pergunta relacionada à codificação na caixa


de texto Pergunte ao Copilot. Pressione Enter ou selecione enviar para fazer a
pergunta.

3. Se o Copilot Chat oferecer uma sugestão de código que você deseja usar,
selecione Copiar bloco de código para copiar a sugestão de código, Inserir em
novos arquivos para inserir a sugestão de código em um novo arquivo ou
selecione Visualizar para inserir a sugestão de código no arquivo de código atual.
Usar o botãoPré-visualização permite a pré-visualização do código no local de
destino para que você possa ver facilmente o que está sendo atualizado

Se você fizer uma pergunta para obter ajuda para entender seu código, as opções
Copiar bloco de código e Inserir no novo arquivo não estarão disponíveis.
a. Se você deve selecionar Inserir, verá as sugestões de código no padrão normal
de exibição de diferenças do Visual Studio Code. Você pode analisar e refinar o
que está sendo proposto e aplicar ao seu código selecionando Aceitar ou
descartar selecionando Cancelar.

b. Se você selecionar Inserir no novo arquivo, verá as sugestões de código em um


novo arquivo. O arquivo não é salvo por padrão.

Fazer perguntas no modo de exibição de chat embutido


A exibição do assistente de código interativo do Copilot Chat no Visual Studio permite
que você faça suas perguntas e veja as respostas embutidas com o código na própria
janela do editor. Com o chat embutido, você não precisa ir e voltar para a janela de chat.
Normalmente, essa é a melhor maneira de trabalhar com o Copilot em questões que
adicionam ou atualizam um arquivo de código aberto no momento.

1. No Visual Studio, clique com o botão direito do mouse na janela do editor e


selecione Pergunte ao Copilot para abrir a exibição do assistente de código
interativo do Copilot Chat no próprio editor.
2. Digite sua pergunta relacionada à codificação na caixa de texto Pergunte ao
Copilot e pressione Enter ou selecione Enviar para fazer a pergunta.

3. Você verá sugestões de código do Copilot Chat na exibição de diferenciação no


Visual Studio. Você pode analisar e refinar o que está sendo proposto e aplicar ao
seu código selecionando Aceitar ou descartar selecionando Cancelar.

4. Você pode fechar o modo de exibição de chat embutido pressionando Esc.

Próximas etapas
Para saber mais, considere explorar os seguintes recursos:

Extensão do GitHub Copilot: Introdução


Extensão do GitHub Copilot Chat: Introdução
GitHub Copilot: programador de par de IA
Central de Confiabilidade do GitHub Copilot
Obter melhores respostas definindo o
contexto para o GitHub Copilot Chat no
Visual Studio
Artigo • 12/01/2024

Você pode usar o GitHub Copilot Chat no Visual Studio para obter informações de
codificação e suporte, como sintaxe, conceitos de programação, ajuda de código
específica de contexto, casos de teste, depuração e muito mais, sem sair do IDE. O
Copilot Chat é integrado ao Visual Studio, o que significa que ele pode entender no que
você está trabalhando coletando pistas úteis do que você tem no IDE.

Neste artigo, você aprenderá a obter melhores respostas fornecendo mais informações
para o Copilot Chat, incluindo:

Use comandos de barra para especificar rapidamente tarefas comuns, como


/explain obter explicações de código.

Escopo do chat para arquivos específicos usando referências.


Examine a origem usada pelo Copilot para gerar a resposta.
Use threads diferentes para cada um dos chats do Copilot para que você possa
manter contextos diferentes em cada um.

Saiba mais sobre desenvolvimento assistido por AI no Visual Studio e como usar o
Copilot Chat no Visual Studio.

Pré-requisitos
Para começar a usar o GitHub Copilot Chat no Visual Studio, você precisa:

Uma assinatura ativa do GitHub Copilot for Individuals ou GitHub Copilot for
Business
Visual Studio 2022 versão 17.6 ou posterior instalado
Extensão do GitHub Copilot instalada no Visual Studio
Extensão GitHub Copilot Chat instalada no Visual Studio

Usar comandos de barra para tarefas comuns


Os comandos de barra no Copilot Chat ajudam você a definir a intenção rapidamente
para tarefas comuns de desenvolvimento. Usando comandos de barra específicos para
formar sua pergunta, você pode obter respostas melhores sem precisar escrever
perguntas longas.

Você pode usar comandos de barra em uma janela de chat ou diretamente embutidos
no código que você está procurando modificar, usando a assistência de código
embutido. Os comandos que ajudam a modificar ou adicionar ao arquivo de código que
você abriu no editor funcionarão tanto no assistente de código embutido quanto nas
janelas de chat, enquanto os comandos para perguntas de codificação mais gerais
funcionam apenas no painel de chat.

ノ Expandir a tabela

Comando Uso Janela de Chats


chat embutido

/limpar Limpar a janela do chat. Sim Não


Exemplo: /clear

/doc Adicione comentários ao código especificado ou Sim Yes


selecionado.
Exemplos:
- /doc DeleteBasketAsync method in
BasketService.cs
- selecione o código desejado e insira /doc

/explain Obter explicações do código. Sim Yes

Exemplos:
- /explain the AddItemToBasket method in
BasketService.cs
- selecione o código desejado e insira /explain

/fix Propor uma correção para os problemas no código Sim Yes


selecionado.
Exemplos:
- /fix the SetQuantities method in
BasketService.cs
- selecione o código desejado e insira /fix

/generate Gerar código para responder à pergunta Sim Yes


especificada.
Exemplo: /generate code to add two numbers in
Calculator.cs

/help Obtenha ajuda para usar o Copilot Chat. Sim Yes


Exemplo: /help
Comando Uso Janela de Chats
chat embutido

/optimize Analisar e melhorar o tempo de execução do código Sim Yes


selecionado.
Exemplos:
- /optimize the AddItemToBasket method in
BasketService.cs
- selecione o código desejado e insira /optimize

/testes Criar testes de unidade para o código selecionado. Sim Yes


Exemplo: selecione o código desejado e insira
/tests

Referência: escopo dos resultados do Copilot


para um arquivo específico
Você pode fazer suas perguntas relacionadas à codificação em linguagem natural e o
GitHub Copilot Chat responderá a elas no contexto da base de código aberta no Visual
Studio. Com referências, você pode obter informações mais específicas sobre as
informações que deseja que o Copilot considere ao responder à sua pergunta. Ao
selecionar um contexto específico em sua base de código, você é capaz de formar
perguntas melhores facilmente sem precisar escrever ou colar informações longas.
Especificar o contexto também permite que o Copilot forneça respostas mais relevantes.
Para fazer referência facilmente a um arquivo, basta adicionar um símbolo # no início do
nome do arquivo. Por exemplo, se você tiver um arquivo chamado BasketService.cs,
consulte-o no chat como #BasketService.cs. Aqui estão alguns exemplos de como usar
referências para controle de contexto:

ノ Expandir a tabela

Exemplo Contexto usado por Copilot para formar a


pergunta

Qual é a finalidade de #MyFile.cs: 66-72? Seção exata do arquivo

Onde estão os testes em #BasketService.cs? BasketService.cs

/explain o método AddItemToBasket em Método AddItemToBasket em


Exemplo Contexto usado por Copilot para formar a
pergunta

#BasketService.cs BasketService.cs

Examinar as fontes usadas pelo Copilot


O Copilot Chat exibe o contexto usado após cada resultado, para que você possa dizer
o que foi levado em conta ao responder à sua pergunta. Quando você faz uma pergunta
a um Copilot Chat e recebe uma resposta na janela de chat, um menu suspenso
Referências aparece abaixo da resposta. As entradas na lista suspensa Referências
mostram o contexto referenciado pelo Copilot Chat para gerar essa resposta. Essas
informações podem ajudá-lo a modificar sua pergunta para obter respostas melhores e
mais relevantes.

Organizar: isolar chats com Copilot em threads


Se você estiver usando o Copilot Chat extensivamente para fazer perguntas à medida
que codifica, poderá organizar suas conversas de uma maneira que as mantenha no
tópico. O Copilot Chat para Visual Studio agora fornece uma maneira fácil de iniciar
novas conversas (threads) para mantê-las focadas na tarefa em questão e manter o
contexto claro para que as respostas sejam baseadas no histórico relevante.

Você pode iniciar um novo thread selecionando Criar novo thread na janela de chat.
Você pode selecionar entre vários threads contínuos para fornecer o contexto histórico
certo para sua pergunta.
Conteúdo relacionado
Extensão do GitHub Copilot para Visual Studio
Extensão do GitHub Copilot Chat para Visual Studio
Central de Confiabilidade do GitHub Copilot
Envie-nos sugestões, comentários e problemas
Depurar seu aplicativo com o GitHub
Copilot no Visual Studio
Artigo • 12/01/2024

O chat do GitHub Copilot para Visual Studio 2022 tem suporte para muitos cenários de
depuração interativa, incluindo chats assistidos por IA para perguntas de depuração
relacionadas às suas variáveis, à pilha de chamadas e a outros elementos de código,
além de ajuda altamente direcionada associada a um link Pergunte ao Copilot.

Para obter vídeos relacionados, consulte o comunicado de postagem no blog .

Saiba mais sobre desenvolvimento assistido por AI no Visual Studio e como usar o
Copilot Chat no Visual Studio.

Pré-requisitos
Para utilizar o Copilot com os recursos de depuração, você deve ter o Visual Studio 2022
versão 17.7.4 ou posterior, uma assinatura do GitHub Copilot e as extensões do
Copilot para Visual Studio instaladas:

Instruções de instalação do GitHub Copilot


Instruções de instalação do Chat do GitHub Copilot

Insights automáticos assistidos por IA


O Copilot fornece informações detalhadas nos insights automáticos de Uso da CPU. Ele
fornece informações detalhadas e insights para métodos e propriedades específicos,
como String.Concat e muitos outros métodos. Com o Copilot, faça perguntas sobre
funções nos caminhos críticos identificados em seu código, o que pode ajudá-lo a
produzir um código mais eficiente ou econômico.
Quando a ferramenta Uso da CPU fornecer insights automáticos na seção Principais
Insights, selecione Perguntar ao Copilot para aprender com o Copilot e começar a fazer
perguntas.

Exceções assistidas por IA


O Copilot tem acesso a exceções, pilha de chamadas, variáveis locais e código. Ao fazer
boas perguntas com base nos dados de exceção relevantes que o Visual Studio tem
quando você está em uma exceção, o Chat do Copilot pode fornecer insights e
correções úteis para o problema.

Quando vir uma exceção, selecione o link Perguntar ao Copilot para obter respostas
geradas por IA relacionadas à exceção e ao contexto específicos.

Quando você seleciona Pergunte ao Copilot, a janela de Chat do Copilot é aberta no


painel direito. Caso tenha mais dúvidas, basta perguntar ao Copilot!

Depuração assistida por IA


O Copilot entende pilhas de chamadas, quadros, nomes de variáveis e valores. Como
resultado, você pode fazer perguntas detalhadas para o Copilot com reconhecimento de
depurador.

E o Copilot responde!
Implantar o GitHub Copilot em
instâncias existentes do Visual Studio
Artigo • 19/01/2024

Para administradores do Visual Studio 2022 versão 17.8 ou superior, você pode
implantar o GitHub Copilot em estações de trabalho cliente programaticamente com
um script de instalação, assim como você implanta outros componentes do Visual
Studio.

Observe que esse método NÃO instala a extensão de chat do GitHub Copilot.

Pré-requisitos
Para começar, você precisa do seguinte:

Esta seção pressupõe que o Visual Studio 2022 versão 17.8 ou posterior já está
instalado nos computadores cliente. Se não estiver, consulte as diretrizes no Guia
de Administradores do Visual Studio para saber como implantar o Visual Studio
em toda a sua organização.
Uma assinatura válida e ativa do GitHub Copilot for Business é necessária para o
usuário final para cuja instância do Visual Studio 2022 você está instalando o
componente Copilot do GitHub. Consulte: Gerenciando o acesso ao GitHub
Copilot for Business em sua organização.

As opções para implantar o GitHub Copilot em computadores cliente dependem de


como o Visual Studio está instalado atualmente nesses computadores.

Modificar uma instalação existente para


adicionar o componente do GitHub Copilot
Na maioria das vezes, os usuários teriam adquirido o Visual Studio por conta própria ou
executado um script de instalação do ambiente de desenvolvimento no computador
deles. Para adicionar o componente do GitHub Copilot a uma instalação existente do
Visual Studio, use o comando modify do instalador de uma linha de comando ou janela
do PowerShell.

Instruções de instalação de exemplo


Verifique se você está no diretório do Instalador do Visual Studio na linha de comando
ou na janela do PowerShell: C:\Program Files (x86)\Microsoft Visual Studio\Installer

$installDir = .\vswhere.exe -products * -version 17.8 -requires


Microsoft.VisualStudio.Component.CoreEditor -property installationPath
foreach ($i in $installDir) {
Write-Host "Adding Copilot to this installed instance" $i
Start-Process -FilePath .\setup.exe -ArgumentList "modify --installPath
""$i"" --add Component.GitHub.Copilot --passive" -Wait
}

Implantar usando um layout


Se você estiver usando um layout para implantar o Visual Studio em sua organização,
primeiro será necessário adicionar o componente Component.GitHub.Copilot ao layout.
Em seguida, supondo que o cliente esteja configurado para receber atualizações do
layout, você pode executar um comando modify como no exemplo anterior para
adicioná-lo ao cliente.

Consulte a documentação do layout para obter mais informações.

Uma ação de usuário final é necessária


Observe que depois de instalar o componente GitHub Copilot nos computadores
cliente, o usuário final precisará executar as seguintes etapas para habilitar o GitHub
Copilot:

1. Faça logon na interface da Web do GitHub com a conta do GitHub associada à


assinatura do Copilot.
2. Inicie o Visual Studio 2022 e adicione a conta do GitHub deles ao conjunto de
chaves do Visual Studio para ativar o acesso.

Conteúdo relacionado
Para saber mais, considere explorar os seguintes recursos:

Extensão do GitHub Copilot: Introdução


Extensão do GitHub Copilot Chat: Introdução
GitHub Copilot: Comparar planos
Central de Confiabilidade do GitHub Copilot
Usar parâmetros de linha de comando para instalar, atualizar e gerenciar o Visual
Studio
IntelliCode: desenvolvimento de código
assistido por IA no Visual Studio
Artigo • 11/10/2023

O GitHub Copilot, o Chat do GitHub Copilot e o IntelliCode habilitam o


desenvolvimento assistido por IA no Visual Studio, ajudando você a ser mais produtivo e
eficiente ao escrever código.

Neste artigo, você aprenderá como o Visual Studio IntelliCode aprimora o


desenvolvimento de software usando inteligência artificial, por exemplo, fornecendo
preenchimentos automáticos de código com reconhecimento de contexto, incluindo
conclusões de linha inteira em texto cinza. O IntelliCode é incluído por padrão na
maioria das cargas de trabalho do Visual Studio e está disponível por meio do instalador
do Visual Studio. Esse recurso prevê o método ou a propriedade correta mais provável
para o desenvolvedor usar em vez de apenas uma lista alfabética. Ele usa o contexto de
código atual do desenvolvedor e padrões para fornecer essa lista dinâmica.

Além de fornecer sugestões de membros, o IntelliCode também fornece preenchimentos


de argumentos. Essa funcionalidade destaca os nomes de argumentos que você mais
provavelmente usará ao chamar um método e coloca essas sugestões no início da lista
de conclusão. A lista de conclusão é exibida quando você começa a digitar dentro dos
parênteses ou pressiona Ctrl+Espaço.

O IntelliCode rastreia localmente suas edições, detecta quando você executa uma ação
repetitiva e oferece sugestões para aplicar essa mesma ação em outros locais
semelhantes (somente C#).

Preenchimentos automáticos de código com


reconhecimento de contexto
O IntelliCode fornece o IntelliSense assistido por IA para várias linguagens. As sugestões
do IntelliCode aparecem na parte superior da lista de conclusão com um ícone de
estrela ao lado delas:

A lista de conclusão sugere a API que mais provavelmente é a correta para o


desenvolvedor usar, em vez de apresentar uma simples lista de membros em ordem
alfabética. Para fornecer essa lista dinâmica, o IntelliCode usa o contexto de código
atual do desenvolvedor e padrões baseados em milhares de projetos de software livre
de alta qualidade do GitHub. Os resultados formam um modelo que prevê as chamadas
à API mais prováveis e mais relevantes.
Os desenvolvedores de C# no Visual Studio 2022 e superior também se beneficiam dos
preenchimentos automáticos de linha inteira, que preveem a próxima parte do código
com base no código atual até o momento e a apresenta como uma previsão embutida.

7 Observação

Alguns dos recursos do IntelliCode ainda estão em versão prévia, o que significa
que não há nenhuma garantia de suporte futuro. Os recursos de versão prévia
estão desabilitados por padrão. Para habilitar ou desabilitar versões prévias dos
recursos do IntelliCode, escolha Ferramentas>Opções>IntelliCode. Sob Versões
Prévias dos Recursos, escolha Habilitar, Desabilitar ou Padrão para configurar
cada recurso.

Instalar o IntelliCode para Visual Studio


1. Baixe o Visual Studio versão 16.4 ou posterior.
2. Instale uma carga de trabalho compatível, como o desenvolvimento de área de
trabalho do .NET. O Visual Studio IntelliCode é instalado por padrão.

Para desativar as recomendações com estrela do IntelliSense, desabilite a extensão


escolhendo Extensões>Gerenciar Extensões no menu, encontre e selecione a extensão
IntelliCode e clique em Desabilitar.

Cargas de trabalho e linguagens com suporte


As linguagens com suporte para os preenchimentos do IntelliSense assistidos por IA
são:

C#
XAML
C++
JavaScript e TypeScript, que exigem o TypeScript 3.4.2 ou posterior
Visual Basic

O IntelliCode está incluído no Visual Studio 2019 versão 16.4 como parte de uma das
seguintes cargas de trabalho:

Desenvolvimento do Azure
Desenvolvimento para área de trabalho com .NET
Desenvolvimento móvel com o .NET
Desenvolvimento de jogos com Unity
Desenvolvimento de plataforma cruzada do .NET Core
Desenvolvimento Web e ASP.NET
Desenvolvimento de extensão do Visual Studio
Desenvolvimento para a Plataforma Universal do Windows
Desenvolvimento para Office/SharePoint
Desenvolvimento para desktop com C++
Desenvolvimento de jogos com C++
Desenvolvimento móvel com C++
Desenvolvimento de Linux com C++

Conclusões da equipe
As versões anteriores do IntelliCode forneciam uma forma de treinar um modelo no
código, fornecendo preenchimentos de método classificado para estruturas de API
específicas da equipe, bibliotecas e outros projetos de usuário. Essa funcionalidade foi
substituída por um modelo de aprendizado profundo que é executado no computador
e está disponível gratuitamente para os usuários do C#. Confira Como atualizar os
modelos de preenchimentos de equipe personalizados do IntelliCode para o
aprendizado profundo . O IntelliCode é gratuito para todos os usuários do Visual
Studio.

Se você é usuário do C++, assine o GitHub Copilot para experimentar o


desenvolvimento de código assistido por IA. O GitHub Copilot e o IntelliSense do Visual
Studio trabalham juntos para aprimorar os preenchimentos de código. Confira A lista do
IntelliSense do Visual Studio já pode orientar os preenchimentos de código do GitHub
Copilot . O GitHub Copilot exige uma assinatura, mas você pode avaliá-lo com uma
avaliação gratuita.

Solução de erros do IntelliCode no Visual


Studio
Se não vir sugestões do IntelliCode, você poderá ter extensões instaladas que estão
substituindo a IU do IntelliSense. Essas extensões podem impedir a exibição das
sugestões “com estrela” do IntelliCode no início da lista. Verifique se uma extensão está
causando esse comportamento desativando-a e, em seguida, tentando usar o
IntelliSense novamente. Ou, se a extensão for compatível, desligue os recursos de
preenchimento automático.

Se a desabilitação das extensões que substituem a interface do usuário do IntelliSense


não resolver o problema, relate-o por meio do recurso Relatar um Problema do Visual
Studio e mencione o IntelliCode no relatório.

Telemetria
O IntelliCode coleta alguns dados anônimos de uso e de relatório de erros para ajudar a
melhorar o produto. Nenhum código definido pelo usuário é enviado à Microsoft, mas
nós coletamos informações sobre seu uso dos resultados do IntelliCode. Para obter
sugestões do modelo de base, que são membros e tipos do .NET ou software livre,
podemos ver se você selecionou uma sugestão de IntelliCode e registrou o nome da
sugestão. A Microsoft usa os dados para monitorar a qualidade do modelo de base. Em
modelos personalizados, capturamos se você selecionou uma sugestão de IntelliCode,
mas não registramos os nomes dos métodos ou dos tipos definidos pelo usuário.

Para desligar a coleta de dados do IntelliCode, recuse o Programa de Aperfeiçoamento


da Experiência do Visual Studio. Na barra de menus, selecione Ajuda>Enviar
Comentários>Configurações. Na caixa de diálogo Programa de Aperfeiçoamento da
Experiência do Visual Studio, selecione Não, prefiro não participar e, em seguida,
selecione OK.

Confira também
Extensão do IntelliCode para o Visual Studio Code
Assistência de IA quando você escreve
um código
Artigo • 05/10/2023

Os preenchimentos automáticos de linha inteira do IntelliCode preveem o próximo


trecho do código com base no código atual até o momento e o apresentam como uma
previsão em linha de texto cinza. Pense no preenchimento automático de texto cinza
que você vê ao digitar emails, mas para código.

Esse recurso dá suporte ao C# no Visual Studio 2022.

Como ele funciona


O IntelliCode usa um modelo de transformador em grande escala, treinado em cerca de
meio milhão de repositórios públicos de código aberto do GitHub. Esse modelo faz
previsões sobre o que você digitará em seguida com base em um conhecimento
avançado do que você deve ter codificado até o momento, incluindo:

Nomes e posições de variáveis


As bibliotecas que você está usando
Funções em códigos próximos
A lista do IntelliSense

O modelo é executado em sua máquina local, o que permite que o recurso esteja
disponível em ambientes offline e isolados. O recurso dá suporte ao C#.
Dois modos
O IntelliCode fornece conclusões de duas maneiras: uma, quando o usuário está
digitando e duas, quando o usuário tem um item selecionado na lista do IntelliSense.

Modo 1: preenchimento automático de linha inteira ao


digitar
Quando o usuário está digitando, mostramos preenchimentos automáticos de linha
inteira, que você pode aceitar com "Pressione Tab para aceitar". Para ignorar a previsão,
você pode utilizar as chaves Esc ou Delete .

Modo 2: preenchimento automático de toda a linha


quando o item do IntelliSense é selecionado
Quando o usuário tem um item da lista do IntelliSense selecionado, o IntelliCode utiliza
o que o usuário digitou + o que o usuário deve ter selecionado como contexto para
fornecer previsões. Nesse caso, você verá a previsão "Pressione Tab duas vezes para
aceitar". A primeira guia aceita o item selecionado da lista do IntelliSense e a segunda
Guia aceita a conclusão de linha inteira. Para ignorar a previsão, você pode utilizar as
chaves Esc ou Delete .
Aceitar ou ignorar o preenchimento automático de linhas
inteiras
Por padrão, a chave Tab é utilizada para aceitar preenchimentos automáticos de linha
inteira. Para alterar a chave de aceitação padrão, vá para Ferramentas -> Opções ->
IntelliCode -> Conclusões para linhas de código inteiras. Habilitar a configuração
denominada Apply completions for whole lines on right arrow .

Isso altera a chave de aceitação de Tab para a seta para a direita ->

Para ignorar o preenchimento automático de linhas inteiras, as chaves ESC ou Delete


podem ser utilizadas.

Privacidade
Consulte a Privacidade
Controle o preenchimento automático de
linhas inteiras
Você pode controlar o recurso de preenchimento automático de linha inteira usando a
pequena lâmpada roxa mostrada na parte inferior direita do editor, ao lado do controle
de zoom.

A primeira configuração, Show completions for lines of code , permite ativar ou


desativar o preenchimento automático de linhas inteiras.

A segunda configuração, Wait for pauses in typing before showing line completions ,
quando habilitada, permite que os preenchimentos automáticos de linha inteira sejam
mostrados somente se o usuário tiver interrompido a digitação. Talvez você prefira essa
opção se encontrar preenchimentos automáticos de linha inteira distrativos no modo
padrão.

A terceira configuração, Show completions on new lines , pode ser ativada ou


desativada, dependendo se você deseja ver os preenchimentos automáticos de linha
inteira quando inserir uma nova linha, ou seja, ao pressionar Return ou Enter .
Enviar comentários
Clique no ícone Comentários no canto superior direito do Visual Studio para registrar
um tíquete de comentários. Opcionalmente, você pode fazer upload de seus arquivos
de log do IntelliCode para o tíquete de comentários a fim de nos fornecer contexto
adicional. Você deve analisar o conteúdo dos arquivos de log e resolver quaisquer
preocupações de privacidade que possa ter. Esses dados, quando compartilhados
conosco, não serão utilizados para nenhum outro fim que não seja o de fornecer
assistência de suporte a você. Você pode encontrar os logs em
%LOCALAPPDATA%\Temp\VSFeedbackIntelliCodeLogs

A segunda configuração, Wait for pauses in typing before showing line completions ,
quando habilitada, permite que as conclusões de linhas inteiras sejam mostradas
somente se o usuário tiver pausado a digitação. O usuário pode preferir essa opção se
encontrar conclusões de linhas inteiras distrativas no modo padrão.

A terceira configuração, Show completions on new lines , pode ser ativada ou


desativada, dependendo se o usuário deseja ver as conclusões de linhas inteiras quando
tiver inserido uma nova linha, como ao pressionar Return ou Enter .

Próximas etapas
Consulte a Privacidade
Assistência de IA ao editar código
Artigo • 07/10/2023

As sugestões do IntelliCode ajudam você a fazer edições semelhantes em vários locais


do seu código. Ele rastreia suas edições localmente e detecta a repetição. Em seguida,
sugere aplicar essas mesmas edições em outros lugares onde elas possam ser aplicadas.
Por exemplo, se você tiver se esquecido de locais onde uma refatoração poderia ser
aplicada, as sugestões do IntelliCode ajudarão a encontrar esses locais e corrigi-los.

O IntelliCode conhece a estrutura semântica do código. Essa estrutura é usada para


detectar situações onde as alterações podem ser aplicadas, mesmo que os nomes das
variáveis sejam diferentes.

Suponha que você esteja substituindo uma conversão de temperatura repetida usando
valores locais codificados por uma função auxiliar que abstrai esses valores. O
IntelliCode detecta a alteração repetida que você está fazendo e sugere que você faça
essa alteração em outros locais.

As sugestões aparecem como Ações Rápidas no editor do Visual Studio. As sugestões


do IntelliCode têm as opções do menu de Ação rápida Aplicar sugestão e Ignorar
sugestões como esta. Se quiser usar a alteração sugerida, selecione Aplicar sugestão.

No Visual Studio 2019 16.9 e versões posteriores, você também verá sugestões
enquanto digita, na lista de conclusões:
Como ele aprende com suas edições repetidas em uma sessão, as sugestões do
IntelliCode às vezes fazem sugestões que não atendem à sua intenção. Se você não
quiser usar a alteração sugerida, basta selecionar a ação Ignorar sugestões como esta.
O IntelliCode não sugerirá esse padrão novamente, a menos que você o recrie nas
edições subsequentes.

7 Observação

As sugestões do IntelliCode têm escopo na sessão - elas não aparecem depois que
você fecha e reabre o Visual Studio

Se você quiser ver a lista de todas as alterações sugeridas, vá para Exibir>Outras


janelas>sugestões do IntelliCode.

Lâmpada indicando mais sugestões disponíveis


Ao aceitar uma sugestão da lista de conclusões, se houver outros locais onde você
possa aplicar a mesma alteração, você verá uma lâmpada com uma ação que mostra
uma lista de sugestões encontradas. Isso abre a janela de sugestões do IntelliCode, para
que você possa localizar e agir sobre as sugestões.
Desabilitar as sugestões do IntelliCode
As sugestões são ativadas por padrão para o Visual Studio versão 16.7 e posterior.

Se desejar desativá-las, escolha Ferramentas>Opções, guia Geral do IntelliCode e, em


seguida, alterne as sugestões de C# para Desabilitado:
Privacidade do IntelliCode
Artigo • 07/10/2023

Este artigo descreve informações de privacidade e configurações do IntelliCode para


Visual Studio.

Preenchimento de linha inteira do IntelliCode


Os preenchimentos de linha inteira do IntelliCode são executados inteiramente na
máquina local e não enviam códigos para a Microsoft para fazer previsões.

Configurações de firewall e servidor proxy


Para que o IntelliCode obtenha acesso aos serviços Web, os gerentes de rede precisarão
adicionar *.intellicode.vsengsaas.visualstudio.com em https/443 a uma lista de
permissões. Por outro lado, adicioná-lo a uma lista de bloqueios impedirá que o
IntelliCode funcione na sua rede.

Informações adicionais podem ser encontradas em Instalar e usar o Visual Studio e os


Serviços do Azure por trás de um firewall ou servidor proxy.

Exemplos de uso da API do IntelliCode


Esse recurso usa um serviço Web para retornar exemplos de uso reais de funções
encontradas nos repositórios públicos do GitHub. O recurso mantém uma lista local de
nomes de função para os quais ele tem exemplos, com base apenas na verificação de
repositórios públicos do GitHub. Ele mantém essa lista no seu computador local
baixando-a de um serviço Web. Quando você usa exemplos de uso de API, ele verificará
quais chamadas de função no seu código aparecem na lista de chamadas de biblioteca
padrão e de terceiros conhecidas pelo recurso. Essa verificação é executada localmente
para que os códigos não saiam do computador. Finalmente, recuperamos exemplos do
serviço Web para apenas as chamadas de biblioteca padrão e de terceiros que foram
encontradas presentes. Como resultado, esse recurso nunca enviará códigos pela
Internet.
Organizar e editar código no Visual
Studio
Saiba mais sobre como trabalhar com projetos de código, usar recursos do editor de
código e manter um estilo de código consistente.

Abrir ou criar um projeto

g TUTORIAL

Crie um novo projeto

Abrir um projeto de um repositório

c GUIA DE INSTRUÇÕES

Usar o Visual Studio sem projetos ou soluções

Usar a pesquisa do Visual Studio

Usar recursos de edição

e VISÃO GERAL

Usar o editor de códigos

Navegue pelos códigos

Gerar e corrigir código

Gerenciar preferências de estilo de código

Análise de código

Desenvolvimento assistido por IA

e VISÃO GERAL

Ferramentas de assistência de IA

GitHub Copilot
GitHub Copilot Chat

IntelliCode

Usar o IntelliSense para preenchimento de código

Introdução às linguagens de programação

g TUTORIAL

Introdução ao C# e ao ASP.NET Core

Criar um aplicativo de console com o C++

Introdução ao Python

Criar um aplicativo de console com o C#

Criar um aplicativo de console com o Visual Basic

Criar um aplicativo Node.js e Express


Mover-se no IDE do Visual Studio
Artigo • 13/01/2024

O IDE (ambiente de desenvolvimento integrado) foi projetado para que você possa
mover de uma janela para outra e de um arquivo para outro de várias maneiras
diferentes, dependendo dos requisitos do projeto ou de preferência. Você pode optar
por percorrer os arquivos abertos no editor ou percorrer todas as janelas de ferramentas
ativas no IDE. Você também pode mudar diretamente para qualquer arquivo aberto no
editor, independentemente da ordem em que ele foi acessado pela última vez. Esses
recursos podem ajudar a aumentar sua produtividade ao trabalhar no IDE.

7 Observação

As opções disponíveis nas caixas de diálogo e os nomes os locais dos comandos de


menu que você vê podem diferir do que é descrito neste artigo, dependendo de
suas configurações ativas ou da edição. Este artigo foi escrito considerando
configurações Gerais. Para alterar as configurações, por exemplo, para
configurações Gerais ou do Visual C++, escolha Ferramentas>Importar e Exportar
Configurações e, em seguida, escolha Redefinir todas as configurações.

Atalhos do teclado
Quase todos os comandos de menu no Visual Studio têm um atalho de teclado.
Também é possível criar seus próprios atalhos personalizados. Para obter mais
informações, consulte Identificar e personalizar atalhos de teclado.

Navegar entre arquivos no editor


Você pode usar vários métodos para percorrer os arquivos abertos no editor. Você pode
percorrer os arquivos com base na ordem em que os acessa, usar o Navegador de IDE
para localizar rapidamente qualquer arquivo aberto no momento ou fixar arquivos
favoritos à guia também para que fiquem sempre visíveis.

Navegar para Trás e Navegar para Frente percorre os arquivos abertos no editor
baseado na ordem em que foram acessados, de modo muito semelhante a Voltar e
Avançar no histórico de exibição no Microsoft Internet Explorer.

Para percorrer os arquivos abertos por ordem de uso


Para ativar os documentos abertos na ordem em que foram utilizados mais
recentemente, pressione Ctrl+- (hífen).

Para ativar os documentos abertos na ordem inversa, pressione Ctrl+Shift+-


(hífen).

7 Observação

As opções Navegar para Trás e Navegar para Frente também podem ser
encontradas no menu Exibir.

Você também pode mudar para um arquivo específico aberto no editor,


independentemente de quando o arquivo foi acessado pela última vez, usando o
Navegador de IDE, a lista Arquivos Ativos no editor ou a caixa de diálogo Windows.

O Navegador de IDE funciona de modo muito semelhante ao gerenciador de


aplicativos do Windows. Ele não está disponível nos menus e pode ser acessado
somente usando teclas de atalho. Você pode usar qualquer um dos dois comandos para
acessar o Navegador de IDE (mostrado abaixo) para percorrer os arquivos, dependendo
da ordem na qual deseja percorrê-los.

O Window.PreviousDocumentWindowNav permite ir para o arquivo acessado mais


recentemente e Window.NextDocumentWindowNav permite mover-se na ordem inversa. As
Configurações Gerais de Desenvolvimento atribuem Shift+Alt+F7 a
Window.PreviousDocumentWindowNav e Alt+F7 a Window.NextDocumentWindowNav .

7 Observação
Se a combinação de configurações que você está usando ainda não tiver uma
combinação de teclas de atalho atribuída a esse comando, você poderá atribuir seu
próprio comando personalizado usando a página Teclado da caixa de diálogo
Opções. Para obter mais informações, consulte Identificar e personalizar atalhos
de teclado.

Para mudar para arquivos específicos no editor


Pressione CTRL+TAB para exibir o Navegador de IDE. Mantenha pressionada a
tecla Ctrl e pressione Tab repetidamente até selecionar o arquivo para o qual você
deseja mudar.

 Dica

Para inverter a ordem em que você percorre a lista Arquivos Ativos,


mantenha pressionadas as teclas CTRL+SHIFT e pressione a tecla TAB.

- ou -

No canto superior direito do editor, escolha o botão Arquivos Ativos e, em


seguida, selecione um arquivo na lista para mudar para ele.

- ou -

Na barra de menus, escolha Janela>Janelas.

Na lista, selecione o arquivo que você deseja exibir e, em seguida, escolha Ativar.

Navegar entre janelas de ferramentas no IDE


O Navegador de IDE também permite percorrer as janelas de ferramenta abertas no
IDE. Você pode usar qualquer um dos dois comandos para acessar o Navegador de IDE
para percorrer janelas de ferramentas, dependendo da ordem na qual deseja percorrê-
las. O Window.PreviousToolWindowNav permite ir para o arquivo acessado mais
recentemente e Window.NextToolWindowNav permite mover-se na ordem inversa. As
Configurações Gerais de Desenvolvimento atribuem Shift+Alt+F7 a
Window.PreviousDocumentWindowNav e Alt+F7 a Window.NextDocumentWindowNav .

7 Observação
Se a combinação de configurações que você está usando ainda não tiver uma
combinação de teclas de atalho atribuída a esse comando, você poderá atribuir seu
próprio comando personalizado usando a página Teclado da caixa de diálogo
Opções. Para obter mais informações, consulte Identificar e personalizar atalhos
de teclado.

Para mudar para uma janela de ferramentas específica no


IDE
Pressione ALT+F7 para exibir o Navegador de IDE. Mantenha pressionada a tecla
ALT e pressione F7 repetidamente até selecionar a janela para a qual você
pretende mudar.

 Dica

Para inverter a ordem em que você percorre a lista Janelas de Ferramentas


Ativas, mantenha pressionada as teclas Shift+Alt e pressione F7.

Conteúdo relacionado
Personalizar layouts de janela
Atalhos de teclado padrão
Usar a pesquisa do Visual Studio
Artigo • 08/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O IDE (ambiente de desenvolvimento integrado) do Visual Studio tem muitos menus,


opções e recursos, o que pode ser difícil de lembrar. O recurso de pesquisa do Visual
Studio é uma única caixa de pesquisa que ajuda os desenvolvedores a encontrar menus
e opções do IDE, ao mesmo tempo em que pesquisam o código. Independentemente
de você não ter experiência com o Visual Studio ou ser um desenvolvedor experiente,
esse recurso oferece uma maneira rápida de pesquisar entre os recursos do IDE e seu
código.

Pesquisar no Visual Studio 2022 versão 17.6 ou


posterior
Se você estiver usando o Visual Studio 2022 versão 17.6 ou posterior, terá acesso a uma
nova experiência de pesquisa: Pesquisa All-In-One.

Sobre a experiência de Pesquisa All-In-One


Com a Pesquisa All-In-One, não só você pode pesquisar recursos, mas também pode
pesquisar seus elementos de código.
Para habilitar esse recurso, vá para Ferramentas>Opções>Ambiente>Versões prévias
de recursos>Nova experiência de Pesquisa do Visual Studio.

Depois de habilitar a Pesquisa All-In-One e reiniciar o Visual Studio, a nova experiência


de pesquisa aparecerá como uma opção ao lado da barra de menus.
Atalhos de teclado para pesquisa
Você pode usar o atalho de teclado Ctrl+Q para pesquisas de recursos e o atalho de
teclado Ctrl+T para pesquisas de código.

Filtros para consultas

Para obter rapidamente uma experiência filtrada, você pode digitar os prefixos
correspondentes antes da consulta ou usar os atalhos de teclado correspondentes para
abrir a pesquisa com o filtro desejado.

Filtrar Prefixo Atalho de teclado

files f: Ctrl+Shift+T

tipos t: Ctrl+1, Ctrl+T

membros m: Alt+\

 Dica

Para saber mais sobre a nova experiência de pesquisa, confira as postagens nos
blogs Better search in Visual Studio e All-In-One Search available in 17.6 .

Pesquisar no Visual Studio 2022 versão 17.5 ou


anterior
As seções a seguir discutem os diferentes tipos de resultados de pesquisa que você
pode encontrar se estiver usando o Visual Studio 2022 versão 17.5 ou anterior (para
incluir o Visual Studio 2019).

Ao contrário de outros recursos de pesquisa, como Localizar em Arquivos ou Pesquisar


Gerenciador de Soluções, a pesquisa nos resultados do Visual Studio inclui recursos de
IDE, opções de menu, nomes de arquivo e muito mais. Para acessá-lo, use o atalho de
teclado Ctrl+Q para exibir a caixa de pesquisa. Ou selecione a caixa de entrada Pesquisa
do Visual Studio, que está localizada ao lado da barra de menus:

7 Observação

O comando executado pela pesquisa do Visual Studio é Window.QuickLaunch , e você


pode ver esse recurso chamado de pesquisa rápida ou início rápido.

Pesquisar menus, opções e janelas


Você pode usar a caixa de pesquisa do Visual Studio para localizar configurações,
opções e itens de configuração semelhantes. Por exemplo, procure o alterar tema para
localizar e abrir rapidamente a caixa de diálogo que permite alterar o tema de cores do
Visual Studio, conforme mostrado na captura de tela a seguir:

 Dica

Na maioria dos casos, a pesquisa do Visual Studio também lembrará o menu, as


teclas de atalho e a localização de cada item nos resultados.

Você pode usar a caixa de pesquisa do Visual Studio para localizar itens de menu e
comandos. Por exemplo, pesquise limpar sol para localizar e executar rapidamente o
comando Limpar Solução. Os resultados da pesquisa também oferecem um lembrete de
onde encontrar esse comando nos menus, conforme mostrado na captura de tela a
seguir:
Por fim, você pode pesquisar janelas ou painéis que podem ter sido fechados
acidentalmente. Por exemplo, pesquise teste para localizar e abrir a janela do
Gerenciador de Testes:

Pesquisar arquivos e código


A pesquisa do Visual Studio também pesquisa seus itens de solução em busca de nome
de arquivo, código, método e outras correspondências. Na captura de tela a seguir, uma
pesquisa por markdown encontrou o arquivo MarkdownMetaExtractor.cs, a classe
MarkdownMetaExtractor e dois métodos dentro da solução:
Você também pode fazer uma pesquisa de "camel case". Na captura de tela a seguir,
uma pesquisa por FSS encontrou um arquivo, classe e método FolderSizeScanner:

Atalhos de teclado para resultados da pesquisa


Os resultados da pesquisa incluem guias para Todos, Código, Visual Studio. Você pode
economizar tempo usando os seguintes atalhos de teclado para diferentes tipos de
pesquisas:

Ctrl+Q, Ctrl+T para arquivos, tipos e membros


Ctrl+P, Ctrl+M para menus, opções, componentes e modelos do Visual Studio
Ctrl+P, Ctrl+E para ir para a guia Todos, para ambos

Confira também
Comandos do Visual Studio
Atalhos de teclado no Visual Studio
O que são soluções e projetos no Visual
Studio?
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo descreve a diferença entre um projeto e uma solução no Visual Studio.
Também aborda brevemente como criar um novo projeto e como usar a janela de
ferramentas do Gerenciador de Soluções para interagir com seus projetos e soluções.

Projetos
Quando cria um aplicativo ou site no Visual Studio, você começa com um projeto. Em
termos de lógica, um projeto contém todos os arquivos que são compilados em um
executável, biblioteca ou site. Esses arquivos podem incluir código-fonte, ícones,
imagens, arquivos de dados e muito mais. Um projeto também contém configurações
do compilador e outros arquivos de configuração que seu programa pode precisar para
se comunicar com vários serviços ou componentes.

Arquivo de projeto
O Visual Studio usa o MSBuild para compilar cada projeto em uma solução, e cada
projeto contém um arquivo de projeto do MSBuild. A extensão de arquivo reflete o tipo
de projeto, por exemplo, um projeto C# (.csproj), um projeto do Visual Basic (.vbproj) ou
um projeto de banco de dados (.dbproj). O arquivo de projeto é um documento XML
que contém todas as informações e instruções de que o MSBuild precisa para compilar
o projeto. Essas informações e instruções incluem o conteúdo, os requisitos da
plataforma, as informações de controle de versão, as configurações do servidor Web ou
do servidor de banco de dados e as tarefas a serem executadas.

Arquivos de projeto são baseados no esquema XML do MSBuild. Para examinar o


conteúdo de arquivos de projeto de estilo SDK mais recentes no Visual Studio, clique
com o botão direito do mouse no nó do projeto no Gerenciador de Soluções e
selecione Editar <nome do projeto>. Para examinar o conteúdo dos projetos .NET,
primeiro descarregue o projeto (clique com o botão direito do mouse no nó do projeto
no Gerenciador de Soluções e selecione Descarregar Projeto). Em seguida, clique com
o botão direito do mouse no projeto e escolha Editar <nome do projeto>.

7 Observação
Você não precisa usar soluções ou projetos no Visual Studio para editar, compilar e
depurar o código. Você pode simplesmente abrir a pasta que contém os arquivos
de origem no Visual Studio e começar a editá-los. Para obter mais informações,
consulte Desenvolver código no Visual Studio sem projetos nem soluções.

Criar novos projetos


A maneira mais fácil de criar um projeto é usar um modelo de projeto para o tipo de
projeto desejado. Um modelo de projeto inclui um conjunto básico de arquivos de
código, arquivos de configuração, ativos e configurações gerados previamente. Use
Arquivo>Novo>Projeto para selecionar um modelo de projeto. Para mais informações,
confira Criar um projeto no Visual Studio.

Você também pode criar um modelo de projeto personalizado que pode usar para criar
projetos. Para obter mais informações, confira Criar modelos de projeto e de item.

Quando você cria um projeto, o Visual Studio o salva em seu local padrão,
%USERPROFILE%\source\repos. Para alterar esse local, acesse
Ferramentas>Opções>Projetos e Soluções>Locais. Para obter mais informações,
consulte Caixa de diálogo Opções: Projetos e Soluções > Locais.

Soluções
Um projeto está contido dentro de uma solução. Apesar do nome, uma solução não é
uma "resposta". Ela é apenas um contêiner de um ou mais projetos relacionados,
juntamente com informações de build, configurações de janela do Visual Studio e
arquivos diversos que não estão associados a nenhum projeto específico.

Arquivo de solução
O Visual Studio usa dois tipos de arquivos (.sln e .suo) para armazenar configurações de
soluções:

Extensão Nome Descrição

.sln Solução do Visual Organiza projetos, itens de projeto e itens de solução na


Studio solução.

.suo Opções do usuário Armazena configurações e personalizações no nível do


da solução usuário, como pontos de interrupção.
) Importante

Uma solução é descrita por um arquivo de texto (extensão .sln) com seu próprio
formato exclusivo; não se destina à edição manual. Por outro lado, o arquivo .suo é
um arquivo oculto que não é exibido com as configurações padrão do Explorador
de Arquivos. Para mostrar arquivos ocultos, no menu Exibir do Explorador de
Arquivos, marque a caixa de seleção Itens Ocultos.

Pasta de solução
Uma "pasta de solução" é uma pasta virtual que está apenas no Gerenciador de
Soluções, onde você pode usá-la para agrupar projetos em uma solução. Para localizar
um arquivo de solução em um computador, acesse Ferramentas>Opções>Projetos e
Soluções>Locais. Para obter mais informações, consulte Caixa de diálogo Opções:
Projetos e Soluções > Locais.

 Dica

Para obter um exemplo de um projeto e uma solução criados do zero, com


instruções passo a passo e código de exemplo, confira Introdução a projetos e
soluções.

Gerenciador de Soluções
Depois de criar um ojeto, você pode usar o Gerenciador de Soluções para exibir e
gerenciar o projeto, a solução e seus itens associados. A ilustração a seguir mostra o
Gerenciador de Soluções com uma solução C# que contém dois projetos:
A barra de ferramentas na parte superior do Gerenciador de Soluções tem botões para
alternar de uma exibição de solução para uma exibição de pasta, filtrar alterações
pendentes, mostrar todos os arquivos, recolher todos os nós, exibir páginas de
propriedades, visualizar código no editor de código e muito mais.

Muitos comandos de menu estão disponíveis no menu de contexto em vários itens no


Gerenciador de Soluções. Esses comandos incluem criar um projeto, gerenciar pacotes
do NuGet, adicionar uma referência, renomear um arquivo e executar testes, apenas
para citar alguns. Para obter mais informações, consulte Saiba mais sobre Gerenciador
de Soluções.

A partir da versão 17.7, você também pode comparar arquivos no Gerenciador de


Soluções usando as opções de menu de contexto do botão direito do mouse. Para obter
mais informações, confira a seção A ferramenta de comparação de arquivos da página
Saiba mais sobre o Gerenciador de Soluções.

Para projetos ASP.NET Core, você pode personalizar como os arquivos são aninhados no
Gerenciador de Soluções. Para saber mais, confira Aninhamento de arquivos no
Gerenciador de Soluções.

 Dica
Se você fechou o Gerenciador de Soluções e deseja abri-lo novamente, escolha
Exibir>Gerenciador de Soluções na barra de menus ou pressione Ctrl+Alt+L. E se
você fechou as guias laterais e deseja restaurá-las para os locais padrão, escolha
Janela>Redefinir Layout da Janela na barra de menus.

7 Observação

Para exibir imagens e ícones do aplicativo que aparecem no Visual Studio, baixe a
Biblioteca de Imagens do Visual Studio .

Confira também
Gerenciar propriedades do projeto e da solução
Soluções filtradas no Visual Studio
Referência de migração e atualização de projeto do Visual Studio
Criar um novo projeto no Visual Studio
Artigo • 17/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, mostraremos como criar rapidamente um projeto no Visual Studio com
base em um modelo.

Abra o diálogo "Criar um projeto"


Há várias maneiras de criar um novo projeto no Visual Studio. Quando você abre o
Visual Studio pela primeira vez, é exibida a janela de início e, por meio dela, você pode
selecionar Criar um projeto.

Se o ambiente de desenvolvimento do Visual Studio já estiver aberto, você poderá criar


um novo projeto escolhendo Arquivo>Novo>Projeto na barra de menu. Você também
pode selecionar o botão Novo Projeto na barra de ferramentas ou pressionar
Ctrl+Shift+N.
Selecione um tipo de modelo
No diálogo Criar um projeto, uma lista de seus modelos recentemente selecionados
aparece à esquerda. Os modelos são classificados por usados mais recentemente.

Se não selecionar entre os modelos usados recentemente, você poderá filtrar todos os
modelos de projeto disponíveis por Linguagem de programação (por exemplo, C# ou
C++), Plataforma (por exemplo, Windows ou Azure) e Tipo de projeto (por exemplo,
Desktop ou Web). Você também pode inserir texto de pesquisa na caixa de pesquisa
para filtrar ainda mais os modelos, por exemplo, asp.net.

As marcas que aparecem em cada modelo correspondem aos três filtros de lista
suspensa (Tipo de projeto, Plataforma e Linguagem de programação).

 Dica
Se não vir o modelo que você está procurando, você poderá ter uma carga de
trabalho ausente para o Visual Studio. Para instalar cargas de trabalho adicionais,
por exemplo, Desenvolvimento do Azure ou Desenvolvimento móvel com .NET,
selecione o link Instalar mais ferramentas e recursos para abrir o Instalador do
Visual Studio. Nele, selecione as cargas de trabalho que você deseja instalar e, em
seguida, selecione Modificar. Depois disso, modelos de projeto adicionais serão
disponibilizados para sua escolha.

Selecione um modelo e selecione Avançar.

Configure seu novo projeto


O diálogo Configurar seu novo projeto tem opções para nomear seu projeto (e
solução), selecionar um local de disco e muito mais.

O diálogo Informações Adicionais inclui opções para selecionar uma versão do


Framework, um tipo de autenticação e muito mais.

Selecione Criar para criar o projeto.

Adicionar outro projeto a uma solução


Se quiser adicionar outro projeto a uma solução, clique com o botão direito do mouse
no nó Solução no Gerenciador de Soluções e selecione Adicionar>Novo Projeto.

 Dica

Para obter um exemplo de um projeto e uma solução criados do zero, com


instruções passo a passo e código de exemplo, confira Introdução a projetos e
soluções.

Confira também
Visual Studio para Mac: criar um projeto
Criar, usar e excluir projetos e soluções
do Visual Studio
Artigo • 03/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá a criar e usar projetos do Visual Studio do zero para
armazenar os artefatos necessários a fim de criar seus aplicativos. Se você não estiver
familiarizado com projetos no Visual Studio, confira esta visão geral de Projetos e
Soluções. Para saber como criar rapidamente um projeto com base em um modelo,
confira Criar um novo projeto no Visual Studio.

Os projetos armazenam os itens necessários para criação do aplicativo no Visual Studio,


como arquivos de código-fonte, bitmaps, ícones e referências de componente e serviço.
Quando você cria um novo projeto, o Visual Studio cria uma solução para contê-lo. Você
poderá, então, adicionar projetos novos ou existentes à solução, se desejar. Você
também pode criar soluções em branco ou vazias. As soluções também podem conter
arquivos não conectados a nenhum projeto específico.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Criar projetos no Visual Studio para Mac.

Você pode exibir suas soluções e projetos em uma janela de ferramentas chamada
Gerenciador de Soluções. A captura de tela a seguir mostra um exemplo de solução de
console C# no Gerenciador de Soluções que contém dois projetos: Calculator e
CalculatorLibrary. Cada projeto contém vários arquivos e pastas. O nome do projeto em
negrito é o projeto de inicialização, ou seja, o projeto que é iniciado quando você
executa o aplicativo. Você pode especificar qual projeto é o projeto de inicialização.

Embora você possa construir um projeto por conta própria, adicionando nele os
arquivos necessários, o Visual Studio oferece uma seleção de modelos de projeto para
lhe proporcionar um ponto de partida. A criação de um novo projeto com base em um
modelo oferece um projeto com o que é essencial para aquele tipo de projeto e você
pode renomear os arquivos ou adicionar código, novo ou existente, ao projeto, bem
como adicionar outros recursos, conforme a necessidade.

Dito isto, soluções e projetos não são necessários para desenvolver aplicativos no Visual
Studio. Você também pode abrir o código que clonou do Git ou baixou em outro lugar.
Para obter mais informações, consulte Desenvolver código no Visual Studio sem
projetos nem soluções.
Criar um projeto com base em um modelo de
projeto
Para obter informações sobre como selecionar um modelo para criar um projeto, confira
Criar um projeto no Visual Studio. E para obter um exemplo de um projeto e uma
solução que sejam criados do zero, com instruções passo a passo e código de exemplo,
confira Introdução a projetos e soluções.

Criar um projeto com base em arquivos de


código existentes
Se você tem uma coleção de arquivos de origem de código, é possível adicioná-los
facilmente a um projeto.

1. No menu, selecione Arquivo>Novo>Projeto de Código Existente.

2. No assistente Criação de Projeto de Arquivos de Código Existentes, selecione o


tipo de projeto que você deseja na caixa de listagem suspensa Que tipo de
projeto deseja criar? e, em seguida, selecione o botão Avançar.

3. No assistente, navegue até o local dos arquivos e, em seguida, insira um nome


para o novo projeto na caixa Nome. Quando terminar, selecione o botão Concluir .

7 Observação

Essa opção funciona melhor para uma coleção relativamente simples de arquivos.
Atualmente, somente os tipos de projeto do C++, Apache Cordova, Visual Basic e
C# são compatíveis.

Adicionar arquivos a uma solução


Se você tem um arquivo que se aplica a vários projetos, como um arquivo Leiame para a
solução ou outros arquivos que pertençam de forma lógica ao nível da solução e não a
um projeto específico, é possível adicioná-los à própria solução. Para adicionar um item
a uma solução, no menu de contexto (clicar com o botão direito do mouse) do nó da
solução no Gerenciador de Soluções, selecione Adicionar>Novo Item ou
Adicionar>Item existente.

 Dica
Um arquivo de solução é uma estrutura para organizar projetos no Visual Studio.
Ele contém o estado dessas informações em dois arquivos: um arquivo .sln
(baseado em texto, compartilhado) e um arquivo .suo (opções de solução binárias,
ocultas e específicas do usuário). Portanto, uma solução não é algo que deve ser
copiado e renomeado; é melhor criar outra solução e, em seguida, adicionar itens
existentes a ela.

Comparar arquivos
A partir da versão 17.7, você pode comparar arquivos no Gerenciador de Soluções
usando as opções de menu de contexto com o botão direito do mouse. Para obter mais
informações, confira a seção A ferramenta de comparação de arquivos da página Saiba
mais sobre o Gerenciador de Soluções.

Criar um projeto .NET que direciona uma


versão específica do .NET Framework
Ao criar um projeto .NET Framework, você pode determinar uma versão específica do
.NET Framework que deseja usar no projeto. (Ao criar um projeto .NET Core, você não
especifica uma versão de estrutura.)

Para especificar uma versão do .NET Framework, selecione o menu suspenso Framework
na página Configurar seu novo projeto.
Criar soluções vazias
Você também pode criar soluções vazias que não tenham projetos. Isso é preferível em
casos em que você deseja criar a solução e os projetos do zero.

Para criar uma solução vazia


1. Na barra de menus, selecione Arquivo>Novo>Projeto.

2. Na página Criar um novo projeto, digite solução na caixa de pesquisa.

3. Selecione o modelo Solução em Branco e clique em Avançar.

4. Insira os valores Nome e Local da sua solução e, em seguida, selecione Criar.

Depois de criar uma solução vazia, é possível adicionar projetos novos ou existentes ou
itens a ele ao selecionar Adicionar Novo Item ou Adicionar Item Existente no menu
Projeto.

Como mencionado anteriormente, você também pode abrir arquivos de código sem
precisar de um projeto ou solução. Para saber mais sobre como desenvolver código
dessa forma, consulte Desenvolver código no Visual Studio sem projetos ou soluções.
Excluir uma solução, um projeto ou um item
Você pode usar o menu de contexto no botão direito do mouse para excluir ou remover
soluções, projetos ou itens no Visual Studio, mas isso só os remove da solução ou do
projeto atual.

Para excluir permanentemente do sistema uma solução ou outro componente, use o


Explorador de Arquivos para excluir a pasta que contém os arquivos de solução .sln e
.suo. (Antes de excluir uma solução, talvez seja melhor fazer backup de seus projetos e
arquivos caso precise deles novamente.)

7 Observação

O arquivo .suo é um arquivo oculto que não é exibido com as configurações


padrão do Explorador de Arquivos. Para mostrar arquivos ocultos, no menu Exibir
do Explorador de Arquivos, marque a caixa de seleção Itens Ocultos.

Excluir uma solução permanentemente


Você pode acessar o Explorador de Arquivos no Windows usando o Gerenciador de
Soluções no Visual Studio. Veja aqui como fazer isso.

1. No Gerenciador de Soluções, no menu do clique com o botão direito (menu de


contexto) da solução que deseja excluir, selecione Abrir pasta no Explorador de
Arquivos.

2. No Gerenciador de Arquivos, navegue um nível acima.

3. Selecione a pasta que contém a solução e pressione a tecla Delete.

Confira também
Introdução a projetos e soluções
Gerenciar propriedades do projeto e da solução
Soluções filtradas no Visual Studio
Exemplos de código para desenvolvedores
Tutorial: abrir um projeto de um
repositório
Artigo • 04/12/2023

Neste tutorial, você usará o Visual Studio para se conectar a um repositório pela
primeira vez, cloná-lo e, em seguida, abrir um projeto nele.

Se você ainda não tiver instalado o Visual Studio, acesse a página Downloads do Visual
Studio para instalá-lo gratuitamente.

Abrir um projeto de um repositório GitHub


O Visual Studio facilita a abertura de um projeto de um repositório. Você pode fazer isso
quando iniciar o Visual Studio ou diretamente de dentro do Visual Studio IDE.

Veja aqui como fazer isso.

Usar a janela de início


1. Abra o Visual Studio.

2. Na janela inicial, selecione Clonar um repositório.


3. Insira ou digite a localização do repositório e, em seguida, selecione o botão
Clonar.

4. Se ainda não estiver conectado, talvez seja solicitado que você faça login no Visual
Studio ou na sua conta do GitHub.

 Dica

Para obter mais informações sobre como entrar no Visual Studio, consulte a
página Entrar no Visual Studio. Para obter informações específicas sobre
como usar a conta do GitHub para entrar, consulte a página Trabalhar com
contas do GitHub no Visual Studio. E se você receber uma notificação de
confiança e quiser saber mais sobre ela, consulte a página Definir
configurações de confiança para arquivos e pastas.

Mostrar arquivos no Gerenciador de Soluções


1. Em seguida, o Visual Studio carrega as soluções do repositório usando o Modo de
Exibição de Pasta no Gerenciador de Soluções.
Você pode exibir uma solução no Modo de Exibição de Solução clicando duas
vezes em seu arquivo .sln.

Ou, você pode selecionar o botão Alternar Modos de Exibição e, em seguida,


selecionar Program.cs para exibir o código de uma solução.

 Dica

Você pode mudar da visualização de pasta padrão para a visualização de solução


no menu Git. Selecione Configurações>Controle do Código-Fonte>Configurações
globais do Git>Carregar a solução automaticamente ao abrir um repositório do
Git para fazer isso.

Abrir um projeto localmente de um repositório GitHub clonado


anteriormente
1. Abra o Visual Studio.

2. Na janela de início, clique em Abrir um projeto ou uma solução.

O Visual Studio abre uma instância do Explorador de Arquivos, em que você pode
navegar até a solução ou projeto e selecioná-la para abrir.

 Dica

Se você abriu o projeto ou a solução recentemente, selecione-o na seção


Abrir recente para abri-lo rapidamente novamente.

Iniciar codificação!

Usar o IDE
Você também pode usar o menu Git ou o controle Selecionar Repositório no Visual
Studio IDE para interagir com pastas e arquivos de um repositório.
Veja aqui como fazer isso.

Para clonar um repositório e abrir um projeto


1. No Visual Studio IDE, selecione o menu Git e, em seguida, selecione Clonar
Repositório.

2. Siga os prompts para se conectar ao repositório Git que inclui os arquivos que
você está procurando.

Para abrir pastas e arquivos locais

1. No Visual Studio IDE, selecione o menu Git, selecione Repositórios Locais e, em


seguida, selecione Abrir Repositório Local.

2. Siga os prompts para se conectar ao repositório Git que possui os arquivos que
você está procurando.

Procurar um repositório do Azure DevOps


Veja como procurar e clonar um repositório do Azure DevOps usando o Visual Studio.

1. Abra o Visual Studio.

2. Na janela inicial, selecione Clonar um repositório.


3. Na seção Navegar em um repositório, selecione Azure DevOps.

4. Siga os prompts para clonar um repositório do Azure DevOps que inclui os


arquivos que você está procurando e abra seu projeto.

Próximas etapas
Fique à vontade para se aprofundar em qualquer um dos seguintes tutoriais específicos
da linguagem:

Tutoriais do Visual Studio | C#


Tutoriais do Visual Studio | Visual Basic
Tutoriais do Visual Studio | C++
Tutoriais do Visual Studio | Python
Tutoriais do Visual Studio | JavaScript, TypeScript e Node.js

Confira também
Documentação de controle de versão do Visual Studio
Conheça o Gerenciador de Soluções
Artigo • 05/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar o Gerenciador de Soluções para gerenciar projetos e arquivos em uma
solução. Este artigo descreve a interface do usuário do Gerenciador de Soluções em
detalhes e como abrir o Gerenciador de Soluções se você o fechar por acidente. O
artigo também descreve como você pode usar o menu de contexto de clique com o
botão direito do mouse no Gerenciador de Soluções para adicionar rapidamente novos
arquivos, pastas e elementos de código a um projeto.

Abrir o Gerenciador de Soluções


Por padrão, a janela de ferramentas Gerenciador de Soluções aparece como um painel
no lado superior direito do IDE (ambiente de desenvolvimento integrado) do Visual
Studio. Se você não vir a janela de ferramentas do Gerenciador de Soluções, poderá
abri-la na barra de menus do Visual Studio usando Exibir>Gerenciador de Soluções ou
selecionando Ctrl + Alt + L .

Interface do usuário do Gerenciador de


Soluções
Vamos dar uma olhada na janela de ferramentas Gerenciador de Soluções e sua
interface do usuário (interface do usuário). Começaremos com uma captura de tela
anotada de uma solução de console C# aberta que tem dois projetos.

A tabela a seguir é um equivalente a texto da captura de tela anotada, mas com alguns
links úteis você pode usar para saber mais.

Elemento da interface de Ação


usuário

Barra de ferramentas Controlar como seus arquivos são exibidos

Barra de Pesquisa Pesquisar arquivos e tipos de arquivo específicos

Janela Principal Exibir e gerenciar seus arquivos, projetos e soluções

Nó da solução Gerenciar suas soluções

Nó do projeto Gerenciar seu(s) projeto(s)

Nó de dependências: Gerenciar sua solução e dependências do projeto

Nó do programa Exibir, editar e gerenciar seu programa ou aplicativo (aplicativo)

Guia de alterações do Git Usar o Git e GitHub no Visual Studio para colaborar em projetos
com sua equipe

Barra de ferramentas do Gerenciador de Soluções


Para continuar, vamos dar uma olhada mais de perto na barra de ferramentas em
Gerenciador de Soluções.
A barra de ferramentas contém os seguintes elementos de interface do usuário, da
esquerda para a direita:

Elemento da interface de usuário Ação

Botão Voltar Alternar entre os resultados da pesquisa

Botão Avançar Alternar entre os resultados da pesquisa

Botão Página Inicial Retornar à exibição padrão

Botão Alternar modos de exibição Alternar entre a exibição de solução padrão e a exibição
de pasta opcional

Botão e menu suspenso Filtro de Exibir arquivos abertos ou arquivos com alterações
alterações pendentes pendentes

Botão Sincronizar com documento Localizar um arquivo do editor de código


ativo

Botão Atualizar (condicional) Aparece somente quando você seleciona uma


dependência, como uma função ou um pacote

Botão Recolher Tudo Recolher a exibição de arquivo na janela principal

Botão Mostrar todos os arquivos Exibir todos os arquivos, incluindo projetos descarregados

Botão Propriedades Exibir e alterar as configurações de arquivos e


componentes específicos

Botão Visualizar o Item Selecionado Exibir um arquivo ou componente selecionado no editor


de código

Menu de Contexto do Gerenciador de Soluções


Em Gerenciador de Soluções, há várias opções com as quais você pode interagir usando
o menu de contexto de clique com o botão direito do mouse. As opções específicas de
contexto que aparecem dependem de você selecionar um nó de Solução ou um nó de
Projeto.

Opções de menu do nó da solução


A captura de tela a seguir de um aplicativo de console C# mostra as opções de menu de
contexto exibidas quando você clica com o botão direito do mouse no nó Solução.

O que você vê no menu de contexto do nó Solução também depende do tipo de


projeto, da linguagem de programação ou da plataforma. A captura de tela a seguir
realça as seguintes opções extras para um aplicativo C#: Dependências do Projeto,
Ordem de Build do Projeto, Definir Projetos de Inicialização e um menu suspenso do
Git. Essas opções extras normalmente aparecem quando você adiciona outro projeto a
uma solução e, em seguida, adiciona-o a um repositório.

Opções de menu do nó do projeto


A captura de tela a seguir de um aplicativo de console C# mostra as opções de menu de
contexto exibidas quando você clica com o botão direito do mouse no nó Projeto.

O que você vê no menu de contexto do nó Projeto também depende do tipo de


projeto, da linguagem de programação ou da plataforma. A captura de tela a seguir
realça a seguinte opção extra para um aplicativo C#: um menu suspenso Dependências
de Build. Essas opções extras normalmente aparecem quando você adiciona outro
projeto a uma solução e, em seguida, adiciona-o a um repositório.

O menu Adicionar
No menu de contexto Gerenciador de Soluções, uma das opções mais úteis é o menu
Adicionar submenu. Nela, você pode adicionar outro projeto a uma solução. Você
também pode adicionar um item a um projeto e muito mais.

Você pode exibir o menu suspenso Adicionar no nó Solução, no nó Projeto ou no nó


Dependências. As opções variam, dependendo de qual nó você usa.

Para obter um tutorial que explica como adicionar itens e projetos usando o menu de
contexto em Gerenciador de Soluções, consulte a página Introdução a projetos e
soluções.

A caixa de diálogo Adição Rápida


Começando na versão 17.5 do Visual Studio 2022, você pode usar a caixa de diálogo
Adição Rápida para criar um arquivo vazio ou uma classe C# simples. No Gerenciador
de Soluções, clique com o botão direito do mouse em uma pasta ou projeto e selecione
Adicionar>Novo Item. Ou, se preferir, use o atalho de teclado Ctrl + Shift + A .
Com a Adição Rápida, é possível executar as tarefas a seguir.

Adicione um novo arquivo sem navegar pela lista de modelos.


Por exemplo: MyClass.cs
Crie pastas aninhadas em uma só operação.
Exemplo: Folder1/Folder2/, Folder1/Folder2/MyFile.cs
Adicione arquivos com qualquer extensão ou sem nenhuma extensão.
Exemplo: File.MyExtension, README, .gitignore
A Adição Rápida preenche uma extensão padrão para você, mas você pode
selecionar Escape (Esc) depois de abrir a caixa de diálogo para limpar
rapidamente a caixa de entrada.
Adicione vários arquivos ao mesmo tempo.
Exemplo: File1.cs, File2.html ou File.cs, File.txt.

Você também pode alternar rapidamente entre as caixas de diálogo Adição Rápida e
Novo Item. Veja aqui como fazer isso.

Use Mostrar Todos os Modelos para abrir a caixa de diálogo Novo Item.

Use Mostrar Exibição Compacta para abrir a caixa de diálogo Adição Rápida.

O Visual Studio se lembra de sua escolha para que você tenha a experiência que melhor
atenda às suas necessidades. Para retornar à caixa de diálogo de Adição Rápida padrão,
selecione Shift + F2 .

 Dica
Você pode configurar os atalhos de teclado para o comando Project.AddNewItem
e o comando AddQuickFile em Ferramentas>Opções>Ambiente>Teclado.

A ferramenta de comparação de arquivos


A partir do Visual Studio 2022 versão 17.7, agora você pode selecionar dois arquivos no
Gerenciador de Soluções e compará-los usando as novas opções Comparar com e
Comparar selecionados.

Você pode comparar arquivos das seguintes maneiras:

Clique com o botão direito em um único arquivo e selecione Comparar com… no


menu de contexto, que abre o Explorador de Arquivos. Em seguida, navegue até
qualquer arquivo e selecione-o para comparação.
Selecione dois arquivos mantendo pressionado o botão Ctrl. Em seguida, clique
com o botão direito e selecione Comparar Selecionados no menu de contexto.

Não importa a forma que você escolher para comparar seus arquivos, a ferramenta de
comparação de arquivos deve facilitar a comparação de seus arquivos sem a
necessidade de sair do seu IDE.

O comando Recolher Todos os Descendentes


O comando Recolher Todos os Descendentes também está incluído no Visual Studio
2022 versão 17.7. Esse comando recolhe recursivamente todos os nós em uma seleção
para que você possa arrumar hierarquias profundamente aninhadas à medida que
navega pela estrutura do projeto.

Você pode encontrar o comando Recolher Todos os Descendentes no menu de


contexto do botão direito do mouse para qualquer item no Gerenciador de Soluções
que tenha descendentes. Você também pode pressionar Ctrl+Seta Para a Esquerda para
usar o comando.

Confira também
O que são soluções e projetos no Visual Studio?
O que é o Designer de Projeto do .NET?
Personalizar layouts de janela e guias no Visual Studio
Gerenciar propriedades do projeto e da
solução
Artigo • 13/01/2024

Projetos têm propriedades que controlam muitos aspectos da compilação, da


depuração, do teste e da implantação. Algumas propriedades são comuns entre todos
os tipos de projeto, e algumas são exclusivas de linguagens ou plataformas específicas.

Para acessar as propriedades do projeto, clique com o botão direito do mouse no nó do


projeto no Gerenciador de Soluções e escolha Propriedades ou digite propriedades na
caixa de pesquisa na barra de menus e escolha Janela de Propriedades nos resultados.
Os projetos do .NET também podem ter um nó de propriedades na árvore do projeto
em si.
7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Gerenciando propriedades da solução e do projeto (Visual Studio para
Mac).

Propriedades do projeto
As propriedades do projeto são organizadas em grupos e cada grupo tem sua própria
página de propriedades. As páginas podem ser diferentes para idiomas e tipos de
projeto distintos.

Projetos em C#, Visual Basic e F#


Nos projetos em C#, Visual Basic e F#, as propriedades são expostas no Designer de
Projeto do .NET.

A seguinte captura de tela mostra a página de propriedades Build no Designer de


Projeto do .NET para um projeto de console em C#:
A seguinte captura de tela mostra a página de propriedades Compilar no Designer de
Projeto do .NET para um projeto de console no Visual Basic:

Para obter mais informações sobre cada uma das propriedades do Designer de Projeto,
confira O que é o Designer de Projeto do .NET.

 Dica

As soluções têm algumas propriedades, bem como os itens de projeto. Essas


propriedades são acessadas na janela Propriedades, não no Designer de Projeto
do .NET.
Projetos em C++ e JavaScript
Projetos em C++ e JavaScript têm uma interface do usuário diferente para gerenciar
propriedades do projeto. Esta ilustração mostra uma página de propriedades de projeto
do C++ (páginas em JavaScript são semelhantes):

Para obter informações sobre as propriedades do projeto C++, confira Trabalhar com
propriedades do projeto (C++). Para obter mais informações sobre as propriedades do
JavaScript, confira Páginas de propriedades, JavaScript.

Propriedades da solução
Para acessar propriedades na solução, clique com o botão direito do mouse no nó da
solução no Gerenciador de Soluções e escolha Propriedades. Na caixa de diálogo, você
pode definir as configurações do projeto para builds de Depuração ou Versão ou
escolher quais projetos devem ser o projeto de inicialização quando F5 é pressionado e
definir as opções de análise de código.

As propriedades da solução são armazenadas em um arquivo de Opções do Usuário da


Solução (.suo). Para obter mais informações sobre esse tipo de arquivo, confira a seção
"Arquivo de solução" da página Soluções e projetos no Visual Studio.
Conteúdo relacionado
O que são soluções e projetos no Visual Studio?
Gerenciando propriedades da solução e do projeto (Visual Studio para Mac)
Gerenciar referências em um projeto
Artigo • 04/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Antes de escrever código em um componente externo ou um serviço conectado, o


projeto primeiro deve conter uma referência a ele. Basicamente, uma referência é uma
entrada em um arquivo de projeto que contém as informações de que o Visual Studio
precisa para localizar o componente ou o serviço.

A maneira como você adiciona uma referência depende do tipo de projeto para o
código no qual você está trabalhando:

Se você vir um nó Dependências no Gerenciador de Soluções, poderá usar o


menu de contexto do botão direito do mouse para selecionar Adicionar
Referência de Projeto.

Se você vir um nó Referências no Gerenciador de Soluções, poderá usar o menu


de contexto de clique com o botão direito do mouse para selecionar Adicionar
Referência.
Para obter mais informações, consulte How to: Add or remove references (Como
adicionar ou remover referências).

É possível adicionar uma referência aos seguintes tipos de componentes e serviços:

Bibliotecas de classes ou assemblies .NET

Aplicativos UWP

componentes COM

Outros assemblies ou bibliotecas de classes de projetos na mesma solução

Projetos compartilhados

Serviços Web XML

Referências ao aplicativo UWP


A Plataforma Universal do Windows fornece uma plataforma de aplicativo comum para
todos os dispositivos que são executados no Windows 10. Para saber como criar um
aplicativo UWP, confira Tutorial: crie seu primeiro aplicativo da Plataforma Universal do
Windows no Visual Studio com XAML e C#.

Referências de projeto
Projetos UWP (Plataforma Universal do Windows) podem criar referências a outros
projetos UWP na solução, ou a projetos ou binários do Windows 8.1, desde que esses
projetos não usem APIs que foram preteridas no Windows 10 e posteriores. Para obter
mais informações, consulte Mover do Windows Runtime 8 para a UWP.

Se você optar por redirecionar projetos do Windows 8.1 para o Windows 10 e


posteriores, consulte Portar, migrar e atualizar projetos do Visual Studio.

 Dica

Para obter informações sobre como criar e compilar um novo aplicativo UWP para
Windows 10 e Windows 11, confira Escolher uma versão UWP.

Referências do SDK da Extensão


Aplicativos UWP (Plataforma Universal do Windows) no Visual Basic, C#, C++ e
JavaScript podem referenciar SDKs da Extensão direcionados ao Windows 8.1, desde
que esses SDKs de Extensão não usem APIs que foram preteridas no Windows 10 e
posteriores. Confira o site do fornecedor do SDK da Extensão para descobrir se ele pode
ser referenciado por aplicativos UWP.

Se você determinar que não há suporte para o SDK da Extensão que está sendo
referenciado pelo aplicativo, precisará executar as seguintes etapas:

1. Observe o nome do projeto que está causando o erro. A plataforma direcionada


ao projeto é indicada entre parênteses ao lado do nome do projeto. Por exemplo,
MyProjectName (Windows 8.1) significa que o projeto MyProjectName se destina
à versão da plataforma Windows 8.1.

2. Acesse o site do fornecedor que é proprietário do SDK de Extensão sem suporte e


instale a versão do SDK de Extensão com dependências que são compatíveis com
a versão da plataforma de destino do projeto.

7 Observação

Uma maneira de descobrir se um SDK de Extensão tem dependências em


outros SDKs de Extensão é examinar no Gerenciador de Referências. Reinicie
o Visual Studio, crie um novo projeto de aplicativo UWP de C#, clique com o
botão direito do mouse no projeto e selecione Adicionar Referência. Acesse a
guia Windows, a subguia Extensões e selecione o SDK de Extensão. Examine
o painel à direita no Gerenciador de Referências. Se ele tiver dependências,
elas serão listadas no painel.

) Importante

Se o projeto tiver como destino o Windows 10 especificamente, e o SDK da


Extensão instalado na etapa anterior tiver uma dependência do Pacote de
Runtime do Microsoft Visual C++, a versão do Pacote de Runtime do
Microsoft Visual C++ compatível com o Windows 10 será v14.0 e será
instalada com o Visual Studio.

3. Se o SDK de Extensão instalado na etapa anterior tiver dependências de outros


SDKs de Extensão, acesse os sites dos fornecedores proprietários das
dependências e instale as versões dessas dependências compatíveis com a versão
da plataforma de destino do projeto.

4. Reinicie o Visual Studio e abra o aplicativo.

5. Clique com o botão direito do mouse no nó Referências ou Dependências no


projeto que causou o erro e selecione Adicionar Referência.

6. Selecione a guia Windows e, em seguida, a subguia Extensões, desmarque as


caixas de seleção dos antigos SDKs de Extensão e, em seguida, marque as caixas
de seleção dos novos SDKs de Extensão. Selecione OK.

Adicionar uma referência em tempo de design


Ao fazer uma referência a um assembly no projeto, o Visual Studio pesquisa o assembly
nos seguintes locais:

O diretório atual do projeto. (É possível encontrar esses assemblies usando a guia


Procurar.)

Outros diretórios do projeto na mesma solução. (É possível encontrar esses


assemblies na guia Projetos.)

7 Observação

Todos os projetos contêm uma referência implícita a mscorlib.


Todos os projetos contêm uma referência implícita a System.Core , mesmo se
System.Core for removido da lista de referências.
Os projetos do Visual Basic contêm uma referência implícita a
Microsoft.VisualBasic.

Referências a componentes compartilhados no


tempo de execução
Em tempo de execução, os componentes devem estar no caminho de saída do projeto
ou no GAC (Cache de Assembly Global). Se o projeto contiver uma referência a um
objeto que não está em um desses locais, será necessário copiar a referência para o
caminho de saída do projeto ao compilá-lo. A propriedade CopyLocal indica se esta
cópia precisa ser feita. Se o valor for True, a referência será copiada para o diretório do
projeto durante o build do projeto. Se o valor for False, a referência não será copiada.

Se você implantar um aplicativo que contenha uma referência a um componente


personalizado registrado no GAC, o componente não será implantado com o aplicativo,
independentemente da configuração CopyLocal. Nas versões anteriores do Visual
Studio, era possível definir a propriedade CopyLocal em uma referência para garantir
que o assembly fosse implantado. Agora, é necessário adicionar o assembly à pasta \Bin
manualmente. Essa ação coloca todos os códigos personalizados sob análise, reduzindo
assim o risco de publicar códigos personalizados com os quais você não está
familiarizado.

Por padrão, a propriedade CopyLocal será definida como False se o assembly ou o


componente estiver no cache de assembly global ou for um componente de estrutura.
Caso contrário, o valor será definido como True. Referências projeto a projeto são
sempre definidas como True.

Referenciar um projeto ou um assembly


direcionado a outra versão do .NET
É possível criar aplicativos que referenciam projetos ou assemblies direcionados a outra
versão do .NET. Por exemplo, é possível criar um aplicativo que tem como destino o
.NET Framework 4.6, que referencia um assembly que tem como destino o .NET
Framework 4.5. Se criar um projeto direcionado a uma versão anterior do .NET, você não
poderá definir uma referência nesse projeto a um projeto ou um assembly direcionado
a uma versão mais recente.

Para obter mais informações, confira Visão geral do direcionamento de estrutura.


Referências projeto a projeto
Referências projeto a projeto são referências a projetos que contêm assemblies; é
possível adicioná-las usando a guia Projetos na caixa de diálogo Gerenciador de
Referências. O Visual Studio pode encontrar um assembly quando receber um caminho
para o projeto.

Quando você tiver um projeto que produz um assembly, faça referência ao projeto e
não use uma referência de arquivo. A vantagem de uma referência projeto a projeto é
que ela cria uma dependência entre os projetos no sistema de build. O projeto
dependente será criado se tiver sido alterado desde a última vez em que o projeto de
referência foi criado. Uma referência de arquivo não cria uma dependência de build e,
portanto, é possível compilar o projeto de referência sem compilar o projeto
dependente, e a referência pode se tornar obsoleta. (Ou seja, o projeto pode referenciar
uma versão compilada anteriormente do projeto.) Isso pode fazer com que várias
versões de uma DLL sejam necessárias no diretório bin, o que não é possível. Quando
esse conflito ocorre, é exibida uma mensagem, como "Aviso: a dependência 'arquivo' no
projeto 'projeto' não pode ser copiada para o diretório de execução porque substituiria
a referência 'arquivo'". Para obter mais informações, confira Solução de problemas de
referências quebradas e Como criar e remover dependências de projeto.

7 Observação

Uma referência de arquivo será criada em vez de uma referência projeto a projeto
se a versão de destino do .NET Framework de um projeto for a versão 4.5 e a
versão de destino do outro projeto for a versão 2, 3, 3.5 ou 4.0.

Referências de projeto compartilhado


Ao contrário da maioria dos outros tipos de projetos, um projeto compartilhado não tem
nenhuma saída binária. Em vez disso, o código é compilado em cada projeto que faz
referência a ele. Os Projetos Compartilhados permitem gravar códigos comuns que são
referência de vários projetos de aplicativos diferentes. O código é compilado como
parte de cada projeto de referência e pode incluir diretivas de compilador para ajudar a
incorporar a funcionalidade específica da plataforma à base de código compartilhada.
Adicione uma referência a um projeto compartilhado na guia Projetos Compartilhados
da caixa de diálogo Gerenciador de Referências.

Referências de arquivo
Referências de arquivo são referências diretas a assemblies fora do contexto de um
projeto do Visual Studio. Crie-as usando a guia Procurar da caixa de diálogo
Gerenciador de Referências. Use uma referência de arquivo quando você tiver apenas
um assembly ou componente e não o projeto que o cria como a saída.

Confira também
Solução de problemas de referências desfeitas
Como adicionar ou remover referências
Adicionar ou remover referências
usando o Gerenciador de Referências
Artigo • 23/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível usar a caixa de diálogo Gerenciador de Referências para adicionar e gerenciar


referências aos componentes que você, a Microsoft ou outra empresa desenvolveram.
Se você estiver desenvolvendo um aplicativo Universal do Windows, o projeto
referenciará automaticamente todas as DLLs corretas do SDK do Windows. Quando
você cria um projeto .NET, seu projeto faz referência automaticamente aos
componentes necessários, como o SDK do .NET, mas você precisa adicionar referências
à medida que adiciona funcionalidade. Algumas APIs do .NET são expostas em
componentes que precisam ser adicionados manualmente. As referências a
componentes COM ou a componentes personalizados devem ser adicionadas
manualmente.

Caixa de diálogo Gerenciador de Referências


A caixa de diálogo Gerenciador de Referências mostra diferentes categorias à esquerda,
dependendo do tipo de projeto:

Assemblies, com os subgrupos deEstrutura e Extensões (somente .NET


Framework)

COM lista todos os componentes COM disponíveis para referência

Projetos

Projetos compartilhados

Windows, com subgrupos Core e Extensões. É possível explorar as referências no


SDK do Windows ou nos SDKs de extensão usando o Pesquisador de Objetos.

Procurar, com o subgrupo Recente

7 Observação

Talvez você não veja Procurar na caixa de diálogo Gerenciador de Referência


se estiver desenvolvendo projetos C++.
Adicionar uma referência
1. Em Gerenciador de Soluções, clique com o botão direito do mouse no nó
Referências ou Dependências e escolha Adicionar Referência de Projeto,
Adicionar Referência de Projeto Compartilhado ou Adicionar Referência COM no
menu de contexto. (Você pode clicar com o botão direito do mouse no nó do
projeto e selecionar Adicionar no menu suspenso para escolher entre essas
opções também.)

O Gerenciador de Referências é aberto e lista as referências disponíveis por grupo.


2. Selecione uma referência a ser adicionada e, em seguida, selecione OK.

7 Observação

Se você não vir a referência que está procurando, selecione Procurar para
localizar a referência. (Se você estiver desenvolvendo projetos C++, talvez não
veja uma opção de navegação.)

Guia Assemblies (somente .NET Framework)

7 Observação

A guia Assemblies não está disponível para projetos destinados ao .NET Core ou
ao .NET 5 e posterior, porque os assemblies para esses projetos são adicionados
como pacotes NuGet ou são incluídos direcionando uma versão específica do .NET.
Para ver os assemblies referenciados em um projeto, expanda o nó Dependências
no projeto e procure em Estruturas. No nó Dependências você pode clicar com o
botão direito do mouse para adicionar ou remover referências de projeto ou abrir o
navegador de pacotes NuGet para gerenciar pacotes NuGet. Consulte Instalar e
gerenciar pacotes no Visual Studio usando o Gerenciador de Pacotes do NuGet
na documentação do NuGet.
Para projetos do .NET Framework, a guia Assemblies lista todos os assemblies do .NET
que estão disponíveis para referência. A guia Assemblies não lista os assemblies do GAC
(cache de assembly global), pois os assemblies no GAC fazem parte do ambiente de
tempo de execução. Se você implantar ou copiar um aplicativo que contém uma
referência a um assembly registrado no GAC, o assembly não será implantado ou
copiado com o aplicativo, independentemente da configuração Copiar Local. Para obter
mais informações, consulte Gerenciar referências em um projeto.

Ao adicionar uma referência manualmente a qualquer namespace EnvDTE (EnvDTE,


EnvDTE80, EnvDTE90, EnvDTE90a ou EnvDTE100), defina a propriedade Inserir Tipos de
Interoperabilidade da referência como Falso na janela Propriedades. Definir essa
propriedade como Verdadeiro poderá causar problemas de build devido a
determinadas propriedades de EnvDTE que não podem ser inseridas.

Todos os projetos da área de trabalho contêm uma referência implícita a mscorlib. Os


projetos do Visual Basic contêm uma referência implícita a Microsoft.VisualBasic. Todos
os projetos contêm uma referência implícita a System.Core, mesmo se ela for removida
da lista de referências.

A guia Assemblies consiste em duas subguias:

1. Framework lista todos os assemblies que constituem a estrutura de destino.

Para projetos não direcionados ao .NET Core ou à Plataforma Universal do


Windows, a guia Estrutura enumera os assemblies da estrutura de destino. O
usuário precisa adicionar todas as referências exigidas pelo aplicativo.

Por padrão, os projetos Universais do Windows contêm referências a todos os


assemblies da estrutura de destino. Em projetos gerenciados, um nó somente
leitura na pasta Referências no Gerenciador de Soluções indica a referência a todo
a estrutura. Consequentemente, a guia Framework não enumerará nenhum dos
assemblies da estrutura e exibirá a seguinte mensagem: "Todos os assemblies do
Framework já estão referenciados. Use o Pesquisador de Objetos para explorar as
referências no Framework”.

2. Extensões lista todos os assemblies que os fornecedores externos de


componentes e controles desenvolveram para estender a estrutura de destino.
Dependendo da finalidade do aplicativo do usuário, esses assemblies podem ser
necessários.

As Extensões são populadas enumerando-se os assemblies registrados nos


seguintes locais:

Computador de 32 bits:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\[Target Framework
Identifier]\v[Target Framework Version]\AssemblyFoldersEx\

[UserComponentName]\@default=[Disk location of assemblies]


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\[Target Framework

Identifier]\v[Target Framework Version]\AssemblyFoldersEx\

[UserComponentName]\@default=[Disk location of assemblies]

Computador de 64 bits:

HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\[Target Framework
Identifier]\v[Target Framework Version]\AssemblyFoldersEx\

[UserComponentName]\@default=[Disk location of assemblies]

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\[Target Framework
Identifier]\v[Target Framework Version]\AssemblyFoldersEx\

[UserComponentName]\@default=[Disk location of assemblies]

E versões mais antigas do [Identificador de estrutura de destino]

Por exemplo, se um projeto tiver como destino o .NET Framework 4 em um


computador de 32 bits, as Extensões enumerarão os assemblies registrados em
\Microsoft.NETFramework\v4.0\AssemblyFoldersEx,
\Microsoft.NETFramework\v3.5\AssemblyFoldersEx,
\Microsoft.NETFramework\v3.0\AssemblyFoldersEx, and
\Microsoft.NETFramework\v2.0\AssemblyFoldersEx.

Alguns componentes na lista podem não ser exibidos, dependendo da versão de


estrutura do projeto. Essa situação pode ocorrer nas seguintes condições:

Um componente que usa uma versão de estrutura recente é incompatível com um


projeto direcionado a uma versão anterior.

Para saber mais sobre como alterar a versão da estrutura de destino de um


projeto, confira Visão geral de destino da estrutura.

Um componente que usa uma versão mais antiga do .NET Framework não é
compatível com um projeto direcionado a um .NET Framework mais recente.

Para obter mais informações sobre compatibilidade de versão entre versões do .NET
Framework, consulte Compatibilidade de versão.

Você deve evitar adicionar referências de arquivo às saídas de outro projeto na mesma
solução, porque fazer isso poderá causar erros de compilação. Em vez disso, use a guia
Projetos da caixa de diálogo Adicionar Referência para criar referências projeto a
projeto. Essa prática facilita o desenvolvimento em equipe, permitindo um melhor
gerenciamento das bibliotecas de classes criadas nos projetos. Para obter mais
informações, consulte Solução de problemas de referências desfeitas.

7 Observação

Uma referência de arquivo será criada, em vez de uma referência de projeto, se a


versão da estrutura de destino de um projeto for .NET Framework 4.5 ou posterior
e a versão de destino do outro projeto for .NET Framework 2, 3, 3.5 ou 4.0. Para
obter mais informações sobre .NET, .NET Framework e .NET Core, consulte O que é
.NET (e .NET Core).

Para exibir um assembly na caixa de diálogo Adicionar


Referência
Mova ou copie o assembly para um dos seguintes locais:

O diretório atual do projeto. (É possível encontrar esses assemblies usando a


guia Procurar.)

Outros diretórios do projeto na mesma solução. (É possível encontrar esses


assemblies usando a guia Projetos.)

- ou -

Defina uma chave do Registro que especifica o local dos assemblies a ser exibido:

Para um sistema operacional de 32 bits, adicione uma das chaves do Registro a


seguir.

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework\

<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\

<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"

Para um sistema operacional de 64 bits, adicione uma das chaves do Registro a


seguir em um hive do Registro de 32 bits.

[HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\
<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\
<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"

<VersionMinimum> é a versão de estrutura mínima aplicável. Se


<VersionMinimum> for v3.0, as pastas especificadas em AssemblyFoldersEx se
aplicarão a projetos que têm como destino o .NET Framework 3.0 e posterior.

<AssemblyLocation> é o diretório dos assemblies que você deseja que sejam


exibidos na caixa de diálogo Adicionar Referência, por exemplo, C:\MyAssemblies.

A criação da chave do Registro sob o nó HKEY_LOCAL_MACHINE permite que todos os


usuários vejam os assemblies no local especificado na caixa de diálogo Adicionar
Referência. A criação da chave do Registro sob o nó HKEY_CURRENT_USER afeta
somente a configuração do usuário atual.

Abra a caixa de diálogo Adicionar Referência novamente. Os assemblies devem


aparecer na guia .NET. Caso contrário, verifique se os assemblies estão localizados
no diretório AssemblyLocation especificado, reinicie o Visual Studio e tente
novamente.

Guia Projetos
A guia Projetos lista todos os projetos compatíveis dentro da solução atual, na subguia
Solução.

Um projeto pode referenciar outro projeto direcionado a outra versão de estrutura. Por
exemplo, você pode criar um projeto que tenha como destino o .NET 8.0, mas que faça
referência a um assembly que foi criado para o .NET 6.0. Porém, o projeto do .NET 6.0
não pode fazer referência a um projeto do .NET Framework 8.0. Para obter mais
informações, confira Visão geral do direcionamento de estrutura.

Guia Projetos Compartilhados


Adicione uma referência a um projeto compartilhado na guia Projetos Compartilhados
da caixa de diálogo Gerenciador de Referências. Os Projetos Compartilhados permitem
gravar códigos comuns que são referência de vários projetos de aplicativos diferentes.

Guia Windows Universal


A guia Windows Universal lista todos os SDKs específicos às plataformas na qual
sistemas operacionais Windows estão em execução. Essa guia tem dois subgrupos:
Núcleo e Extensões.

Subgrupo Núcleo
Por padrão, os Projetos de Aplicativo Universal do Windows têm uma referência ao SDK
do Windows Universal. Consequentemente, o subgrupo de Núcleo no Gerenciador de
Referências não enumera nenhum dos assemblies do SDK do Windows Universal.

Subgrupos Extensões
Extensões lista os SDKs do usuário que estendem a plataforma de destino do Windows.

O SDK é uma coleção de arquivos que o Visual Studio trata como um único
componente. Na guia Extensões, os SDKs que se aplicam ao projeto do qual a caixa de
diálogo Gerenciador de Referências foi invocada são listados como entradas únicas.
Quando adicionado a um projeto, todo o conteúdo do SDK é consumido pelo Visual
Studio de modo que o usuário não precisa realizar ações adicionais para aproveitar os
conteúdos do SDK no IntelliSense, na caixa de ferramentas, no designer, no Pesquisador
de Objetos, no build, na implantação, depuração nem nos pacotes.

Para obter informações sobre como exibir o SDK na guia Extensões, consulte Criar um
Software Development Kit.

7 Observação

Se um projeto referenciar um SDK que depende de outro SDK, o Visual Studio não
consumirá o segundo SDK a menos que você adicione manualmente uma
referência ao segundo SDK. Quando você escolhe um SDK na guia Extensões, a
caixa de diálogo Gerenciador de Referências ajuda a identificar dependências do
SDK listando todas as dependências no painel de detalhes.

Se um tipo de projeto não der suporte para extensões, essa guia não será exibida na
caixa de diálogo Gerenciador de Referências.

Guia COM
A guia COM lista todos os componentes COM disponíveis para referência. Se você
deseja adicionar uma referência a uma DLL COM registrada que contém um manifesto
interno, cancele o registro da DLL primeiro. Caso contrário, em vez de adicionar a
referência do assembly como uma DLL nativa, o Visual Studio a adicionará como um
Controle ActiveX.
Se um tipo de projeto não der suporte ao COM, a guia não será exibida na caixa de
diálogo Gerenciador de Referências.

Procurar
É possível usar o botão Procurar para procurar um componente no sistema de arquivos.

Um projeto pode referenciar um componente direcionado a outra versão de estrutura.


Por exemplo, você pode criar um aplicativo direcionado ao .NET Framework 4.7.2, mas
que referencia um componente direcionado ao .NET Framework 4. Para obter mais
informações, confira Visão geral do direcionamento de estrutura.

Evite adicionar referências de arquivo às saídas de outro projeto na mesma solução,


porque essa tática pode causar erros de compilação. Em vez disso, use a guia Solução
da caixa de diálogo Gerenciador de Referências para criar referências projeto a projeto.
Essa ação facilita o desenvolvimento em equipe, permitindo um melhor gerenciamento
das bibliotecas de classes criadas nos projetos. Para obter mais informações, consulte
Solução de problemas de referências desfeitas.

Não é possível navegar até o SDK e adicioná-lo ao projeto. Você pode apenas procurar
um arquivo (por exemplo, um assembly ou um .winmd) e adicioná-lo ao seu projeto.

Ao fazer uma referência de arquivo a um WinMD, o layout previsto é que os arquivos


<FileName>.winmd, <FileName>.dll e <FileName>.pri sejam colocados um ao lado do
outro. Se você referenciar um WinMD nos seguintes cenários, um conjunto incompleto
de arquivos são copiados no diretório de saída do projeto e, consequentemente, falhas
de compilação e de runtime ocorrem.

Componente nativo: um projeto nativo cria um WinMD para cada conjunto não
contínuo de namespaces e uma DLL que consiste na implementação. Os WinMDs
têm nomes distintos. Ao fazer referência a esse arquivo de componente nativo, o
MSBuild não reconhece que os WinMDs nomeados de forma diferente formam um
componente. Portanto, somente o nome idêntico <FileName>.dll e
<FileName>.winmd são copiados e ocorrem erros de runtime. Para resolver esse
problema, crie uma SDK de extensão. Para obter mais informações, consulte Criar
um Software Development Kit.

Consumindo controles: no mínimo, um controle XAML consiste em um


<FileName>.winmd, <FileName>.dll, <FileName>.pri, <XamlName>.xaml e
<ImageName>.jpg. Quando o projeto for compilado, os arquivos de recursos
associados à referência de arquivo não são copiados no diretório de saída do
projeto e apenas <FileName>.winmd, <FileName>.dll e <FileName>.pri são
copiados. Um erro de build é registrado que indica que os recursos
<XamlName>.xaml e <ImageName>.jpg estão ausentes. Para ter êxito, copie
manualmente esses arquivos de recurso no diretório de saída do projeto para a
compilação e a depuração/runtime. Para resolver esse problema, crie um SDK de
Extensão seguindo as etapas em Criar um Software Development Kit ou edite o
arquivo de projeto para adicionar a seguinte propriedade:

XML

<PropertyGroup>
<GenerateLibraryOutput>True</GenerateLibraryOutput>
</PropertyGroup>

7 Observação

Se você adicionar a propriedade, a compilação pode ficar mais lenta.

Recentes
Assemblies, COM, Windows e Navegador dão suporte a uma guia Recente, que
enumera a lista de componentes adicionados recentemente aos projetos.

Pesquisar
A barra de pesquisa na caixa de diálogo Gerenciador de Referências opera na guia que
está no foco. Por exemplo, se você digitar “Sistema” na barra de pesquisa enquanto a
guia Solução estiver no foco, a pesquisa não retorna nenhum resultado a menos que a
solução consista em um nome de projeto que contenha “Sistema”.

Remover uma referência


Você pode remover referências não usadas para projetos de estilo do SDK no Visual
Studio usando o item de menu Remover Referência Não Usada.
Para obter mais informações, consulte Remover referências não usadas.

Confira também
Gerenciar referências em um projeto
Solução de problemas de referências desfeitas
NuGet versus SDK como referência de projeto
Adicionar ou remover namespaces
importados (Visual Basic)
Artigo • 16/01/2024

Importar um namespace permite que você use elementos deste namespace em seu
código sem qualificar totalmente o elemento. Por exemplo, se quiser acessar o método
Create na classe System.Messaging.MessageQueue , você pode importar o namespace
System.Messaging e apenas se referir ao elemento necessário em código como

MessageQueue.Create .

Namespaces importados são gerenciados na página Referências do Designer de


Projeto. As importações que você especificar na caixa de diálogo são passadas
diretamente ao compilador (/imports) e se aplicam a todos os arquivos em seu projeto.
Use a demonstrativo Imports para utilizar um namespace em um arquivo de código-
fonte único.

Para adicionar um namespace importado


1. No Gerenciador de Soluções, clique duas vezes no nó Meu Projeto do projeto.

2. No Designer de Projeto, clique na guia Referências.

3. Na lista Namespaces Importados, marque a caixa de seleção do namespace que


você deseja adicionar.

7 Observação

Para ser importado, o namespace deve estar em um componente


referenciado. Se o namespace não aparecer na lista, você precisará adicionar
uma referência ao componente que o contém. Para obter mais informações,
consulte Gerenciando referências em um projeto.

Para remover um namespace importado


1. No Gerenciador de Soluções, clique duas vezes no nó Meu Projeto do projeto.

2. No Designer de Projeto, clique na guia Referências.

3. Na lista Namespaces Importados, desmarque a caixa de seleção do namespace


que você deseja remover.
Importações de usuário
Importações de usuário permitem importar uma classe específica dentro de um
namespace, em vez de todo o namespace. Por exemplo, seu aplicativo pode ter uma
importação para o namespace System.Diagnostics, mas a única classe dentro do
namespace em que você tem interesse é a classe Debug . Você pode definir Debug como
uma importação de usuário e, em seguida, remover a importação de
System.Diagnostics.

Se posteriormente mudar de ideia e decidir que realmente precisava da classe EventLog ,


você pode inserir EventLog como uma importação de usuário e substituir Debug usando
a funcionalidade de atualização.

Para adicionar uma importação de usuário


1. No Gerenciador de Soluções, clique duas vezes no nó Meu Projeto do projeto.

2. No Designer de Projeto, clique na guia Referências.

3. Na caixa de texto abaixo da lista Namespaces Importados, digite o nome


completo do namespace que deseja importar, incluindo o namespace raiz.

4. Clique no botão Adicionar importação de usuário para adicionar o namespace à


lista Namespaces importados.

7 Observação

O botão Adicionar importação de usuário será desabilitado se o namespace


corresponder a um que já está na lista; não é possível adicionar uma
importação duas vezes.

Para atualizar uma importação de usuário


1. No Gerenciador de Soluções, clique duas vezes no nó Meu Projeto do projeto.

2. No Designer de Projeto, clique na guia Referências.

3. Na lista Namespaces Importados, selecione o namespace que você deseja alterar.

4. Na caixa de texto abaixo da lista de Namespaces Importados, digite o nome do


novo namespace.
5. Clique no botão Adicionar importação de usuário para atualizar o namespace na
lista Namespaces importados.

Conteúdo relacionado
Gerenciar referências em um projeto
Solucionar problemas de referências
quebradas
Artigo • 21/03/2023

Aplica-se a: Visual Studio 2022

Se o aplicativo tentar usar uma referência quebrada, um erro de exceção será gerado. O
principal motivo do erro é a incapacidade de encontrar o componente referenciado,
mas há vários cenários em que uma referência é considerada quebrada e elas são:

O caminho de referência do projeto está incorreto ou incompleto.


O arquivo referenciado foi excluído.
O arquivo referenciado foi renomeado.
Falha na conexão ou autenticação de rede.
O componente COM referenciado não está instalado no computador.

As próximas seções fornecem resoluções para esses cenários.

7 Observação

Os arquivos em assemblies são referenciados com caminhos absolutos no arquivo


de projeto. Portanto, os usuários que trabalham em um ambiente de vários
desenvolvedores podem descobrir que estão faltando um assembly referenciado
em seu ambiente local. Para evitar esses erros, é melhor adicionar referências de
projeto a projeto. Para obter mais informações, confira Assemblies no .NET.

O caminho de referência está incorreto ou


incompleto
Se os projetos forem compartilhados em computadores diferentes, algumas referências
poderão não ser encontradas quando um componente estiver localizado em um
diretório diferente. As referências são armazenadas sob o nome do arquivo de
componente (por exemplo, MyComponent). Quando você adiciona uma referência a um
projeto, o local da pasta do arquivo de componente (por exemplo, C:\MyComponents) é
acrescentado à propriedade do projeto ReferencePath .

Quando você abre um projeto, o Visual Studio examina os diretórios no caminho de


referência para tentar encontrar esses arquivos de componentes. Se você abrir o projeto
em um computador que armazena o componente em um diretório diferente, como
D:\MyComponents, a referência não será encontrada e um erro será exibido na Lista de
Tarefas.

Para corrigir esse problema, use um dos seguintes métodos:

Exclua a referência quebrada e substitua-a usando a caixa de diálogo Adicionar


Referência .
Use o item Caminho de Referência nas páginas de propriedades do projeto.
Modifique as pastas na lista para apontar para os locais corretos. A propriedade
Caminho de Referência é persistente para cada usuário em cada computador.
Portanto, modificar seu caminho de referência não afeta outros usuários do
projeto.

 Dica

As referências de projeto a projeto não têm esses problemas de referência


quebrados. Por esse motivo, use referências project-to-project em vez de
referências de arquivo, se puder.

Corrigir uma referência de projeto quebrada


Para corrigir uma referência de projeto quebrada, corrija o caminho de referência
seguindo estas etapas:

1. Em Gerenciador de Soluções, clique com o botão direito do mouse no nó do


projeto e selecione Propriedades. O Designer de Projeto é exibido.
2. Se você estiver usando o Visual Basic, selecione a página Referências e selecione
Caminhos de Referência .
a. Na caixa de diálogo Caminhos de Referência , digite o caminho da pasta que
contém o item que você deseja referenciar no campo Pasta .
b. Selecione Adicionar Pasta.
3. Se você estiver usando C#, selecione a página Caminhos de Referência .
a. No campo Pasta , digite o caminho da pasta que contém o item que você
deseja referenciar.
b. Selecione Adicionar Pasta.

O arquivo referenciado foi excluído


Aqui estão duas opções para corrigir uma referência de projeto quebrada para um
arquivo excluído que não existe mais em sua unidade:
Exclua a referência.
Se a referência existir em outro local em seu computador, leia-a desse local.

O arquivo referenciado foi renomeado


Aqui estão duas opções para corrigir uma referência quebrada para um arquivo que foi
renomeado:

Exclua a referência e adicione uma referência ao arquivo renomeado.


Se a referência existir em outro local em seu computador, leia-a desse local.

Falha na conexão ou autenticação de rede


Pode haver muitas causas possíveis para arquivos inacessíveis. Por exemplo, pode haver
uma conexão de rede com falha ou uma autenticação com falha. Por outro lado, cada
causa pode ter um meio exclusivo de recuperação. Por exemplo, talvez seja necessário
entrar em contato com o administrador local para acessar os recursos necessários. No
entanto, excluir a referência e corrigir o código que o usou é sempre uma opção.

O componente COM referenciado não está


instalado no computador
Se um usuário adicionar uma referência a um componente COM e um segundo usuário
tentar executar o código em um computador que não tenha esse componente
instalado, o segundo usuário receberá um erro de referência quebrado. Instalar o
componente no segundo computador corrige o erro. Para obter mais informações sobre
como usar referências a componentes COM em seus projetos, consulte
Interoperabilidade COM em aplicativos .NET Framework.

Referências
Página Referências, Designer de Projeto (Visual Basic)
O que é o Designer de Projetos do .NET?

Comentários
Esta página foi útil?  Yes  No
Fornecer comentários sobre o produto
Gerenciar recursos do aplicativo (.NET)
Artigo • 13/01/2024

Arquivos de recurso são arquivos que fazem parte de um aplicativo, mas não são
compilados, por exemplo, arquivos de ícone ou arquivos de áudio. Como esses arquivos
não fazem parte do processo de compilação, você pode alterá-los sem precisar
recompilar os binários. Se estiver planejando localizar seu aplicativo, você deverá usar
arquivos de recurso para todas as cadeias de caracteres e outros recursos que precisam
ser alterados ao localizar o aplicativo.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Gerenciando recursos de aplicativo (Visual Studio para Mac).

Para obter mais informações sobre recursos em aplicativos do .NET, confira Recursos em
aplicativos do .NET.

Trabalhar com recursos


Em um projeto de código gerenciado, abra a janela de propriedades do projeto. Você
pode abrir a janela Propriedades das seguintes maneiras:

Clicando com o botão direito do mouse no nó do projeto, no Gerenciador de


Soluções, e selecionar Propriedades
Digitando propriedades do projeto na caixa de pesquisa Ctrl+Q
Pressionando Alt+Enter no Gerenciador de Soluções

Selecione a guia Recursos. Você poderá adicionar um arquivo .resx se o projeto ainda
não contiver um, adicionar e excluir diferentes tipos de recursos e modificar os recursos
existentes.

Recursos em outros tipos de projeto


Recursos são gerenciados de forma diferente em projetos do .NET que em outros tipos
de projeto. Para obter mais informações sobre os recursos em:

Aplicativos UWP (Plataforma Universal do Windows), consulte Recursos do


aplicativo e o Sistema de Gerenciamento de Recursos
Projetos C++, confira trabalhar com arquivos de recurso e Como criar um recurso
Opções de suporte
Se você encontrar um problema com o gerenciamento de recursos de aplicativo,
consulte Solucionar erros no Editor de Recursos.

Conteúdo relacionado
Recursos em aplicativos do .NET (.NET Framework)
Gerenciando recursos de aplicativo (Visual Studio para Mac)
Solucionar problemas de erros no Editor
de Recursos
Artigo • 21/03/2023

Aplica-se a: Visual Studio 2022

Quando você está trabalhando com arquivos de recursos para seu aplicativo usando o
Editor de Recursos no Visual Studio, você pode encontrar erros. Aqui estão algumas das
mensagens de erro típicas que podem ser exibidas, juntamente com instruções sobre
como resolve os erros.

Erro: já há outro recurso com o nome 'Name'


Esse erro ocorre quando você tem um nome duplicado para um recurso em sua lista de
recursos. Siga estas etapas para corrigir o problema.

1. Em Gerenciador de Soluções, clique com o botão direito do mouse no nó do


projeto e selecione Propriedades.
2. Na caixa de diálogo Propriedades de pesquisa , selecione Recursos.
3. Exclua o item de recurso duplicado ou renomeie-o.

Erro: o nome do recurso não pode estar vazio


Esse erro ocorre quando você tem um valor para um recurso que ainda não tem nome.
Siga estas etapas para corrigir o problema.

1. Em Gerenciador de Soluções, clique com o botão direito do mouse no nó do


projeto e selecione Propriedades.
2. Na caixa de diálogo Propriedades de pesquisa , selecione Recursos.
3. Certifique-se de fornecer um nome para cada item de recurso.

Opções de suporte
Aqui estão mais recursos de suporte que você pode achar úteis:

Faça uma pergunta ou encontre uma resposta na página microsoft Q&A para
Visual Studio.
Relatar problemas de produto à equipe de engenharia usando a ferramenta
Relatar um problema que aparece tanto no Instalador do Visual Studio quanto no
IDE do Visual Studio.
Acompanhe problemas de produto e respostas da equipe de engenharia no Visual
Studio Developer Community .

Referências
Gerenciar recursos de aplicativo (.NET)
Gerenciando recursos de aplicativo (Visual Studio para Mac)

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Gerenciar configurações de aplicativo
(.NET)
Artigo • 21/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As configurações de aplicativo permitem armazenar informações do aplicativo


dinamicamente. Com as configurações de aplicativo, você pode usar um computador
cliente para armazenar informações que não devem ser incluídas no código do
aplicativo em runtime. As configurações de aplicativo podem incluir cadeias de conexão,
preferências do usuário, entre outros.

7 Observação

As configurações de aplicativo substituem as propriedades dinâmicas usadas em


versões anteriores do Visual Studio.

Cada configuração de aplicativo deve ter um nome exclusivo. O nome pode ser
qualquer combinação de letras, números ou um sublinhado. No entanto, o nome não
pode começar com um número e não pode ter espaços. O nome é alterado por meio da
propriedade Name .

As configurações de aplicativo são armazenadas como qualquer tipo de dados que


pode ser serializado para XML ou que tem um TypeConverter que implementa
ToString / FromString . Os tipos mais comuns são String , Integer e Boolean . Você
também pode armazenar valores como Color, Object ou como uma cadeia de conexão.

As configurações de aplicativo também contêm um valor. O valor é definido com a


propriedade Valor e deve corresponder ao tipo de dados da configuração.

Além disso, as configurações de aplicativo podem ser associadas a uma propriedade de


um formulário ou controle em tempo de design.

Há dois tipos de configurações de aplicativo, com base no escopo:

As configurações no escopo do aplicativo podem ser usadas para informações,


como uma URL para um serviço Web ou uma cadeia de conexão de banco de
dados. Esses valores são associados ao aplicativo. Portanto, os usuários não podem
alterá-los no runtime.
As configurações no escopo do usuário podem ser usadas para informações,
como persistir a última posição de um formulário ou uma preferência de fonte. Os
usuários podem alterar esses valores no runtime.

Você pode alterar o tipo de uma configuração usando a propriedade Escopo.

O sistema do projeto armazena configurações de aplicativo em dois arquivos XML:

Um arquivo app.config, que é criado em tempo de design quando você cria a


primeira configuração de aplicativo

Um arquivo user.config, que é criado em runtime quando o usuário que executa o


aplicativo altera o valor de qualquer configuração de usuário.

Observe que as alterações nas configurações de usuário não são gravadas em disco, a
menos que o aplicativo especificamente chame um método para fazer isso.

Criar configurações de aplicativo no tempo de


design
Em tempo de design, você pode criar configurações de aplicativo de duas maneiras:

Use a página Configurações do Designer de Projeto.

Use a janela Propriedades para um formulário ou um controle, o que permite


associar uma configuração a uma propriedade.

Quando você cria uma configuração no escopo do aplicativo (por exemplo, uma cadeia
de conexão de banco de dados ou uma referência aos recursos de servidor), o Visual
Studio a salva no arquivo app.config com a marca <applicationSettings> . (As cadeias de
conexão são salvas sob a marca <connectionStrings> .)

Quando você cria uma configuração no escopo do usuário (por exemplo, fonte padrão,
home page ou tamanho da janela), o Visual Studio a salva no arquivo app.config com a
marca <userSettings> .

) Importante

Ao armazenar cadeias de conexão no app.config, você deve tomar precauções para


evitar revelar informações confidenciais como senhas ou caminhos de servidor na
cadeia de conexão.
Se você obtiver as informações de cadeia de conexão de uma fonte externa, como
um usuário que fornece uma ID de usuário e uma senha, tenha cuidado para
garantir que os valores usados para construir a cadeia de conexão não contenham
parâmetros de cadeia de conexão adicionais que alteram o comportamento da
conexão.

Considere usar o recurso Configuração Protegida para criptografar informações


confidenciais no arquivo de configuração. Para obter mais informações, confira
Proteger informações de conexão.

7 Observação

Como não há nenhum modelo de arquivo de configuração para bibliotecas de


classes, as configurações de aplicativo não se aplicam a projetos da biblioteca de
classes. A exceção é um projeto de DLL do Visual Studio Tools para Office, que
pode ter um arquivo de configuração.

Usar arquivos de configurações personalizadas


Você pode adicionar arquivos de configurações personalizadas ao seu projeto para um
gerenciamento conveniente de grupos de configurações. As configurações contidas em
um único arquivo são carregadas e salvas como uma unidade. Armazenar as
configurações em arquivos separados para grupos usados com frequência e usados
raramente pode economizar tempo ao carregar e salvar as configurações.

Por exemplo, você pode adicionar um arquivo SpecialSettings.settings ao seu projeto.


Embora a classe SpecialSettings não seja exposta no namespace My , Exibir Código
pode ler o arquivo de configurações personalizadas que contém Partial Class
SpecialSettings .

Primeiro, o Designer de Configurações pesquisa o arquivo Settings.settings que o


sistema do projeto cria. O arquivo Settings.settings é o arquivo padrão que o Designer
de Projeto exibe na guia Configurações. O arquivo Settings.settings está localizado na
pasta Meu Projeto, no caso de projetos do Visual Basic, e na pasta Propriedades, no caso
de projetos do Visual C#. Em seguida, o Designer de Projeto pesquisa outros arquivos
de configurações na pasta raiz do projeto. Portanto, você deve colocar o arquivo de
configurações personalizado lá. Se você adicionar um arquivo .settings em outro lugar
no projeto, o Designer de Projeto não o conseguirá localizar.
Acessar ou alterar as configurações de
aplicativo no runtime em Visual Basic
Em projetos do Visual Basic, você pode acessar as configurações de aplicativo no
runtime usando o objeto My.Settings . Na página Configurações, selecione o botão
Exibir código para ver o arquivo Settings.vb. Settings.vb define a classe Settings , que
permite que você manipule esses eventos na classe de configurações: SettingChanging,
PropertyChanged, SettingsLoaded e SettingsSaving. Observe que a classe Settings no
Settings.vb é uma classe parcial que mostra apenas o código de propriedade do usuário,
não toda a classe gerada. Para obter mais informações sobre como acessar as
configurações de aplicativo usando o objeto My.Settings , confira Acessar configurações
de aplicativo (.NET Framework).

Os valores das configurações no escopo do usuário que o usuário altera no runtime (por
exemplo, a posição de um formulário) são armazenadas em um arquivo user.config.
Observe que os valores padrão ainda são salvos no app.config.

Se as configurações no escopo do usuário forem alteradas durante o runtime, por


exemplo, no teste do aplicativo e você desejar redefinir essas configurações para os
valores padrão, selecione o botão Sincronizar.

É uma melhor prática recomendada usar o objeto My.Settings e o arquivo .settings


padrão para acessar as configurações. Isso é recomendado porque você pode usar o
Designer de Configurações para atribuir propriedades às configurações e, além disso,
as configurações de usuário são salvas automaticamente antes do desligamento do
aplicativo. No entanto, seu aplicativo do Visual Basic pode acessar as configurações
diretamente. Nesse caso você precisa acessar a classe MySettings e usar um arquivo
.settings personalizado na raiz do projeto. Você precisa salvar as configurações de
usuário antes de encerrar o aplicativo, como faria para um aplicativo C# (conforme
descrito na próxima seção).

Acessar ou alterar as configurações de


aplicativo no runtime em C#
Em linguagens diferentes do Visual Basic, como C#, você deve acessar a classe Settings
diretamente, conforme mostrado no exemplo de Visual C# a seguir.

C#

Properties.Settings.Default.FirstUserSetting = "abc";
Você deve chamar explicitamente o método Save dessa classe wrapper para persistir as
configurações do usuário. Geralmente, isso é feito no manipulador de eventos Closing
do formulário principal. O exemplo C# a seguir mostra uma chamada para o método
Save .

C#

Properties.Settings.Default.Save();

Para obter informações gerais sobre como acessar as configurações de aplicativo por
meio da classe Settings , confira Visão geral sobre configurações de aplicativo (.NET
Framework). Para obter informações sobre como fazer a iteração por meio das
configurações, consulte esta postagem no fórum .

Confira também
Acessar configurações de aplicativo (.NET Framework)
Adicionar um arquivo de configuração
de aplicativo a um projeto C#
Artigo • 16/01/2024

Ao adicionar um arquivo de configuração de aplicativo (arquivo app.config) a um


projeto C#, você pode personalizar o modo como o Common Language Runtime
localiza e carrega arquivos do assembly. Para saber mais sobre arquivos de configuração
de aplicativo ou sobre assemblies no .NET, confira Como o runtime localiza assemblies
(.NET Framework) e Assemblies no .NET.

7 Observação

Os aplicativos da UWP não contêm um arquivo app.config.

Quando você cria seu projeto, o ambiente de desenvolvimento copia automaticamente


o arquivo app.config, altera o nome do arquivo da cópia para corresponder ao
executável e, em seguida, move a cópia para o diretório bin.

Para adicionar um arquivo de configuração de


aplicativo a um projeto C#
1. No Gerenciador de Soluções, clique com o botão direito do mouse no nó do
projeto e selecione Adicionar>Novo Item.

A caixa de diálogo Adicionar Novo Item aparecerá.

2. Expanda Instalado>Itens do Visual C#.

3. No painel intermediário, selecione o modelo Arquivo de Configuração de


Aplicativo.

4. Selecione o botão Adicionar.

Um arquivo chamado App.config é adicionado ao projeto.

Conteúdo relacionado
Gerenciar configurações de aplicativo (.NET)
Esquema do arquivo de configuração (.NET Framework)
Configurar aplicativos (.NET Framework)
Gerenciar assinatura de assembly e de
manifesto
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A assinatura de nome forte fornece a um componente de software uma identidade


global exclusiva. Nomes fortes são usados para assegurar que o assembly não possa ser
falsificado por outra pessoa e para assegurar que as dependências do componente e as
instruções de configuração sejam mapeadas para o componente e a versão do
componente corretos.

Um nome forte consiste na identidade do assembly (nome de texto simples, número de


versão e informações de cultura), além de um token de chave pública e uma assinatura
digital.

Para obter informações sobre como assinar assemblies em projetos do Visual Basic e do
C#, confira Criar e usar assemblies de nomes fortes.

Para obter informações de como assinar assemblies em projetos do C++, confira


Assemblies de nome forte (C++/CLI).

7 Observação

A assinatura de nome forte não protege contra a engenharia reversa do assembly.


Para se proteger contra a engenharia reversa, confira a Dotfuscator Community.

Tipos de ativo e assinatura


Você pode assinar os manifestos de aplicativo e assemblies do .NET:

Executáveis (.exe)

Manifestos de aplicativo (.exe.manifest)

Manifestos de implantação (.application)

Assemblies do componente compartilhado (.dll)

Assine os seguintes tipos de ativo:

1. assemblies, se você desejar implantá-los no cache de assembly global (GAC).


2. Manifestos de aplicativo e de implantação do ClickOnce. O Visual Studio permite a
assinatura por padrão desses aplicativos.

3. Assemblies de interoperabilidade primários, que são usados para a


interoperabilidade COM. O utilitário TLBIMP impõe uma nomenclatura forte ao
criar um assembly de interoperabilidade primário com base em uma biblioteca de
tipos COM.

Em geral, você não deve assinar executáveis. Um componente de nome forte não pode
referenciar um componente que não tem um nome forte implantado com o aplicativo.
O Visual Studio não assina executáveis do aplicativo, mas em vez disso, assina o
manifesto do aplicativo, que aponta para o executável de nome fraco. Evite assinar
componentes particulares do aplicativo, pois sua assinatura pode dificultar o
gerenciamento de dependências.

Como assinar um assembly no Visual Studio


Assine um aplicativo ou um componente usando a guia Assinatura da janela de
propriedades do projeto (clique com o botão direito do mouse no nó do projeto no
Gerenciador de Soluções e selecione Propriedades). Selecione a guia Assinatura e, em
seguida, marque a caixa de seleção Assinar o assembly.

Especifique um arquivo de chave. Se você optar por criar um arquivo de chave, os novos
arquivos de chave sempre serão criados no formato .pfx. É necessário um nome e uma
senha para o novo arquivo.

2 Aviso

Você sempre deve proteger o arquivo de chave com uma senha para evitar o uso
por outra pessoa. Também é possível proteger as chaves usando provedores ou
repositórios de certificados.

Você também pode apontar para uma chave já criada. Para obter mais informações de
como criar chaves, confira Criar um par de chaves pública/privada.

Se você só tiver acesso a uma chave pública, use a assinatura com atraso para adiar a
atribuição da chave. Habilite a assinatura com atraso selecionando a caixa de seleção
Somente sinal de atraso. Um projeto assinado com atraso não é executado e não pode
ser depurado. No entanto, você pode ignorar a verificação durante o desenvolvimento
usando a ferramenta de nome forte Sn.exe com a opção -Vr .
Para obter informações sobre como assinar manifestos, confira Como assinar manifestos
de aplicativo e de implantação.

Confira também
Assemblies de nome forte
Assemblies de nome forte (C++/CLI)
Como assinar manifestos de aplicativo e
de implantação
Artigo • 14/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Se você desejar publicar um aplicativo usando a implantação do ClickOnce, os


manifestos do aplicativo e de implantação deverão ser assinados com um par de chaves
pública/privada e assinados usando a tecnologia Authenticode. É possível assinar os
manifestos usando um certificado do repositório de certificados do Windows ou um
arquivo de chave.

As informações neste artigo se aplicam somente se você estiver usando o .NET


Framework 4.7.2 ou anterior. Se você estiver usando o .NET 5 ou posterior, siga as
etapas em Implantar um aplicativo da área de trabalho do Windows .NET usando o
ClickOnce.

Para obter mais informações sobre a implantação do ClickOnce, consulte Segurança e


implantação do ClickOnce.

A assinatura dos manifestos do ClickOnce é opcional para aplicativos baseados em .exe.


Para obter mais informações, consulte a seção “Gerar manifestos não assinados” deste
documento.

Para obter informações sobre como criar arquivos de chave, consulte Como criar um par
de chaves pública-privada.

7 Observação

O Visual Studio oferece suporte apenas a arquivos de chave de Troca de


Informações Pessoais (PFX) que têm a extensão .pfx. No entanto, é possível
selecionar outros tipos de certificados do repositório de certificados do Windows
do usuário atual, clicando em Selecionar do Repositório na página Assinatura das
propriedades do projeto.

Assinar usando um certificado


Para usar esse método, você deve ter um certificado assinado por uma AC (autoridade
certificadora). Os certificados são emitidos por provedores de serviços de certificação de
terceiros ou por organizações autorizadas em uma empresa.
1. Vá para a janela de propriedades do projeto (clique com o botão direito do mouse
no nó do projeto no Gerenciador de Soluções e selecione Propriedades). Na guia
Assinatura, selecione a caixa de seleção Assinar os manifestos do ClickOnce.

2. Clique no botão Selecionar do Repositório.

A caixa de diálogo Selecionar um Certificado é exibida e mostra o conteúdo do


repositório de certificados do Windows.

 Dica

Se você clicar em Clique aqui para exibir as propriedades do certificado, a


caixa de diálogo Detalhes do Certificado será exibida. Essa caixa de diálogo
inclui informações detalhadas sobre o certificado e opções adicionais. Clique
em Certificados para exibir mais informações de ajuda.

3. Selecione o certificado que você deseja usar para assinar os manifestos.

 Dica

Se não houver nenhum certificado no repositório, ainda é possível assinar


usando um certificado de teste.

4. Além disso, é possível especificar o endereço de um servidor de carimbo de


data/hora na caixa de texto URL do servidor de carimbo de data/hora. Esse é um
servidor que fornece um carimbo de data/hora que especifica quando o manifesto
foi assinado. Geralmente, é fornecido pelo mesmo terceiro que oferece certificados
assinados por uma AC.

Assinar usando um arquivo de chave existente


1. Na página Assinatura, selecione a caixa de seleção Assinar os manifestos do
ClickOnce.

2. Clique no botão Selecionar do Arquivo.

A caixa de diálogo Selecionar Arquivo é exibida.

3. Na caixa de diálogo Selecionar Arquivo, procure o local do arquivo de chave (.pfx)


que você deseja usar e clique no botão Abrir.
7 Observação

Essa opção é compatível apenas com os arquivos que têm a extensão .pfx. Se
você tiver um arquivo de chave ou um certificado em outro formato,
armazene-o no repositório de certificados do Windows e selecione o
certificado que é descrito no procedimento anterior. A finalidade do
certificado selecionado deve incluir a assinatura de código.

A caixa de diálogo Inserir senha para abrir o arquivo é exibida. (Se o arquivo .pfx
já estiver armazenado no repositório de certificados do Windows ou não for
protegido por senha, você não precisará inserir uma senha.)

4. Insira a senha para acessar o arquivo de chave e, em seguida, selecione Enter.

7 Observação

O arquivo .pfx não pode incluir informações de encadeamento de certificados.


Assim, ocorrerá o seguinte erro de importação: Não é possível localizar o
certificado e a chave privada para descriptografia. Para remover as informações
de encadeamento de certificados, você pode usar Certmgr.msc e desabilitar a
opção para Incluir todos os certificados ao exportar o arquivo *.pfx.

Assinar usando um certificado de teste


Os certificados de teste não são assinados por uma AC (Autoridade Certificadora) e só
devem ser usados para fins de teste. Para obter detalhes sobre certificados de teste,
consulte Como usar autoridades certificadoras ajuda os usuários.

1. Na página Assinatura, selecione a caixa de seleção Assinar os manifestos do


ClickOnce.

2. Para criar um novo certificado para teste, clique no botão Criar Certificado de
Teste.

3. Na caixa de diálogo Criar Certificado de Teste, insira uma senha para ajudar a
proteger o certificado de teste.

Gerar manifestos não assinados


A assinatura dos manifestos do ClickOnce é opcional para aplicativos baseados em
.exe . Os procedimentos a seguir mostram como gerar manifestos não assinados do

ClickOnce.

) Importante

Manifestos não assinados podem simplificar o desenvolvimento e o teste do


aplicativo. No entanto, os manifestos não assinados introduzem riscos de
segurança significativos em um ambiente de produção. Apenas considere o uso de
manifestos não assinados se o aplicativo ClickOnce for executado em
computadores em uma intranet que está completamente isolada da Internet ou de
outras fontes de código mal-intencionado.

Por padrão, o ClickOnce gera manifestos assinados automaticamente, a menos que um


ou mais arquivos sejam excluídos especificamente do hash gerado. Em outras palavras,
a publicação do aplicativo resultará em manifestos assinados se todos os arquivos
forem incluídos no hash, mesmo quando a caixa de seleção Assinar os manifestos do
ClickOnce estiver desmarcada.

Para gerar manifestos não assinados e incluir todos os


arquivos no hash gerado
Para gerar manifestos não assinados que incluem todos os arquivos no hash, primeiro é
necessário publicar o aplicativo junto com manifestos assinados. Portanto, primeiro
assine os manifestos do ClickOnce seguindo um dos procedimentos anteriores e, em
seguida, publique o aplicativo.

1. Na guia Assinatura, limpe a caixa de seleção Assinar os manifestos do ClickOnce.

2. Na guia Publicar, redefina a versão de publicação para que apenas uma versão do
aplicativo esteja disponível. Desmarque a caixa de seleção Incrementar
automaticamente a versão com cada publicação. Por padrão, o Visual Studio
incrementa automaticamente o número de revisão da versão de publicação
sempre que um aplicativo é publicado. Para obter mais informações, consulte
Como definir a versão de publicação do ClickOnce.

3. Publique o aplicativo. O Visual Studio informa que o aplicativo foi assinado com
uma chave diferente do aplicativo existente no servidor e pergunta se você deseja
substituí-lo. Escolha Sim.
Para gerar manifestos não assinados e excluir um ou mais
arquivos do hash gerado
1. Na página Assinatura, limpe a caixa de seleção Assinar os manifestos do
ClickOnce.

2. Na guia Publicar, escolha o botão Arquivos de Aplicativo para abrir a caixa de


diálogo Arquivos de Aplicativo e defina o Hash como Excluir para os arquivos que
você deseja excluir do hash gerado.

7 Observação

A exclusão de um arquivo do hash configura o ClickOnce para desabilitar a


assinatura automática dos manifestos; portanto, você não precisa primeiro
publicar com manifestos assinados, conforme mostrado no procedimento
anterior.

3. Publique o aplicativo.

Confira também
Assemblies de nome forte
Como criar um par de chaves pública/privada
Página de assinatura, Designer de Projeto
Segurança e implantação do ClickOnce
Especificar um ícone do aplicativo
(Visual Basic, C#)
Artigo • 13/01/2024

A propriedade Icon de um projeto especifica o arquivo do ícone (.ico) que será exibido
para o aplicativo compilado no Explorador de Arquivos e na barra de tarefas do
Windows.

A propriedade Icon pode ser acessada na seção do Aplicativo do Designer de Projeto,


que contém uma lista de ícones que foram adicionados a um projeto como recursos ou
arquivos de conteúdo.

7 Observação

Depois de definir a propriedade do ícone para um aplicativo, talvez você também


veja a propriedade Icon de cada Janela ou Formulário no aplicativo. Para obter
informações sobre os ícones para aplicativos independentes do WPF (Windows
Presentation Foundation), consulte a propriedade Icon.

Para especificar um ícone do aplicativo


1. No Gerenciador de Soluções, escolha um nó do projeto (não o nó Solução).

2. Na barra de menus, escolha Projeto>Propriedades.

 Dica

Você pode ver o nome do arquivo do projeto ao exibirProjeto>Propriedades.


Por exemplo, se você estiver trabalhando em um projeto chamado
"Calculadora", o Visual Studio exibiráProjeto>Propriedades da Calculadora.

3. O Designer de Projeto é exibido. Em seguida, na seção Aplicativo, selecione um


dos seguintes:

Para C#, selecione Recursos do Win32


Para Visual Basic, selecione Recursos

4. Na seção Ícone, selecione o botão Procurar para navegar até o local do arquivo de
ícone desejado.
Conteúdo relacionado
Página Aplicativo, Designer de Projeto (Visual Basic)
Página Aplicativo, Designer de Projeto (C#)
Visão geral do direcionamento de
estrutura
Artigo • 12/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

No Visual Studio, é possível especificar a versão do .NET que você deseja que o projeto
tenha como destino. O direcionamento de estrutura ajuda a garantir que o aplicativo
use apenas a funcionalidade disponível na versão da estrutura especificada. Para que os
aplicativos .NET Framework sejam executados em outro computador, a versão da
estrutura de destino do aplicativo precisa ser compatível com a versão da estrutura
instalada no computador.

Uma solução do Visual Studio pode conter projetos destinados a diferentes versões do
.NET. No entanto, observe que você só pode compilar com base em uma versão do
.NET, usando condicionais de referência para um só build ou compilando binários
diferentes recursivamente para cada versão. Para obter mais informações sobre
estruturas de destino, confira Estruturas de destino.

 Dica

Também é possível definir aplicativos como destino para plataformas diferentes.


Para obter mais informações, consulte Multiplataforma.

Recursos de definição de destino da estrutura


A definição de destino da estrutura inclui os seguintes recursos:

Quando você abre um projeto direcionado a uma versão de estrutura anterior, o


Visual Studio pode atualizar o projeto automaticamente ou deixar o destino no
estado em que se encontra.

Ao criar um projeto .NET Framework, especifique a versão do .NET Framework que


deseja definir como destino.

Você pode ter várias estruturas de destino em um único projeto.

É possível definir outra versão do .NET como destino em cada um dos vários
projetos na mesma solução.
Altere a versão do .NET que um projeto existente tem como destino.

Ao alterar a versão do .NET que um projeto tem como destino, o Visual Studio faz
as alterações necessárias nas referências e nos arquivos de configuração.

Quando você trabalha em um projeto direcionado a uma versão de estrutura anterior, o


Visual Studio altera dinamicamente o ambiente de desenvolvimento da seguinte
maneira:

Ele filtra os itens das caixas de diálogo Adicionar Novo Item, Adicionar Nova
Referência e Adicionar Referência de Serviço para omitir as opções que não estão
disponíveis na versão de destino.

Ele filtra os controles personalizados da Caixa de Ferramentas para remover


aqueles que não estão disponíveis na versão de destino e mostrar somente os
controles mais atualizados quando vários controles estão disponíveis.

Ele filtra o IntelliSense para omitir as funcionalidades de linguagem que não estão
disponíveis na versão de destino.

Ele filtra as propriedades na janela Propriedades para omitir aquelas que não
estão disponíveis na versão de destino.

Ele filtra as opções de menu para omitir as opções que não estão disponíveis na
versão de destino.

Para builds, ele usa a versão do compilador e as opções do compilador


apropriadas para a versão de destino.

7 Observação

A definição de destino da estrutura não assegura que o aplicativo será


executado corretamente. É necessário testar o aplicativo para ter certeza de
que ele é executado na versão de destino.
Não é possível ter versões de estrutura de destino abaixo do .NET Framework
2.0.

Alterar a estrutura de destino


Em um projeto existente do Visual Basic, C# ou F#, você altera a versão do .NET de
destino na caixa de diálogo das propriedades do projeto. Para saber mais sobre como
alterar a versão de destino de projetos do C++, confira Como modificar a estrutura de
destino e o conjunto de ferramentas da plataforma.

1. No Gerenciador de Soluções, abra o menu de contexto do projeto que você


deseja alterar e, em seguida, escolha Propriedades.

2. Na coluna esquerda da janela Propriedades, escolha a guia Aplicativo.

7 Observação

Depois de criar um aplicativo UWP, você não poderá alterar a versão de


destino do Windows ou do .NET.

3. Na lista Estrutura de Destino, escolha a versão desejada.

Para um projeto do .NET Framework, a caixa de diálogo que você vê pode ser
semelhante à seguinte captura de tela:

Para um projeto do .NET, a caixa de diálogo pode ser semelhante à seguinte


captura de tela:
4. Se uma caixa de diálogo de verificação aparecer, escolha o botão Sim.

O projeto é descarregado. Quando ele é recarregado, ele é direcionado à versão


do .NET recém-escolhida.

7 Observação

Se o código contiver referências a outra versão do .NET que não seja a que você o
direcionou, poderão ser exibidas mensagens de erro quando você compilar ou
executar o código. Para resolver esses erros, modifique as referências. Confira
Solução de problemas de erros de direcionamento do .NET.

 Dica

Dependendo da estrutura de destino, ele pode ser representado das seguintes


maneiras no arquivo de projeto:

Para um aplicativo .NET Core:


<TargetFramework>netcoreapp2.1</TargetFramework>

Para um aplicativo .NET Standard:


<TargetFramework>netstandard2.0</TargetFramework>
Para um aplicativo .NET Framework:
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>

Selecionar uma versão de estrutura de destino


Ao criar um projeto .NET Framework, selecione a versão do .NET Framework de destino
depois de selecionar um modelo de projeto. A lista de estruturas disponíveis inclui as
versões da estrutura instalada que são aplicáveis para o tipo de modelo selecionado.
Para modelos de projeto que não são do .NET Framework, por exemplo, modelos do
.NET Core, a lista suspensa Estrutura não é exibida.

Se você optar por criar um projeto do .NET Framework, verá uma interface semelhante
à seguinte captura de tela:

Se você optar por criar um projeto do .NET, verá uma interface do usuário semelhante
às duas capturas de tela a seguir.

A primeira tela que você verá é a caixa de diálogo Configurar novo projeto.
A segunda tela que você verá é a caixa de diálogo Opções adicionais.

Resolver referências de assembly do sistema e


do usuário
Para definir uma versão do .NET como destino, é necessário primeiro instalar as
referências de assembly apropriadas. Baixe pacotes de desenvolvedor para diferentes
versões do .NET na página de downloads do .NET .

Para projetos do .NET Framework, a caixa de diálogo Adicionar Referência desabilita os


assemblies do sistema que não estão relacionados à versão do .NET Framework de
destino, para que eles não possam ser adicionados a um projeto acidentalmente.
(Assemblies do sistema são arquivos .dll incluídos em uma versão do .NET Framework.)
As referências que pertencem a uma versão da estrutura maior que a versão de destino
não serão resolvidas e os controles que dependem dessa referência não podem ser
adicionados. Se você desejar habilitar essa referência, redefina o destino do .NET
Framework do projeto para um que inclua a referência.

Para obter mais informações sobre referências de assembly, consulte Resolver


assemblies em tempo de design.

Habilitar LINQ
Ao direcionar ao .NET Framework 3.5 ou posterior, uma referência ao System.Core e
uma importação no nível do projeto para System.Linq (somente no Visual Basic) são
adicionadas automaticamente. Se você desejar usar recursos do LINQ, também precisará
ativar Option Infer (somente no Visual Basic). A referência e a importação serão
removidas automaticamente se você alterar o destino para uma versão anterior do .NET
Framework. Para obter mais informações, consulte Trabalhar com o LINQ.

Confira também
Estruturas de destino
Multiplataforma (MSBuild)
Como modificar a estrutura de destino e o conjunto de ferramentas da plataforma
(C++)
O que são modelos de item e de
projeto?
Artigo • 16/01/2024

Modelos de item e de projeto são stubs reutilizáveis que proporcionam estrutura e


código básicos para personalizar para suas finalidades. Normalmente, você começa com
um modelo de projeto e, em seguida, adiciona um modelo de item.

modelos do Visual Studio


Há muitos modelos de item e de projeto predefinidos disponíveis quando você instala o
Visual Studio. Modelos de projeto como o Aplicativo Web ASP.NET e a Biblioteca de
Classes estão disponíveis para escolha quando você cria um projeto. Modelos de item,
como arquivos de código, arquivos XML, páginas HTML e folhas de estilo, aparecem na
caixa de diálogo Projeto>Adicionar Novo Item.

Esses modelos fornecem um ponto de partida para os usuários começarem a criar


projetos ou expandir projetos existentes. Os modelos de projeto fornecem os arquivos
que são necessários para um tipo de projeto específico, incluem referências de assembly
padrão e definem opções de compilador e propriedades de projeto padrão. Os modelos
de item podem variar em complexidade desde apenas um arquivo vazio com uma
extensão de arquivo específica até vários arquivos de código-fonte com código de stub,
arquivos de informações de designer e recursos inseridos.

Você pode usar modelos instalados, criar seus próprios modelos personalizados ou
baixar e usar modelos criados pela comunidade. Para obter mais informações, consulte
Como criar modelos de projeto e Como criar modelos de item.

Conteúdo de um modelo
Todos os modelos de projeto e de item, sejam eles instalados com o Visual Studio ou
criados por você, funcionam usando os mesmos princípios e têm conteúdo semelhante.
Todos os modelos contêm os seguintes itens:

Os arquivos a serem criados quando o modelo é usado. Eles incluem arquivos de


código-fonte, recursos inseridos, arquivos de projeto e assim por diante.

Um arquivo .vstemplate, contendo os metadados necessários para criar um projeto


ou item do modelo e para exibir o modelo na página Criar um novo projeto e ou
na caixa de diálogo Adicionar Novo Item.
Para obter mais informações sobre arquivos .vstemplate, confira Marcas de modelo
e Parâmetros de modelo.

Quando esses arquivos são compactados em um arquivo .zip e colocados na pasta


correta, o Visual Studio os exibe automaticamente nos seguintes locais:

Os modelos de projeto aparecem na página Criar um novo projeto.

Os modelos de item aparecem na caixa de diálogo Adicionar Novo Item.

Para obter mais informações sobre pastas de modelo, consulte Como localizar e
organizar modelos de projeto e de item.

Conteúdo relacionado
Personalizar modelos
Pacotes do NuGet em modelos do Visual Studio
Adicionar marcas aos modelos de
projeto
Artigo • 13/01/2024

A partir do Visual Studio 2019 versão 16.1 Preview 2, você poderá adicionar marcas de
tipo de projeto, plataforma e linguagem aos seus modelos de projeto.

As marcas são usadas em dois lugares na caixa de diálogo Novo Projeto:

As marcas aparecem sob a descrição do modelo.

As marcas permitem que o modelo seja pesquisado e filtrado.

Você pode adicionar marcas ao atualizar o arquivo XML .vstemplate. Você pode usar as
marcas de modelo que são criadas no Visual Studio ou criar marcas de modelo
personalizado. As marcas de modelo aparecem só na caixa de diálogo Novo projeto do
Visual Studio 2019. As marcas de modelo não afetam como o modelo é renderizado nas
versões anteriores do Visual Studio.

Adicionar ou editar marcas


Talvez você queira adicionar ou editar as marcas no XML .vstemplate do modelo de
projeto ao executar uma das seguintes ações:

Criar um novo modelo de projeto usando o Assistente para Exportar Modelo.


Atualizar seu modelo de projeto existente.
Criar um novo modelo de projeto do VSIX.

Sintaxe
XML

<LanguageTag> Language Name </LanguageTag>


<PlatformTag> Platform Name </PlatformTag>
<ProjectTypeTag> Project Type </ProjectTypeTag>

Atributos
Você pode usar os seguintes atributos opcionais em cenários de usuário avançado:

ノ Expandir a tabela

Atributo Descrição

Package Um GUID que especifica a ID do pacote do Visual Studio.

ID Especifica a ID de recurso do Visual Studio.

Sintaxe:

XML

<LanguageTag Package="{PackageID}" ID="ResourceID" />


<PlatformTag Package="{PackageID}" ID="ResourceID" />
<ProjectTypeTag Package="{PackageID}" ID="ResourceID" />
Elementos

Elementos filho
Nenhum.

Elementos pai

ノ Expandir a tabela

Elemento Descrição

TemplateData (Obrigatório) Classifica o modelo e define como ele é exibido na caixa de diálogo
Novo Projeto ou na caixa de diálogo Adicionar Novo Item.

Valor de texto
É necessário um valor de texto, a menos que você use os atributos Package e ID .

O texto fornece o nome do modelo.

Marcas internas
O Visual Studio oferece uma lista de marcas internas. Ao adicionar uma marca interna, a
marca renderiza um recurso localizado.

A lista a seguir mostra as marcas internas que estão disponíveis no Visual Studio. Os
valores correspondentes são mostrados entre parênteses.

ノ Expandir a tabela

Marca de idioma Marca de plataforma Marca do tipo de projeto

C++ ( cpp ) Android ( android ) Nuvem ( cloud )

C# ( csharp ) Azure ( azure ) Console ( console )

F# ( fsharp ) iOS ( ios ) Área de trabalho ( desktop )

Java ( java ) Linux ( linux ) Extensões ( extension )

JavaScript ( javascript ) macOS ( macos ) Jogos ( games )


Marca de idioma Marca de plataforma Marca do tipo de projeto

Python ( python ) tvOS ( tvos ) IoT ( iot )

Consulta de Idioma Windows ( windows ) Biblioteca ( library )


( querylanguage )

TypeScript ( typescript ) SDK do Aplicativo do Windows Machine Learning


( windowsappsdk ) ( machinelearning )

Visual Basic ( visualbasic ) Xbox ( xbox ) Dispositivo móvel ( mobile )

XAML ( xaml ) Office ( office )

Outros ( other )

Serviço ( service )

Teste ( test )

UWP ( uwp )

Web ( web )

WinUI ( winui )

Exemplo
O exemplo a seguir mostra os metadados para um modelo de projeto de um aplicativo
do Visual C#:

XML

<VSTemplate Type="Project" Version="3.0.0"


xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>My template</Name>
<Description>A basic template</Description>
<Icon>TemplateIcon.ico</Icon>
<ProjectType>csharp</ProjectType>
<LanguageTag>csharp</LanguageTag>
<PlatformTag>windows</PlatformTag>
<PlatformTag>linux</PlatformTag>
<PlatformTag>My Platform</PlatformTag>
<ProjectTypeTag>console</ProjectTypeTag>
<ProjectTypeTag>desktop</ProjectTypeTag>
</TemplateData>
<TemplateContent>
<Project File="MyTemplate.csproj">
<ProjectItem>Form1.cs<ProjectItem>
<ProjectItem>Form1.Designer.cs</ProjectItem>
<ProjectItem>Program.cs</ProjectItem>
<ProjectItem>Properties\AssemblyInfo.cs</ProjectItem>
<ProjectItem>Properties\Resources.resx</ProjectItem>
<ProjectItem>Properties\Resources.Designer.cs</ProjectItem>
<ProjectItem>Properties\Settings.settings</ProjectItem>
<ProjectItem>Properties\Settings.Designer.cs</ProjectItem>
</Project>
</TemplateContent>
</VSTemplate>

Confira também
Referência de esquema de modelo do Visual Studio
Criar modelos de projeto e de item
Personalizar modelos de projeto e de item
Introdução ao modelo de projeto do VSIX
Criar modelos de projeto
Artigo • 13/01/2024

Este artigo mostra como criar um modelo usando o Assistente de Exportação de


Modelo, que empacota o modelo em um arquivo .zip.

Use o Assistente para Exportar Modelo


1. Criar um projeto.

7 Observação

Use apenas caracteres identificadores válidos ao nomear um projeto que será


a origem de um modelo. Caso contrário, poderão ocorrer erros de compilação
nos projetos criados usando o modelo. Para obter mais informações sobre
caracteres identificadores válido, consulte Nomes de elementos declarados
(Visual Basic) ou Identificadores (C++). Como alternativa, você pode usar
parâmetros de modelo para usar nomes "seguros" para classes e
namespaces.

2. Edite o projeto até que ele esteja pronto para ser exportado como um modelo. Por
exemplo, você talvez queira editar arquivos de código para indicar onde a
substituição de parâmetro deve ocorrer. Para obter mais informações, consulte
Como substituir parâmetros em um modelo.

3. No menu Projeto, escolha Exportar Modelo.

O Assistente para Exportar Modelo é aberto.

4. Na página Escolher Tipo de Modelo, selecione Modelo de Projeto. Selecione o


projeto que você deseja exportar como um modelo e, em seguida, escolha
Avançar.

5. Na página Selecionar Opções do Modelo, insira um nome e uma descrição


opcional, uma imagem de ícone e uma imagem de exibição para o modelo. Esses
itens serão exibidos na caixa de diálogo em que você cria um projeto. Selecione
Concluir.

O projeto será exportado para um arquivo .zip e colocado no local de saída


especificado e, se selecionado, importado para o Visual Studio.
Para localizar seu modelo na caixa de diálogo em que você cria um projeto, faça uma
pesquisa por nome ou percorra a lista. (A filtragem com base na linguagem de
programação ou no tipo de projeto não é possível no momento para modelos de
usuário.)

Outras maneiras de criar modelos de projeto


Você pode criar modelos de projeto manualmente reunindo os arquivos que constituem
o projeto em uma pasta e criando um arquivo XML .vstemplate com os metadados
apropriados. Para obter mais informações, consulte Como criar manualmente modelos
da Web.

Se o SDK do Visual Studio estiver instalado, você poderá encapsular o modelo concluído
em um arquivo VSIX para implantação usando o modelo Projeto VSIX. Para obter mais
informações, consulte Introdução ao modelo de projeto do VSIX.

Conteúdo relacionado
Sobre modelos de projeto e item
Como criar modelos multiprojetos
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os modelos de vários projetos atuam como contêineres para dois ou mais projetos.
Quando você cria um projeto baseado em um modelo multiprojetos, todos os projetos
no modelo são adicionados à solução.

Um modelo multiprojeto tem dois ou mais modelos de projeto e um modelo raiz do


tipo ProjectGroup.

Os modelos multiprojetos comportam-se de forma diferente dos modelos de projeto


único. Eles têm as seguintes características exclusivas:

Nomes não podem ser atribuídos a projetos individuais em um modelo


multiprojetos quando o modelo é usado para criar um projeto. Em vez disso, use o
atributo ProjectName no elemento ProjectTemplateLink do arquivo vstemplate
para especificar um nome para cada projeto.

Os modelos multiprojetos podem conter projetos de diferentes linguagens, mas o


modelo inteiro em si só pode ser colocado em uma única categoria. Especifique a
categoria de modelo no elemento ProjectType do arquivo vstemplate.

Um modelo multiprojeto deve incluir os itens a seguir, compactados em um arquivo .zip:

Um arquivo vstemplate raiz para todo o modelo multiprojeto. Esse arquivo


vstemplate raiz contém metadados que são exibidos na caixa de diálogo em que
você cria um projeto. Ela também especifica onde encontrar os arquivos
vstemplate para os projetos no modelo. Esse arquivo deve estar localizado na raiz
do arquivo .zip.

Duas ou mais pastas que contêm os arquivos necessários para um modelo de


projeto concluído. As pastas incluem todos os arquivos de código do projeto e
também um arquivo vstemplate do projeto.

Por exemplo, um arquivo .zip de modelo multiprojeto com dois projetos poderia ter os
seguintes arquivos e diretórios:

MultiProjectTemplate.vstemplate
\Project1\MyTemplate.vstemplate
\Project1\Project1.vbproj
\Project1\Class.vb
\Project2\MyTemplate.vstemplate
\Project2\Project2.vbproj
\Project2\Class.vb

O arquivo vstemplate raiz para um modelo multiprojeto difere de um modelo de projeto


único das seguintes maneiras:

O atributo Type do elemento VSTemplate tem o valor ProjectGroup, em vez de


Project. Por exemplo:

XML

<VSTemplate Version="2.0.0" Type="ProjectGroup"


xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">

O elemento TemplateContent contém um elemento ProjectCollection que tem


um ou mais elementos ProjectTemplateLink que definem os caminhos para os
arquivos vstemplate dos projetos incluídos. Por exemplo:

XML

<TemplateContent>
<ProjectCollection>
<ProjectTemplateLink>
Project1\MyTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink>
Project2\MyTemplate.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>

 Dica

Se você deseja que o modelo de multiprojetos apareça apenas na nova caixa de


diálogo do projeto e não nos projetos individuais que ele contém, marque os
modelos internos como oculto. Por exemplo:

XML

<VSTemplate Type="Project" ... >


<TemplateData>
...
<Hidden>true</Hidden>
</TemplateData>
...
</VSTemplate>
Criar um modelo multiprojetos usando uma
solução existente
1. Crie uma solução e adicione dois ou mais projetos.

2. Personalize os projetos até que eles estejam prontos para serem exportados para
um modelo.

 Dica

Se você estiver usando parâmetros de modelo e quiser se referir a variáveis


do modelo pai, prefixe o nome do parâmetro com ext_ . Por exemplo,
$ext_safeprojectname$ . Além disso, defina o atributo CopyParameters do
elemento ProjectTemplateLink como true.

XML

<ProjectTemplateLink ProjectName="MyProject"
CopyParameters="true">...</ProjectTemplateLink>

3. No menu Projeto, escolha Exportar Modelo.

O Assistente para Exportar Modelo é aberto.

4. Na página Escolher Tipo de Modelo, selecione Modelo de Projeto. Selecione um


dos projetos que você deseja exportar para um modelo e, em seguida, escolha
Avançar. (Você repetirá essas etapas para cada projeto na solução.)

5. Na página Selecionar Opções do Modelo, insira um nome e uma descrição


opcional, um ícone e uma imagem de exibição para o modelo. Escolha Concluir.

O projeto é exportado para um arquivo .zip e colocado no local de saída


especificado.

7 Observação

Cada projeto deve ser exportado para um modelo separadamente, portanto,


repita as etapas anteriores para cada projeto na solução.
6. Crie um diretório para o modelo, com um subdiretório para cada projeto.

7. Extraia o conteúdo do arquivo .zip de cada projeto para o subdiretório


correspondente que você criou.

8. No diretório base, crie um arquivo XML com uma extensão de arquivo .vstemplate.
Esse arquivo contém os metadados do modelo multiprojetos. Consulte o exemplo
a seguir para obter a estrutura do arquivo. Certifique-se de especificar o caminho
relativo para o arquivo vstemplate de cada projeto.

9. Selecione todos os arquivos no diretório base e, no menu de clique com o botão


direito do mouse ou de contexto, escolha Enviar para>Pasta compactada
(zipada).

Esses arquivos e pastas estão compactados em um arquivo .zip.

10. Copie o arquivo .zip no diretório do modelo de projeto do usuário. Por padrão,
esse diretório é %USERPROFILE%\Documents\Visual Studio
<versão>\Templates\ProjectTemplates.

11. No Visual Studio, abra a caixa de diálogo Arquivo>Novo>Projeto e verifique se o


modelo é exibido.

Exemplo de dois projetos


Esse exemplo mostra um arquivo vstemplate raiz multiprojeto básico. Neste exemplo, o
modelo tem dois projetos, Meu Aplicativo do Windows e Minha Biblioteca de Classes.
O atributo ProjectName no elemento ProjectTemplateLink especifica o nome fornecido
para o projeto.

 Dica

Se o atributo ProjectName não for especificado, o nome do arquivo vstemplate


será usado como o nome do projeto.

XML

<VSTemplate Version="2.0.0" Type="ProjectGroup"


xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Multi-Project Template Sample</Name>
<Description>An example of a multi-project template</Description>
<Icon>Icon.ico</Icon>
<ProjectType>VisualBasic</ProjectType>
</TemplateData>
<TemplateContent>
<ProjectCollection>
<ProjectTemplateLink ProjectName="My Windows Application">
WindowsApp\MyTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="My Class Library">
ClassLib\MyTemplate.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
</VSTemplate>

Exemplo com pastas de solução


Este exemplo usa o elemento SolutionFolder para dividir os projetos em dois grupos,
Math Classes e Graphics Classes. O modelo tem quatro projetos, dois dos quais são
colocados em cada pasta de solução.

XML

<VSTemplate Version="2.0.0" Type="ProjectGroup"


xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Multi-Project Template Sample</Name>
<Description>An example of a multi-project template</Description>
<Icon>Icon.ico</Icon>
<ProjectType>VisualBasic</ProjectType>
</TemplateData>
<TemplateContent>
<ProjectCollection>
<SolutionFolder Name="Math Classes">
<ProjectTemplateLink ProjectName="MathClassLib1">
MathClassLib1\MyTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="MathClassLib2">
MathClassLib2\MyTemplate.vstemplate
</ProjectTemplateLink>
</SolutionFolder>
<SolutionFolder Name="Graphics Classes">
<ProjectTemplateLink ProjectName="GraphicsClassLib1">
GraphicsClassLib1\MyTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="GraphicsClassLib2">
GraphicsClassLib2\MyTemplate.vstemplate
</ProjectTemplateLink>
</SolutionFolder>
</ProjectCollection>
</TemplateContent>
</VSTemplate>
Confira também
Criando modelos de projeto e de item
Como criar modelos de projeto
Referência de esquema de modelo do Visual Studio (extensibilidade)
Elemento SolutionFolder (modelos do Visual Studio)
Elemento ProjectTemplateLink (modelos do Visual Studio)
Como criar modelos de item
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo mostra como criar um modelo de item usando o Assistente de Exportação
de Modelo. Se seu modelo for composto por em vários arquivos, consulte Como criar
modelos de item de vários arquivos.

Adicione um modelo de item à caixa de


diálogo Adicionar Novo Item
1. Crie ou abra um projeto no Visual Studio.

2. Adicione um item ao projeto e modifique-o caso desejar.

3. Modifique o arquivo de código para indicar em que ponto a substituição de


parâmetro deve ocorrer. Para obter mais informações, consulte Como substituir
parâmetros em um modelo.

4. No menu Projeto, escolha Exportar Modelo.

5. Na página Escolher Tipo de Modelo, escolha Modelo de Item, selecione o projeto


que contém o item e, em seguida, escolha Avançar.

6. Na página Selecionar Item para Exportar, escolha o item para o qual você deseja
criar um modelo e, em seguida, escolha Avançar.

7. Na página Selecionar Referências de Item, selecione as referências de assembly a


serem incluídas no modelo e, em seguida, escolha Avançar.

8. Na página Selecionar Opções do Modelo, insira o nome do modelo e a descrição


opcional, um ícone e uma imagem de exibição e, em seguida, escolha Concluir.

Os arquivos do modelo são adicionados a um arquivo .zip e copiados no diretório


que você especificou na caixa de diálogo. O local padrão é
%USERPROFILE%\Documents\Visual Studio <versão>\My Exported Templates.

9. Se você não tiver selecionado a opção Importar automaticamente o modelo no


Visual Studio no Assistente de Exportação de Modelo, localize o modelo
exportado. Em seguida, copie-o para o diretório de modelo de item do usuário. O
local padrão é %USERPROFILE%\Documents\Visual Studio
<versão>\Templates\ItemTemplates.

10. Feche o Visual Studio e, em seguida, o reabra.

11. Crie um novo projeto ou abra um projeto existente e, em seguida, escolha


Projeto>Adicionar Novo Item ou pressione Ctrl+Shift+A.

O modelo de item aparece na caixa de diálogo Adicionar Novo Item. Se você


adicionou uma descrição no Assistente para Exportar Modelo, a descrição será
exibida no lado direito da caixa de diálogo.

Habilitar o modelo de item a ser usado em um


projeto de Aplicativo Universal do Windows
O assistente faz grande parte do trabalho de criar um modelo básico, mas, em muitos
casos, será necessário modificar manualmente o arquivo .vstemplate depois de exportar
o modelo. Por exemplo, se quiser que o item apareça na caixa de diálogo Adicionar
Novo Item de um projeto de aplicativo universal do Windows, será necessário executar
algumas etapas adicionais.

1. Siga as etapas na seção anterior para exportar um modelo de item.

2. Extraia o arquivo .zip que foi criado e abra o arquivo .vstemplate no Visual Studio.

3. Para um projeto universal C# do Windows, adicione o seguinte XML no elemento


<TemplateData> :

XML

<TemplateID>Microsoft.CSharp.Class</TemplateID>

4. No Visual Studio, salve o arquivo .vstemplate e feche-o.

5. Copie e cole o arquivo .vstemplate novamente no arquivo .zip.

Se a caixa de diálogo Copiar Arquivo for exibida, escolha a opção Copiar e


Substituir.

Agora você pode adicionar um item com base neste modelo em um projeto universal
do Windows usando a caixa de diálogo Adicionar Novo Item.
Habilitar os modelos para subtipos de projeto
específicos
Você pode especificar que o modelo deve aparecer apenas para determinados subtipos
do projeto, como Windows, Office, banco de dados ou Web.

1. Localize o elemento ProjectType no arquivo .vstemplate para o modelo de item.

2. Adicione um elemento ProjectSubType imediatamente após o elemento


ProjectType .

3. Defina o valor de texto do elemento para um dos seguintes valores:

Windows
Office
Banco de dados
Web

Por exemplo: <ProjectSubType>Database</ProjectSubType> .

O exemplo a seguir mostra um modelo de item para projetos do Office.

XML

<VSTemplate Version="2.0.0" Type="Item" Version="2.0.0">


<TemplateData>
<Name>Class</Name>
<Description>An empty class file</Description>
<Icon>Class.ico</Icon>
<ProjectType>CSharp</ProjectType>
<ProjectSubType>Office</ProjectSubType>
<DefaultName>Class.cs</DefaultName>
</TemplateData>
<TemplateContent>
<ProjectItem>Class1.cs</ProjectItem>
</TemplateContent>
</VSTemplate>

Criar manualmente um modelo de item


Em alguns casos, convém criar um modelo de item manualmente, desde o início.

1. Crie um projeto e um item de projeto.


2. Modifique o item de projeto até que ele esteja pronto para ser salvo como um
modelo.

3. Modifique o arquivo de código para indicar o ponto em que a substituição de


parâmetro deve ocorrer, caso ela ocorra em algum ponto. Para saber mais sobre
substituição de parâmetro, confira Como substituir parâmetros em um modelo.

4. Crie um arquivo XML e salve-o com uma extensão de arquivo .vstemplate no


mesmo diretório que o arquivo de item de projeto.

5. Edite o arquivo XML .vstemplate para fornecer metadados do modelo de item. Para
obter mais informações, consulte Referência de esquema de modelo
(extensibilidade) e o exemplo na seção anterior.

6. Salve o arquivo .vstemplate e feche-o.

7. No Windows Explorer, selecione os arquivos que você deseja incluir no modelo.


Clique com o botão direito do mouse na seleção e escolha Enviar para>Pasta
compactada (zipada). Os arquivos selecionados são compactados em um arquivo
.zip.

8. Copie o arquivo .zip e cole-o no local do modelo de item do usuário. O diretório


padrão é %USERPROFILE%\Documents\Visual Studio
2019\Templates\ItemTemplates. Para obter mais informações, consulte Como
localizar e organizar modelos de projeto e de item.

Confira também
Criar modelos de projeto e de item
Como criar modelos de item multiarquivos
Referência de esquema de modelo do Visual Studio (extensibilidade)
Criar modelos de item de multiarquivo
Artigo • 13/01/2024

Os modelos de item podem especificar apenas um item, mas, algumas vezes, o item é
composto por vários arquivos. Por exemplo, um modelo de item do Windows Forms
requer os três arquivos a seguir:

Um arquivo que contém o código para o formulário

Um arquivo que contém as informações do designer de formulário

Um arquivo que contém os recursos inseridos para o formulário

Os modelos de item multiarquivos exigem parâmetros para garantir que as extensões


de arquivo corretas sejam usadas quando o item é criado. Se você criar um modelo de
item multiarquivos usando o Assistente para Exportar Modelo, esses parâmetros serão
gerados automaticamente e nenhuma outra edição será necessária.

Use o Assistente para Exportar Modelo


Você pode criar um modelo de item multiarquivos da mesma maneira que se cria um
modelo de item de arquivo único. Consulte Como criar modelos de item. Na página
Selecionar Item para Exportar do assistente, selecione o arquivo que contém os
arquivos dependentes (por exemplo, um arquivo de formato do Windows Forms). O
assistente inclui automaticamente todos os arquivos dependentes, como arquivos de
recursos e do designer, no modelo.

Criar manualmente um modelo de item de


vários arquivos
1. Crie o modelo de item da mesma forma em que você criaria manualmente um
modelo de item de arquivo único, mas inclua cada arquivo que constitui o item
multiarquivos.

2. No arquivo XML .vstemplate, adicione um elemento ProjectItem a cada arquivo


individual e, em seguida, adicione um atributo TargetFileName a este elemento.
Defina os valores do atributo TargetFileName como
$fileinputname$.ExtensãoDeArquivo, em que ExtensãoDeArquivo é a extensão de
arquivo do arquivo que está sendo incluído no modelo. Por exemplo:
XML

<ProjectItem TargetFileName="$fileinputname$.vb">
Form1.vb
</ProjectItem>
<ProjectItem TargetFileName="$fileinputname$.Designer.vb">
Form1.Designer.vb
</ProjectItem>
<ProjectItem TargetFileName="$fileinputname$.resx">
Form1.resx
</ProjectItem>

7 Observação

Quando um item derivado deste modelo for adicionado a um projeto, os


nomes de arquivo serão derivados do nome que o usuário inserir na caixa de
diálogo Adicionar Novo Item.

3. Selecione os arquivos a serem incluídos em seu modelo, clique com o botão


direito do mouse na seleção e escolha Enviar para>Pasta compactada (zipada).

Os arquivos selecionados são compactados em um arquivo .zip.

4. Copie o arquivo .zip para o local do modelo de item do usuário. Por padrão, o
diretório é %USERPROFILE%\Documents\Visual Studio
<Versão>\Templates\ItemTemplates. Para obter mais informações, consulte Como
localizar e organizar modelos.

5. Feche o Visual Studio e, em seguida, o reabra.

6. Crie um novo projeto ou abra um projeto existente e, em seguida, escolha


Projeto>Adicionar Novo Item ou pressione Ctrl+Shift+A.

O modelo de item multiarquivos aparece na caixa de diálogo Adicionar Novo


Item.

Exemplo
O exemplo a seguir mostra um modelo do Windows Forms. Quando um item é criado
com base nesse modelo, os nomes dos três arquivos criados corresponderá ao nome
inserido na caixa de diálogo Adicionar Novo Item.

XML
<VSTemplate Version="2.0.0" Type="Item"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Multi-file Item Template</Name>
<Icon>Icon.ico</Icon>
<Description>An example of a multi-file item template</Description>
<ProjectType>VisualBasic</ProjectType>
</TemplateData>
<TemplateContent>
<ProjectItem TargetFileName="$fileinputname$.vb" SubType="Form">
Form1.vb
</ProjectItem>
<ProjectItem TargetFileName="$fileinputname$.Designer.vb">
Form1.Designer.vb
</ProjectItem>
<ProjectItem TargetFileName="$fileinputname$.resx">
Form1.resx
</ProjectItem>
</TemplateContent>
</VSTemplate>

Conteúdo relacionado
Criar modelos de projeto e de item
Como criar modelos de item
Parâmetros de modelo
Como substituir parâmetros em um modelo
Criar modelos da Web manualmente
Artigo • 13/01/2024

Criar um modelo de Web é diferente de criar outros tipos de modelos. Como modelos
de projeto Web aparecem na caixa de diálogo Adicionar Novo Site e itens de projetos
da Web são categorizados por linguagem de programação, o arquivo vstemplate deve
especificar o modelo como um modelo de Web e identificar a linguagem de
programação.

7 Observação

Os modelos da Web devem conter um arquivo vazio .webproj que deve ser
referenciado no arquivo vstemplate no atributo File do elemento Project . Embora
os projetos Web não exijam um arquivo de projeto .proj, é necessário criar esse
arquivo de stub para que o modelo da Web funcione corretamente.

Para criar manualmente um modelo da Web


1. Crie um projeto Web.

2. Modifique ou exclua os arquivos no projeto ou adicione novos arquivos ao


projeto.

3. Crie um arquivo XML e salve-o com uma extensão de nome de arquivo vstemplate,
no mesmo diretório que o projeto. Não o adicione ao projeto no Visual Studio.

4. Edite o arquivo XML vstemplate para fornecer metadados do modelo de projeto.


Para obter mais informações, consulte o exemplo a seguir.

5. Localize o elemento ProjectType no arquivo vstemplate e defina o valor de texto


para Web .

6. Após o elemento ProjectType , adicione um elemento ProjectSubType e defina o


valor de texto como a linguagem de programação do modelo. A linguagem de
programação pode ter um dos seguintes valores:

CSharp

VisualBasic

Por exemplo:
XML

<TemplateData>
...
<ProjectType>Web</ProjectType>
<ProjectSubType>CSharp</ProjectSubType>
...
</TemplateData>

7. Selecione os arquivos em seu modelo (isso inclui o arquivo vstemplate), clique com
o botão direito do mouse na seleção e escolha Enviar para>Pasta compactada
(zipada). Os arquivos são compactados em um arquivo .zip.

8. Coloque o arquivo de modelo .zip no diretório de modelo de projeto do Visual


Studio. Por padrão, esse diretório é %USERPROFILE%\Documents\Visual Studio
<Versão>\ProjectTemplates.

Exemplo
O exemplo a seguir mostra um arquivo vstemplate básico para um modelo de projeto
Web:

XML

<VSTemplate Version="2.0.0" Type="Project"


xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>MyWebProjecStarterKit</Name>
<Description>A simple web template</Description>
<Icon>icon.ico</Icon>
<ProjectType>Web</ProjectType>
<ProjectSubType>CSharp</ProjectSubType>
<DefaultName>WebSite</DefaultName>
</TemplateData>
<TemplateContent>
<Project File="WebApplication.webproj">
<ProjectItem>icon.ico</ProjectItem>
<ProjectItem OpenInEditor="true">Default.aspx</ProjectItem>
<ProjectItem>Default.aspx.cs</ProjectItem>
</Project>
</TemplateContent>
</VSTemplate>

Conteúdo relacionado
Criar modelos de projeto e de item
Referência de esquema de modelo do Visual Studio (extensibilidade)
Solucionar problemas de modelos de
projeto e item
Artigo • 21/03/2023

Aplica-se a: Visual Studio 2022

Se um modelo não for carregado no ambiente de desenvolvimento, haverá várias


maneiras de localizar o problema.

Validar o arquivo vstemplate


Se o arquivo vstemplate em um modelo não aderir ao esquema de modelo do Visual
Studio, o modelo poderá não aparecer na caixa de diálogo em que você cria novos
projetos.

Validando o arquivo vstemplate


1. Localize o arquivo .zip que contém o modelo.

2. Extraia o arquivo .zip .

3. No menu Arquivo no Visual Studio, selecione Abrir>Arquivo.

4. Selecione o arquivo vstemplate para o modelo e selecione Abrir.

5. Verifique se o XML do arquivo vstemplate adere ao esquema de modelo. Para


obter mais informações sobre o esquema vstemplate , consulte a seção Referência
de esquema de modelo .

7 Observação

Para obter suporte do IntelliSense durante a criação do arquivo vstemplate ,


adicione um xmlns atributo ao elemento e atribua-lhe VSTemplate um valor
de http://schemas.microsoft.com/developer/vstemplate/2005 .

6. Salve e feche o arquivo vstemplate .

7. Selecione os arquivos incluídos no modelo, clique com o botão direito do mouse e


selecione Enviar para>Compactado (zipped). Os arquivos selecionados são
compactados em um arquivo .zip .
8. Coloque o novo arquivo .zip no mesmo diretório que o arquivo de.zip antigo.

9. Exclua os arquivos de modelo extraídos e o arquivo de.zip de modelo antigo.

Habilitar o log de diagnóstico


Você pode habilitar o registro em log de diagnóstico para descoberta de modelo
seguindo as etapas na seção Descoberta de modelo de solução de problemas
(extensibilidade).

Referências
Solucionar problemas de descoberta de modelo (extensibilidade)
Personalizar modelos
Criar modelos de projeto e item
Referência de esquema de modelo

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Localizar e organizar modelos de
projeto de e item
Artigo • 13/01/2024

Arquivos de modelo precisam ser colocados em um local conhecido para que eles sejam
mostrados no novo projeto e em caixas de diálogo do novo item.

Localizar modelos
Os modelos instalados e os modelos do usuário são armazenados em dois locais
diferentes.

Modelos instalados
Por padrão, os modelos instalados com o Visual Studio estão localizados em:

%ProgramFiles%\Microsoft Visual Studio\2022\


<edição>\Common7\IDE\ProjectTemplates\<Linguagem>\<ID da localidade>

%ProgramFiles%\Microsoft Visual Studio\2022\


<edição>\Common7\IDE\ItemTemplates\<Linguagem>\<ID da localidade>

Por exemplo, o diretório a seguir contém os modelos de item do Visual Basic para inglês
(LCID 1033):

C:\Program Files\Microsoft Visual


Studio\2022\Community\Common7\IDE\ItemTemplates\VisualBasic\1033

Modelos do usuário
Se você adicionar um arquivo compactado (.zip) que inclua um arquivo .vstemplate no
diretório de modelos do usuário, o modelo aparecerá nas caixas de diálogo Novo
Projeto e Adicionar Novo Item. Por padrão, os modelos do usuário estão localizados em:

%USERPROFILE%\Documents\Visual Studio 2022\Templates\ProjectTemplates

%USERPROFILE%\Documents\Visual Studio 2022\Templates\ItemTemplates

Por exemplo, o seguinte diretório contém modelos de projeto do usuário para C#:
C:\Users\UserName\Documents\Visual Studio
2022\Templates\ProjectTemplates\Visual C#

 Dica

Você pode alterar o local dos modelos do usuário em


Ferramentas>Opções>Projetos e Soluções>Locais.

Próximas etapas
Para saber mais sobre modelos do SDK do .NET e seus locais, consulte os artigos a
seguir.

ノ Expandir a tabela

Artigo Descrição

Modelos Ao instalar o SDK do .NET, você recebe dezenas de modelos internos para criar
padrão do .NET projetos e arquivos, incluindo aplicativos de console, bibliotecas de classes,
projetos de teste de unidade, aplicativos ASP.NET Core (incluindo projetos
Angular e React) e arquivos de configuração. Este artigo lista os modelos que
vêm pré-instalados com o SDK do .NET e descreve como interagir com eles.

Gerenciar O .NET fornece um sistema de modelos que permite que os usuários instalem
modelos de ou desinstalem pacotes que contêm modelos do NuGet, um arquivo de pacote
projeto e de NuGet ou um diretório do sistema de arquivos. Este artigo descreve como
item do .NET gerenciar modelos do .NET por meio da CLI do SDK do .NET.

Conteúdo relacionado
Referência de esquema de modelo do Visual Studio (extensibilidade)
Personalizar modelos de projeto e de
item
Artigo • 16/01/2024

Mesmo depois de criar modelos de projeto e item, você poderá personalizá-los para
atender às suas necessidades.

Personalizações
Por exemplo, é possível executar as seguintes tarefas:

Modifique e exporte um modelo existente como um modelo do usuário.

Para obter mais informações, consulte Como atualizar modelos existentes.

Passe parâmetros personalizados para um modelo para substituir os valores


existentes.

Para obter mais informações, consulte Como substituir parâmetros em um modelo.

Personalize os assistentes que criam projetos com base em modelos.

Para obter mais informações, consulte Como usar assistentes com modelos de
projeto (extensibilidade).

Conteúdo relacionado
Criando modelos de projeto e de item
Como solucionar problemas de modelos
Como criar modelos de projeto
Como criar modelos de item
Referência de esquema de modelo do Visual Studio
IWizard
Personalizar modelos usando o comandodotnet new
Listar ou modificar projetos em um arquivo de solução .NET usando o comando
dotnet sln
Como atualizar modelos existentes
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Depois de criar um modelo e compactar os arquivos em um arquivo .zip, modifique o


modelo. É possível fazer isso alterando manualmente os arquivos no modelo ou
exportando um novo modelo de um projeto com base no modelo.

Use o Assistente para Exportar Modelo


O Visual Studio fornece um Assistente para Exportar Modelo que pode ser usado para
atualizar um modelo existente.

1. Escolha Arquivo>Novo>Projeto na barra de menus.

2. Selecione o modelo que você deseja atualizar e continue seguindo as etapas para
criar o projeto.

3. Modifique o projeto no Visual Studio. Por exemplo, altere o tipo de saída ou


adicione um novo arquivo ao projeto.

4. No menu Projeto, escolha Exportar Modelo.

O Assistente para Exportar Modelo é aberto.

5. Siga os prompts no assistente para exportar o modelo como um arquivo .zip.

6. (Opcional) Coloque o arquivo .zip no seguinte diretório:


%USERPROFILE%\Documents\Visual Studio<>versão\Templates\ProjectTemplates
para disponibilizá-lo para seleção. Você precisará executar essa etapa se você não
tiver selecionado a opção Importar automaticamente o modelo no Visual Studio
no Assistente para Exportar Modelo.

7. Exclua o arquivo .zip de modelo antigo.

Atualizar manualmente um modelo existente


Você pode atualizar um modelo existente sem usar o Assistente de Exportação de
Modelo, modificando os arquivos no arquivo .zip compactado.

Para atualizar manualmente um modelo existente


1. Localize o arquivo .zip que contém o modelo. Os modelos de projeto do usuário
estão localizados em %USERPROFILE%\Documents\Visual Studio
<versão>\Templates\ProjectTemplates.

2. Extraia o arquivo .zip.

3. Modifique ou exclua os arquivos de modelo atuais ou adicione novos arquivos ao


modelo.

4. Abra, modifique e salve o arquivo XML .vstemplate para tratar o comportamento


atualizado ou novos arquivos.

Para obter mais informações sobre o esquema .vstemplate, consulte Referência de


esquema de modelo do Visual Studio (extensibilidade). Para obter mais
informações sobre o que você pode parametrizar nos arquivos de origem, consulte
Parâmetros do modelo.

5. Selecione os arquivos em seu modelo, clique no menu de contexto ou no menu


acionado com o botão direito do mouse e escolha Enviar para>Pasta compactada
(zipada).

Os arquivos selecionados são compactados em um arquivo .zip.

6. Coloque o novo arquivo .zip no mesmo diretório do antigo arquivo .zip.

7. Exclua os arquivos de modelo extraídos e o arquivo .zip de modelo antigo.

Confira também
Personalizar modelos
Criar modelos de projeto e de item
Referência de esquema de modelo do Visual Studio
Parâmetros de modelo
Substituir parâmetros em um modelo
Artigo • 13/01/2024

Os parâmetros de modelo permitem que você substitua identificadores como nomes de


classe e namespaces quando um arquivo é criado com base em um modelo. Você pode
adicionar parâmetros de modelo em modelos existentes ou criar seus próprios modelos
com os parâmetros de modelo.

Parâmetros de modelo são escritos no formato $parâmetro$. Para obter uma lista
completa dos parâmetros de modelo, consulte Parâmetros de modelo.

A seção a seguir mostra como modificar um modelo para substituir o nome de um


namespace pelo "nome seguro do projeto".

Exemplo – o nome do namespace


1. Insira o parâmetro em um ou mais dos arquivos de código no modelo. Por
exemplo:

C#

namespace $safeprojectname$

2. No arquivo vstemplate do modelo, localize o elemento ProjectItem que inclui esse


arquivo.

3. Defina o atributo ReplaceParameters como true para o elemento ProjectItem :

XML

<ProjectItem ReplaceParameters="true">Class1.cs</ProjectItem>

Conteúdo relacionado
Criar modelos de projeto e de item
Parâmetros de modelo
Referência de esquema de modelo do Visual Studio
Elemento ProjectItem (modelos de item do Visual Studio)
Parâmetros de modelo
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você poderá substituir os valores do modelo quando for criada uma instância dele. Para
configurar essa funcionalidade, use parâmetros de modelo. Os parâmetros de modelo
podem ser usados para substituir valores, como nomes de classes e namespaces, no
modelo. O assistente de modelo que é executado em segundo plano quando um
usuário adiciona um novo item ou projeto substitui esses parâmetros.

Declarar e habilitar parâmetros de modelo


Parâmetros de modelo são declarados no formato $parâmetro$. Por exemplo:

$rootnamespace$

$guid1$

$guid5$

Habilitar a substituição de parâmetros em modelos


1. No arquivo .vstemplate do modelo, localize o elemento ProjectItem que
corresponde ao item para o qual você deseja habilitar a substituição de parâmetro.

2. Defina o atributo ReplaceParameters do elemento ProjectItem como true .

3. No arquivo de código do item de projeto, inclua parâmetros conforme apropriado.


Por exemplo, o seguinte parâmetro especifica que o nome do projeto seguro é
usado para o namespace em um arquivo:

C#

namespace $rootnamespace$

Parâmetros de modelo reservados


A tabela a seguir lista os parâmetros de modelo reservados que podem ser usados por
qualquer modelo:
Parâmetro Descrição

clrversion Versão atual do CLR (Common Language Runtime).

ext_* Adicione o prefixo ext_ a qualquer parâmetro para se referir às


variáveis do modelo pai. Por exemplo, ext_safeprojectname .

guid[1-10] Um GUID usado para substituir o GUID do projeto em um arquivo de


projeto. Você pode especificar até 10 GUIDs exclusivos (por exemplo,
guid1 ).

itemname O nome do arquivo no qual o parâmetro está sendo usado.

machinename O nome do computador atual (por exemplo, Computer01).

projectname O nome fornecido pelo usuário quando o projeto foi criado. Esse
parâmetro se aplica somente a modelos de projeto.

registeredorganization O valor da chave do Registro de HKLM\Software\Microsoft\Windows


NT\CurrentVersion\RegisteredOrganization.

rootnamespace O namespace raiz do projeto atual seguido pela subpasta do item


atual, com barras substituídas por pontos.

defaultnamespace O namespace raiz do projeto atual.

safeitemname O mesmo que itemname , mas com todos os caracteres desprotegidos e


os espaços substituídos por caracteres de sublinhado.

safeitemrootname Mesmo que safeitemname .

safeprojectname O nome fornecido pelo usuário quando o projeto foi criado, mas com
todos os caracteres desprotegidos e espaços removidos. Esse
parâmetro se aplica somente a modelos de projeto.

targetframeworkversion Versão atual do .NET Framework de destino.

time A hora atual em um formato baseado nas configurações do usuário do


Windows. Um exemplo de um formato de hora é DD/MM/AAAA
00:00:00.

specifiedsolutionname O nome da solução. Quando "criar diretório da solução" estiver


marcado, specifiedsolutionname terá o nome da solução. Quando
"criar diretório da solução" não estiver marcado,
specifiedsolutionname estará em branco.

userdomain O domínio do usuário atual.

Nome de Usuário O nome de usuário atual.


Parâmetro Descrição

webnamespace O nome do site atual. Este parâmetro é usado no modelo de formulário


da Web para garantir nomes de classe exclusivos. Se o site estiver no
diretório raiz do servidor Web, esse parâmetro de modelo será
resolvido para o diretório raiz do servidor Web.

ano O ano atual no formato AAAA.

7 Observação

Parâmetros de modelo diferenciam maiúsculas de minúsculas.

Parâmetros de modelo personalizados


Você pode especificar seus próprios valores e parâmetros de modelo, além dos
parâmetros de modelo reservados padrão, que são usados durante a substituição de
parâmetros. Para obter mais informações, consulte Elemento CustomParameters
(modelos do Visual Studio).

Exemplo: usar o nome do projeto para um


nome de arquivo
Você pode especificar nomes de arquivo variáveis para itens de projeto usando um
parâmetro no atributo TargetFileName .

O exemplo a seguir especifica que o nome de um arquivo executável usa o nome do


projeto, especificado por $projectname$ .

XML

<TemplateContent>
<ProjectItem
ReplaceParameters="true"
TargetFileName="$projectname$.exe">
File1.exe
</ProjectItem>
...
</TemplateContent>
Exemplo: usar o nome seguro do projeto para
o nome do namespace
Para usar o nome seguro do projeto para o namespace em um arquivo de classe C#, use
a seguinte sintaxe:

C#

namespace $safeprojectname$
{
public class Class1
{
public Class1()
{ }
}
}

No arquivo .vstemplate do modelo de projeto, inclua o atributo


ReplaceParameters="true" quando fizer referência ao arquivo:

XML

<TemplateContent>
<ProjectItem ReplaceParameters="true">
Class1.cs
</ProjectItem>
...
</TemplateContent>

Confira também
Como substituir parâmetros em um modelo
Personalizar modelos
Como criar modelos de projeto
Referência de esquema de modelo
Suporte ao IDE do Visual Studio de 64
bits
Artigo • 13/01/2024

O Visual Studio permite que você configure seus aplicativos para direcionar as
plataformas diferentes, incluindo plataformas de 64 bits. Para obter mais informações
sobre o suporte à plataforma de 64 bits no Visual Studio, consulte Aplicativos de 64 bits.

7 Observação

O Visual Studio 2022 no Windows agora é um aplicativo de 64 bits. Para obter mais
informações, confira a postagem no blog Visão do Visual Studio 2022 .

Implantar um aplicativo de 64 bits


Implantar pré-requisitos para aplicativos de 64 bits lista redistribuíveis que você pode
usar como pré-requisitos para a instalação de um aplicativo de 64 bits.

Configurar projetos como aplicativos de 64 bits


Como configurar projetos para plataformas de destino aborda como configurar projetos
para serem compilados como aplicativos de 64 bits.

Depurar um aplicativo de 64 bits


Depurar aplicativos de 64 bits
Usar arquivos de despejo
Desenvolver código no Visual Studio
sem projetos nem soluções
Artigo • 27/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Abra o código em praticamente todos os tipos de projeto baseado em diretório no


Visual Studio sem a necessidade de um arquivo de projeto ou de solução. Isso significa
que você pode, por exemplo, clonar um repositório no GitHub, abri-lo diretamente no
Visual Studio e começar o desenvolvimento sem precisar criar uma solução ou um
projeto. Se for necessário, você pode especificar as tarefas de compilação
personalizadas e iniciar os parâmetros por meio de arquivos JSON simples.

Após você abrir os arquivos do código no Visual Studio, o Gerenciador de Soluções


exibirá todos os arquivos na pasta. Você pode clicar em qualquer arquivo para começar
a editá-lo. Em segundo plano, o Visual Studio inicia a indexação dos arquivos para
habilitar os recursos de IntelliSense, navegação e refatoração. À medida que você edita,
cria, move ou exclui arquivos, o Visual Studio rastreia as alterações automaticamente e
atualiza continuamente seu índice do IntelliSense. O código será exibido com a
colorização de sintaxe e, em muitos casos, incluirá o preenchimento instrução básico do
IntelliSense.

7 Observação

Se estiver procurando informações específicas do VS Code, visite a página


Introdução ao Visual Studio Code .

Abra qualquer código


Você pode abrir o código no Visual Studio das seguintes maneiras:

Na barra de menus do Visual Studio, escolha Arquivo>Abrir>Pasta e, em seguida,


navegue até o local do código.

No menu de contexto (acesso por clique com o botão direito do mouse) de uma
pasta que contém o código, escolha o comando Abrir no Visual Studio.

Escolha o link Abrir Pasta na janela de início.


) Importante

Nem todo código pode ser aberto usando o link Abrir pasta na janela inicial
do Visual Studio. Por exemplo, se o arquivo de código foi salvo como parte de
uma solução, em outras palavras, em um arquivo .sln, você deve usar uma das
outras opções listadas abaixo para abrir o código.

Se você for usuário de teclado, pressione Ctrl+Shift+Alt+O no Visual Studio.

Abra o código de um repositório GitHub clonado.

Para abrir várias pastas


A partir do Visual Studio 2022 versão 17.9 versão prévia 1, você pode especificar várias
pastas a serem abertas no Visual Studio. Abrir várias pastas é especialmente útil em
repositórios de código com muitos códigos não relacionados, e um desenvolvedor só
precisa de um subconjunto para realizar algum trabalho.

Na barra de menus do Visual Studio, escolha Arquivo>Abrir>Workspace e, em


seguida, navegue até o local do arquivo .code-workspace .
Espera-se que o arquivo .code-workspace em si seja um esquema .JSON,
semelhante ao seguinte:

JSON

{
"folders" : [
{
"path" : "some\\child\\foo",
"name" : "The Foo"
},
{
"path" : "..\\..\\some\\unrelated\\bar"
},
{
"path" : "C:\\a\\full\\path\\baz"
},
{
"path" : "${env.ANY_ENV_VARIABLE}\\foobar"
}
]
}

Cada valor "path" pode ser qualquer caminho relativo ou caminho com raiz. Caminhos
com raiz devem estar na mesma letra da unidade. Variáveis de ambiente podem ser
usadas com a sintaxe ${env.ANY_ENV_VARIABLE} . A propriedade "name" pode ser usada
para criar um alias visual para a pasta no Gerenciador de Soluções.

Para abrir o código de um repositório GitHub clonado


O exemplo a seguir mostra como clonar um repositório GitHub e, em seguida, abrir seu
código no Visual Studio. Para seguir este procedimento, você deve ter uma conta do
GitHub e o Git para Windows instalado no sistema. Consulte Criar uma conta do GitHub
para usar com o Visual Studio e o Git para Windows para obter mais informações.

1. Acesse o repositório que deseja clonar no GitHub.

2. Escolha o botão Clonar ou Baixar e, em seguida, selecione o botão Copiar para


Área de Transferência no menu suspenso para copiar a URL segura do repositório
do GitHub.

Usar o Git no Visual Studio

A partir do Visual Studio 2019 versão 16.8, apresentamos uma nova interface git
simplificada que você pode usar para interagir com seus arquivos no GitHub. Para saber
mais, visite os documentos de controle de versão do Visual Studio.

Usar o Team Explorer no Visual Studio


Ainda é possível usar o Team Explorer no Visual Studio 2022 e no Visual Studio 2019
versão 16.8 e versão posterior. No entanto, talvez seja mais fácil usar a nova experiência
do Git. Para obter mais informações, consulte Como o Visual Studio facilita o controle
de versão com o Git.
1. No Visual Studio, escolha a guia Team Explorer para abrir o Team Explorer. Se
você não vir a guia, abra-a em Exibir>Team Explorer.

2. No Team Explorer, na seção Repositórios Git Locais, escolha o comando Clonar e,


em seguida, cole a URL da página do GitHub na caixa de texto.

3. Escolha o botão Clonar para clonar os arquivos do projeto para um repositório Git
local. Dependendo do tamanho do repositório, esse processo poderá levar vários
minutos.

4. Depois que o repositório for clonado para o sistema, no Team Explorer, escolha o
comando Abrir no menu de contexto (acesso com clique com o botão direito do
mouse) do repositório recém-clonado.

5. Escolha o comando Mostrar Modo de Exibição da Pasta para exibir os arquivos no


Gerenciador de Soluções.
Agora é possível procurar pastas e arquivos no repositório clonado, além de exibir
e pesquisar o código no editor de códigos do Visual Studio, completo com
colorização de sintaxe e outros recursos.

Executar e depurar seu código


É possível depurar o código no Visual Studio sem um projeto ou uma solução! Para
depurar algumas linguagens, talvez seja necessário especificar um arquivo de
inicialização válido na base de código, como um script, executável ou projeto. A caixa
de listagem suspensa ao lado do botão Iniciar na barra de ferramentas lista todos os
itens de inicialização detectados pelo Visual Studio, bem como os itens indicados
especificamente por você. O Visual Studio executa esse código primeiro ao depurar o
código.

A configuração de seu código para execução no Visual Studio difere dependendo do


tipo de código e das ferramentas de compilação.

Bases de código que usam MSBuild


Bases de código com base em MSBuild podem ter várias configurações de build que
aparecem na lista suspensa do botão Iniciar. Selecione o arquivo que você quer usar
como o item de inicialização e, depois, escolha o botão Iniciar para começar a
depuração.

7 Observação
Para as bases de código de C# e Visual Basic, você deve ter a carga de trabalho
Desenvolvimento para desktop com o .NET. Para as bases de código de C++, você
deve ter a carga de trabalho Desenvolvimento para desktop com o C++ instalada.

As bases de código que usam ferramentas de compilação


personalizadas
Se a base de código usar ferramentas de compilação personalizadas, você deverá
instruir o Visual Studio como compilar seu código usando tarefas de build definidas em
um arquivo .json. Para saber mais, confira Personalizar tarefas de compilação e
depuração.

Bases de código que contém código Python ou JavaScript


Se a sua base de código contiver código Python ou JavaScript, não será necessário
configurar arquivos .json, mas você precisa instalar a carga de trabalho correspondente.
Você também precisa configurar o script de inicialização:

1. Instale a carga de trabalho Desenvolvimento em Node.js ou Desenvolvimento


em Python escolhendo Ferramentas>Obter Ferramentas e Recursos ou
fechando o Visual Studio e executando o Instalador do Visual Studio.

2. No Gerenciador de Soluções, no menu de contexto ou de atalho de um arquivo


JavaScript, escolha o comando Definir como Item de Inicialização.

3. Escolha o botão Iniciar para começar a depuração.

As bases de código que contêm o código C++


Para saber mais sobre como abrir o código C++ sem soluções ou projetos no Visual
Studio, confira Projetos de pasta aberta para C++.
Bases de código que contém um projeto do Visual Studio
Se sua pasta de códigos contiver um projeto do Visual Studio, você poderá designar o
projeto como o item de inicialização.

O texto do botão Iniciar muda para refletir que o projeto é o item de inicialização.

Confira também
Personalizar as tarefas de depuração e build
Projetos Open Folder para C++
Projetos CMake em C++
Escrevendo código no editor de código e texto
Personalizar tarefas de compilação e
depuração para desenvolvimento de
"Pasta Aberta"
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio sabe como executar várias linguagens e bases de código diferentes, mas
não sabe como executar tudo. Se você abrir uma pasta de código no Visual Studio, e o
Visual Studio souber como executar seu código, você poderá executá-lo imediatamente
sem qualquer configuração adicional.

Se a base de código usar ferramentas de compilação personalizadas não reconhecidas


pelo Visual Studio, será necessário fornecer alguns detalhes de configuração para
executar e depurar o código no Visual Studio. Instrua o Visual Studio sobre como
compilar seu código definindo tarefas de compilação. Você pode criar uma ou mais
tarefas de compilação para especificar todos os itens que uma linguagem precisa para
compilar e executar seu código. Você também pode criar tarefas arbitrárias que podem
fazer quase tudo o que você deseja. Por exemplo, é possível criar uma tarefa para listar
o conteúdo de uma pasta ou renomear um arquivo.

Personalizar sua base de código sem projeto usando os seguintes arquivos .json:

Nome do Finalidade
arquivo

tasks.vs.json Especifique os comandos de compilação personalizados e as opções do


compilador, além de tarefas arbitrárias (sem relação com a compilação).
Acessado por meio do item Configurar Tarefas no menu do clique com o botão
direito no Gerenciador de Soluções.

launch.vs.json Especifica argumentos de linha de comando para depuração.


Acessado por meio do item Configurações de Depuração e Inicialização no
menu do clique com o botão direito no Gerenciador de Soluções.

Esses arquivos .json estão localizados em uma pasta oculta chamada .vs na pasta raiz de
sua base de código. Os arquivos tasks.vs.json e launch.vs.json são criados pelo Visual
Studio conforme a necessidade quando você escolhe Configurar Tarefas ou
Configurações de Depuração e de Inicialização em um arquivo ou pasta no
Gerenciador de Soluções. Esses arquivos .json ficam ocultos porque a maioria dos
usuários geralmente não deseja inclui-los no controle do código-fonte. No entanto, se
você quiser verificar no controle do código-fonte, arraste os arquivos para a raiz da base
de código usando o sistema de arquivos, em que eles ficam visíveis no Gerenciador de
Soluções e para o controle do código-fonte.

 Dica

Para exibir arquivos ocultos no Visual Studio, escolha o botão Mostrar Todos os
Arquivos na barra de ferramentas do Gerenciador de Soluções.

Definir tarefas com tasks.vs.json


Você pode automatizar os scripts de compilação, ou quaisquer outras operações
externas nos arquivos existentes em seu workspace atual, executando-os como tarefas
diretamente no IDE. Você pode configurar uma nova tarefa clicando com o botão direito
em um arquivo ou pasta e selecionando Configurar Tarefas.

Isso cria (ou abre) o arquivo tasks.vs.json na pasta .vs. É possível definir uma tarefa de
compilação ou uma tarefa arbitrária nesse arquivo e, depois, chamá-la usando o nome
que você forneceu por meio do menu do clique com o botão direito no Gerenciador de
Soluções.
As tarefas personalizadas podem ser adicionadas a arquivos individuais ou a todos os
arquivos de um tipo específico. Por exemplo, os arquivos do pacote NuGet podem ser
configurados para terem uma tarefa “Restaurar Pacotes” ou todos os arquivos de
origem podem ser configurados para terem uma tarefa de análise estática, como um
linter para todos os arquivos .js.

Definir tarefas de compilação personalizadas


Se a sua base de código usar ferramentas de compilação personalizadas não
reconhecidas pelo Visual Studio, não será possível executar e depurar o código no
Visual Studio antes de concluir algumas etapas de configuração. O Visual Studio fornece
tarefas de compilação, nas quais você pode informar ao Visual Studio como compilar,
recompilar e limpar seu código. O arquivo de tarefa de build tasks.vs.json associa o loop
de desenvolvimento interno do Visual Studio às ferramentas de build personalizadas
usadas pela base de código.

Considere uma base de código composta por um único arquivo em C# chamado


hello.cs. O makefile de uma base de código como essa pode ter esta aparência:

makefile

build: directory hello.exe

hello.exe: hello.cs
csc -debug hello.cs /out:bin\hello.exe

clean:
del bin\hello.exe bin\hello.pdb

rebuild: clean build

directory: bin

bin:
md bin

Para um makefile que contém destinos de build, limpeza e recompilação, você pode
definir o seguinte arquivo tasks.vs.json. Ele contém três tarefas de compilação para
compilar, recompilar e limpar a base de código, usando NMAKE como a ferramenta de
compilação.

JSON

{
"version": "0.2.1",
"outDir": "\"${workspaceRoot}\\bin\"",
"tasks": [
{
"taskName": "makefile-build",
"appliesTo": "makefile",
"type": "launch",
"contextType": "build",
"command": "nmake",
"args": [ "build" ],
"envVars": {
"VSCMD_START_DIR": "\"${workspaceRoot}\""
}
},
{
"taskName": "makefile-clean",
"appliesTo": "makefile",
"type": "launch",
"contextType": "clean",
"command": "nmake",
"args": [ "clean" ],
"envVars": {
"VSCMD_START_DIR": "\"${workspaceRoot}\""
}
},
{
"taskName": "makefile-rebuild",
"appliesTo": "makefile",
"type": "launch",
"contextType": "rebuild",
"command": "nmake",
"args": [ "rebuild" ],
"envVars": {
"VSCMD_START_DIR": "\"${workspaceRoot}\""
}
}
]
}

Depois de definir as tarefas de compilação em tasks.vs.json, ocorre a adição de outros


itens do menu do clique com o botão direito (menu de contexto) aos arquivos
correspondentes no Gerenciador de Soluções. Neste exemplo, as opções "criar",
"recriar" e "limpar" são adicionadas ao menu de contexto de quaisquer arquivos
makefile.
7 Observação

Os comandos são exibidos no menu de contexto sob o comando Configurar


Tarefas devido às configurações contextType . "compilar", "recompilar" e "limpar"
são comandos de compilação, portanto, eles aparecem na seção de compilação no
meio do menu de contexto.

Quando você seleciona uma dessas opções, a tarefa é executada. A saída é exibida na
janela Saída e os erros de compilação são exibidos na Lista de Erros.

Definir tarefas arbitrárias


Você pode definir tarefas arbitrárias no arquivo tasks.vs.json, a fim de fazer quase tudo o
que você quiser. Por exemplo, você pode definir uma tarefa para exibir o nome do
arquivo selecionado atualmente na janela Saída, ou para listar os arquivos em um
diretório especificado.

A exemplo a seguir mostra um arquivo tasks.vs.json que define uma única tarefa.
Quando chamada, a tarefa exibe o nome do arquivo .js selecionado atualmente.

JSON

{
"version": "0.2.1",
"tasks": [
{
"taskName": "Echo filename",
"appliesTo": "*.js",
"type": "default",
"command": "${env.COMSPEC}",
"args": [ "echo ${file}" ]
}
]
}

taskName especifica o nome que aparece no menu do clique com o botão direito.
appliesTo especifica em quais arquivos o comando pode ser executado.

A propriedade command especifica o comando a ser invocado. Neste exemplo, a


variável de ambiente COMSPEC é usada para identificar o interpretador de linha de
comando, normalmente cmd.exe.
A propriedade args especifica os argumentos a serem passados para o comando
invocado.
A macro ${file} recupera o arquivo selecionado no Gerenciador de Soluções.

Depois de salvar tasks.vs.json, clique com o botão direito em qualquer arquivo .js na
pasta e escolha Ecoar nome de arquivo. O nome do arquivo é exibido na janela Saída.

7 Observação

Se a sua base de código não contiver um arquivo tasks.vs.json, você poderá criar
um escolhendo Configurar Tarefas no menu de atalho ou de contexto de um
arquivo no Gerenciador de Soluções.

O exemplo a seguir define uma tarefa que lista os arquivos e subpastas do diretório bin.

JSON

{
"version": "0.2.1",
"outDir": "\"${workspaceRoot}\\bin\"",
"tasks": [
{
"taskName": "List Outputs",
"appliesTo": "*",
"type": "default",
"command": "${env.COMSPEC}",
"args": [ "dir ${outDir}" ]
}
]
}
${outDir} é uma macro personalizada definida primeiro antes do bloco tasks . Em

seguida, ela é chamada na propriedade args .

Essa tarefa se aplica a todos os arquivos. Quando você abre o menu de contexto em
qualquer arquivo no Gerenciador de Soluções, o nome da tarefa Listar Saídas aparece
na parte inferior do menu. Quando você escolhe Listar Saídas, o conteúdo do diretório
bin é listado na janela Saída no Visual Studio.

Escopo das configurações


Vários arquivos tasks.vs.json podem existir na raiz e em subdiretórios de uma base de
código. Esse design permite que você tenha um comportamento diferente em
subdiretórios diferentes da base de código. O Visual Studio agrega ou substitui as
configurações em toda a base de código, priorizando arquivos na seguinte ordem:

Arquivos de configuração no diretório .vs da pasta raiz.


O diretório no qual uma configuração está sendo calculada.
Diretório pai do diretório atual, até o diretório raiz.
Arquivos de configuração no diretório raiz.
Essas regras de agregação se aplicam a tasks.vs.json. Para saber mais sobre como as
configurações em outro arquivo são agregadas, veja a seção correspondente desse
arquivo neste artigo.

Propriedades para tasks.vs.json


Esta seção descreve algumas das propriedades que você pode especificar em
tasks.vs.json.

appliesTo
Você pode criar tarefas para qualquer arquivo ou pasta especificando seu nome no
campo appliesTo , por exemplo "appliesTo": "hello.js" . As máscaras de arquivo a
seguir podem ser usadas como valores:

Máscara de Descrição
arquivo

"*" a tarefa está disponível para todos os arquivos e pastas no workspace

"*/" a tarefa está disponível para todas as pastas no workspace

"*.js" a tarefa está disponível para todos os arquivos com a extensão .js no
workspace

"/*.js" a tarefa está disponível para todos os arquivos com a extensão .js na raiz do
workspace

"src/*/" a tarefa está disponível para todas as subpastas da pasta src

"makefile" a tarefa está disponível para todos os arquivos makefile no workspace

"/makefile" a tarefa está disponível apenas para o makefile na raiz do workspace

Macros para tasks.vs.json

Macro Descrição

${env. Especifica qualquer variável de ambiente (por exemplo, ${env.PATH},


<VARIABLE>} ${env.COMSPEC} e assim por diante) que esteja definida para o Prompt de
Comando do Desenvolvedor. Para mais informações, confira o Prompt de
Comando do Desenvolvedor e o PowerShell do Desenvolvedor.

${workspaceRoot} O caminho completo para a pasta do workspace (por exemplo,


C:\sources\hello)
Macro Descrição

${file} O caminho completo do arquivo ou pasta selecionado para execução dessa


tarefa (por exemplo, C:\sources\hello\src\hello.js)

${relativeFile} O caminho relativo até o arquivo ou pasta (por exemplo, src\hello.js)

${fileBasename} O nome do arquivo sem o caminho ou extensão (por exemplo, hello)

${fileDirname} O caminho completo até o arquivo, exceto o nome do arquivo (por exemplo,
C:\sources\hello\src)

${fileExtname} A extensão do arquivo selecionado (por exemplo, .js)

Configurar a depuração com launch.vs.json


Para configurar projetos do CMake para depuração, confira Configurar sessões de
depuração do CMake.

1. Para configurar sua base de código para depuração, no Gerenciador de Soluções


escolha o item de menu Configurações de Depuração e de Inicialização no menu
de contexto ou de atalho do seu arquivo executável.

2. Na caixa de diálogo Selecionar um Depurador, escolha uma opção e, em seguida,


escolha o botão Selecionar.
Se o arquivo launch.vs.json ainda não existir, ele será criado.

JSON

{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "default",
"project": "bin\\hello.exe",
"name": "hello.exe"
}
]
}

3. Em seguida, clique com o botão direito do mouse no Gerenciador de Soluções e


escolha Definir como Item de Inicialização.

O executável é definido como o item de inicialização para a sua base de código, e


o título do botão Iniciar da depuração é alterado para refletir o nome do
executável.
Quando você escolhe F5, o depurador é iniciado, e é interrompido em qualquer
ponto de interrupção já criado. Todas as janelas conhecidas do depurador ficam
disponíveis e funcionais.

) Importante

Para obter detalhes adicionais sobre tarefas personalizadas de build e


depuração em projetos de pasta aberta do C++, confira Suporte à pasta
aberta para sistemas de build C++ no Visual Studio.

Especificar argumentos para depuração


Você pode especificar argumentos de linha de comando para passar para depuração no
arquivo launch.vs.json. Adicione os argumentos à matriz args , conforme mostra o
exemplo a seguir:

JSON

{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "default",
"project": "bin\\hello.exe",
"name": "hello.exe"
},
{
"type": "default",
"project": "bin\\hello.exe",
"name": "hello.exe a1",
"args": [ "a1" ]
}
]
}

Quando você salva esse arquivo, o nome da nova configuração aparece na lista
suspensa de destino de depuração, e você pode selecioná-lo para iniciar o depurador.
Você pode criar quantas configurações de depuração quiser.
7 Observação

A propriedade da matriz configurations em launch.vs.json é lida em dois locais de


arquivo, o diretório raiz da base de código e o diretório .vs. Se houver um conflito,
a prioridade será dada ao valor em .vs\launch.vs.json.

Arquivos de configurações adicionais


Além dos três arquivos .json descritos neste tópico, o Visual Studio também lê
configurações de alguns arquivos adicionais, se eles existirem em sua base de código.

.vscode\settings.json
O Visual Studio lê configurações limitadas de um arquivo chamado settings.json, se
estiver em um diretório chamado .vscode. Essa funcionalidade é fornecida para bases de
código desenvolvidas anteriormente no Visual Studio Code. Atualmente, a única
configuração lida de .vscode\settings.json é files.exclude , que filtra os arquivos
visualmente no Gerenciador de Soluções e algumas ferramentas de pesquisa.

Você pode ter quantos arquivos .vscode\settings.json quiser em sua base de código. As
configurações lidas neste arquivo são aplicadas ao diretório pai do .vscode e em todos
os subdiretórios.
.gitignore
Os arquivos .gitignore são usados para informar ao Git quais arquivos ignorar; ou seja,
de quais arquivos e diretórios você não quer fazer check-in. Os arquivos .gitignore são
normalmente incluídos como parte de uma base de código, para que as configurações
possam ser compartilhadas com todos os desenvolvedores da base de código. O Visual
Studio lê padrões em arquivos .gitignore para filtrar itens visualmente e de algumas
ferramentas de pesquisa.

As configurações lidas no arquivo .gitignore são aplicadas ao seu diretório pai e a todos
os subdiretórios.

Confira também
Desenvolver o código sem projetos nem soluções
Projetos Open Folder para C++
Projetos do CMake para C++
Referência de NMAKE
Recursos do editor de código
Recursos do editor de código
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O editor do Visual Studio fornece muitos recursos que facilitam escrever e gerenciar seu
código e texto. Você pode expandir e recolher blocos de código diferentes usando a
estrutura de tópicos. Você pode aprender mais sobre o código através do IntelliSense,
do Pesquisador de Objetos e da Hierarquia de Chamada. Você pode localizar o código
usando recursos como Navegar Para, Ir para Definição e Localizar Todas as
Referências. Você pode inserir blocos de código com snippets de código e pode gerar
código usando recursos como o Gerar do uso. Se você nunca usou o editor do Visual
Studio antes, consulte Saiba como usar o editor de código.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Editor de código-fonte (Visual Studio para Mac).

Você pode exibir seu código de muitas maneiras diferentes. Por padrão, o Gerenciador
de Soluções mostra seu código organizado por arquivos. Você pode selecionar a guia
Modo de Exibição de Classe na parte inferior da janela para exibir seu código
organizado por classes.

Você pode pesquisar e substituir texto em um ou vários arquivos. Para obter mais
informações, consulte Localizar e substituir texto. É possível usar expressões regulares
para localizar e substituir texto. Para obter mais informações, confira Usar expressões
regulares no Visual Studio.

As diferentes linguagens do Visual Studio oferecem conjuntos de recursos diferentes e,


em alguns casos, os recursos se comportam de forma diferente nas diferentes
linguagens. Muitas dessas diferenças são especificadas nas descrições dos recursos, mas
para obter mais informações, confira as seções sobre linguagens específicas do Visual
Studio.

Recursos do editor
Recurso Descrição

Coloração de Alguns elementos de sintaxe dos arquivos de código e de marcação são


sintaxe coloridos de maneiras diferentes para diferenciá-los. Por exemplo, palavras-
Recurso chave (como using no C# e Imports no Visual Basic) são de uma cor, mas
Descrição
tipos (como Console e Uri ) são de outra cor. Outros elementos de sintaxe
também são coloridos, como comentários e literais de cadeia de caracteres. O
C++ usa cores para fazer diferenciação entre tipos, enumerações e macros,
entre outros tokens.

Você pode ver a cor padrão de cada tipo e pode alterar a cor de qualquer
elemento de sintaxe específico na caixa de diálogo Fontes e Cores, Ambiente,
Opções, que pode ser aberta no menu Ferramentas.

Marcas de Erro e Enquanto adiciona código e compila sua solução, você pode ver:
Aviso (a)sublinhados ondulados de cores diferentes (conhecidos como rabiscos) ou
(b) lâmpadas que aparecem em seu código. Rabiscos vermelhos indicam
erros de sintaxe, azul indica erros de compilador, verde indica avisos e roxo
indica outros tipos de erros. As Ações Rápidas sugerem correções para
problemas e facilitam a aplicação da correção.

Você pode ver a cor padrão de cada rabisco de erro e de aviso na caixa de
diálogo Ferramentas>Opções>Ambiente>Fontes e Cores. Procure por Erro
de Sintaxe, Erro do Compilador, Aviso e Outro Erro.

Correspondência Quando o ponto de inserção é colocado em uma chave de abertura em um


de chave arquivo de código, essa chave de abertura e a chave de fechamento são
realçadas. Esse recurso fornece comentários imediatos sobre chaves no local
incorreto ou ausentes. Você pode ativar ou desativar a correspondência de
chaves com a configuração Realce Automático de Delimitadores
(Ferramentas>Opções>Editor de Texto). Você pode alterar a cor do realce na
configuração Fontes e Cores (Ferramentas>Opções>Ambiente). Procure
Correspondência de Chaves (Realce) ou Correspondência de Chaves
(Retângulo).

Visualizador de Linhas pontilhadas conectam chaves correspondentes nos arquivos de


Estrutura código, o que facilita ver a abertura e o fechamento de pares de chave. Esse
recurso pode ajudá-lo a encontrar código em sua base de código mais
rapidamente. Você pode ativar ou desativar essas linhas em Mostrar
diretrizes de estrutura na seção Exibição da página
Ferramentas>Opções>Editor de Texto>Geral.

Números de Os números de linha podem ser exibidos na margem esquerda da janela de


Linha código. Eles não são exibidos por padrão. Você pode ativar esta opção nas
configurações do Todas as Linguagens do Editor de Texto(
Ferramentas>Opções>Editor de Texto>Todos as Linguagens). Você pode
exibir números de linha para linguagens de programação individuais,
alterando as configurações para essas linguagens
(Ferramentas>Opções>Editor de Texto><linguagem>). Para imprimir os
números de linha é necessário selecionar Incluir números de linha na caixa
de diálogo Imprimir.

Controle de A cor da margem esquerda permite que você mantenha o controle das
Alterações alterações feitas em um arquivo. As alterações feitas desde que o arquivo foi
Recurso Descrição

aberto, mas não salvo, são indicadas por uma barra amarela na margem
esquerda (conhecida como margem de seleção). Depois de salvar as
alterações (mas antes de fechar o arquivo), a barra ficará verde. Se você
desfizer uma alteração depois de salvar o arquivo, a barra ficará laranja. Para
desativar e ativar esse recurso, altere a opção Controlar Alterações nas
configurações Editor de Texto (Ferramentas>Opções>Editor de Texto).

Seleção de É possível selecionar texto no modo padrão de fluxo contínuo ou no modo de


código e texto caixa, no qual você seleciona uma parte retangular do texto em vez de um
conjunto de linhas. Para fazer uma seleção no modo de caixa, pressione a
tecla Alt enquanto arrasta o mouse sobre a seleção (ou pressione Alt+Shift+
<tecla de direção>>). A seleção inclui todos os caracteres dentro do
retângulo definido pelo primeiro caractere e o último caractere na seleção.
Tudo que é digitado ou colado na área selecionada é inserido no mesmo
ponto em cada linha.

Zoom Você pode ampliar ou reduzir em qualquer janela de código pressionando a


tecla Ctrl e, mantendo-a pressionada e mover a roda de rolagem do mouse
(ou Ctrl+Shift+. para aumentar e Ctrl+Shift+, para diminuir). Você também
pode usar a caixa Zoom no canto inferior esquerdo da janela de código para
definir um percentual específico de zoom. O recurso de zoom não funciona
em janelas de ferramentas.

Espaço virtual Por padrão, as linhas nos editores do Visual Studio terminam após o último
caractere, de forma que a tecla Seta para a Direita, ao final de uma linha,
move o cursor para o início da próxima linha. Em alguns outros editores, uma
linha não termina após o último caractere e você pode posicionar o cursor
em qualquer lugar da linha. Você pode habilitar o espaço virtual no editor nas
configurações Ferramentas>Opções>Editor de Texto>Todas as Linguagens.
Você pode habilitar o Espaço Virtual ou o Quebrar Linha, mas não ambos.

Imprimindo Você pode usar as opções da caixa de diálogo Imprimir para incluir números
de linha ou ocultar regiões de código recolhidas ao imprimir um arquivo. Na
caixa de diálogo Configuração de Página também é possível imprimir o
caminho completo e o nome do arquivo, escolhendo Cabeçalho de Página.

Você pode definir opções de impressão a cores na caixa de diálogo


Ferramentas>Opções>Ambiente>Fontes e Cores. Escolha Impressora na
lista Mostrar configurações de para personalizar a impressão a cores. Você
pode especificar cores para imprimir um arquivo diferentes das cores para
edição de um arquivo.

Desfazer global e O comandos Desfazer Última Ação Global e Refazer Última Ação Global no
Refazer menu Editar desfazem ou refazem ações globais que afetam vários arquivos.
As ações globais incluem renomeação de uma classe ou namespace, executar
uma operação de localização e substituição em uma solução, refatoração de
um banco de dados ou qualquer outra ação que altera vários arquivos. Você
pode aplicar os comandos desfazer e refazer global para ações na sessão
Recurso Descrição

atual do Visual Studio, mesmo depois de fechar a solução na qual a ação foi
aplicada.

Recursos de edição avançada


Você pode encontrar muitos recursos avançados no menu Editar>Avançado na barra de
ferramentas. Nem todos esses recursos estão disponíveis para todos os tipos de
arquivos de código.

Recurso Descrição

Formatar Define o recuo adequado das linhas de código e move as chaves para separar
Documento linhas no documento.

Formatar Define o recuo adequado das linhas de código e move as chaves para separar
Seleção linhas na seleção.

Tabular linhas Troca espaços à esquerda por tabulações quando for apropriado.
selecionadas

Cancelar Troca tabulações à esquerda por espaços. Se você desejar converter todos os
tabulação das espaços em seu arquivo para tabulações (ou todas as tabulações para
linhas espaços), você poderá usar os comandos Edit.ConvertSpacesToTabs e
selecionadas Edit.ConvertTabsToSpaces . Esses comandos não aparecem nos menus do
Visual Studio, mas você pode chamá-los na janela Acesso Rápido ou na janela
de comando.

Colocar em Altera todos os caracteres da seleção para letras maiúsculas ou, se não houver
Maiúsculas seleção, altera o caractere no ponto de inserção para letras maiúsculas. Atalho:
Ctrl+Shift+U.

Colocar em Altera todos os caracteres da seleção para minúsculos ou, se não houver
Minúsculas seleção, altera o caractere no ponto de inserção para minúsculo. Atalho:
Ctrl+U.

Mover linhas Move a linha selecionada uma linha para cima. Atalho: Alt+Seta para Cima.
selecionadas
para cima

Mover Linhas Move a linha selecionada uma linha para baixo. Atalho: Alt+Seta para Baixo.
Selecionadas
para Baixo

Excluir Espaço Exclui tabulações ou espaços ao final da linha atual. Atalho: Ctrl+K, Ctrl+\
em Branco
Horizontal
Recurso Descrição

Exibir Espaço em Exibe espaços como pontos elevados e tabulações como setas. O final de um
Branco arquivo é exibido como um glifo retangular. Se Ferramentas>Opções>Editor
de Texto>Todas as Linguagens>Quebra automática de linha>Mostrar glifos
visíveis para quebra automática de linha estiver selecionado, esse glifo
também será exibido.

Quebra Faz com que todas as linhas em um documento sejam visíveis na janela de
automática de código. Você pode ativar e desativar a quebra automática de linha nas
linha configurações Todas as Linguagens do Editor de Texto
(Ferramentas>Opções>Editor de Texto>Todas as Linguagens).

Comentário de Adiciona caracteres de comentários na seleção ou na linha atual. Atalho:


seleção Ctrl+K, Ctrl+C

Remover Remove caracteres de comentários da seleção ou da linha atual. Atalho:


comentário de Ctrl+K, Ctrl+U
seleção

Aumentar Recuo Adiciona uma tabulação (ou os espaços equivalentes) nas linhas selecionadas
de Linha ou na linha atual.

Diminuir Recuo Remove uma tabulação (ou os espaços equivalentes) das linhas selecionadas
de Linha ou da linha atual.

Selecionar Em um documento que contém marcas (por exemplo, XML ou HTML),


Marca seleciona a marca.

Selecionar Em um documento que contém marcas (por exemplo, XML ou HTML),


Conteúdo da seleciona o conteúdo.
Marca

Navegar e localizar código


Você pode se mover pelo editor de códigos de várias maneiras diferentes, incluindo
navegar para trás e para frente até pontos de inserção anteriores, exibir a definição de
um tipo ou membro e saltar até um método específico, usando a barra de navegação.
Para obter mais informações, confira Navegar pelo código.

Você também pode usar indicadores para marcar linhas em seu código para que possa
retornar rapidamente para um local específico ou alternar entre locais. Para saber mais,
confira Código do indicador.

Localizar referências na base de código


Para encontrar o local em que elementos de código específicos são referenciados na
base de código, use o comando Localizar Todas as Referências ou pressione Shift+F12.
Além disso, quando você seleciona um tipo ou membro, o recurso de destaque de
referência destaca automaticamente todas as referências a esse tipo ou membro. Para
obter mais informações, confira Localizar referências no código.

Gerar, corrigir ou refatorar código


O Visual Studio pode ajudá-lo a gerar, corrigir e refatorar o código de várias maneiras.

Você pode usar snippets de código para inserir um modelo, como um bloco switch
ou uma declaração enum.

Você pode usar as Ações Rápidas para gerar código como classes e propriedades
ou introduzir uma variável local. Você também pode usar as Ações Rápidas para
melhorar o código, por exemplo, para remover conversões desnecessárias e
variáveis não utilizadas ou adicionar uma verificação de nulos antes de acessar as
variáveis.

Você pode refatorar o código para renomear uma variável, reordenar parâmetros
de método ou sincronizar um tipo com seu nome de arquivo, para citar alguns.

Copiar e colar código


O Visual Studio oferece algumas maneiras de economizar tempo ao copiar e colar
código, conforme descrito a seguir:

Copiar e cortar recuo: a partir da versão 17.7, o Visual Studio corrige


automaticamente o recuo do código quando você copia o código do Visual Studio
e o cola em outro aplicativo.

Colar JSON ou XML como classes. Copie qualquer fragmento de texto JSON ou
XML para a área de transferência e cole-o como classes .NET fortemente tipadas
em qualquer arquivo de código C# ou Visual Basic. Para fazer isso, use
Editar>Colar Especial>Colar JSON como Classes (ou Colar XML como Classes).

Personalizar o editor
É possível compartilhar configurações do Visual Studio com outro desenvolvedor, fazer
com que suas configurações estejam em conformidade com um padrão ou retornar às
configurações padrão do Visual Studio usando o comando Assistente de Importação e
Exportação de Configurações no menu Ferramentas. No Assistente de Importação e
Exportação de Configurações, é possível alterar configurações gerais selecionadas ou
idioma e configurações específicas do projeto.

Para definir novas teclas de atalho ou redefinir as teclas de atalho existentes, vá até
Ferramentas>Opções>Ambiente>Teclado. Para saber mais sobre teclas de atalho, veja
Atalhos de teclado padrão.

Para conferir opções do editor específicas ao JavaScript, confira Opções do editor de


JavaScript.

Confira também
Editor de código-fonte (Visual Studio para Mac)
Visual Studio IDE
Introdução ao C++ no Visual Studio
Introdução a C# e ASP.NET no Visual Studio
Introdução ao Python no Visual Studio
Saiba mais sobre o Verificador
Ortográfico
Artigo • 24/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Muitas das funcionalidades do Visual Studio foram projetadas para ajudar você a
escrever o código desejado, da garantia de que ele será compilado ao auxílio com o
estilo do código. Agora, com a funcionalidade Verificador Ortográfico apresentada na
versão 17.5, o Visual Studio pode até verificar se a ortografia está correta.

O Verificador Ortográfico está disponível para qualquer arquivo C#, C++ ou Markdown.
Quando o Verificador Ortográfico está habilitado, o Visual Studio marca as palavras
detectadas como incorretas. O Visual Studio também sugere ortografias alternativas e
ajuda a corrigi-las. A funcionalidade até faz uma renomeação contextual quando esses
erros ortográficos são identificadores, de modo que o código ainda seja compilado.

Ative ou desative o verificador ortográfico usando o botão Ativar/Desativar Verificador


Ortográfico na barra de ferramentas principal ou selecionando o comando
Editar>Avançado>Ativar/Desativar Verificador Ortográfico na barra de menus.

Como usá-lo?
Quando o cursor está sobre um erro de ortografia, as Ações Rápidas fornecem soluções
para corrigir os erros de ortografia. Abra as Ações Rápidas usando os atalhos de teclado
CTRL+. ou ALT+ENTER. Quando o menu de contexto é exibido, o Visual Studio mostra
três opções para lidar com um problema de ortografia.

Se um dos dicionários fornecer sugestões ortográficas, o Visual Studio as exibirá. Se


vários dicionários fornecerem sugestões, o Visual Studio agrupará as sugestões por
dicionário. Nas cadeias de caracteres e nos comentários, a escolha de uma dessas
sugestões resulta em uma substituição individual in-loco. Nos identificadores em um
documento C++ ou C#, se você aceitar uma sugestão, isso resultará em uma opção
Refatorar/Renomear que atualiza todas as instâncias do identificador a fim de garantir
que o código seja compilado.

Você também pode optar por ignorar o problema ortográfico. Ao optar por ignorar o
problema, o Visual Studio cria um arquivo exclusion.dic no diretório AppData no
computador local. Depois que você optar por ignorar uma palavra, o verificador
ortográfico vai ignorá-la em todas as instâncias do Visual Studio.

Como ele funciona?


Como o C#, o C++ e o Markdown usam o inglês como idioma para as palavras-chave, o
Visual Studio normalmente usa o dicionário "Inglês (Estados Unidos)" ou "en-us" para a
verificação ortográfica. O Visual Studio verifica a instância do Windows para o idioma de
exibição usado e, se ele não for "en-us", ele também usará esse dicionário.

7 Observação

C# e C++ também têm índices adicionais para palavras-chave nessas linguagens, o


que impede que palavras como "namespace" ou "alloc" sejam sinalizadas como
incorretas.

Os comentários dos usuários pioneiros dessa funcionalidade nos informaram que os


desenvolvedores só queriam saber sobre os erros dos documentos com os quais
estavam trabalhando no momento. Em resposta a esses comentários, o verificador
ortográfico examina apenas os documentos que estão ativos no editor. Em resposta
direta a esses comentários, o verificador ortográfico verifica os documentos abertos.

A seguinte tabela mostra algumas das opções de heurística analisadas pelo Verificador
Ortográfico quando ele verifica um documento de código:

O que há O que o Visual Por quê?


no código Studio verifica

Olá Olá, olá Sempre verifique os substantivos próprios e comuns

HelloWorld Olá, olá, Mundo, As maiúsculas no meio de frases são usadas para marcar
mundo limites de palavras

Olá.Mundo Olá, olá, Mundo, A pontuação é usada como um limite de palavra


mundo

_Olá123 Olá, olá Os números à esquerda ou à direita ou os sinais de


pontuação são removidos

Olá2Mundo Olá, olá, Mundo, Os números no meio de frases, como sinais de pontuação,
mundo são usados como um limite de palavra

btnMundo Mundo, mundo Os fragmentos de três caracteres ou menos são ignorados

helloworld Olámundo, Nenhum indicador para identificar os limites de palavras


olámundo

Se o Visual Studio encontrar uma correspondência para o token em qualquer um dos


dicionários que está em uso, o token será considerado aceitável e a verificação
continuará. Caso contrário, o token será considerado incorreto e o Visual Studio o
sinaliza como um erro de ortografia.

Como personalizar o Verificador Ortográfico


Você pode personalizar o verificador ortográfico para que ele seja otimizado para um
ambiente colaborativo. Dessa forma, o Visual Studio usa um arquivo EditorConfig para a
configuração, de modo que você possa controlar o comportamento do verificador
ortográfico em um repositório.
Ao configurar um arquivo EditorConfig, você pode estabelecer os padrões de
codificação que espera que todos sigam, o que permite manter uma consistência de
codificação que pode ser difícil por meio de outros métodos.

Estes são alguns exemplos e cenários de caso de uso das opções que você pode
configurar em um arquivo EditorConfig:

Listar os idiomas para uso do Visual Studio. Neste exemplo, o Visual Studio usará
apenas os dicionários "en-us" e "fr-fr" ao verificar se há problemas ortográficos.

spelling_languages = _language_[,_language_]

(Example: = en-us,fr-fr)

7 Observação

Instale o pacote de idiomas de qualquer idioma que esteja em uso a fim de


impedir que o Visual Studio sinalize palavras incorretamente como erros de
ortografia.

Controlar o que o Visual Studio deve verificar. Neste exemplo, o Visual Studio
verificará se há palavras incorretas nos identificadores e nos comentários, mas não
em cadeias de caracteres.

spelling_checkable_types = strings,identifiers,comments
(Example: = identifiers,comments)

Controlar a gravidade que o Visual Studio atribui aos erros ortográficos na lista de
erros. Neste exemplo, os erros de ortografia são exibidos como erros.

spelling_error_severity = error OR warning OR information OR hint


(Example: = error)

Crie seu dicionário de exclusão para especificar palavras que você considera que
estejam corretamente escritas. Neste exemplo, na primeira vez que o Verificador
Ortográfico é executado em qualquer arquivo da solução, o Visual Studio verifica
um arquivo exclusion.dic no mesmo diretório do arquivo .sln (para um projeto C#)
ou no diretório raiz (para um diretório C++). Se não houver nenhum arquivo
exclusion.dic, o Visual Studio criará um. Em seguida, sempre que o usuário optar
por ignorar uma palavra, o Visual Studio a adicionará a esse arquivo exclusion.dic.
O Visual Studio considera qualquer palavra que esteja nesse arquivo exclusion.dic
como uma palavra escrita corretamente.
spelling_exclusion_path = absolute OR relative path to exclusion dictionary

(Example: = .\exclusion.dic)

7 Observação

O Visual Studio usa o dicionário de exclusão especificado pela opção


spelling_exclusion_path em seu arquivo .editorconfig ou um arquivo

"exclusion.dic" em seu diretório %localappdata%\Microsoft\VisualStudio\


<Version> se não conseguir encontrar uma opção.

Controlar se o dicionário de exclusão específico do idioma é usado. Quando


definido como false, as palavras especificadas nos dicionários de exclusão
específicos de C++ ou C# não serão usadas. O padrão é true.

spelling_use_default_exclusion_dictionary = true OR false

(Example: = spelling_use_default_exclusion_dictionary = false)

Tratamento especial de maiúsculas e


minúsculas
Na maneira que o Visual Studio usa para verificar se há erros ortográficos no código,
existem alguns comportamentos especiais que são diferentes de um verificador
ortográfico tradicional projetado para texto escrito. Alguns desses comportamentos
incluem:

Em uma cadeia de caracteres que inclui pontuação, por exemplo, "misc.", o Visual
Studio não sugerirá uma correção porque a pontuação em um identificador pode
resultar em código que não será compilado.
As barras invertidas em uma cadeia de caracteres omitirão a verificação ortográfica
do caractere subsequente e tratarão a barra invertida e o caractere subsequente
como um delimitador de palavras. Por exemplo, na cadeia de caracteres
hello\nworld , o Visual Studio detecta a barra invertida primeiro. O Visual Studio

trata o \n como um delimitador de palavras, o que faz com que "olá" e "mundo"
sejam verificados individualmente.
A verificação ortográfica ignorará as cadeias de caracteres inteiras que contêm
URLs, como https://... ou mailto:.. .

Confira também
Como aprimorar o verificador ortográfico
O que é Rolagem Autoadesiva para
Visual Studio?
Artigo • 29/05/2023

Quando você trabalha em um arquivo de código grande ou percorre uma base de


código desconhecida, às vezes pode ser difícil identificar onde você está no código.
Com Rolagem Autoadesiva — visualizado primeiro no Visual Studio 2022 versão 17.5 —
você pode colar escopos na parte superior do editor para que eles estejam sempre em
exibição enquanto você rola pelo código.

Linguagens de programação compatíveis


Há suporte para vários formatos de código, incluindo C#, C++, XAML e JSON.

Aqui está um exemplo animado de Rolagem Autoadesiva em um arquivo C#:

Aqui está um exemplo animado de Rolagem Autoadesiva em um arquivo C++:

Ativar ou desativar a Rolagem Autoadesiva


1. Na barra de menus do Visual Studio, selecione Ferramentas>Opções>Editor de
Texto> Geral.
2. Na seção Rolagem autoadesiva, alterne a caixa de seleção Agrupar os escopos
atuais em uma região rolável da janela do editor .

Se você deseja desativar a Rolagem Autoadesiva, pode fazê-lo no editor clicando com o
botão direito do mouse na área do cabeçalho da Rolagem Autoadesiva e selecionando
Rolagem Autoadesiva.

) Importante

Se você estiver usando C# e Rolagem Autoadesiva não estiver funcionando para


você, experimente esta solução alternativa. Selecione Ferramentas>Opções>Editor
de texto>C#>Avançado. Em seguida, na seção Guias de Estrutura de Bloco,
habilite as opções a seguir.

ノ Expandir a tabela

Opção Descrição

Mostrar guias para construções no nível da Afeta namespaces, classes e inicializações


declaração de método

Mostrar guias para construções no nível do Afeta condicionais e loops


código

Como funciona a Rolagem Autoadesiva


Você pode usar a Rolagem Autoadesiva para manter escopos como namespaces,
classes, métodos, instruções de inicialização de loop e condicionais.

E você pode ir diretamente para uma linha de código clicando em sua referência no
cabeçalho da a Rolagem Autoadesiva.

Como configurar a Rolagem Autoadesiva


Você pode alterar como a Rolagem Autoadesiva funciona alterando seu escopo e o
número de linhas que incluídas nesse escopo.

Escopos internos e externos


Com base em sua preferência, você pode alterar o escopo do que a Rolagem
Autoadesiva mostra. Definida por padrão, a opção de escopo externo mostra os
escopos de nível superior que vêm da parte superior do arquivo.

Mas, às vezes, o namespace e o nome de classe correspondem ao nome do arquivo.


Quando informações como essa são óbvias, talvez você não queira abrir mão de duas
linhas de espaço vertical na parte superior do arquivo. Em seguida, você pode alterar
para a opção de escopo interno de nível inferior, que envia escopos de nível superior à
medida que você rola por um código profundamente aninhado.

Você pode configurar se os escopos externos ou internos são priorizados quando o


número definido de escopos excede o máximo. Na barra de menus do Visual Studio,
selecione Ferramentas>Opções>Editor de Texto>Rolagem Autoadesiva e alterne entre
Preferir escopos externos e Preferir escopos internos.

Próximas etapas
Para saber mais sobre a Rolagem Autoadesiva no Visual Studio, considere explorar os
seguintes recursos:

Rolagem Autoadesiva: versão prévia


Rolagem Autoadesiva: mantenha-se no contexto certo
Localizar e substituir texto no Visual
Studio
Artigo • 11/01/2024

Neste artigo, você aprenderá a localizar e substituir texto no editor do Visual Studio
usando localizar e substituir arquivo único (Ctrl+F ou Ctrl+H) ou localizar e substituir
vários arquivos (Ctrl+Shift+F ou Ctrl+Shift+H). Você também pode localizar e substituir
algumas instâncias de um padrão usando a seleção de vários cursores. Além do editor,
você também pode encontrar e substituir texto em algumas outras janelas baseadas em
texto, como as janelas Localizar Resultados, em janelas do designer como o Designer
XAML e o Designer do Windows Forms e nas janelas de ferramentas.

7 Observação

Se você estiver procurando informações sobre o Visual Studio Code, acesse os


localizar e substituir documentos no VS Code .

 Dica

Se você quiser renomear os símbolos de código, como variáveis e métodos, é


melhor refatorá-los em vez de usar o recurso Localizar e Substituir. A refatoração é
inteligente e reconhece o escopo, enquanto o recurso Localizar e Substituir
substitui cegamente todas as instâncias.

É possível definir o escopo das pesquisas para o documento atual, a solução atual ou
um conjunto personalizado de pastas. Também é possível especificar um conjunto de
extensões de nome de arquivo para pesquisas em vários arquivos. Personalize a sintaxe
de pesquisa usando expressões regulares do .NET.

 Dica

A caixa Localizar/Comando está disponível como um controle de barra de


ferramentas, mas não fica visível por padrão. Para exibir a caixa
Localizar/Comando, selecione Adicionar ou Remover Botões na barra de
ferramentas Padrão e, em seguida, selecione Localizar.

Localizar e substituir em um único arquivo


Pressione Ctrl+F como um atalho para localizar uma cadeia de caracteres no
arquivo atual.
Pressione Ctrl+H como um atalho para localizar e substituir uma cadeia de
caracteres no arquivo atual.

O controle Localizar e Substituir aparece no canto superior direito da janela do editor


de código. Ele realça imediatamente todas as ocorrências da cadeia de caracteres de
pesquisa fornecida no documento atual. Você pode navegar de uma ocorrência para
outra escolhendo o botão Localizar próximo ou o botão Localizar anterior no controle
de pesquisa.

Você pode acessar opções de substituição escolhendo o botão ao lado da caixa de texto
Localizar. Para fazer uma substituição por vez, escolha o botão Substituir próximo ao
lado da caixa de texto Substituir. Para substituir todas as correspondências, escolha o
botão Substituir tudo.

Para alterar a cor de realce das correspondências, escolha o menu Ferramentas,


selecione Opções e, em seguida, escolha Ambiente e selecione Fontes e Cores. Na lista
Mostrar configurações de, selecione Editor de Texto e, na lista Exibir itens, selecione
Localizar destaque.

Janelas de ferramentas de pesquisa


Use o controle Localizar em janelas de texto ou de código, como janelas Saída e janelas
Localizar Resultados selecionando Editar>Localizar e Substituir ou pressionando
Ctrl+F.

Uma versão do controle Localizar também está disponível em algumas janelas de


ferramentas. Por exemplo, você pode filtrar a lista de controles na janela Caixa de
Ferramentas inserindo o texto na caixa de pesquisa. Outras janelas de ferramentas que
permitem pesquisar seu conteúdo incluem o Gerenciador de Soluções, a janela
Propriedades e o Team Explorer.

Localizar e substituir em vários arquivos


O Localizar nos Arquivos permite pesquisar um conjunto de arquivos especificado. As
correspondências encontradas pelo Visual Studio estão listadas na janela Localizar
resultados no IDE. A aparência dos resultados depende das opções escolhidas na caixa
de diálogo Localizar e Substituir.

Abra a caixa de diálogo Localizar e Substituir pressionando Ctrl+Shift+F ou:

1. Na barra de menus, selecione Editar>Localizar e Substituir.


2. Selecione Localizar nos arquivos no menu suspenso.
Limite o escopo da pesquisa a:

O arquivo aberto no momento


Todos os documentos abertos
A solução inteira
O projeto atual
Conjuntos de pastas especificados
Extensões de arquivo especificadas

A ferramenta Localizar e Substituir não pesquisa diretórios com o atributo Hidden ou


System .

Para cancelar uma operação de localização, pressione Ctrl+Break.

Localizar Resultados
Quando você escolhe Localizar tudo, uma janela Localizar Resultados é aberta e lista as
correspondências da pesquisa. Selecionar um resultado na lista exibe o arquivo
associado e realça a correspondência. Se o arquivo ainda não estiver aberto para edição,
ele será aberto em uma guia de visualização no lado direito da guia. É possível usar o
controle Localizar para pesquisar na lista Localizar Resultados.

Criar conjuntos de pastas de pesquisa personalizados


Você pode definir o escopo da pesquisa escolhendo o botão Escolher Pastas de
Pesquisa (ele se parece com ... ) ao lado da caixa Examinar. Na caixa de diálogo
Escolher Pastas de Pesquisa, especifique um conjunto de pastas a ser pesquisado e
salve a especificação para reutilizá-la mais tarde.

 Dica

Se você mapeou a unidade de um computador remoto para o computador local,


especifique as pastas a serem pesquisadas no computador remoto.

Criar conjuntos de componentes personalizados


Você pode definir conjuntos de componentes como o escopo da pesquisa escolhendo o
botão Editar conjunto de componentes personalizados ao lado da caixa Examinar.
Você pode especificar componentes COM ou .NET instalados, projetos do Visual Studio
incluídos em sua solução ou qualquer assembly ou biblioteca de tipos (.dll, .tlb, .olb, .exe
ou .ocx). Para pesquisar referências, selecione a caixa Examinar referências.

Seleção de vários cursores


Use a seleção de vários cursores para fazer a mesma edição em dois ou mais locais ao
mesmo tempo. Por exemplo, você pode inserir o mesmo texto ou modificar o texto
existente em vários locais ao mesmo tempo.

No Visual Studio 2022, aperfeiçoamos a experiência de copiar e colar vários cursos.


Anteriormente, a colagem de várias linhas em vários conjuntos gera a duplicação de
toda a área de transferência em cada conjunto. Agora, colar várias linhas no mesmo
número de conjuntos insere cada linha em um respectivo conjunto.

Para usar vários sinais, pressione Ctrl+Alt+clique do mouse ou Alt+Shift+. Em seguida,


use Ctrl+Shift+tecla de direção para expandir as seleções. Em seguida, pressione
Ctrl+C para copiar o texto em várias seleções. UseAlt+Shift+clique do mouse para criar
vários conjuntos de caracteres para cada linha colar onde você quiser. Por fim, pressione
Ctrl+V para colar cada linha em seu próprio cursor.

Para selecionar vários conjuntos de cursores:

Use Alt+Shift+tecla de seta para cima (ou tecla de seta para baixo) ou
Alt+Shift+arrastar mouse para selecionar com vários conjuntos de caracteres. Se
você preferir continuar usando uma seleção de caixa com Alt+Shift+teclas de
direção e Alt+Shift+arrastar mouse quando expandir uma seleção de vários
cursores, acesse Ferramentas>Opções>Editor de texto>Avançado e selecione
Usar seleção de caixa.
Como alternativa, acesse a seleção de vários cursores na barra de menus
selecionando Editar>Vários Cursores e selecionando a ação desejada.

ノ Expandir a tabela

Atalho de teclado com Ação Comando


vários cursores

Alt+Shift+. Usar vários Edit.InsertNextMatchingCaret


cursores

Ctrl+Shift+tecla de direção Expandir seleções Edit.SizeControlUp, Edit.SizeControlDown,


Edit.SizeControlRight, Edit.SizeControlLeft

Alt+Shift+tecla de seta Selecionar vários Edit.LineUpExtendColumn,


para cima (ou seta para conjuntos de Edit.LineDownExtendColumn
baixo) cursores

Conteúdo relacionado
Usar expressões regulares no Visual Studio
Refatorar um código no Visual Studio
Seleção de bloco (Visual Studio para Mac)
Usar expressões regulares no Visual
Studio
Artigo • 11/01/2024

O Visual Studio usa expressões regulares .NET para localizar e substituir texto.

Exemplos de expressões regulares


A tabela a seguir contém alguns caracteres de expressão regular, operadores,
constructos e exemplos de padrão. Para obter uma referência mais completa, confira
Linguagem de expressão regular.

ノ Expandir a tabela

Finalidade Expression Exemplo

Encontrar a correspondência de um . a.o corresponde a "aro" em


único caractere (exceto uma quebra "around" e "abo" em "about",
de linha). Para saber mais, veja mas a não "acro" em "across"
Qualquer caractere.

Encontrar a correspondência de * a*r corresponde a “r” em “rack”,


zero ou mais ocorrências da “ar” em “ark” e “aar” em
expressão anterior (encontrar a “aardvark”
correspondência do máximo de
caracteres possíveis). Para saber
mais, confira Corresponder a zero
ou mais vezes.

Corresponder qualquer caractere .* c.*e corresponde a "cke" em


zero ou mais vezes. "racket", "comme" em
"comment" e "code" em "code"

Encontrar a correspondência de + e+d corresponde "eed" em


uma ou mais ocorrências da "feeder" e "ed" em "faded"
expressão anterior (encontrar a
correspondência do máximo de
caracteres possíveis). Para saber
mais, confira Corresponder a uma
ou mais vezes.

Corresponde qualquer caractere .+ e.+e corresponde a "eede" em


uma ou mais vezes. "feeder", mas não encontra
correspondências em "feed"
Finalidade Expression Exemplo

Encontrar a correspondência de *? \w*?d corresponde a "fad" e "ed"


zero ou mais ocorrências da em "faded", mas não à palavra
expressão anterior (encontrar a inteira "faded" devido à
correspondência do mínimo de correspondência lenta
caracteres possíveis). Para saber
mais, confira Corresponder a zero
ou mais vezes (correspondência
lenta).

Encontrar a correspondência de +? e\w+? corresponde a "ee" em


uma ou mais ocorrências da "asleep" e a "ed" em "faded",
expressão anterior (encontrar a mas não encontra
correspondência do mínimo de correspondências em "fade"
caracteres possíveis). Para saber
mais, confira Corresponder a uma
ou mais vezes (correspondência
lenta).

Ancorar a cadeia de caracteres de ^ ^car corresponde à palavra "car"


correspondência ao início de uma somente quando ela aparece no
linha ou uma cadeia de caracteres início de uma linha

Ancorar a cadeia de caracteres de \r?$ car\r?$ corresponde a "car"


correspondência ao final de uma somente quando aparece no
linha final de uma linha

Ancorar a cadeia de caracteres de $ car$ corresponde a "car"


correspondência ao final do arquivo somente quando aparece no
final do arquivo

Encontrar a correspondência de um [abc] b[abc] corresponde a "ba", "bb"


único caractere em um conjunto e "bc"

Encontrar a correspondência de um [a-f] be[n-t] corresponde a "bet" em


caractere em um intervalo de "between", "ben" em "beneath" e
caracteres "bes" em "beside", mas não
encontra correspondências em
"below"

Capturar e numerar implicitamente () ([a-z])X\1 corresponde a "aXa"


a expressão contida entre e "bXb", mas não a "aXb". “\1” se
parênteses refere ao primeiro grupo de
expressão “[a-z]”. Para saber
mais, confira Grupos de captura
e padrões de substituição.

Invalidar uma correspondência (?!abc) real(?!ity) corresponde a "real"


em "realty" e "really", mas não
Finalidade Expression Exemplo

em "reality". Também encontra o


segundo "real" (mas não o
primeiro "real") em "realityreal".

Encontrar a correspondência de [^abc] be[^n-t] corresponde a "bef"


qualquer caractere que não está em em "before", "beh" em "behind"
um conjunto de caracteres e "bel" em "below", mas não
específico. Para saber mais, veja encontra correspondências em
Negative Character Group (Grupo "beneath"
de caracteres negativos).

Encontrar a correspondência da | (sponge|mud) bath corresponde


expressão antes ou depois do a "sponge bath" e a "mud bath"
símbolo

Escapar o caractere após a barra \ \^ corresponde ao caractere ^


invertida

Especificar o número de ocorrências {n}, em que “n” é o x(ab){2}x corresponde a


do caractere ou do grupo anterior. número de "xababx"
Para saber mais, confira ocorrências x(ab){2,3}x corresponde a
Corresponder a exatamente n vezes. "xababx" e a "xabababx", mas
não a "xababababx"

Corresponder ao texto em uma \p{X}, em que "X" é o \p{Lu} corresponde a "T" e "D"
categoria Unicode. Para saber mais número Unicode. em "Thomas Doe"
sobre as classes de caracteres
Unicode, confira Propriedades de
caracteres do Padrão Unicode
15.0 .

Encontrar a correspondência de um \b (fora de uma classe Need source and more context
limite de palavra de caractere, \b
especifica um limite de
palavra e, dentro de
uma classe de
caractere, \b
especifica um
backspace.)

Encontrar a correspondência de \r?\n End\r?\nBegin corresponde a


uma quebra de linha (isto é, um "End" e "Begin" somente quando
retorno de carro seguido por uma "End" é a última cadeia de
nova linha) caracteres em uma linha e
"Begin" é a primeira cadeia de
caracteres na próxima linha

Encontrar a correspondência de \w a\wd corresponde a "add" e


qualquer caractere de palavra
Finalidade Expression Exemplo

"a1d", mas não a "a d"

Encontrar a correspondência de um \s Public\sInterface corresponde


caractere de espaço em branco à frase "Public Interface"

Encontrar a correspondência de \d \d corresponde a "4" e "0" em


qualquer caractere de dígito "wd40"
decimal

Um exemplo de expressão regular que combina alguns dos operadores e constructos


para corresponder a um número hexadecimal é \b0[xX]([0-9a-fA-F]+)\b . Essa
expressão corresponde a "0xc67f", mas não a "0xc67g".

 Dica

Em sistemas operacionais Windows, a maioria das linhas termina em “\r\n” (um


retorno de carro seguido por uma nova linha). Esses caracteres não ficam visíveis,
mas estão presentes no editor e são passados para o serviço de expressão regular
do .NET.

Grupos de captura e padrões de substituição


Um grupo de captura delineia uma subexpressão de uma expressão regular e captura
uma substring de uma cadeia de caracteres de entrada. Você pode usar os grupos
capturados na expressão regular em si (por exemplo, para procurar uma palavra
repetida) ou em um padrão de substituição. Para obter informações detalhadas, confira
Constructos de agrupamento em expressões regulares.

Para criar um grupo de captura numerado, coloque a subexpressão entre parênteses no


padrão de expressão regular. As capturas são numeradas automaticamente, da
esquerda para a direita, com base na posição do parêntese de abertura na expressão
regular. Para acessar o grupo de captura, considere os seguintes exemplos:

Dentro da expressão regular: use \number . Por exemplo, \1 na expressão regular


(\w+)\s\1 faz referência ao primeiro grupo de captura (\w+) .

Em um padrão de substituição: use $number . Por exemplo, a expressão regular


agrupada (\d)([a-z]) define dois grupos: o primeiro grupo contém um único
dígito decimal e o segundo grupo contém um único caractere entre a e z. A
expressão localiza quatro correspondências na cadeia de caracteres a seguir: 1a 2b
3c 4d. A cadeia de caracteres de substituição z$1 faz referência somente ao
primeiro grupo ( $1 ) e converte a cadeia de caracteres em z1 z2 z3 z4.

A imagem a seguir mostra uma expressão regular (\w+)\s\1 e uma cadeia de caracteres
de substituição $1 . A expressão regular e o padrão de substituição fazem referência ao
primeiro grupo de captura que é automaticamente numerado como 1. Quando você
escolhe Substituir tudo na caixa de diálogo Substituição Rápida no Visual Studio,
palavras repetidas são removidas do texto.

 Dica

Na caixa de diálogo Substituição Rápida, selecione o botão Usar Expressões


Regulares ou pressione Alt+E.

Grupos de captura nomeados


Em vez de depender da numeração automática de um grupo de captura, você pode dar
a ele um nome. A sintaxe para um grupo de captura nomeado é (?
<name>subexpression) .

Os grupos de captura nomeados, como grupos de captura numerados, podem ser


usados na expressão regular em si ou em um padrão de substituição. Para acessar o
grupo de captura nomeado, considere os seguintes exemplos:

Dentro da expressão regular: use \k<name> . Por exemplo, \k<repeated> na


expressão regular (?<repeated>\w+)\s\k<repeated> faz referência ao grupo de
captura chamado repeated e cuja subexpressão é \w+ .

Em um padrão de substituição: use ${name} . Por exemplo, ${repeated} .

A imagem a seguir mostra uma expressão regular (?<repeated>\w+)\s\k<repeated> e


uma cadeia de caracteres de substituição ${repeated} . A expressão regular e o padrão
de substituição fazem referência ao primeiro grupo de captura nomeado repeated .
Quando você escolhe Substituir tudo na caixa de diálogo Substituição Rápida no Visual
Studio, palavras repetidas são removidas do texto.
 Dica

Selecione o botão Usar Expressões Regulares (ou pressione Alt+E) na caixa de


diálogo Substituição Rápida.

Para saber mais sobre grupos de captura nomeados, confira Subexpressões coincidentes
nomeadas. Para saber mais sobre expressões regulares usadas em padrões de
substituição, confira Substituições em expressões regulares.

Conteúdo relacionado
Referência rápida: linguagem de expressão regular
Localizar e substituir texto
Vá para a Caixa Go to Find Combo
Artigo • 16/01/2024

Você pode pesquisar texto e executar comandos do Visual Studio na caixa Go to Find
Combo, anteriormente conhecida como caixa de Comando/Procura. O equivalente à
caixa de Comando/Procura ainda está disponível como um controle da barra de
ferramentas, mas é chamado de Go to Find Combo e não é mais visível por padrão.
Para exibir a caixa Go to Find Combo, siga estas etapas:

1. Escolha Adicionar ou Remover Botões na barra de ferramentas Padrão (o


pequeno controle em forma de seta na ponta direita da barra de ferramentas).

2. No menu que aparece, selecione Personalizar.

3. Na caixa de diálogo Personalizar, selecione Adicionar Comando.


4. Na caixa diálogo Adicionar Comando, escolha a categoria Editar e, na lista, role
para baixo ou pressione G para encontrar e selecionar Go to Find Combo e
escolha OK.

A caixa de combinação aparece na barra de ferramentas.

Para executar um comando do Visual Studio, preceda-o com um sinal de maior que (>).

A caixa Go to Find Combo retém os últimos 20 itens inseridos e os exibe em uma lista
suspensa. É possível navegar pela lista escolhendo as teclas de direção.

Pesquisando texto
Por padrão, quando você especifica o texto na caixa Go to Find Combo e, em seguida,
seleciona a tecla Inserir, o Visual Studio pesquisa o documento atual ou a janela de
ferramentas usando as opções que estiverem sendo especificadas na caixa diálogo
Encontrar em Arquivos. Para obter mais informações, consulte Localizando e
substituindo texto.

Inserindo comandos
Para usar a caixa Go to Find Combo para emitir um único comando ou alias do Visual
Studio, em vez de pesquisar texto, coloque o símbolo de maior que (>) antes do
comando. Por exemplo:

>File.NewFile c:\temp\MyFile /t:"General\Text File"

Como alternativa, você também pode usar a janela Comando para inserir e executar um
ou vários comandos. Alguns comandos ou aliases podem ser inseridos e executados
sozinhos; outros têm argumentos obrigatórios em sua sintaxe. Para obter uma lista de
comandos que têm argumentos, consulte Comandos do Visual Studio.

Caracteres de escape
Um caractere de acento circunflexo (^) em um comando significa que o caractere
imediatamente a seguir é interpretado literalmente, em vez de como um caractere de
controle. Isso pode ser usado para inserir aspas retas ("), espaços, barras iniciais, acentos
circunflexos ou quaisquer outros caracteres literais em um parâmetro ou valor de opção,
com a exceção de nomes de opção. Por exemplo:

>Edit.Find ^^t /regex

Um acento circunflexo funciona da mesma forma tanto dentro quanto fora das aspas.
Se um acento circunflexo for o último caractere na linha, ele será ignorado.

Conteúdo relacionado
Janela Comando
Localizando e substituindo texto
Localizar em Arquivos
Artigo • 20/01/2024

O Localizar nos Arquivos permite pesquisar um conjunto de arquivos especificado. As


correspondências encontradas pelo Visual Studio estão listadas na janela Localizar
resultados no IDE. A aparência dos resultados depende das opções escolhidas na guia
Localizar nos arquivos da caixa de diálogo Localizar e Substituir.

Como exibir Localizar nos arquivos


Use as etapas a seguir para abrir a caixa de diálogo Localizar e Substituir ou pressione
Ctrl+Shift+F.

1. Na barra de menus, selecione Editar>Localizar e Substituir.

2. Selecione Localizar nos arquivos no menu suspenso.


Para cancelar uma operação de localização, pressione Ctrl+Break.

7 Observação

A ferramenta Localizar e Substituir não pesquisa diretórios com o atributo Hidden


ou System .

Caixa de pesquisa
Para pesquisar uma nova cadeia de caracteres de texto ou expressão, especifique-a na
caixa Pesquisar. Para pesquisar qualquer uma das 20 cadeias de caracteres mais
pesquisadas recentemente, abra a lista suspensa e selecione a cadeia de caracteres.

É possível selecionar ou desmarcar as seguintes opções:

Diferenciar maiúsculas de minúsculas– use essa opção para garantir que a


pesquisa diferencia maiúsculas de minúsculas.

Localizar palavras inteiras – use essa opção para garantir que sua pesquisa retorna
apenas resultados de palavras inteiras.

Usar expressões regulares – use essa opção para notações especiais que definem
padrões de texto para o resultado na caixa Pesquisar (ou na caixa de texto
Substituir). Para obter uma lista dessas notações, consulte Usando expressões
regulares no Visual Studio.

) Importante

O botão Construtor de Expressões será exibido ao lado da caixa Pesquisar


somente se você tiver marcado a caixa de seleção Usar expressões regulares.
Examinar
A opção escolhida na lista suspensa Pesquisar em determina se Localizar no arquivos
procura em todo o workspace, toda a solução, o projeto atual, o diretório atual, todos
os documentos abertos ou o documento atual.

Também é possível usar o botão adjacente Procurar (...) para localizar onde deseja
pesquisar. Melhor ainda, se você já tiver especificado um diretório, esse botão
acrescenta o novo diretório em vez de substituí-lo. Por exemplo, se o valor "Pesquisar"
for ".\Code", é necessário clicar no botão Procurar (...) e navegar até uma pasta
chamada "Código Compartilhado". A caixa Procurar (...) agora mostraria ".\Code;.
\Código Compartilhado" e quando o comando Localizar for executado, a pesquisa é
feita nessas duas pastas.

Para refinar sua pesquisa, é possível selecionar ou desmarcar as seguintes opções:

Incluir itens externos: use essa opção para incluir arquivos referenciados de fora
de um projeto C++, ou seja, arquivos como "windows.h" que são incluídos pelos
arquivos de código, mas não fazem parte de uma solução. Essa opção só se aplica
a projetos C++.
Incluir arquivos diversos: use essa opção para incluir arquivos diversos, como
arquivos abertos, mas que não fazem parte de uma solução. Confira Arquivos
diversos.

Tipos de arquivo
Essa opção Tipos de arquivo indica os tipos de arquivos que serão pesquisados nos
diretórios Pesquisar. Selecione qualquer item na lista para inserir uma cadeia de
caracteres de pesquisa pré-configurada que localizará arquivos desses tipos específicos.

É possível pesquisar vários tipos de arquivo separando-os com um ponto e vírgula ( ; ).


Exclua também pastas e arquivos com o prefixo de qualquer caminho ou tipo de
arquivo com um ponto de exclamação ( ! ).

Acrescentar resultados
Use essa opção para acrescentar os resultados da pesquisa atual aos resultados da
pesquisa anteriores.

Resultados da Pesquisa
Quando é feita uma pesquisa para todos os resultados, eles aparecem conforme ficam
disponíveis.

7 Observação

O Visual Studio começa a criar um índice depois que o contexto de código é


carregado, como ao abrir um novo projeto, alterar branches ou alterar a lista de
arquivos. Se você fizer a pesquisa enquanto o Visual Studio ainda estiver indexando
seus arquivos de origem, é possível visualizar um aviso que os resultados estão
incompletos.

Manter Resultados
É possível manter os resultados de uma pesquisa enquanto executa outras pesquisas.
Facilita a comparação de resultados e vê-los lado a lado.

Para manter vários resultados da pesquisa, selecione o botão Manter Resultados após
cada pesquisa. Depois, quando você pesquisa outra coisa, os resultados são mostrados
em uma nova guia. É possível manter os resultados de até cinco pesquisas. Se você já
tiver cinco resultados de pesquisa exibidos, a próxima pesquisa reutilizará a guia de
resultados da pesquisa mais antiga.

No Visual Studio 2022 e versões posteriores, é possível definir o Visual Studio para
sempre manter os resultados. Acesse Ferramentas>Opções>Geral>Localizar e
Substituir e marque a caixa de seleção Manter resultados da pesquisa por padrão.
Conteúdo relacionado
Substituir nos Arquivos
Localizar e substituir texto
Comandos do Visual Studio
Substituir nos Arquivos
Artigo • 17/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Substituir nos Arquivos permite pesquisar o código de um conjunto especificado de


arquivos para uma cadeia de caracteres ou expressão e alterar algumas ou todas as
correspondências encontradas. As correspondências encontradas e as ações executadas
são listadas na janela Localizar Resultados selecionada em Opções de resultado.

É possível usar qualquer um dos métodos a seguir para exibir Substituir nos Arquivos
na janela Localizar e Substituir ou usar Ctrl+Shift+H.
Para exibir Substituir nos Arquivos
1. Pressione Ctrl+Q e insira "substituir" na caixa de pesquisa na parte superior da
tela.

2. Escolha Substituir nos arquivos na lista de resultados.

— ou —

3. No menu Editar, expanda Localizar e Substituir.

4. Escolha Substituir nos Arquivos.

— ou —

Se a janela Localizar e Substituir ainda estiver aberta, na barra de ferramentas,


escolha Substituir nos Arquivos.

7 Observação

A ferramenta Localizar e Substituir não pesquisa diretórios com o atributo Hidden


ou System .

As opções de Substituir nos Arquivos são quase idênticas às opções na caixa de


diálogo Localizar nos Arquivos. No entanto, há botões de ação de substituição extra na
parte inferior da caixa de diálogo. E, dependendo da versão do Visual Studio que você
está usando, há mais opções de substituição disponíveis na caixa de diálogo, conforme
indicado a seguir.

Caixa de texto Substituir


Para substituir instâncias da cadeia de caracteres na caixa de texto Localizar por outra
cadeia de caracteres, digite a cadeia de caracteres de substituição na caixa de texto
Substituir. Para excluir instâncias da cadeia de caracteres na caixa de texto Localizar,
deixe esse campo em branco. Abra a lista para exibir as cadeias de caracteres que você
pesquisou mais recentemente. Escolha o botão Construtor de Expressões adjacente se
você desejar usar uma ou mais expressões regulares na cadeia de caracteres de
substituição. Para obter mais informações, confira Usar expressões regulares no Visual
Studio.

Preservar maiúsculas e minúsculas


Ao fazer uma Substituição, você pode preservar a caixa original de cada
correspondência em seu código. Alterne a preservação de maiúsculas e minúsculas com
a opção Preservar maiúsculas e minúsculas (Alt+V). Essa opção está disponível no Visual
Studio 2022 versão 17.8 ou posterior.

Para obter o Pascal case e Camel case, sua cadeia de caracteres Replace também deve
estar em Pascal case ou Camel case. As maiúsculas e minúsculas também são
preservadas em texto que contém hifens ou sublinhados.

Exemplos:

– Substituir "begin" por "end" transformará "Begin" em "End" e "BEGIN" em "END".

– Substituir "onetwothree" por "fourFiveSix" transformará "onetwothree" em


"fourfivesix", "oneTwoThree" em "fourFiveSix" e "OneTwoThree" em "FourFiveSix".

7 Observação

Começando no Visual Studio 2022, o desempenho da pesquisa é otimizado


mostrando resultados parciais, como de arquivos pré-indexados, antes que os
resultados finais fiquem disponíveis. No entanto, quando você executa operações
de substituição, esse benefício de desempenho não se aplica, pois as operações de
substituição só são iniciadas após os resultados completos da pesquisa serem
retornados.

Confira também
Localizar e substituir texto
Localizar em arquivos
Comandos do Visual Studio
Codificações e términos de linha
Artigo • 16/01/2024

Os seguintes caracteres são interpretados como quebras de linha no Visual Studio:

CR LF: retorno de carro + alimentação de linha, caracteres Unicode 000D + 000A

LF: alimentação de linha, caractere Unicode 000A

NEL: próxima linha, caractere Unicode 0085

LS: separador de linha, caractere Unicode 2028

PS: separador de parágrafo, caractere Unicode 2029

O texto copiado de outros aplicativos mantém a codificação original e os caracteres de


quebra de linha. Por exemplo, quando você copia texto do Bloco de notas e o cola em
um arquivo de texto no Visual Studio, o texto tem as mesmas configurações que ele
tinha no Bloco de notas.

Ao abrir um arquivo que tem caracteres de quebra de linha diferentes, talvez você veja
uma caixa de diálogo que pergunta se os caracteres de quebra de linha inconsistentes
devem ser normalizados e quais os tipo de quebras de linha você deseja escolher.

Opções avançadas de salvamento


Você pode usar a caixa de diálogo Arquivo>Opções de Salvamento Avançadas para
determinar o tipo de caracteres de quebra de linha que você deseja. Também é possível
alterar a codificação de um arquivo com as mesmas configurações.
7 Observação

Se você não vir Opções Avançadas de Salvamento no menu Arquivo, você poderá
adicioná-la.

1. Escolha Ferramentas, Personalizar,


2. Escolha a guia Comandos, selecione o botão de opção Barra de menus e, na
lista suspensa correspondente, escolha Arquivo. Escolha o botão Adicionar
Comando.
3. Na caixa de diálogo Adicionar Comando, em Categorias, escolha Arquivo e,
em seguida, na lista Comandos, escolha Opções Avançadas de Salvamento.
Escolha o botão OK.
4. Use os botões Mover para cima e Mover para baixo para mover o comando
para qualquer lugar no menu. Escolha Fechar para fechar a caixa de diálogo
Personalizar. Para obter mais informações, consulte Personalizar menus e
barras de ferramentas.

Como alternativa, você pode acessar a caixa de diálogo Opções de Salvamento


Avançadas, escolhendo Arquivo>Salvar <arquivo> Como. Na caixa de diálogo
Salvar Arquivo Como, escolha o triângulo suspenso ao lado do botão Salvar e
escolha Salvar com codificação.

Conteúdo relacionado
Recursos do editor de código
Salvar e abrir arquivos com codificação
Artigo • 13/01/2024

Salve arquivos com uma codificação de caracteres específica para dar suporte a idiomas
bidirecionais. Também é possível especificar uma codificação ao abrir um arquivo, para
que o Visual Studio exiba o arquivo corretamente.

Para salvar um arquivo com codificação


1. No menu Arquivo, escolha Salvar Arquivo Como e clique no botão suspenso ao
lado do botão Salvar.

A caixa de diálogo Opções de Salvamento Avançadas é exibida.

2. Em Codificação, selecione a codificação a ser usada para o arquivo.

3. Opcionalmente, em Terminações de linha, selecione o formato para caracteres de


final de linha.

Essa opção é útil se você pretende trocar o arquivo com usuários de outro sistema
operacional.

Se deseja trabalhar com um arquivo que você sabe que está codificado de uma
maneira específica, é possível informar ao Visual Studio para usar essa codificação
ao abrir o arquivo. O método usado dependerá se o arquivo faz parte do projeto.

7 Observação

Se você quiser salvar o arquivo de projeto com codificação, a opção Salvar Arquivo
como só será habilitada quando você descarregar o projeto.

Para abrir um arquivo codificado que faz parte


de um projeto
1. Em Gerenciador de Soluções, clique com o botão direito do mouse no arquivo e
escolha Abrir Com.

2. Na caixa de diálogo Abrir Com, escolha o editor com o qual o arquivo será aberto.
Muitos editores do Visual Studio, como o editor de formulários, detectarão a
codificação automaticamente e abrirão o arquivo de forma adequada. Se você
escolher um editor que permite escolher uma codificação, a caixa de diálogo
Codificação será exibida.

3. Na caixa de diálogo Codificação, selecione a codificação que o editor deverá usar.

Para abrir um arquivo codificado que não faz


parte de um projeto
1. No menu Arquivo, aponte para Abrir, escolha Arquivo ou Arquivo da Web e, em
seguida, selecione o arquivo a ser aberto.

2. Clique no botão suspenso ao lado do botão Abrir e escolha Abrir Com.

3. Siga as Etapas 2 e 3 do procedimento anterior.

Conteúdo relacionado
Codificação e quebras de linha
Codificação e globalização do Windows Forms
Globalizar e localizar aplicativos
Estrutura de tópicos
Artigo • 29/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Para ocultar uma região do código da exibição, você pode recolhê-la para que ela
apareça sob um sinal de adição (+) no editor de texto. Em seguida, para expandir uma
região recolhida, selecione o sinal de adição.

 Dica

Se for um usuário de teclado, você poderá escolher Ctrl+M+M para recolher e


expandir.

Você também pode recolher uma região de estrutura de tópicos clicando duas vezes em
qualquer linha da região na margem da estrutura de tópicos, que aparece à esquerda
do código. Você pode ver o conteúdo de uma região recolhida como uma dica de
ferramenta quando focaliza a região recolhida.

As regiões na margem da estrutura de tópicos também são realçadas quando você


focaliza a margem com o mouse. A cor de realce padrão pode parecer bastante
esmaecida em algumas configurações de cor. Você pode alterá-la em
Ferramentas>Opções>Ambiente>Fontes e Cores>Região recolhível.
Quando você trabalha no código de estrutura de tópicos, pode expandir as seções nas
quais deseja trabalhar, recolhê-las quando terminar e passar para outras seções.
Quando você não quiser que a estrutura de tópicos seja exibida, você pode usar o
comando Interromper Estrutura de Tópicos para remover as informações de estrutura
de tópicos sem afetar o código subjacente.

Os comandos Desfazer e Refazer no menu Editar afetam essas ações. As operações de


Copiar, Recortar, Colar e do tipo "arrastar e soltar" retêm informações de estrutura de
tópico, mas não o estado da região recolhível. Por exemplo, quando você copia uma
região recolhida, a operação Colar cola o texto copiado como uma região expandida.

U Cuidado

Quando você altera uma região de estrutura de tópicos, a estrutura de tópicos


pode ser perdida. Por exemplo, exclusões ou operações de Localizar e Substituir
podem apagar o fim da região.

Os comandos a seguir podem ser encontrados no submenu Editar>Estrutura de


Tópicos.

Nome Descrição

Ocultar Seleção (Ctrl+M, Ctrl+H) – recolhe um bloco de código selecionado que normalmente
não estaria disponível para a estrutura de tópicos, por exemplo, um bloco if .
Para remover a região personalizada, use Interromper Ocultação Atual (ou
Ctrl+M, Ctrl+U). Não disponível no Visual Basic.

Ativar/Desativar (Ctrl+M, Ctrl+M) - reverte o estado atual oculto ou expandido da seção de


Expansão da estrutura de tópicos mais interna quando o cursor está em uma seção
Estrutura de aninhada recolhida.
Tópicos

Ativar/Desativar (Ctrl+M, Ctrl+L) – define todas as regiões para o mesmo estado recolhido ou
Estrutura de expandido. Se algumas regiões estiverem expandidas e algumas estiverem
Tópicos para recolhidas, as regiões recolhidas serão expandidas.
Tudo

Interromper (Ctrl+M, Ctrl+P) – remove todas as informações de estrutura de tópicos do


Estrutura de documento inteiro.
Tópicos (Para ativá-lo novamente, vá para Editar>Estrutura de Tópicos e selecione
Iniciar Estrutura de Tópicos Automática.)

Interromper (Ctrl+M, Ctrl+U) – remove as informações de estrutura de tópicos da região


Ocultação Atual definida pelo usuário selecionada no momento. Não disponível no Visual Basic.
Nome Descrição

Recolher para (Ctrl+M, Ctrl+O) – recolhe os membros de todos os tipos.


Definições

Recolher bloco: (C++) Recolhe uma região na função que contém o ponto de inserção. Por
<limite lógico> exemplo, se o ponto de inserção estiver dentro de um loop, o loop será
ocultado.

Recolher tudo: (C++) Recolhe todas as estruturas de dentro da função.


<estruturas
lógicas>

 Dica

Para obter mais informações sobre como usar o teclado exclusivamente, consulte
Atalhos de teclado no Visual Studio.

Você também pode usar o SDK do Visual Studio para definir as regiões de texto que
deseja expandir ou recolher. Consulte Instruções passo a passo: estrutura de tópicos.

Confira também
Recursos do editor de código
Editor de código-fonte (Visual Studio para Mac)
Snippets de código: o que são e como
adicionar um
Artigo • 16/01/2024

Snippets de código são pequenos blocos de código reutilizável que você pode adicionar
a um arquivo de código. Os snippets geralmente contêm blocos de código usados com
frequência, como blocos de try-finally ou if-else . No entanto, você também pode
usá-los para adicionar classes ou métodos inteiros. Seus snippets podem até mesmo
conter parâmetros de substituição, que atuam como espaços reservados. Os snippets de
código estão disponíveis para várias linguagens, incluindo C#, C++ e Visual Basic, para
citar algumas.

Localizar snippets disponíveis


Antes de (criar seu próprio snippet)[walkthrough-creating-a-code-snippet.md], você
pode verificar os snippets disponíveis para uma linguagem, selecione
Ferramentas>Gerenciador de Snippets de Código na barra de menus (ou pressione
Ctrl+K, Ctrl+B) e, em seguida, selecione a linguagem desejada no menu suspenso na
parte superior da caixa de diálogo.
Adicionar um snippet ao arquivo de código
No Visual Studio, há várias maneiras diferentes de adicionar um snippet de código a um
arquivo de código:

Na barra de menus, escolha Editar>IntelliSense>Inserir Snippet

No menu de contexto ou clicando com o botão direito do mouse no editor de


códigos, escolha Trecho>Inserir Snippet de Código

Usando o teclado, pressione Ctrl+K,Ctrl+X

Snippets de expansão e snippets de “envolver


com”
Há dois tipos de snippets de código que você pode adicionar ao seu código.

ノ Expandir a tabela

Tipo de Como ele é usado


snippet

expansion Adicionado em um ponto de inserção especificado e pode substituir um atalho


de snippet

surround-with Adicionado em torno de um bloco de código selecionado (disponível apenas


para C# e C++)

No exemplo a seguir de um snippet de expansão em C#, o atalho tryf adiciona um


bloco try-finally:

C#

try
{

}
finally
{

Veja como adicionar este snippet de expansão:

1. Na janela de código, posicione o cursor onde você deseja adicionar o snippet.


2. Selecione Inserir Snippet no menu de contexto do clique com o botão direito do
mouse.

Como alternativa, no menu Editar, selecione IntelliSense e, em seguida, selecione


o comando Surround With.

3. Selecione Visual C#, digite tryf e pressione Tab. (Ou você pode digitar tryf e
pressionar Tab duas vezes.)

No exemplo a seguir de um snippet “envolver com”: em C++, o atalho if pode ser


usado como um snippet de inserção ou um snippet “envolver com”. Se você selecionar
uma linha de código (por exemplo return FALSE; ) e, em seguida, escolher Envolver
Com>if, o snippet de código será expandido na linha:

C++

if (true)
{
return FALSE;
}

Parâmetros de substituição de snippet


Snippets podem conter parâmetros de substituição, que são espaços reservados que
você deve substituir de acordo com o código que você está escrevendo. No exemplo
anterior, true é um parâmetro de substituição, que você poderia substituir pela
condição apropriada. A substituição feita é repetida para cada instância do mesmo
parâmetro de substituição no snippet.

Por exemplo, no Visual Basic, há um snippet de código que insere uma propriedade.

Para inserir o snippet:

1. No menu de contexto do botão direito do mouse em um arquivo de código do


Visual Basic, selecione Snippet>Inserir Snippet.
2. Selecione Padrões de Código>Propriedades, Procedimentos, Eventos>Definir
uma Propriedade.
O código a seguir é inserido:

VB

Private newPropertyValue As String


Public Property NewProperty() As String
Get
Return newPropertyValue
End Get
Set(ByVal value As String)
newPropertyValue = value
End Set
End Property

Se você alterar newPropertyValue para m_property , cada instância de newPropertyValue


será alterada. Se você alterar String para Int na declaração de propriedade, o valor no
método conjunto também mudará para Int .

Melhores práticas para usar snippets de código


O código em um snippet de código mostra somente a maneira mais simples de fazer
algo. Para a maioria dos aplicativos, o código deve ser modificado para se adaptar ao
aplicativo.

Tratamento de exceções
Normalmente, o snippet de código Try...Catch bloqueia a captura e gera todas as
exceções novamente. Essa pode não ser a escolha certa para seu projeto. Para cada
exceção, existem várias maneiras de responder. Para obter exemplos, confira Como
manipular uma exceção usando try/catch (C#) e Instrução Try...Catch...Finally (Visual
Basic).

Locais de arquivos
Quando você adaptar locais de arquivo ao seu aplicativo, deverá considerar o seguinte:

Encontrando um local acessível. Os usuários poderão não ter acesso à pasta


Arquivos de Programas do computador; portanto, armazenar arquivos com os
arquivos do aplicativo pode não funcionar.

Encontrando um local seguro. Não é seguro armazenar arquivos na pasta raiz (C:\).
Para dados de aplicativo, recomendamos a pasta Dados de Aplicativos. Para dados
individuais do usuário, o aplicativo pode criar um arquivo para cada usuário na
pasta Documentos.

Usando um nome de arquivo válido. Você pode usar os controles OpenFileDialog e


SaveFileDialog para reduzir a probabilidade de nomes de arquivo inválidos.
Lembre-se de que entre o momento em que o usuário seleciona um arquivo e o
momento em que o código manipula o arquivo, o arquivo poderá ser excluído.
Além disso, o usuário poderá não ter permissões para gravar no arquivo.

Segurança
A segurança de um snippet depende do local em que ele é usado no código-fonte e de
como ele é modificado quando estiver no código. A lista a seguir contém algumas das
áreas que devem ser consideradas.

Acesso ao arquivo e ao banco de dados

Segurança de acesso do código

Protegendo recursos (como logs de eventos, Registro)

Armazenar segredos

Verificando as entradas

Passando dados para tecnologias de script

Para saber mais, veja Como proteger aplicativos.

Snippets de código baixados


Os snippets de código do IntelliSense instalados pelo Visual Studio não são em si um
risco de segurança. No entanto, eles podem criar riscos de segurança no aplicativo.
Snippets baixados na Internet devem ser tratados como qualquer outro conteúdo
baixado – com muito cuidado.

Baixe snippets somente em sites confiáveis e use um software antivírus atualizado.

Abra todos os arquivos de snippet baixados no Bloco de notas ou no editor de


XML do Visual Studio e examine-os cuidadosamente antes de instalá-los. Procure
os seguintes problemas:

O snippet de código poderá danificar o sistema se for executado. Leia


atentamente o código-fonte antes de executá-lo.
O bloco URL de Ajuda do arquivo de snippet pode conter URLs que executam
um arquivo de script mal-intencionado ou exibir um site ofensivo.

O snippet pode conter referências que são adicionadas silenciosamente ao


projeto e podem ser carregadas em qualquer lugar do sistema. Essas referências
podem ter sido baixadas no computador em que você baixou o snippet. Depois,
o snippet de código pode fazer uma chamada a um método na referência que
executa um código mal-intencionado. Para se proteger contra um ataque desse
tipo, examine os blocos Importações e Referências do arquivo de snippet.

Conteúdo relacionado
Crie um snippet de código.
Distribuir snippets de código
Snippets de código C#
Snippets de código C++
Referência de esquema dos snippets de código
Snippets de código C#
Artigo • 16/01/2024

Os snippets de código são snippets de código prontos que você pode inserir
rapidamente em seu código. Por exemplo, o snippet de código for cria um loop for
vazio. Alguns snippets de código são snippets de código envolvidos, que permite que
você selecione linhas de código e, em seguida, escolha um snippet de código que
incorpora as linhas de código selecionadas. Por exemplo, quando você seleciona linhas
de código e, em seguida, ativa o snippet de código for , ele cria um loop for com as
linhas de código selecionadas dentro do bloco de loop. Os snippets de código podem
fazer com que escrever código de programa seja mais rápido, mais fácil e mais
confiável.

Você pode inserir um snippet de código no local do cursor ou inserir um snippet de


código envolvido com o código atualmente selecionado. A Unidade de Inserção de
Snippet de Código é invocada por meio dos comandos Inserir Snippet de Código ou
Envolver Com no menu do IntelliSense ou usando os atalhos de teclado Ctrl+K,X ou
Ctrl+K,S, respectivamente.

A Unidade de Inserção de Snippet de Código exibe o nome do snippet de código de


todos os snippets de código disponíveis. A Unidade de Inserção de Snippet de Código
também inclui uma caixa de diálogo de entrada em que você pode digitar o nome ou
parte do nome do snippet de código. A Unidade de Inserção de Snippet de Código
realça a correspondência mais próxima de um nome de snippet de código. Ao
pressionar Tab a qualquer momento, a Unidade de Inserção de Snippet de Código será
fechada e o snippet de código selecionado será inserido. Ao pressionar Esc ou clicar
com o mouse no editor de códigos, a Unidade de Inserção de Snippet de Código será
ignorada sem inserir um snippet de código.

Snippets de código padrão


Por padrão, os snippets de código a seguir são incluídos no Visual Studio para C#.

ノ Expandir a tabela

Nome (ou Descrição Locais válidos para


atalho) inserir o snippet

#if Cria uma diretiva #if e uma diretiva #endif. Em qualquer lugar.

#region Cria uma diretiva #region e uma diretiva #endregion. Em qualquer lugar.
Nome (ou Descrição Locais válidos para
atalho) inserir o snippet

~ Cria um finalizador (destruidor) para a classe que o Dentro de uma classe.


contém.

Atributo Cria uma declaração para uma classe que deriva de Dentro de um
Attribute. namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.

verificado Cria um bloco checked. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

classe Cria uma declaração de classe. Dentro de um


namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.

ctor Cria um construtor para a classe que o contém. Dentro de uma classe.

cw Cria uma chamada para WriteLine. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

do Cria um loop do while . Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

else Cria um bloco else. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

enum Cria uma declaração enum. Dentro de um


namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.
Nome (ou Descrição Locais válidos para
atalho) inserir o snippet

equals Cria uma declaração de método que substitui o Dentro de uma classe
método Equals definido na classe Object. ou um struct.

exception Cria uma declaração para uma classe que deriva de Dentro de um
uma exceção (Exception por padrão). namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.

para Cria um loop for. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

foreach Cria um loop foreach. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

forr Cria um loop for que decrementa a variável de loop Dentro de um método,
depois de cada iteração. um indexador, um
acessador de
propriedade ou um
acessador de evento.

if Cria um bloco if. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

indexador Cria uma declaração do indexador. Dentro de uma classe


ou um struct.

interface Cria uma declaração interface. Dentro de um


namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.

invoke Cria um bloco que invoca um evento com segurança. Dentro de um método,
um indexador, um
acessador de
propriedade ou um
acessador de evento.
Nome (ou Descrição Locais válidos para
atalho) inserir o snippet

iterator Cria um iterador. Dentro de uma classe


ou um struct.

iterindex Cria um par de iterador e indexador "nomeado" usando Dentro de uma classe
uma classe aninhada. ou um struct.

lock Cria um bloco lock. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

mbox Cria uma chamada para Dentro de um método,


System.Windows.Forms.MessageBox.Show. Talvez seja um indexador, um
necessário adicionar uma referência a acessador de
System.Windows.Forms.dll. propriedade ou um
acessador de evento.

namespace Cria uma declaração de namespace. Dentro de um


namespace (incluindo
o namespace global).

prop Cria uma declaração de propriedade Dentro de uma classe


autoimplementada. ou um struct.

propfull Cria uma declaração de propriedade com os Dentro de uma classe


acessadores get e set . ou um struct.

propg Cria uma propriedade implementada automaticamente Dentro de uma classe


do tipo somente leitura, com um acessador set ou um struct.
particular.

sim Cria uma declaração de método principal staticint. Dentro de uma classe
ou um struct.

struct Cria uma declaração struct. Dentro de um


namespace (incluindo
o namespace global),
uma classe ou uma
estrutura.

svm Cria uma declaração de método principal staticvoid. Dentro de uma classe
ou um struct.

switch Cria um bloco switch. Dentro de um método,


um indexador, um
acessador de
Nome (ou Descrição Locais válidos para
atalho) inserir o snippet

propriedade ou um
acessador de evento.

experimentar Cria um bloco try-catch. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

tryf Cria um bloco try-finally. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

unchecked Cria um bloco unchecked. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

unsafe Cria um bloco unsafe. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

using Cria uma diretiva using. Dentro de um


namespace (incluindo
o namespace global).

while Cria um loop while. Dentro de um método,


um indexador, um
acessador de
propriedade ou um
acessador de evento.

Funções de snippet de código


Há três funções disponíveis para uso com os snippets de código de C#. As funções são
especificadas no elemento Function do snippet de código. Para obter informações sobre
como criar snippets de código, consulte Snippets de código.

A tabela a seguir descreve as funções disponíveis para uso com o elemento Function
em snippets de código.
ノ Expandir a tabela

Função Descrição Idioma

GenerateSwitchCases(EnumerationLiteral) Gera uma instrução de opção e um C#


conjunto de instruções de maiúsculas e
minúsculas para os membros da
enumeração especificada pelo parâmetro
EnumerationLiteral . O parâmetro
EnumerationLiteral deve ser uma
referência a uma literal de enumeração ou
a um tipo de enumeração.

ClassName() Retorna o nome da classe que contém o C#


snippet inserido.

SimpleTypeName(TypeName) Reduz o parâmetro TypeName para sua C#


forma mais simples no contexto em que o
snippet foi invocado.

Exemplo de GenerateSwitchCases
O exemplo a seguir mostra como usar a função GenerateSwitchCases . Quando este
snippet for inserido e uma enumeração for inserida no literal $switch_on$ , o literal
$cases$ gerará uma instrução case para cada valor na enumeração.

XML

<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>switch</Title>
<Shortcut>switch</Shortcut>
<Description>Code snippet for switch statement</Description>
<Author>Microsoft Corporation</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>expression</ID>
<ToolTip>Expression to switch on</ToolTip>
<Default>switch_on</Default>
</Literal>
<Literal Editable="false">
<ID>cases</ID>
<Function>GenerateSwitchCases($expression$)</Function>
<Default>default:</Default>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[
switch ($expression$)
{
$cases$
}
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Exemplo de ClassName
O exemplo a seguir mostra como usar a função ClassName . Quando este snippet for
inserido, o literal $classname$ será substituído pelo nome da classe delimitadora nesse
local no arquivo de código.

XML

<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>Common constructor pattern</Title>
<Shortcut>ctor</Shortcut>
<Description>Code Snippet for a constructor</Description>
<Author>Microsoft Corporation</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>type</ID>
<Default>int</Default>
</Literal>
<Literal>
<ID>name</ID>
<Default>field</Default>
</Literal>
<Literal default="true" Editable="false">
<ID>classname</ID>
<ToolTip>Class name</ToolTip>
<Function>ClassName()</Function>
<Default>ClassNamePlaceholder</Default>
</Literal>
</Declarations>
<Code Language="csharp" Format="CData">
<![CDATA[
public $classname$ ($type$ $name$)
{
this._$name$ = $name$;
}
private $type$ _$name$;
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Exemplo de SimpleTypeName
Este exemplo mostra como usar a função SimpleTypeName . Quando este snippet for
inserido em um arquivo de código, o literal $SystemConsole$ será substituído pela forma
mais simples do tipo Console no contexto em que o snippet foi invocado.

XML

<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>Console_WriteLine</Title>
<Shortcut>cw</Shortcut>
<Description>Code snippet for Console.WriteLine</Description>
<Author>Microsoft Corporation</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal Editable="false">
<ID>SystemConsole</ID>
<Function>SimpleTypeName(global::System.Console)
</Function>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[
$SystemConsole$.WriteLine();
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
Confira também
Snippets de código
Parâmetros de modelo
Trechos de expansão e Trechos surround-with
Snippets de código do Visual C++
Artigo • 13/01/2024

No Visual Studio, você pode usar snippets de código para adicionar código comumente
usado nos seus arquivos de código do C++. Em geral, você pode usar os snippets de
código de forma bem parecida com o C#, mas o conjunto de snippets de código padrão
é diferente.

Você pode adicionar um snippet de código em um local específico no seu código


(inserção) ou envolver algum código selecionado com um snippet de código.

Inserir um snippet de código


Para inserir um snippet de código, abra um arquivo de código C++ (.cpp ou .h), clique
em algum lugar dentro do arquivo e siga um destes procedimentos:

Clique com o botão direito do mouse para obter o menu de contexto e selecione
Inserir Snippet

No menu Editar / IntelliSense, selecione Inserir Snippet

Use as teclas de atalho: Ctrl+K+X

Você deve ver uma lista de opções que começam com #if. Ao selecionar #if, você verá o
seguinte código adicionado ao arquivo:

C++

#if 0

#endif // 0

Em seguida, você pode substituir o 0 pela condição correta.

Usar um snippet de código para envolver o


código selecionado
Para usar um snippet de código para envolver o código selecionado, selecione uma
linha (ou várias linhas) e siga um destes procedimentos:

Clique com o botão direito do mouse para obter o menu de contexto e selecione
Envolver Com
No menu Editar>IntelliSense, selecione Envolver Com

Usando o teclado, pressione: Ctrl+K+S

Selecione #if. Você deverá ver algo como:

C++

#if 0
#include "pch.h" // or whatever line you had selected
#endif // 0

Em seguida, você pode substituir o 0 pela condição correta.

Onde posso encontrar uma lista completa dos


snippets de código do C++?
Você pode encontrar a lista completa de snippets de código do C++ indo até o
Gerenciador de Snippets de Código (no menu Ferramentas) e configurando a
Linguagem para Visual C++. Na janela abaixo, expanda Visual C++. Você verá os
nomes de todos os snippets de código do C++ em ordem alfabética.

Os nomes da maioria dos snippets de código são auto-explicativos, mas alguns nomes
podem ser confusos.

Class versus classi


O snippet class fornece a definição de uma classe chamada MyClass , com o construtor e
o destruidor padrão apropriado, em que as definições do construtor e do destruidor
estão localizadas fora da classe:

C++

class MyClass
{
public:
MyClass();
~MyClass();

private:

};

MyClass::MyClass()
{
}

MyClass::~MyClass()
{
}

O snippet de código classi também fornece a definição de uma classe chamada


MyClass , mas o construtor e o destruidor padrão são definidos dentro da definição de

classe:

C++

class MyClass
{
public:
MyClass()
{
}

~MyClass()
{
}

private:

};

for versus forr versus rfor


Há três snippets for diferentes que fornecem diferentes tipos de loops for .

O snippet rfor fornece um loop for baseado em intervalo (link). Este constructo é
preferível em relação aos loops for baseados em índice.

C++

for (auto& i : v)
{

O snippet for fornece um loop for no qual a condição é baseada no comprimento (em
size_t ) de um objeto.

C++
for (size_t i = 0; i < length; i++)
{

O snippet forr fornece um loop for reverso em que a condição é baseada no


comprimento (em inteiros) de um objeto.

C++

for (int i = length - 1; i >= 0; i--)


{

O snippet de destruidor (~)


O snippet de destruidor (~) apresenta comportamento diferente em diferentes
contextos. Se você inserir este snippet dentro de uma classe, ele fornecerá um
destruidor para essa classe. Por exemplo, considerando o seguinte código:

C++

class SomeClass {

};

Se você inserir o snippet de destruidor, ele fornecerá um destruidor para SomeClass :

C++

class SomeClass {
~SomeClass()
{

}
};

Se você tentar inserir o snippet de destruidor fora de uma classe, ele fornecerá um
destruidor com um nome de espaço reservado:

C++
~TypeNamePlaceholder()
{

Confira também
Snippets de código
Como inserir comentários XML para
geração de documentação
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio pode ajudá-lo a documentar os elementos de código, como classes e


métodos, gerando automaticamente a estrutura padrão de comentários da
documentação XML. No tempo de compilação, você pode gerar um arquivo XML
contendo os comentários da documentação. Para habilitar essa opção, selecione Gerar
um arquivo que contém a documentação da API na guia Build>Saída das
propriedades do projeto.

 Dica

Se você quiser configurar um nome e um local não padrão para o arquivo de


documentação, adicione a propriedade DocumentationFile ao arquivo .csproj,
.vbproj ou .fsproj.

O arquivo XML gerado pelo compilador pode ser distribuído em conjunto com o
assembly do .NET para que o Visual Studio e outros IDEs possam usar o IntelliSense
para mostrar informações rápidas sobre os tipos e membros. Além disso, o arquivo XML
pode ser executado por ferramentas como DocFX e Sandcastle para gerar sites de
referência de API.

7 Observação

O comando Inserir Comentário, que insere comentários da documentação XML


automaticamente está disponível em C# e em Visual Basic. No entanto, você pode
inserir arquivos de comentários da documentação XML em C++ manualmente e
ainda gerar arquivos da documentação XML no tempo de compilação.

Para inserir comentários XML para um


elemento de código
1. coloque o cursor de texto acima do elemento que você deseja documentar, por
exemplo, um método.
2. Realize um dos seguintes procedimentos:

Digite /// em C# ou ''' em Visual Basic

No menu Editar, escolha IntelliSense>Inserir Comentário

No menu acionado com o botão direito do mouse ou menu de contexto, no


elemento de código ou logo acima dele, escolha Snippet de Código>Inserir
Comentário

O modelo XML é gerado imediatamente acima do elemento de código. Por


exemplo, quando um método é comentado, ele gera o elemento <summary>, um
elemento <param> para cada parâmetro e um elemento <returns> para
documentar o valor retornado.

3. Insira descrições para cada elemento XML para documentar totalmente o


elemento de código.

Você pode usar estilos em comentários XML que serão renderizados em Informações
Rápidas ao passar o mouse sobre o elemento. Esses estilos incluem: itálico, negrito,
marcadores e um link clicável.
7 Observação

Há um opção para ativar/desativar os comentários da documentação XML depois


de digitar /// em C# ou ''' em Visual Basic. Na barra de menus, escolha
Ferramentas>Opções para abrir a caixa de diálogo Opções. Em seguida, navegue
até Editor de Texto>C# (ou Visual Basic) >Avançado. Na seção Ajuda do Editor,
procure a opção Gerar comentários da documentação XML.

Confira também
Documentando seu código com comentários em XML (Guia do C#)
Como criar documentação XML (Visual Basic)
Comentários C++
Documentação XML (C++)
Geração de código
Passo a passo: criar um snippet de
código no Visual Studio
Artigo • 14/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode criar um snippet de código com apenas algumas etapas. Tudo o que você
precisa fazer é criar um arquivo XML, preencher os elementos apropriados e adicionar
seu código. Opcionalmente, você pode fazer uso de parâmetros de substituição e
referências de projeto. Você pode importar o snippet para a instalação do Visual Studio
usando o botão Importar no Gerenciador de Snippets de Código, que está disponível
no menuFerramentas.

Modelo de snippet
O seguinte XML é o modelo básico de snippet. Vamos explicar o processo de criação de
um snippet de código no Visual Studio usando esse modelo de snippet e, em seguida,
fazendo modificações nele.

XML

<?xml version="1.0" encoding="utf-8"?>


<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title></Title>
</Header>
<Snippet>
<Code Language="">
<![CDATA[]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Para criar um snippet de código


1. Inicie o Visual Studio. Na seção Introdução da janela Iniciar, selecione Continuar
sem código.
2. Na barra de menus, selecione Arquivo>Novo>Arquivo (ou insira o atalho de
teclado Ctrl+N) para abrir a caixa de diálogo Novo Arquivo. Selecione Arquivo
XML.

3. Adicione o código de modelo mostrado na seção Modelo de snippet deste artigo.

4. No código, preencha o título do snippet no elemento Título. Use o título Raiz


Quadrada.

5. Preencha a linguagem do snippet no atributo Language do elemento Code. Para o


C#, use CSharp, para o Visual Basic, use Visual Basic e para C++, use CPP.
 Dica

Para conferir todos os valores de linguagem disponíveis, procure a


seçãoAtributos de elemento de código na página de referênciaesquema de
snippets de código.

6. Adicione o snippet de código na seção CDATA dentro do elemento Code.

Para o C#:

XML

<Code Language="CSharp">
<![CDATA[double root = Math.Sqrt(16);]]>
</Code>

Ou para o Visual Basic:

XML

<Code Language="VB">
<![CDATA[Dim root = Math.Sqrt(16)]]>
</Code>

7 Observação

Não é possível especificar como as linhas de código na seção CDATA de um


snippet de código devem ser recuadas ou formatadas. Após a inserção, o
serviço de linguagem formata automaticamente o código inserido.

7. Salve o snippet como SquareRoot.snippet (salve-o em qualquer lugar).

Importar um snippet de código


1. Importe um snippet para a instalação do Visual Studio usando o Gerenciador de
Snippets de Código. Abra-o selecionando Ferramentas>Gerenciador de Snippets
de Código.

2. Selecione o botão Importar.

3. Vá para o local em que você salvou o snippet de código no procedimento anterior,


selecione-o e selecione Abrir.
4. A caixa de diálogo Importar Snippet de Código é aberta, solicitando que você
escolha onde deseja adicionar o snippet entre as opções no painel à direita. Uma
das opções deve ser Meus Snippets de Código. Selecione-o, selecione Concluir e,
em seguida, selecione OK.

5. O snippet é copiado para um dos seguintes locais, dependendo da linguagem de


código e da versão do Visual Studio que você está usando:

%USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual C#\My Code


Snippets%USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual
Basic\My Code Snippets

%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code


Snippets%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual
Basic\My Code Snippets

6. Teste o snippet abrindo um projeto C# ou Visual Basic. Com o arquivo de código


aberto no editor, escolha Snippets>Inserir Snippet no menu de clique com o
botão direito do mouse e, em seguida, Meus Snippets de Código. Você deverá ver
um snippet chamado Raiz Quadrada. Clique duas vezes nesse item.

O snippet de código é inserido no arquivo de código.

Campos de descrição e de atalho


1. Campos de descrição fornecem mais informações sobre o snippet de código
quando exibidos no Gerenciador de Snippets de Código. O atalho é uma marcação
que os usuários podem digitar para inserir seu snippet. Edite o snippet que você
adicionou abrindo o arquivo %USERPROFILE%\Documents\Visual Studio 2019\Code
Snippets\[Visual C# ou Visual Basic]\My Code Snippet\SquareRoot.snippet ou
%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\[Visual C# ou
Visual Basic]\My Code Snippet\SquareRoot.snippet.

 Dica

Como você está editando o arquivo no diretório em que o Visual Studio o


colocou, você não precisa importá-lo novamente para o Visual Studio.

2. Adicione os elementos Author e Description ao elemento Header e preencha-os.

3. Confirme se o elemento Header é semelhante ao seguinte exemplo:


XML

<Header>
<Title>Square Root</Title>
<Author>Myself</Author>
<Description>Calculates the square root of 16.</Description>
</Header>

4. No menu Ferramentas, abra o Gerenciador de Snippets de Código e selecione


seu snippet de código. No painel direito, observe que os campos Descrição e
Autor agora estão populados.

5. Para adicionar um atalho, adicione um elemento Shortcut dentro do elemento


Header:

XML

<Header>
<Title>Square Root</Title>
<Author>Myself</Author>
<Description>Calculates the square root of 16.</Description>
<Shortcut>sqrt</Shortcut>
</Header>
6. Salve o arquivo de snippet novamente.

7. Para testar o atalho, abra o projeto que você usou anteriormente, digite sqrt no
editor e pressione Tab (uma vez para o Visual Basic, duas vezes para o C#).

O snippet de código é inserido.

Parâmetros de substituição
Talvez seja interessante que o usuário substitua partes de um snippet de código. Por
exemplo, o ideal é que o usuário substitua um nome de variável por um no projeto
atual.

Você pode fornecer dois tipos de substituições: literais e objetos. Use o elemento Literal
para identificar um substituto para uma parte de código totalmente contido no snippet,
mas que provavelmente será personalizado depois de inserido no código (por exemplo,
uma cadeia de caracteres ou um valor numérico). Use o elemento Object para identificar
um item exigido pelo snippet de código, mas que provavelmente será definido fora do
snippet em si (por exemplo, uma instância de objeto ou um controle).

1. Para permitir que o usuário substitua o número com facilidade para calcular a raiz
quadrada dele, modifique o elemento Snippet do arquivo SquareRoot.snippet da
seguinte maneira:

XML

<Snippet>
<Code Language="CSharp">
<![CDATA[double root = Math.Sqrt($Number$);]]>
</Code>
<Declarations>
<Literal>
<ID>Number</ID>
<ToolTip>Choose the number you want the square root of.</ToolTip>
<Default>16</Default>
</Literal>
</Declarations>
</Snippet>

Observe que a substituição de literal recebe uma ID ( Number ). Essa ID é


referenciada no snippet de código colocando-a entre os caracteres $ :

XML

<![CDATA[double root = Math.Sqrt($Number$);]]>


2. Salve o arquivo de snippet.

3. Abra um projeto e insira o snippet.

O snippet de código é inserido e o literal editável é realçado para substituição.


Focalize o parâmetro de substituição para ver a dica de ferramenta para o valor.

 Dica

Se houver mais de um parâmetro substituível em um snippet, pressione Tab


para ir de um para o outro e alterar os valores.

Importar um namespace
Você pode usar um snippet de código para adicionar uma diretiva using (C#) ou uma
instrução Imports (Visual Basic) incluindo o elemento Imports. Para projetos .NET
Framework, você também pode adicionar uma referência ao projeto usando o elemento
References.

O XML a seguir mostra um snippet de código que usa o método File.Exists no


namespace System.IO e, portanto, define o elemento Imports para importar o
namespace System.IO.

XML

<?xml version="1.0" encoding="utf-8"?>


<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>File Exists</Title>
<Shortcut>exists</Shortcut>
</Header>
<Snippet>
<Code Language="CSharp">
<![CDATA[var exists = File.Exists("C:\\Temp\\Notes.txt");]]>
</Code>
<Imports>
<Import>
<Namespace>System.IO</Namespace>
</Import>
</Imports>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Confira também
Visual Studio: Referência de esquema de snippets de código
VS Code: Criar um snippet
Distribuir snippets de código como uma
extensão do Visual Studio
Artigo • 13/01/2024

Você pode fornecer os snippets de código a seus amigos e solicitar a eles que instalem
os snippets em seus próprios computadores usando o Gerenciador de Snippets de
Código. No entanto, se tiver vários snippets para distribuir ou desejar distribuí-los mais
amplamente, você poderá incluir os arquivos de snippet em uma extensão do Visual
Studio. Em seguida, os usuários do Visual Studio podem instalar a extensão para obter
os snippets.

Pré-requisitos
Instale a carga de trabalho do desenvolvimento de extensões do Visual Studio para
obter acesso aos modelos do Projeto do VSIX.

Configurar a estrutura do diretório de extensão


Neste procedimento, você usará o mesmo snippet de código Olá, Mundo criado no
Passo a passo: Criar um snippet de código. Este artigo fornece o snippet XML, portanto,
você não precisa voltar e criar um snippet.

1. Crie um novo projeto a partir do modelo de Projeto VSIX vazio e nomeie o projeto
TestSnippet .

2. No projeto TestSnippet, adicione um novo arquivo XML e nomeie-o


VBCodeSnippet.snippet . Substitua o conteúdo pelo seguinte XML:

XML

<?xml version="1.0" encoding="utf-8"?>


<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>Hello World VB</Title>
<Shortcut>HelloWorld</Shortcut>
<Description>Inserts code</Description>
<Author>MSIT</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
<SnippetType>SurroundsWith</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Code Language="VB">
<![CDATA[Console.WriteLine("Hello, World!")]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

3. No Gerenciador de Soluções, selecione o nó do projeto e adicione uma pasta que


tenha o nome que deseja que o snippet tenha no Gerenciador de Snippets de
Código. Neste caso, deve ser HelloWorldVB.

4. Mova o arquivo .snippet para a pasta HelloWorldVB.

5. Selecione o arquivo .snippet no Gerenciador de Soluções e, na janela


Propriedades, garanta que Ação de Build esteja definida como Conteúdo, Copiar
para Diretório de Saída esteja definido como Copiar sempre e Incluir no VSIX
esteja definido como true.

Adicionar o arquivo .pkgdef


1. Adicione um arquivo de texto à pasta HelloWorldVB e dê a ele o nome de
HelloWorldVB.pkgdef. Esse arquivo é usado para adicionar determinadas chaves ao
Registro. Nesse caso, ele adiciona uma nova subchave à chave
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\16.0\Languages\CodeEx
pansions\Basic.

2. Adicione as seguintes linhas ao arquivo.

txt

// Visual Basic
[$RootKey$\Languages\CodeExpansions\Basic\Paths]
"HelloWorldVB"="$PackageFolder$"

Se você examinar essa chave, poderá ver como especificar idiomas diferentes do
Visual Basic.
3. Selecione o arquivo .pkgdef no Gerenciador de Soluções e, na janela
Propriedades, garanta que:

A opção Ação de Build esteja definida como Conteúdo


A opção Copiar para Diretório de Saída esteja definida como Sempre copiar
A opção Incluir no VSIX esteja definida como true

4. Adicione o arquivo .pkgdef como um ativo no manifesto VSIX. No arquivo


source.extension.vsixmanifest, vá para a guia Ativos e clique em Novo.

5. Na caixa de diálogo Adicionar Novo Ativo, defina o Tipo como


Microsoft.VisualStudio.VsPackage, a Origem como Arquivo no sistema de
arquivos e o Caminho como HelloWorldVB.pkgdef (que deve aparecer na lista
suspensa). Selecione OK para salvar esse novo ativo.

Registrar o snippet
1. Acesse Ferramentas>Gerenciador de Snippets de Código e defina a Linguagem
como Basic.

2. Selecione Adicionar..., navegue até a pasta HelloWorldVB do diretório da solução e


escolha Selecionar Pasta.

3. HelloWorldVB agora é uma das pastas de snippet de código. Expanda a pasta para
ver o snippet HelloWorldVB. Selecione OK para salvar essa pasta recém-
adicionada.

Teste o snippet
1. Agora você pode verificar se o snippet de código funciona na instância
experimental do Visual Studio. A instância experimental é uma segunda cópia do
Visual Studio, que é separada daquela que você usa para escrever código. Ela
permite que você trabalhe em uma extensão sem afetar seu ambiente de
desenvolvimento.

2. Compile o projeto e comece a depuração.

Uma segunda instância do Visual Studio é exibida.

3. Teste o snippet. Na instância experimental, abra um projeto do Visual Basic e abra


um dos arquivos de código. Coloque o cursor em algum lugar no código, clique
com o botão direito do mouse e, no menu de contexto, selecione Snippet e,
depois, Inserir Snippet.
4. Clique duas vezes na pasta HelloWorldVB. Você verá um pop-up Inserir snippet:
HelloWorldVB > que tem uma lista suspensa HelloWorldVB. Clique duas vezes na
lista suspensa HelloWorldVB.

A seguinte linha é adicionada ao arquivo de código:

VB

Console.WriteLine("Hello, World!")

Conteúdo relacionado
O que são snippets de código?
Referência de esquema dos snippets de
código
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os Snippets de Código IntelliSense são partes de código pré-criadas que estão prontas
para serem inseridas no seu aplicativo com o Visual Studio. Você pode aumentar a
produtividade fornecendo snippets de código que reduzem a quantidade de tempo
gasto digitando código repetitivo ou procurando exemplos. É possível usar o esquema
XML do Snippet de Código IntelliSense para criar seus próprios snippets de código e
adicioná-los aos snippets de código que o Visual Studio já contém.

Elemento Assembly
Especifica o nome do assembly referenciado pelo snippet de código.

O valor de texto do elemento Assembly é o nome de texto amigável do assembly, como


System.dll , ou seu nome forte, como
System,Version=1.0.0.1,Culture=neutral,PublicKeyToken=9b35aa323c18d4fb1 .

XML

<Assembly>
AssemblyName
</Assembly>

Elemento pai Descrição

Elemento Contém informações sobre referências de assembly exigidas pelo snippet de


Reference código.

Um valor de texto é obrigatório. Esse texto especifica o assembly ao qual o snippet de


código faz referência.

Elemento Author
Especifica o nome do autor do snippet. O Gerenciador de Snippets de Código exibe o
nome armazenado no elemento Author do snippet de código.
XML

<Author>
Code Snippet Author
</Author>

Elemento pai Descrição

Elemento Header Contém informações gerais sobre o snippet de código.

Um valor de texto é obrigatório. Esse texto especifica o autor do snippet de código.

Elemento de código
Fornece um contêiner para blocos de códigos curtos.

Palavras-chave
Duas palavras reservadas estão disponíveis para uso no texto do elemento Code : $end$
e $selected$ . $end$ marca o local para colocar o cursor depois que o snippet de código
é inserido. $selected$ representa o texto selecionado no documento que deve ser
inserido no snippet quando ele é invocado. Por exemplo, dado um snippet que inclui:

$selected$ is a great color.

Se a palavra "Blue" for selecionada, quando o usuário invoca o modelo, o resultado é:

Blue is a great color.

Você não pode usar o $end$ ou $selected$ mais de uma vez em um snippet de código.
Nesse caso, apenas a segunda instância é reconhecida. Dado um snippet que inclui:

$selected$ is a great color. I love $selected$.

Se a palavra "Blue" for selecionada, o resultado é:


is a great color. I love Blue.

O espaço inicial aparece porque há um espaço entre $selected$ e is .

Todas as outras palavras-chave $ são dinamicamente definidas nas marcas <Literal> e


<Object> .

A seguir está a estrutura do Elemento de código:

XML

<Code Language="Language"
Kind="method body/method decl/type decl/page/file/any"
Delimiter="Delimiter">
Code to insert
</Code>

Um valor de texto é obrigatório. Esse texto especifica o código, juntamente como os


literais e objetos, que você pode usar quando esse snippet de código é inserido em um
arquivo de código.

Atributos
Há três atributos disponíveis para o Elemento de código:

Language - Atributo requerido que especifica a linguagem do snippet de código.


O valor pode ser um dos seguintes:

Valor Descrição

VB Identifica um snippet de código Visual Basic.

CSharp Identifica um snippet de código C#.

CPP Identifica um snippet de código C++.

XAML Identifica um snippet de código XAML.

XML Identifica um snippet de código XML.

JavaScript Identifica um snippet de código JavaScript.

TypeScript Identifica um snippet de código TypeScript.

SQL Identifica um snippet de código SQL.


Valor Descrição

HTML Identifica um snippet de código HTML.

O atributo Tipo - Opcional que especifica o tipo de código que o snippet contém.
O valor pode ser um dos seguintes:

Valor Descrição

method Especifica que o snippet de código é um corpo de método e, portanto, deve ser
body inserido em uma declaração de método.

method Especifica que o snippet de código é um método e, portanto, deve ser inserido em
decl uma classe ou um módulo.

type Especifica que o snippet de código é um tipo e, portanto, deve ser inserido em
decl uma classe, um módulo ou um namespace.

file Especifica que o snippet é um arquivo de código completo. Esses snippets de


código podem ser inseridos sozinhos em um arquivo de código ou dentro de um
namespace.

any Especifica que o snippet pode ser inserido em qualquer lugar. Essa marca é usada
para snippets de código que não dependem de contexto, como os comentários.

Delimiter - Atributo Opcional que especifica o delimitador usado para descrever os


literais e os objetos no código. Por padrão, o delimitador é $ .

Elemento pai

Elemento pai Descrição

Elemento Contém as referências, as importações, as declarações e o código do snippet


Snippet de código.

Elemento CodeSnippet
Permite que você especifique um título e vários Snippets de Código IntelliSense, que
podem ser inseridos em arquivos de código do Visual Studio.

XML

<CodeSnippet Format="x.x.x">
<Header>... </Header>
<Snippet>... </Snippet>
</CodeSnippet>
Atributo Descrição

Format Atributo obrigatório. Especifica a versão do esquema do snippet de código. O atributo


Format deve ser uma cadeia de caracteres na sintaxe x.x.x, em que cada "x" representa
um valor numérico do número da versão. O Visual Studio vai ignorar snippets de
código com atributos Format que ele não entende.

Elemento Descrição
filho

Elemento Elemento necessário. Contém informações gerais sobre o snippet de código. Deve
Header haver exatamente um elemento Header em um snippet de código.

Elemento Elemento necessário. Contém o código que será inserido pelo Visual Studio. Deve
Snippet haver exatamente um elemento Snippet em um snippet de código.

Elemento pai Descrição

Elemento CodeSnippets Elemento raiz do esquema XML do snippet de código.

Elemento CodeSnippets
Agrupa elementos CodeSnippet. O elemento CodeSnippets é o elemento raiz do
esquema XML do snippet de código.

XML

<CodeSnippets>
<CodeSnippet>... </CodeSnippet>
</CodeSnippets>

Elemento Descrição
filho

Elemento Elemento opcional. Elemento pai de todos os dados do snippet de código. Pode
CodeSnippet ser que não haja nenhum ou mais de um elemento CodeSnippet em um elemento
CodeSnippets .

Elemento Declarations
Especifica os literais e os objetos que compõem as partes de um snippet de código que
você pode editar.
XML

<Declarations>
<Literal>... </Literal>
<Object>... </Object>
</Declarations>

Elemento Descrição
filho

Elemento Elemento opcional. Define os literais do snippet de código que você pode editar.
Literal Pode ser que não haja nenhum ou mais de um elemento Literal em um elemento
Declarations .

Elemento Elemento opcional. Define os objetos do snippet de código que você pode editar.
Object Pode ser que não haja nenhum ou mais de um elemento Object em um elemento
Declarations .

Elemento pai Descrição

Elemento Contém as referências, as importações, as declarações e o código do snippet


Snippet de código.

Elemento Default
Especifica o valor padrão do literal ou do objeto para um Snippet de Código
IntelliSense.

XML

<Default>
Default value
</Default>

Elemento pai Descrição

Elemento Literal Define os campos de literal do snippet de código que você pode editar.

Elemento Object Define os campos de objeto do snippet de código que você pode editar.

Um valor de texto é obrigatório. Esse texto especifica o valor padrão do literal ou do


objeto que preenche os campos do snippet de código que você pode editar.

Elemento Description
Especifica as informações descritivas sobre o conteúdo de um Snippet de Código
IntelliSense.

XML

<Description>
Code Snippet Description
</Description>

Elemento pai Descrição

Elemento Header Contém informações gerais sobre o snippet de código.

Um valor de texto é obrigatório. Esse texto descreve o snippet de código.

Elemento Function
Especifica uma função a ser executada quando o literal ou o objeto receber foco no
Visual Studio.

7 Observação

Nem todas as linguagens dão suporte a elementos function . Consulte a


documentação específica da linguagem para saber quais funções estão disponíveis.

XML

<Function>
FunctionName
</Function>

Elemento pai Descrição

Elemento Literal Define os campos de literal do snippet de código que você pode editar.

Elemento Object Define os campos de objeto do snippet de código que você pode editar.

Um valor de texto é obrigatório. Esse texto especifica uma função a ser executada
quando o campo de literal ou objeto recebe foco no Visual Studio.

Elemento Header
Especifica informações gerais sobre o Snippet de Código IntelliSense.

XML

<Header>
<Title>... </Title>
<Author>... </Author>
<Description>... </Description>
<HelpUrl>... </HelpUrl>
<SnippetTypes>... </SnippetTypes>
<Keywords>... </Keywords>
<Shortcut>... </Shortcut>
</Header>

Elemento Descrição
filho

Elemento Elemento opcional. O nome da pessoa ou da empresa que criou o snippet de


Author código. Pode ser que não haja nenhum ou um elemento Author em um elemento
Header .

Elemento Elemento opcional. Uma descrição do snippet de código. Pode ser que não haja
Description nenhum ou um elemento Description em um elemento Header .

Elemento Elemento opcional. Uma URL que contém mais informações sobre o snippet de
HelpUrl código. Pode ser que não haja nenhum ou um elemento HelpURL em um
elemento Header. Observação: o Visual Studio não usa o elemento HelpUrl . O
elemento faz parte do esquema XML do Snippet de Código IntelliSense e
qualquer snippet de código que contenha o elemento será válido, mas o valor do
elemento nunca será usado.

Elemento Elemento opcional. Agrupa elementos Keyword . Pode ser que não haja nenhum
Keywords ou um elemento Keywords em um elemento Header .

Elemento Elemento opcional. Especifica o texto de atalho que pode ser usado para inserir o
Shortcut snippet. Pode ser que não haja nenhum ou um elemento Shortcut em um
elemento Header .

Elemento Elemento opcional. Agrupa elementos SnippetType . Pode ser que não haja
SnippetTypes nenhum ou um elemento SnippetTypes em um elemento Header . Se não houver
nenhum elemento SnippetTypes , o snippet de código sempre será válido.

Elemento Elemento necessário. O nome amigável do snippet de código. Deve haver


Title exatamente um elemento Title em um elemento Header .

Elemento pai Descrição

Elemento CodeSnippet Elemento pai de todos os dados do snippet de código.


Elemento HelpUrl
Especifica uma URL que fornece mais informações sobre um snippet de código.

7 Observação

O Visual Studio não usa o elemento HelpUrl . O elemento faz parte do esquema
XML do Snippet de Código IntelliSense e qualquer snippet de código que contenha
o elemento será válido, mas o valor do elemento nunca será usado.

XML

<HelpUrl>
www.microsoft.com
</HelpUrl>

Elemento pai Descrição

Elemento Header Contém informações gerais sobre o snippet de código.

Um valor de texto é opcional. Esse texto especifica a URL a ser visitada para obter mais
informações sobre um snippet de código.

Elemento ID
Especifica um identificador exclusivo para um elemento Literal ou Object . Dois literais
ou objetos no mesmo snippet de código não podem ter o mesmo valor de texto em
seus elementos ID . Os literais e objetos não podem conter um elemento ID com um
valor de fim. O valor $end$ é reservado e usado para marcar o local onde colocar o
cursor depois que o snippet de código é inserido.

XML

<ID>
Unique Identifier
</ID>

Elemento pai Descrição

Elemento Literal Define os campos de literal do snippet de código que você pode editar.

Elemento Object Define os campos de objeto do snippet de código que você pode editar.
Um valor de texto é obrigatório. Esse texto especifica o identificador exclusivo do objeto
ou literal.

Elemento Import
Especifica os namespaces importados usados por um snippet de código IntelliSense.

XML

<Import>
<Namespace>... </Namespace>
</Import>

Elemento Descrição
filho

Elemento Elemento necessário. Especifica o namespace usado pelo snippet de código. Deve
Namespace haver exatamente um elemento Namespace em um elemento Import .

Elemento pai Descrição

Elemento Imports Elemento de agrupamento para elementos Import.

Elemento Imports
Agrupa elementos Import individuais.

XML

<Imports>
<Import>... </Import>
</Imports>

Elemento Descrição
filho

Elemento Elemento opcional. Contém os namespaces importados para o snippet de código.


Import Pode ser haver zero ou mais elementos Import em um elemento Imports .

Elemento pai Descrição

Elemento Contém as referências, as importações, as declarações e o código do snippet


Snippet de código.
Elemento Keyword
Especifica uma palavra-chave personalizada para o snippet de código. As palavras-chave
de snippet de código são usadas pelo Visual Studio e representam uma maneira
padronizada de os provedores de conteúdo online adicionarem palavras-chave
personalizadas para pesquisa ou categorização.

XML

<Keyword>
Code Snippet Keyword
</Keyword>

Elemento pai Descrição

Elemento Keywords Agrupa elementos Keyword individuais.

Um valor de texto é obrigatório. A palavra-chave para o snippet de código.

Elemento Keywords
Agrupa elementos Keyword individuais. As palavras-chave de snippet de código são
usadas pelo Visual Studio e representam uma maneira padronizada de os provedores de
conteúdo online adicionarem palavras-chave personalizadas para pesquisa ou
categorização

XML

<Keywords>
<Keyword>... </Keyword>
<Keyword>... </Keyword>
</Keywords>

Elemento Descrição
filho

Elemento Elemento opcional. Contém palavras-chave individuais para o snippet de código.


Keyword Pode ser que não haja nenhum ou mais de um elemento Keyword em um elemento
Keywords .

Elemento pai Descrição

Elemento Header Contém informações gerais sobre o snippet de código.


Elemento Literal
Define os literais do snippet de código que você pode editar. O elemento Literal é
usado para identificar um substituto para uma parte de código totalmente contido no
snippet, mas que provavelmente será personalizado depois de inserido no código. Por
exemplo, cadeias de caracteres literais, valores numéricos e alguns nomes de variáveis
devem ser declarados como literais.

Os literais e objetos não podem conter um elemento ID com um valor de selecionado


ou fim. O valor $selected$ representa o texto selecionado no documento que deve ser
inserido no snippet quando ele é invocado. $end$ marca o local para colocar o cursor
depois que o snippet de código é inserido.

XML

<Literal Editable="true/false">
<ID>... </ID>
<ToolTip>... </ToolTip>
<Default>... </Default>
<Function>... </Function>
</Literal>

Atributo Descrição

Editable Atributo Boolean opcional. Especifica se você pode editar ou não o literal depois de
inserido o snippet de código. O valor padrão desse atributo é true .

Elemento Descrição
filho

Elemento Elemento necessário. Especifica o valor padrão do literal quando você insere o
Default snippet de código. Deve haver exatamente um elemento Default em um elemento
Literal .

Elemento Elemento opcional. Especifica uma função a ser executada quando o literal recebe
Function foco no Visual Studio. Pode ser que não haja nenhum ou um elemento Function em
um elemento Literal .

Elemento Elemento necessário. Especifica um identificador exclusivo para o literal. Deve haver
ID exatamente um elemento ID em um elemento Literal .

Elemento Elemento opcional. Descreve o valor esperado e o uso do literal. Pode haver zero ou
ToolTip um elemento Tooltip em um elemento Literal .

Elemento pai Descrição


Elemento pai Descrição

Elemento Contém os literais e objetos de um snippet de código que você pode


Declarations editar.

Elemento Namespace
Especifica o namespace que deve ser importado para compilação e execução do snippet
de código. O namespace especificado no elemento Namespace é adicionado
automaticamente a uma diretiva using ou instrução Imports no início do código, se
ainda não existir.

XML

<Namespace>
Namespace
</Namespace>

Elemento pai Descrição

Elemento Import Importa o namespace especificado.

Um valor de texto é obrigatório. Esse texto especifica um namespace que o snippet de


código supõe que seja importado.

Elemento Object
Define os objetos do snippet de código que você pode editar. O elemento Object é
usado para identificar um item que é exigido pelo snippet de código, mas que
provavelmente será definido fora do snippet em si. Por exemplo, os controles do
Windows Forms, os controles do ASP.NET, as instâncias do objeto e as instâncias do tipo
devem ser declarados como objetos. As declarações de objeto exigem que um tipo seja
especificado, o que é feito com o elemento Type .

XML

<Object Editable="true/false">
<ID>... </ID>
<Type>... </Type>
<ToolTip>... </ToolTip>
<Default>... </Default>
<Function>... </Function>
</Object>
Atributo Descrição

Editable Atributo Boolean opcional. Especifica se você pode editar ou não o literal depois de
inserido o snippet de código. O valor padrão desse atributo é true .

Elemento Descrição
filho

Elemento Elemento necessário. Especifica o valor padrão do literal quando você insere o
Default snippet de código. Deve haver exatamente um elemento Default em um elemento
Literal .

Elemento Elemento opcional. Especifica uma função a ser executada quando o literal recebe
Function foco no Visual Studio. Pode ser que não haja nenhum ou um elemento Function em
um elemento Literal .

Elemento Elemento necessário. Especifica um identificador exclusivo para o literal. Deve haver
ID exatamente um elemento ID em um elemento Literal .

Elemento Elemento opcional. Descreve o valor esperado e o uso do literal. Pode haver zero ou
ToolTip um elemento Tooltip em um elemento Literal .

Elemento Elemento necessário. Especifica o tipo do objeto. Deve haver exatamente um


Type elemento Type em um elemento Object .

Elemento pai Descrição

Elemento Contém os literais e objetos de um snippet de código que você pode


Declarations editar.

Elemento Reference
Especifica informações sobre as referências de assembly exigidas pelo snippet de
código.

XML

<Reference>
<Assembly>... </Assembly>
<Url>... </Url>
</Reference>

Elemento Descrição
filho
Elemento Descrição
filho

Elemento Elemento necessário. Contém o nome do assembly referenciado pelo snippet de


Assembly código. Deve haver exatamente um elemento Assembly em um elemento Reference .

Elemento Elemento opcional. Contém uma URL que fornece mais informações sobre o
Url assembly referenciado. Pode ser que não haja nenhum ou um elemento Url em um
elemento Reference .

Elemento pai Descrição

Elemento References Elemento de agrupamento de elementos Reference .

Elemento References
Agrupa elementos Reference individuais.

XML

<References>
<Reference>... </Reference>
</References>

Elemento Descrição
filho

Elemento Elemento opcional. Contém informações sobre referências de assembly para o


Reference snippet de código. Pode ser que não haja nenhum ou mais de um elemento
Reference em um elemento References .

Elemento pai Descrição

Elemento Contém as referências, as importações, as declarações e o código do snippet


Snippet de código.

Elemento Shortcut
Especifica o texto do atalho usado para inserir o snippet. O valor de texto de um
elemento Shortcut pode conter apenas caracteres alfanuméricos e sublinhados ( _ ).

U Cuidado
Não há suporte para o caractere sublinhado (_) em atalhos de snippet de C++.

XML

<Shortcut>
Shortcut Text
</Shortcut>

Elemento pai Descrição

Elemento Header Contém informações gerais sobre o snippet de código.

Um valor de texto é opcional. Esse texto é usado como um atalho para inserção do
snippet de código.

Elemento Snippet
Especifica as referências, as importações, as declarações e o código do snippet de
código.

XML

<Snippet>
<References>... </References>
<Imports>... </Imports>
<Declarations>... </Declarations>
<Code>... </Code>
</Snippet>

Elemento Descrição
filho

Elemento Elemento necessário. Especifica o código que você deseja inserir em um arquivo de
Code documentação. Deve haver exatamente um elemento Code em um elemento
Snippet .

Elemento Elemento opcional. Especifica os literais e os objetos que compõem as partes de


Declarations um snippet de código que você pode editar. Pode ser que não haja nenhum ou
um elemento Declarations em um elemento Snippet .

Elemento Elemento opcional. Agrupa elementos Import individuais. Pode ser que não haja
Imports nenhum ou um elemento Imports em um elemento Snippet .

Elemento Elemento opcional. Agrupa elementos Reference individuais. Pode ser que não
References haja nenhum ou um elemento References em um elemento Snippet .
Elemento Descrição
pai

Elemento Permite que você especifique um título e vários Snippets de Código IntelliSense,
CodeSnippet que podem ser inseridos em arquivos de código do Visual Studio.

Elemento SnippetType
Especifica como o Visual Studio insere o snippet de código.

XML

<SnippetType>
SurroundsWith/Expansion
</SnippetType>

Elemento pai Descrição

Elemento SnippetTypes Agrupa elementos SnippetType .

O valor de texto deve ser um dos seguintes valores:

SurroundsWith : permite que o snippet de código seja colocado em torno de uma


parte do código selecionada.

Expansion : permite que o snippet de código seja inserido onde está o cursor.

Refactoring : especifica que o snippet de código é usado durante refatoração de

C#. Refactoring não pode ser usado em snippets de código personalizados.

Elemento SnippetTypes
Agrupa elementos SnippetType individuais. Se o elemento SnippetTypes não estiver
presente, o snippet de código poderá ser inserido em qualquer lugar no código.

XML

<SnippetTypes>
<SnippetType>... </SnippetType>
<SnippetType>... </SnippetType>
</SnippetTypes>
Elemento Descrição
filho

Elemento Elemento opcional. Especifica como o Visual Studio insere o snippet de código no
SnippetType código. Pode ser que não haja nenhum ou mais de um elemento SnippetType em
um elemento SnippetTypes .

Elemento pai Descrição

Elemento Header Especifica informações gerais sobre o snippet de código.

Elemento Title
Especifica o título do snippet de código. O título armazenado no elemento Title do
snippet de código aparece no Selecionador de Snippets de Código e na descrição do
snippet de código no Gerenciador de Snippets de Código.

XML

<Title>
Code Snippet Title
</Title>

Elemento pai Descrição

Elemento Header Especifica informações gerais sobre o snippet de código.

Um valor de texto é obrigatório. Esse texto especifica o título do snippet de código.

Elemento ToolTip
Descreve o valor esperado e o uso de um literal ou um objeto em um snippet de
código, que o Visual Studio exibe em uma Dica de Ferramenta quando inserir o snippet
de código em um projeto. O texto Dica de Ferramenta é exibido quando o mouse passa
sobre o literal ou objeto depois que o snippet de código foi inserido.

XML

<ToolTip>
ToolTip description
</ToolTip>
Elemento pai Descrição

Elemento Literal Define os campos de literal do snippet de código que você pode editar.

Elemento Object Define os campos de objeto do snippet de código que você pode editar.

Um valor de texto é obrigatório. Esse texto especifica a descrição da Dica de Ferramenta


a ser associada ao objeto ou literal no snippet de código.

Elemento Type
Especifica o tipo do objeto. O elemento Object é usado para identificar um item que é
exigido pelo snippet de código, mas que provavelmente será definido fora do snippet
em si. Por exemplo, os controles do Windows Forms, os controles do ASP.NET, as
instâncias do objeto e as instâncias do tipo devem ser declarados como objetos. As
declarações de objeto exigem que um tipo seja especificado, o que é feito com o
elemento Type .

XML

<Type>
Type
</Type>

Elemento pai Descrição

Elemento Object Define os campos de objeto do snippet de código que você pode editar.

Um valor de texto é obrigatório. Esse texto especifica o tipo do objeto. Por exemplo:

XML

<Type>System.Data.SqlClient.SqlConnection</Type>

Elemento Url
Especifica uma URL que fornece mais informações sobre o assembly referenciado.

7 Observação

O elemento Url tem suporte apenas em projetos do Visual Basic.


XML

<Url>
www.microsoft.com
</Url>

Elemento pai Descrição

Elemento Reference Especifica as referências de assembly exigidas pelo snippet de código.

Um valor de texto é obrigatório. Esse texto especifica uma URL com mais informações
sobre o assembly referenciado. Essa URL é exibida quando a referência não pode ser
adicionada ao projeto.

Confira também
Snippets de código
Passo a passo: Para criar um snippet de código
Solucionar problemas com snippets de
código do IntelliSense
Artigo • 21/03/2023

Aplica-se a: Visual Studio 2022

Este artigo ajuda você a solucionar problemas com snippets de código do IntelliSense.
Normalmente, os problemas são causados por:

Um arquivo de snippet corrompido.


Conteúdo incorreto no arquivo snippet.

O snippet não pode ser arrastado de


Explorador de Arquivos para um arquivo de
origem do Visual Studio
O XML no arquivo snippet pode estar corrompido. O Editor XML no Visual Studio
pode localizar problemas na estrutura XML.
O arquivo snippet pode não estar em conformidade com o esquema snippet. O
Editor XML no Visual Studio pode localizar problemas na estrutura XML.

O código tem erros de compilador que não são


realçados
Você pode estar perdendo uma referência de projeto. Examine a documentação
sobre o snippet. Se a referência não for encontrada no computador, você precisará
instalá-la. Inserir um snippet deve adicionar todas as referências necessárias ao
projeto. Se o snippet estiver ausente das informações de referência, ele poderá ser
relatado ao criador do snippet como um erro.
Uma variável pode ser indefinida. Variáveis indefinidas em um snippet devem ser
realçadas. Caso contrário, isso pode ser relatado ao criador do snippet como um
erro.

Comentários
Esta página foi útil?
 Yes  No

Fornecer comentários sobre o produto


Ações Rápidas
Artigo • 13/01/2024

As Ações Rápidas permitem refatorar, gerar ou, de outro modo, modificar o código de
maneira fácil com uma única ação. As Ações Rápidas estão disponíveis para C#, C++ e
os arquivos de código do Visual Basic. Algumas ações são específicas para uma
linguagem e outras se aplicam a todas as linguagens.

É possível usar as Ações rápidas para:

Aplicar uma correção de código para uma violação de regra do analisador de


código

Suprimir uma violação de regra do analisador de código ou configurar sua


gravidade

Aplicar uma refatoração (por exemplo, embutir uma variável temporária)

Gerar um código (por exemplo, introduzir uma variável local)

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Refatoração (Visual Studio para Mac).

As Ações Rápidas podem ser aplicadas usando os ícones de lâmpada ou chave de


fenda ou pressionando Ctrl+. quando o cursor estiver em uma linha de código em
que uma ação está disponível. Você verá uma lâmpada de erro se houver uma linha
ondulada vermelha indicando um erro e o Visual Studio terá uma solução disponível
para esse erro.

Para qualquer linguagem, terceiros podem oferecer sugestões e diagnósticos


personalizados, por exemplo, como parte de um SDK, e as lâmpadas do Visual Studio
aparecerão de acordo com essas regras.

Ícones
O ícone exibido quando uma Ação Rápida fica disponível oferece uma indicação do tipo
de correção ou que a refatoração está disponível. O ícone de chave de fenda indica
apenas que há ações disponíveis para alterar o código, mas não é necessário usá-las. O
ícone de lâmpada amarela indica que há ações disponíveis que você deve executar
para melhorar o seu código. O ícone de lâmpada de erro indica que há uma ação
disponível que corrige um erro no seu código.

Para ver uma lâmpada ou chave de fenda


Se uma correção estiver disponível, lâmpadas aparecerão:

Quando você passa o mouse no local de um erro

Na margem esquerda do editor quando você move o cursor para a linha aplicável
do código

Pressione Ctrl+. em qualquer lugar em uma linha para ver uma lista de Ações Rápidas e
refatorações disponíveis.

Para ver possíveis correções, selecione a seta para baixo ao lado da lâmpada ou do link
Mostrar possíveis correções. Uma lista de Ações Rápidas disponíveis é exibida.

 Dica

Para saber como desativar algumas das Ações Rápidas de correção de código,
consulte Desabilitar a análise de código-fonte para .NET.

Conteúdo relacionado
Ações Rápidas comuns
Estilos de código e ações rápidas
Visual Studio IntelliCode
Escrever e refatorar o código (C++)
Ações Rápidas comuns
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As seções deste tópico listam algumas das Ações Rápidas comuns aplicáveis ao código
do C# e do Visual Basic. Essas ações são correções de código para diagnósticos do
compilador ou os analisadores do .NET Compiler Platform internos do Visual Studio.

Ações que corrigem erros


Nesta seção, as Ações Rápidas corrigem erros no código que podem fazer com que um
build falhe. Quando as Ações Rápidas estão disponíveis para corrigir um erro em uma
linha de código, o ícone exibido na margem ou abaixo do rabisco vermelho é uma
lâmpada com um "x" vermelho.

Corrigir o símbolo ou a palavra-chave incorreta


Se você digitar incorretamente um tipo ou uma palavra-chave no Visual Studio
acidentalmente, essa Ação Rápida corrigirá esse erro de forma automática. Você verá
esses itens no Menu de lâmpada como "Alterar '<palavra digitada incorretamente>'
para '<palavra correta>'". Por exemplo:

C#

C#

// Before
private viod MyMethod()
{
}

// Change 'viod' to 'void'

// After
private void MyMethod()
{
}
ID do erro Linguagens Aplicáveis

CS0103, BC30002 C# e Visual Basic

Resolver conflitos de mesclagem do git


Estas Ações rápidas permitem resolver conflitos de mesclagem do git "fazendo uma
alteração", que remove o código e os marcadores conflitantes.

C#

// Before
private void MyMethod()
{
if (false)
{

}
}

// Take changes from 'HEAD'

// After
private void MyMethod()
{
if (true)
{

}
}

ID do erro Linguagens Aplicáveis Versão com suporte

CS8300, BC37284 C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Ações que removem código desnecessário

Remover usos/importações desnecessários


A Ação Rápida Remover Usos/Importações Desnecessários remove todas as instruções
para o arquivo atual using e Import não utilizadas. Ao selecionar esse item, as
importações de namespace não utilizadas são removidas.

Linguagens Aplicáveis Versão com suporte


Linguagens Aplicáveis Versão com suporte

C# e Visual Basic Visual Studio 2015 e posterior

Remover conversão desnecessária


Se você converter um tipo em outro que não exige uma conversão, o item de Ação
Rápida Remover Conversão Desnecessária removerá a conversão do código.

C#

C#

// before
int number = (int)3;

// Remove Unnecessary Cast

// after
int number = 3;

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0004 C# e Visual Basic Visual Studio 2015 e posterior

Remover variáveis não utilizadas


Essa Ação Rápida permite remover variáveis que foram declaradas, mas nunca foram
usadas no código.

C#

// Before
public MyMethod()
{
var unused = 8;
var used = 1;
return DoStuff(used);
}

// Remove unused variables

// After
public MyMethod()
{
var used = 1;
return DoStuff(used);
}

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

CS0219, BC42024 C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Remover o tipo da expressão de valor padrão


Esta Ação Rápida remove o tipo de valor de uma expressão de valor padrão e usa o
literal padrão quando o compilador pode inferir o tipo da expressão.

C#

// Before
void DoWork(CancellationToken cancellationToken =
default(CancellationToken)) { ... }

// Simplify default expression

// After
void DoWork(CancellationToken cancellationToken = default) { ... }

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0034 C# 7.1+ Visual Studio 2017 versão 15.3 e posteriores

Ações que adicionam código ausente

Adicionar usos/importações para tipos em assemblies de


referência, pacotes NuGet ou outros tipos na solução
O uso dos tipos localizados em outros projetos na sua solução exibirá automaticamente
a Ação Rápida, no entanto, os outros precisam ser habilitados na aba Ferramentas >
Opções > Editor de texto > C# ou Visual Basic > Avançado:

Sugerir usos/importações para tipos em assemblies de referência


Sugerir usos/importações para tipos em pacotes NuGet

Quando essa opção estiver habilitada, se você usar um tipo em um namespace que não
foi importado, mas que existe em um assembly de referência ou pacote NuGet, a
instrução de uso ou importação será criada.
C#

C#

// Before
Debug.WriteLine("Hello");

// using System.Diagnostics;

// After
using System.Diagnostics;

Debug.WriteLine("Hello");

ID do diagnóstico Linguagens Aplicáveis

CS0103, BC30451 C# e Visual Basic

Adicionar maiúsculas e minúsculas ausentes/maiúsculas e


minúsculas padrão/ambas
Ao criar uma instrução switch no C# ou uma instrução Select Case no Visual Basic, é
possível usar uma Ação de Código para adicionar automaticamente itens com
maiúsculas e minúsculas ausentes, uma instrução com maiúsculas e minúsculas padrão
ou ambos.

Considere a seguinte enumeração e a instrução switch ou Select Case vazia:

C#

C#

enum MyEnum
{
Item1,
Item2,
Item3
}

...

MyEnum myEnum = MyEnum.Item1;

switch(myEnum)
{
}

Ao usar a Ação Rápida Adicionar Ambos, os casos que faltam são preenchidos e um
caso padrão é adicionado:

C#

C#

switch(myEnum)
{
case MyEnum.Item1:
break;
case MyEnum.Item2:
break;
case MyEnum.Item3:
break;
default:
break;
}

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0010 C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Adicionar verificações de null para parâmetros


Essa Ação Rápida permite que você adicione uma verificação ao código para determinar
se um parâmetro é nulo.

C#

// Before
class MyClass
{
public string MyProperty { get; set; }

public MyClass(string myProperty) // cursor inside myProperty


{
MyProperty = myProperty;
}
}

// Add null check


// After
class MyClass
{
public string MyProperty { get; set; }

public MyClass(string myProperty)


{
MyProperty = myProperty ?? throw new
ArgumentNullException(nameof(myProperty));
}
}

Linguagens Aplicáveis Versão com suporte

C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Adicionar nome do argumento


C#

// Before
var date = new DateTime(1997, 7, 8);

// Include argument name 'year' (include trailing arguments)

// After
var date = new DateTime(year: 1997, month: 7, day: 8);

Linguagens Aplicáveis Versão com suporte

C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Adicionar chaves
A Ação rápida Adicionar chaves insere chaves em torno de instruções if de linha única.

C#

// Before
if (true)
return "hello,world";

// Add braces

// After
if (true)
{
return "hello,world";
}

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0011 C# Visual Studio 2017 e posterior

Adicionar e ordenar modificadores


Estas Ações rápidas ajudam a organizar os modificadores, permitindo que você
classifique modificadores de acessibilidade existentes e adicione os que estão ausentes.

C#

// Before
enum Color
{
Red, White, Blue
}

// Add accessibility modifiers

// After
internal enum Color
{
Red, White, Blue
}

C#

// Before
static private int thisFieldIsPublic;

// Order modifiers

// After
private static int thisFieldIsPublic;

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0036 C# e Visual Basic Visual Studio 2017 versão 15.5 e posterior

IDE0040 C# e Visual Basic Visual Studio 2017 versão 15.5 e posterior

Transformações de código
Converter construtor 'if' em 'switch'
Essa Ação Rápida permite que você converta um construtor if-then-else em um
construtor switch.

C#

C#

// Before
if (obj is string s)
{
Console.WriteLine("obj is a string: " + s);
}

else if (obj is int i && i > 10)


{
Console.WriteLine("obj is an int greater than 10");
}

// Convert to switch

// After
switch (obj)
{
case string s:
Console.WriteLine("Obj is a string: " + s);
break;
case int i when i > 10:
Console.WriteLine("obj is an int greater than 10");
break;
}

Linguagens Aplicáveis Versão com suporte

C# e Visual Basic Visual Studio 2017 versão 15.3 e posteriores

Converter em cadeia de caracteres interpolada


Cadeias de caracteres interpoladas são uma maneira fácil de expressar cadeias de
caracteres com variáveis inseridas, semelhante ao método String.Format. Essa Ação
Rápida reconhece maiúsculas e minúsculas nas quais as cadeias de caracteres são
concatenadas ou que usam String.Format e altera o uso de uma cadeia de caracteres
interpolada.

C#
C#

// Before
int num = 3;
string s = string.Format("My string with {0} in the middle", num);

// Convert to interpolated string

// After
int num = 3;
string s = $"My string with {num} in the middle";

Linguagens Aplicáveis Versão com suporte

C# 6.0+ e Visual Basic 14+ Visual Studio 2017 e posterior

Usar inicializadores de objeto


Esta Ação Rápida permite usar inicializadores de objeto em vez de invocar o construtor
e ter linhas adicionais de instruções de atribuição.

C#

C#

// Before
var c = new Customer();
c.Age = 21;

// Object initialization can be simplified

// After
var c = new Customer() { Age = 21 };

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0017 C# e Visual Basic Visual Studio 2017 e posterior

Usar inicializadores de coleção


Esta Ação rápida permite usar inicializadores de coleção em vez de múltiplas chamadas
ao método Add da sua classe.
C#

C#

// Before
var list = new List<int>();
list.Add(1);
list.Add(2);
list.Add(3);

// Collection initialization can be simplified

// After
var list = new List<int> { 1, 2, 3 };

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0028 C# e Visual Basic Visual Studio 2017 e posterior

Converter a propriedade automática em propriedade


completa
Esta Ação rápida permite converter uma propriedade automática em uma propriedade
completa e vice-versa.

C#

C#

// Before
private int MyProperty { get; set; }

// Convert to full property

// After
private int MyProperty
{
get { return _myProperty; }
set { _myProperty = value; }
}

Linguagens Aplicáveis Versão com suporte

C# e Visual Basic Visual Studio 2017 versão 15.5 e posterior


Converter o corpo do bloco em membro apto para
expressão
Esta Ação rápida permite converter corpos do bloco em membros aptos para expressão
para métodos, construtores, operadores, propriedades, indexadores e acessadores.

C#

//Before
class MyClass4
{
private int _myProperty;

public int MyProperty


{
get { return _myProperty; }
set
{
_myProperty = value;
}
}

public MyClass4(int myProperty)


{
MyProperty = myProperty;
}

public void PrintProperty()


{
Console.WriteLine(MyProperty);
}
}

// Use expression body for accessors/constructors/methods

// After
class MyClass4
{
private int _myProperty;

public int MyProperty


{
get => _myProperty;
set => _myProperty = value;
}

public MyClass4(int myProperty) => MyProperty = myProperty;

public void PrintProperty() => Console.WriteLine(MyProperty);


}
ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0021-27 C# 6.0+ Visual Studio 2017 e posterior

Converter função anônima em função local


Esta Ação rápida converte funções anônimas em funções locais.

C#

// Before
Func<int, int> fibonacci = null;
fibonacci = (int n) =>
{
return n <= 1 ? 1 : fibonacci(n - 1) + fibonacci(n - 2);
};

// Use local function

// After
int fibonacci(int n)
{
return n <= 1 ? 1 : fibonacci(n-1) + fibonacci(n-2);
}

Converter 'ReferenceEquals' em 'is null'

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0041 C# 7.0+ Visual Studio 2017 versão 15.5 e posterior

Esta Ação rápida sugere o uso de correspondência de padrões em vez do padrão de


codificação ReferenceEquals , sempre que possível.

C#

// Before
var value = "someString";
if (object.ReferenceEquals(value, null))
{
return;
}

// Use 'is null' check

// After
var value = "someString";
if (value is null)
{
return;
}

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0039 C# 7.0+ Visual Studio 2017 versão 15. e posterior

Introduzir a correspondência de padrões


Esta Ação rápida sugere o uso da correspondência de padrões com conversões e
verificações nulas em C#.

C#

// Before
if (o is int)
{
var i = (int)o;
...
}

// Use pattern matching

// After
if (o is int i)
{
...
}

C#

// Before
var s = o as string;
if (s != null)
{
...
}

// Use pattern matching

// After
if (o is string s)
{
...
}
ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0020 C# 7.0+ Visual Studio 2017 e posterior

IDE0019 C# 7.0+ Visual Studio 2017 e posterior

Alterar base para literais numéricas


Essa Ação Rápida permite que você converta um literal numérico de um sistema
numérico base para outro. Por exemplo, você pode alterar um número para
hexadecimal ou formato binário.

C#

C#

// Before
int countdown = 2097152;

// Convert to hex

// After
int countdown = 0x200000;

Linguagens Aplicáveis Versão com suporte

C# 7.0+ e Visual Basic 14+ Visual Studio 2017 versão 15.3 e posteriores

Inserir separadores de dígitos em literais


Essa Ação Rápida permite que você adicione caracteres separadores em valores literais.

C#

C#

// Before
int countdown = 1000000;

// Separate thousands

// After
int countdown = 1_000_000;
Linguagens Aplicáveis Versão com suporte

C# 7.0+ e Visual Basic 14+ Visual Studio 2017 versão 15.3 e posteriores

Usar nomes de tupla explícita


Esta Ação rápida identifica áreas em que o nome da tupla explícita pode ser usado em
vez de Item1, Item2, etc.

C#

C#

// Before
(string name, int age) customer = GetCustomer();
var name = customer.Item1;

// Use explicit tuple name

// After
(string name, int age) customer = GetCustomer();
var name = customer.name;

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0033 C# 7.0+ e Visual Basic 15+ Visual Studio 2017 e posterior

Usar nomes inferidos


Esta Ação Rápida destaca quando o código pode ser simplificado para usar nomes de
membros inferidos em tipos anônimos ou nomes de elemento inferidos em tuplas.

C#

// Before
var anon = new { age = age, name = name };

// Use inferred member name

// After
var anon = new { age, name };

C#
// Before
var tuple = (age: age, name: name);

// Use inferred tuple element name

// After
var tuple = (age, name);

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0037 C# Visual Studio 2017 versão 15.5 e posterior

IDE0037 C# 7.1+ Visual Studio 2017 versão 15.5 e posterior

Desconstruir declaração de tupla


Esta Ação Rápida permite desconstruir declarações de variável de tupla.

C#

// Before
var person = GetPersonTuple();
Console.WriteLine($"{person.name} {person.age}");

(int x, int y) point = GetPointTuple();


Console.WriteLine($"{point.x} {point.y}");

//Deconstruct variable declaration

// After
var (name, age) = GetPersonTuple();
Console.WriteLine($"{name} {age}");

(int x, int y) = GetPointTuple();


Console.WriteLine($"{x} {y}");

ID do diagnóstico Linguagens Aplicáveis Versão com suporte

IDE0042 C# 7.0+ Visual Studio 2017 versão 15.5 e posterior

Tornar o método síncrono


Ao usar a palavra-chave async ou Async em um método, espera-se que, dentro desse
método a palavra-chave await ou Await também seja usada. No entanto, se esse não é
o caso, é exibida uma Ação Rápida que torna o método síncrono removendo a palavra-
chave async ou Async e alterando o tipo de retorno. Use a opção Tornar o método
síncrono do menu Ações Rápidas.

C#

C#

// Before
async Task<int> MyAsyncMethod()
{
return 3;
}

// Make method synchronous

// After
int MyAsyncMethod()
{
return 3;
}

ID do erro Linguagens Aplicáveis

CS1998, BC42356 C# e Visual Basic

Tornar o método assíncrono


Ao usar a palavra-chave await ou Await em um método, espera-se que o próprio
método seja marcado com a palavra-chave async ou Async . No entanto, se esse não for
o caso, é exibida uma Ação Rápida que torna o método assíncrono. Use a opção Tornar
o método ou a função síncrona do menu Ações Rápidas.

C#

C#

// Before
int MyAsyncMethod()
{
return await Task.Run(...);
}

// Make method asynchronous

// After
async Task<int> MyAsyncMethod()
{
return await Task.Run(...);
}

ID do erro Linguagens Aplicáveis Versão com suporte

CS4032, BC37057 C# e Visual Basic Visual Studio 2017 e posterior

Confira também
Ações Rápidas
Gerar uma classe ou um tipo no Visual
Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código para uma classe ou um tipo.

Quando: você introduz uma nova classe ou tipo e deseja declará-lo correta e
automaticamente.

Por quê: você poderia declarar a classe ou o tipo antes de usá-lo; no entanto, esse
recurso gerará a classe ou o tipo automaticamente.

Como fazer
1. Coloque o cursor na linha em que há um rabisco vermelho. O rabisco vermelho
indica uma classe que ainda não existe.

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione uma das opções no menu suspenso:

Gerar a classe ‘TypeName' no novo arquivo Cria uma classe chamada


TypeName em um arquivo chamado TypeName.cs/.vb
Gerar a classe ‘TypeName' cria uma classe chamada TypeName no arquivo
atual.
Gerar classes aninhadas ‘TypeName' cria uma classe chamada TypeName
aninhada na classe atual.
Gerar novo tipo... cria uma nova classe ou um novo struct com todas as
propriedades especificadas.

 Dica

Use o link Visualizar alterações na parte inferior da janela de visualização


para ver todas as alterações que serão feitas antes de fazer sua seleção.

4. Se você tiver selecionado o item Gerar novo tipo, a caixa de diálogo Gerar Tipo
será aberta. Configure a acessibilidade, o tipo e o local do novo tipo.
ノ Expandir a tabela

Seleção Descrição

Access Defina o tipo para ter acesso Padrão, Interno ou Público.

Tipo Isso pode ser definido como classe ou struct.

Nome Isso não pode ser alterado e será o nome que você já digitou.

Project Se houver vários projetos em sua solução, você poderá escolher onde
deseja que a classe/struct viva.

Nome do Você pode criar um novo arquivo ou pode adicionar o tipo a um arquivo
Arquivo existente.

A classe ou o struct é criado. Para C#, um construtor também é criado.

C#

Visual Basic
Confira também
Geração de código
Visualizar Alterações
Gerar um método no Visual Studio
Artigo • 15/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite que você adicione imediatamente um método a uma classe.

Quando: você introduz um novo método e deseja declará-lo correta e


automaticamente.

Por quê: você poderia declarar o método e os parâmetros antes de usá-los; no entanto,
esse recurso gerará a declaração automaticamente.

Como fazer
1. Coloque o cursor na linha em que há um rabisco vermelho. O rabisco vermelho
indica um método que ainda não existe.

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione Gerar método no menu suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de visualização


para ver todas as alterações que serão feitas antes de fazer sua seleção.

O método é criado com os parâmetros inferidos com base em seu uso.

C#:

Visual Basic:

Confira também
Geração de código
Visualizar Alterações
Gerar um campo, uma propriedade ou
uma variável local no Visual Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código para um campo, propriedade ou local


não declarada anteriormente.

Quando: você introduz um novo campo, propriedade ou local durante a digitação e


quer declará-la correta e automaticamente.

Por quê: você poderia declarar o campo, propriedade ou local antes de usá-lo; no
entanto, esse recurso gerará a declaração ou o tipo automaticamente.

Como fazer
1. Coloque o cursor na linha em que há um rabisco vermelho. O rabisco vermelho
indica um campo, um local ou uma propriedade que ainda não existe.

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione uma das opções de geração no menu suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de visualização


para ver todas as alterações que serão feitas antes de fazer sua seleção.

O campo, a propriedade ou o local é criado, com o tipo inferido de seu uso.

C#:

Visual Basic:

Confira também
Geração de código
Visualizar Alterações
Gerar Operadores de Comparação para
tipos que implementam IComparable
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

O quê: permite gerar operadores de Comparação para tipos que implementam


IComparable.

Quando: você tem um tipo que implementa iComparable que adicionaremos


automaticamente os operadores de comparação.

Por quê: se você estiver implementando um tipo de valor, considere substituir o método
Equals para obter mais desempenho sobre a implementação padrão do método Equals
em ValueType.

Como fazer
1. Coloque o cursor dentro da classe ou na palavra-chave IComparable.

2. Depois, siga um destes procedimentos:

Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Clique com o botão direito do mouse e selecione o menu Ações Rápidas e


Refatorações.

Clique no ícone de que aparece na margem esquerda.


3. Selecione Gerar Equals(objeto) no menu suspenso.

Confira também
Geração de código
Visualizar Alterações
Gerar um construtor no Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código para um novo construtor em uma classe.

Quando: você introduz um novo construtor e deseja declará-lo corretamente


automaticamente, ou modifica um construtor existente.

Por quê: você poderia declarar o construtor antes de usá-lo; no entanto, esse recurso o
gerará automaticamente com os parâmetros apropriados. Além disso, modificar um
construtor existente exige a atualização de todos os callsites, a menos que você use este
recurso para atualizá-los automaticamente.

Como: há várias maneiras de gerar um construtor:

Gerar construtor e selecionar membros


Gerar construtor com propriedades
Gerar construtor desde campos selecionados
Gerar construtor desde uma nova utilização
Adicionar o parâmetro ao construtor existente
Criar e inicializar o campo/propriedade de um parâmetro de construtor

Gerar construtor e selecionar membros


(somente C#)
1. Coloque o cursor em qualquer linha vazia em uma classe:
2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha vazia na classe.

3. Selecione Gerar construtor no menu suspenso.

A caixa de diálogo Selecionar membros abre.

4. Selecione os membros que você deseja incluir como parâmetros do construtor.


Você pode ordená-los usando as setas para cima e para baixo. Selecione OK.
 Dica

Você pode marcar a caixa de diálogo Adicionar verificações nulas para gerar
automaticamente verificações nulas para os parâmetros do construtor.

O construtor é criado com os parâmetros especificados.

Gerar construtor com propriedades (somente


C#)
1. Coloque o cursor na instância.
2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Gerar o construtor em <QualifiedName> (com propriedades).

Gerar construtor usando campos selecionados


(somente C#)
1. Realce os membros que você deseja inserir no construtor gerado:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com a seleção.
3. Selecione Gerar construtor 'TypeName(...)' no menu suspenso.

O construtor é criado com os parâmetros selecionados.

Gerar construtor de uso novo (C# e Visual


Basic)
1. Coloque o cursor na linha em que há um rabisco vermelho. O rabisco vermelho
indica uma chamada para um construtor que ainda não existe.

C#:

Visual Basic:
2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione Gerar construtor em 'TypeName' no menu suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de visualização


para ver todas as alterações que serão feitas antes de fazer sua seleção.

O construtor é criado, com os parâmetros inferidos com base em seu uso.

C#:
Visual Basic:

Adicionar parâmetro ao construtor existente


(somente C#)
1. Adicione um parâmetro a uma chamada de construtor existente.

2. coloque o cursor na linha em que há um rabisco vermelho indicando que você


usou um construtor que ainda não existe.
3. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

4. Selecione Adicionar parâmetro em 'TypeName(...)' no menu suspenso.

O parâmetro é adicionado ao construtor, com o tipo inferido com base em seu


uso.
Também é possível adicionar um parâmetro a um método existente. Para saber mais,
confira Adicionar parâmetro a um método.

Criar e inicializar um campo ou uma


propriedade de um parâmetro de construtor
(somente C#)
1. Localize um construtor existente e adicione um parâmetro:

2. Coloque o cursor dentro do parâmetro recém-adicionado.

3. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o parâmetro adicionado.

4. Selecione Criar e inicializar propriedade ou Criar e inicializar campo no menu


suspenso.

O campo ou a propriedade é declarada e automaticamente nomeada para


corresponder aos seus tipos. Uma linha de código também é adicionada para
inicializar o campo ou a propriedade no corpo do construtor.

Confira também
Geração de código
Visualizar alterações
Gerar um desconstrutor no Visual
Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

O que: permite gerar imediatamente o stub de método para um novo desconstrutor.

Quando: você deseja desconstruir corretamente o tipo de forma automática.

Por que: você pode digitar manualmente um desconstrutor, mas essa funcionalidade
gera o stub para você com os parâmetros de saída corretos.

Gerar um desconstrutor
1. Declare um novo tipo com os parâmetros de saída desejados especificados. Essa
declaração causa um erro quando nenhuma instância de desconstrução
correspondente à declaração for encontrada.

2. Siga uma destas etapas:


Teclado
Com o cursor na sua declaração, selecione Ctrl+. para acionar o menu
Ações e Refatorações Rápidas.

Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Selecione o ícone que aparece na margem esquerda se o cursor de
texto já estiver na linha vazia na classe.

3. Selecione Gerar método 'MyInternalClass.Deconstruct' para gerar o


desconstrutor.
Confira também
Geração de código
Visualizar alterações
Dicas para desenvolvedores do .NET
Gere operadores IEquatable ao gerar
Equals para structs
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

O quê: permite gerar operadores Equals e IEquatable para structs.

Quando: você tem um struct que adicionará automaticamente o IEquatable, assim como
os operadores equals e not equals para você.

Por que:

Se você estiver implementando um tipo de valor, considere substituir o método


Equals para aumentar desempenho em relação à implementação padrão do
método Equals em ValueType.

Implementar a interface IEquatable implementa um método Equals() específico do


tipo.

Como fazer
1. Coloque o cursor em algum lugar na linha da declaração de struct.

2. Depois, siga um destes procedimentos:

Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Clique com o botão direito do mouse e selecione o menu Ações Rápidas e


Refatorações.

Clique no ícone de que aparece na margem esquerda.


3. Selecione Gerar Equals(objeto) no menu suspenso.

Confira também
Geração de código
Visualizar Alterações
Adicionar cabeçalho de arquivo
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: adicionar cabeçalhos de arquivo a arquivos, projetos e soluções existentes


usando um EditorConfig.

Quando: você deseja adicionar facilmente um cabeçalho de arquivo a arquivos, projetos


e soluções.

Por que: sua equipe exige que você inclua um cabeçalho de arquivo para fins de direitos
autorais.

Como fazer
1. Adicione um EditorConfig a um projeto ou solução se você ainda não tem um.

2. Adicione a regra a seguir ao arquivo EditorConfig: file_header_template.

3. Defina o valor da regra como igual ao texto de cabeçalho que você deseja aplicar.
Você pode usar {fileName} como espaço reservado para o nome do arquivo.

7 Observação

Você não pode ter várias linhas explícitas em um EditorConfig e precisará usar
o caractere de nova linha do Unix para inserir novas linhas.

4. Coloque o cursor na primeira linha de qualquer arquivo C# ou Visual Basic.

5. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

6. Selecione Adicionar cabeçalho de arquivo.


7. Para aplicar o cabeçalho do arquivo a um projeto ou uma solução inteira, selecione
Projeto ou Solução na opção Corrigir todas as ocorrências em:.

8. A caixa de diálogo Corrigir todas as ocorrências será aberta onde você puder
visualizar as alterações.

9. Selecione Aplicar para aplicar as alterações.

Confira também
Geração de código
Visualizar Alterações
Adicionar atributo DebuggerDisplay
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

What: o Atributo DebuggerDisplay controla como um objeto, uma propriedade ou um


campo é exibido nas janelas de variáveis do depurador.

When: você quer fixar propriedades no depurador programaticamente em seu código.

Why: fixar propriedades permite que você inspecione objetos rapidamente por suas
propriedades propagando essa propriedade até a parte superior da lista de
propriedades do objeto no depurador.

Como fazer
1. Coloque o cursor em um tipo, um delegado, uma propriedade ou um campo.

2. Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e selecione


Adicionar atributo DebuggerDisplay.

3. O atributo DebuggerDisplay será adicionado junto com um método automático


que retorna o padrão ToString().

Confira também
Geração de código
Visualizar Alterações
Adicionar conversão explícita
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

O quê: permite adicionar automaticamente uma conversão explícita a uma expressão,


com base no uso.

Quando: você precisa adicionar uma conversão explícita a uma expressão e deseja
atribuí-la automaticamente.

Por quê: você pode adicionar uma conversão explícita a uma expressão manualmente,
no entanto, esse recurso a adiciona automaticamente com base no contexto de código.

Como usá-lo
1. Coloque o cursor sobre o erro.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Adicionar conversão explícita.

Confira também
Geração de código
Refatoração
Adicionar um parâmetro a um método
usando uma Ação Rápida
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O que: permite adicionar automaticamente um parâmetro a um método com base no


uso.

Quando: você precisa adicionar um parâmetro a um método e deseja declará-lo


automaticamente.

Motivo: você poderia adicionar o parâmetro para a declaração do método antes de


chamá-lo, no entanto, esse recurso adiciona o parâmetro automaticamente com base na
chamada de método.

Como usá-lo
1. Adicione um argumento extra a uma chamada de método.

Uma linha vermelha ondulada aparece sob o nome do método onde você o
chama.

2. Coloque o ponteiro sobre a linha vermelha ondulada até aparecer o menu Ações
Rápidas. Selecione a seta para baixo no menu Ações Rápidas e, em seguida,
selecione Adicionar parâmetro ao [método].
 Dica

Também é possível acessar o menu Ações Rápidas colocando o cursor na


linha da chamada de método e, em seguida, pressionando Ctrl+. (ponto final)
ou selecionando o ícone de lâmpada na margem do arquivo.

O Visual Studio adiciona o novo parâmetro à declaração de método.

7 Observação

Se você tiver outras chamadas para o método, elas podem produzir erros depois
de usar essa Ação Rápida porque não especificam um argumento para o parâmetro
recém-adicionado.

Confira também
Adicionar parâmetro ao construtor
Gerar o parâmetro
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O que: gera automaticamente um parâmetro de método.

Quando: fazer referência a uma variável em um método que não existe no contexto
atual e receber um erro; você pode gerar um parâmetro como uma correção de código.

Por que: você pode modificar rapidamente uma assinatura de método sem perder o
contexto.

Como fazer
1. Coloque o cursor no nome da variável e pressione Ctrl+. para disparar o menu
Ações Rápidas e Refatorações.

2. Selecione Gerar o parâmetro.

Confira também
Refatoração
Gerar campo e propriedade particular
do construtor
Artigo • 19/06/2023

Esta refatoração aplica-se a:

C#

O quê: Gerar campo e propriedade particular de um construtor.

Quando: para adicionar e inicializar rapidamente um campo ou propriedade particular


de um construtor.

Porque: escrever campos e propriedades particulares pode ser demorado e repetitivo. O


uso dessa refatoração é rápido e torna o programa mais robusto.

Como fazer
1. Coloque o cursor sobre o nome do parâmetro no construtor.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Em seguida, selecione de um dos seguintes:

Criar e inicializar campo ou Criar e inicializar propriedade.

Confira também
Refatoração
Gerar uma substituição no Visual Studio
Artigo • 15/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código para qualquer método que possa ser
substituído de uma classe base.

Quando: você quer substituir um método de classe base e gerar a assinatura


automaticamente.

Por quê: você mesmo poderia escrever a assinatura do método, no entanto, esse
recurso gerará automaticamente a assinatura.

Como fazer
1. Digite override em C# ou Overrides em Visual Basic, seguido por um espaço, em
que você deseja inserir um método de substituição.

C#:

Visual Basic:
2. Selecione o método que você deseja substituir da classe base.

 Dica

Use o ícone de propriedade para mostrar ou ocultar propriedades


na lista.

Use o ícone de método para mostrar ou ocultar métodos na lista.

A propriedade ou o método selecionado será adicionado à classe como uma


substituição, pronta para ser implementada.

C#:

Visual Basic:

Confira também
Geração de código
Gerar substituições dos métodos Equals
e GetHashCode no Visual Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

O quê: Permite que você gere os métodos Equals e GetHashCode.

Quando: gere essas substituições quando houver um tipo que precise ser comparado
por um ou mais campos e não pelo local do objeto na memória.

Por que:

Se você estiver implementando um tipo de valor, considere substituir o método


Equals. Você pode obter um desempenho maior em relação à implementação
padrão do método Equals em ValueType ao fazer isso.

Se você estiver implementando um tipo de referência, considere substituir o


método Equals se o seu tipo parecer um tipo base, como Point, String, BigNumber
e assim por diante.

Substitua o método GetHashCode para permitir que um tipo funcione


corretamente em uma tabela de hash. Leia mais orientação em operadores de
igualdade.

Como fazer
1. Coloque o cursor em algum lugar na linha de sua declaração de tipo.

C#

public class ImaginaryNumber


{
public double RealNumber { get; set; }
public double ImaginaryUnit { get; set; }
}

O código deve ser semelhante à seguinte captura de tela:


 Dica

Se você clicar duas vezes para selecionar o nome do tipo, a opção de menu
não ficará disponível. Basta colocar o cursor em algum lugar na linha.

2. Em seguida, escolha uma das seguintes ações:

Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

Clique com o botão direito do mouse e selecione o menu Ações Rápidas e


Refatorações.

Clique no ícone de que aparece na margem esquerda.

3. No menu suspenso, selecione Gerar Equals(object) ou Gerar Equals e


GetHashCode.

4. Na caixa de diálogo Selecionar membros, escolha os membros para os quais


deseja gerar os métodos:
 Dica

Você também pode optar por gerar operadores nessa caixa de diálogo
usando a caixa de seleção na parte inferior da caixa de diálogo.

Os métodos Equals e GetHashCode são gerados com implementações padrão,


conforme aparece no seguinte código:

C#

public class ImaginaryNumber : IEquatable<ImaginaryNumber>


{
public double RealNumber { get; set; }
public double ImaginaryUnit { get; set; }

public override bool Equals(object obj)


{
return Equals(obj as ImaginaryNumber);
}

public bool Equals(ImaginaryNumber other)


{
return other != null &&
RealNumber == other.RealNumber &&
ImaginaryUnit == other.ImaginaryUnit;
}

public override int GetHashCode()


{
return HashCode.Combine(RealNumber, ImaginaryUnit);
}
}

O código deve ser semelhante à seguinte captura de tela:

Confira também
Geração de código
Visualizar Alterações
Adicionar usos ausentes no Visual
Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite adicionar imediatamente as importações necessárias ou diretivas using


para código copiado e colado.

Quando: é uma prática comum copiar código de locais diferentes no projeto ou de


outras fontes e colá-lo no novo código. Essa Ação Rápida encontra as diretivas de
importações ausentes para código copiado e colado e, em seguida, solicita a adição
delas. Essa correção de código também pode adicionar referências de projeto a projeto.

Por quê: como a Ação Rápida adiciona automaticamente as importações necessárias,


você não precisa copiar manualmente as diretivas using de que o código precisa.

Adicionar a refatoração de usos ausentes


1. Copie o código de um arquivo e cole-o em outro sem incluir as diretivas using
necessárias. O erro resultante é acompanhado por uma correção de código que
adiciona as diretivas using ausentes.

7 Observação

É necessário ativar essa sugestão em Ferramentas > Opções > Editor de


Texto > C# > Avançado > Diretivas Using.

2. Selecione Ctrl+. para abrir o menu Ações Rápidas e Refatorações.


3. Selecione using <sua referência>; para adicionar a referência ausente.

Confira também
Geração de código
Visualizar Alterações
Dicas para desenvolvedores do .NET
Implementar uma classe abstrata no
Visual Studio
Artigo • 15/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código necessário para implementar uma classe
abstrata.

Quando: você deseja herdar de uma classe abstrata.

Por quê: você pode implementar manualmente todos os membros abstratos um por
um; no entanto, esse recurso gerará automaticamente todas as assinaturas de método.

Como fazer
1. coloque o cursor na linha em que há um rabisco vermelho indicando que você
herdou de uma classe abstrata, mas não implementou todos os membros
necessários.

C#:

Visual Basic:
2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione Implementar Classe Abstrata no menu suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de


visualização para ver todas as alterações que serão feitas antes de fazer
sua seleção.
Use os links Documento, Projeto e Solução na parte inferior da janela
de visualização para criar as assinaturas de método adequadas em várias
classes herdadas da classe abstrata.

As assinaturas de método abstratas foram criadas e estão prontas para ser


implementadas.

C#:
Visual Basic:

Confira também
Geração de código
Visualizar Alterações
Implementar uma interface no Visual
Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente o código necessário para implementar uma


interface.

Quando: você deseja herdar de uma interface.

Por quê: você pode implementar manualmente todas as interfaces uma por uma; no
entanto, esse recurso gerará automaticamente todas as assinaturas de método.

Como fazer
1. coloque o cursor na linha em que há um rabisco vermelho indicando que você
referenciou uma interface, mas não implementou todos os membros necessários.

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:


Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Passe o mouse sobre o risco vermelho e clique no ícone que aparece.
Clique no ícone que aparece na margem esquerda quando o cursor
de texto já está na linha com o risco vermelho.

3. Selecione Implementar interface no menu suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de


visualização para ver todas as alterações que serão feitas antes de fazer
sua seleção.
Use os links Documento, Projeto e Solução na parte inferior da janela
de visualização para criar as assinaturas de método corretas em várias
classes que implementam a interface.

As assinaturas de método da interface foram criadas e estão prontas para serem


implementadas.

C#:
Visual Basic:

 Dica

(Somente C#) Use a opção Implementar interface explicitamente para


prefixar cada método gerado com o nome da interface a fim de evitar
colisões de nome.

;
Confira também
Geração de código
Visualizar Alterações
Introduzir uma variável local no Visual
Studio
Artigo • 13/01/2024

Esta geração de código aplica-se a:

C#

Visual Basic

O quê: permite gerar imediatamente uma variável local para substituir uma expressão
existente.

Quando: você tiver um código que poderia ser facilmente reutilizado posteriormente se
estivesse em uma variável local.

Por quê: você poderia copiar e colar o código várias vezes a fim de usá-lo em vários
locais. No entanto, seria melhor executar a operação uma vez, armazenar o resultado
em uma variável local e usar a variável local durante todo o processo.

Como fazer
1. Realce a expressão que você deseja atribuir a uma nova variável local.

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse e selecione o menu Ações Rápidas e
Refatorações.
Clique no ícone que aparece na margem esquerda se o cursor de
texto já estiver na linha com a expressão realçada.

3. Selecione Introduzir local para a (todas as ocorrências da) 'expressão' no menu


suspenso.

 Dica

Use o link Visualizar alterações na parte inferior da janela de visualização


para ver todas as alterações que serão feitas antes de fazer sua seleção.

A variável local é criada, com o tipo inferido com base em seu uso. Forneça um
novo nome à nova variável local.

C#:

Visual Basic:

7 Observação

É possível usar a opção de menu ...todas as ocorrências de... para substituir


todas as instâncias da expressão selecionada, não somente a que foi
especificamente realçada.

Confira também
Geração de código
Visualizar alterações
Refatorar o código
Artigo • 13/01/2024

Refatoração é o processo de modificar o código para torná-lo mais fácil de manter,


entender e estender, mas sem alterar seu comportamento.

Linguagens de programação
Diferentes operações de refatoração estão disponíveis para diferentes linguagens de
programação no Visual Studio:

As páginas nesta seção do sumário abordam as refatorações disponíveis para C# e


Visual Basic. Alguns exemplos incluem:
Refatoração Extrair um método
Refatoração Mover tipo para um arquivo correspondente

Para saber mais sobre a refatoração de código C++, confira Escrevendo e


refatorando um código (C++).

O suporte à refatoração no F# é fornecido pelo Visual F# Power Tools , uma


extensão do Visual Studio de terceiros.

Conteúdo relacionado
Ações Rápidas
Visão geral do IDE do Visual Studio
Recursos do editor de código
Refatoração no Visual Studio para Mac
Adicionar verificações de nulo para
todos os parâmetros
Artigo • 19/06/2023

Esta refatoração aplica-se a:

C#

O que: cria e adiciona instruções if que verificam a nulidade de todos os parâmetros


anuláveis e não verificados.

Quando: você quer adicionar rapidamente verificações nulas em todos os parâmetros


de método aplicáveis.

Por que: gravar verificações nulas para muitos parâmetros pode ser demorado e
repetitivo. O uso dessa refatoração é rápido e torna o programa mais robusto.

Como fazer
1. Coloque o cursor em qualquer parâmetro dentro do método.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione a opção para Adicionar verificações de nulo para todos os parâmetros.


Confira também
Refatoração
Refatoração Alterar uma assinatura de
método
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite remover ou alterar a ordem dos parâmetros do método.

Quando: você deseja mover ou remover um parâmetro de método que está sendo
usado em uma variedade de locais.

Por quê: você pode manualmente remover e reordenar os parâmetros e, em seguida,


localizar todas as chamadas para esse método e alterá-las uma por uma, mas isso
poderia levar a erros. Essa ferramenta de refatoração executará a tarefa
automaticamente.

Como fazer
1. realce ou coloque o cursor do texto dentro do nome do método para modificar,
ou um de seus usos:

C#:

VB:
2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+R, em seguida, Ctrl+V. (Observe que o atalho de teclado
pode ser diferente com base no perfil selecionado.)
Pressione (Ctrl+.) para disparar o menu Ações Rápidas e Refatorações e
selecione Alterar Assinatura no pop-up da janela Visualização.
Mouse
Selecione Editar > Refatorar > Remover Parâmetros.
Selecione Editar > Refatorar Reordenar Parâmetros>.
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Alterar Assinatura no pop-up da
janela Visualização.

3. Na caixa de diálogo Alterar Assinatura que aparecer, você pode usar os botões à
direita para alterar a assinatura do método:

Botão Descrição
Botão Descrição

Para cima/baixo Mova o parâmetro selecionado para cima e para baixo na lista

Adicionar Adicionar um novo parâmetro à lista

Remover Remova o parâmetro selecionado da lista

Restaurar Restaurar o parâmetro selecionado e riscado na lista

 Dica

Use a caixa de seleção Visualizar alterações de referência para ver qual será
o resultado antes de confirmar as alterações.

4. Selecionar Adicionar na caixa de diálogo Alterar Assinatura abrirá a caixa de


diálogo Adicionar Parâmetro. A caixa de diálogo Adicionar Parâmetro permite
que você adicione um nome de tipo e um nome de parâmetro. Você pode optar
por tornar o parâmetro necessário ou opcional com um valor padrão. 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. 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. Para
parâmetros opcionais, você tem a opção de omitir o site de chamada
completamente.
5. Quando terminar de adicionar um parâmetro, pressione OK para visualizar as
alterações.
Confira também
Refatoração
Visualizar Alterações
Converter tipo anônimo em classe
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: converter um tipo anônimo em classe.

Quando: você tiver um tipo anônimo que queira continuar a se basear em uma classe.

Porque: tipos anônimos são úteis quando os estamos utilizando apenas localmente. À
medida que o código cresce, é bom ter uma maneira fácil de promovê-los para uma
classe.

Como fazer
1. Coloque o cursor em um tipo anônimo.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Pressione Enter para aceitar a refatoração.


Confira também
Refatoração
Converter tipo anônimo em tupla
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: converter um tipo anônimo em tupla.

Quando: você tem um tipo anônimo que é qualificado como uma tupla.

Por quê:tuplas são úteis para manter sua sintaxe leve. Essa ação rápida torna mais fácil
aproveitar esse recurso C#.

Como fazer
1. Coloque o cursor em um tipo anônimo.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Pressione Enter para aceitar a refatoração.

Confira também
Refatoração
Converter entre propriedade automática
e completa
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: Converter entre uma propriedade autoimplementada e uma propriedade inteira.

Quando: A lógica da propriedade for alterada.

Porque: Você pode converter entre uma propriedade autoimplementada e uma


propriedade inteira manualmente, mas esse recurso fará automaticamente o trabalho
para você.

Como fazer
1. Coloque o cursor sobre o nome da propriedade.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione uma destas duas opções:

Selecione Converter em propriedade inteira.

Selecione Usar a propriedade auto.


Confira também
Refatoração
Refatoração para converter entre um
loop for e uma instrução foreach
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo descreve as refatorações de Ações Rápidas que convertem entre duas
estruturas de loop. Ele inclui alguns motivos para você alternar entre um loop for e uma
instrução foreach em seu código.

Converter um loop for em uma instrução


foreach
Se você tiver um loop for em seu código, será possível usar essa refatoração para
convertê-lo em uma instrução foreach.

Esta refatoração aplica-se a:

C#

Visual Basic

7 Observação

A refatoração da Ação Rápida Converter em foreach só está disponível para loops


for que contêm todas as três partes: um inicializador, uma condição e um iterador.

Por que converter


Os motivos pelos quais talvez você deseje converter um loop for em uma instrução
foreach incluem:

Não use a variável loop local dentro do loop, exceto com um índice para acessar o
item.

Você deseja simplificar seu código e reduza a probabilidade de erros lógicos nas
seções do inicializador, de condição e de iteração.

Como usá-lo
1. Coloque o cursor na palavra-chave for .

2. Pressione Ctrl+. ou clique no ícone de chave de fenda na margem do arquivo


de código.

3. Selecione Converter em 'foreach'. Ou selecione Visualizar alterações para abrir a


caixa de diálogo Visualizar alterações e, em seguida, selecione Aplicar.

Converter uma instrução foreach em um loop


for
Se você tiver uma instrução foreach (C#) ou a instrução Por Each...Next (Visual Basic) em
seu código, use essa refatoração para convertê-la em um loop for.

Esta refatoração aplica-se a:

C#

Visual Basic

Por que converter


Os motivos pelos quais talvez você deseje converter uma instrução foreach em um loop
for incluem:

Você deseja usar a variável de loop local dentro do loop para outras funções além
de apenas acessar o item.

Você está iterando por meio de uma matriz multidimensional e deseja ter mais
controle sobre os elementos da matriz.

Como usá-lo
1. Coloque o cursor na palavra-chave foreach ou For Each .

2. Pressione Ctrl+. ou clique no ícone de chave de fenda na margem do arquivo


de código.

3. Selecione Converter em 'for'. Ou selecione Visualizar alterações para abrir a caixa


de diálogo Visualizar alterações e, em seguida, selecione Aplicar.

4. Como a refatoração introduz uma nova variável de contagem de iterações, a caixa


Renomear é exibida no canto superior direito do editor. Se desejar escolher um
nome diferente para a variável, digite-o e, em seguida, pressione Enter ou
selecione Aplicar na caixa Renomear. Se você não deseja escolher um novo nome,
pressione Esc ou selecione Aplicar para ignorar a caixa Renomear.

7 Observação

Para C#, o código gerado por essas refatorações usa um tipo de explícito ou var
para o tipo dos itens na coleção. O tipo no código gerado, explícito ou implícito,
depende das configurações de estilo de código em escopo. Essas configurações
específicas de estilo de código são definidas no nível do computador em
Ferramentas>Opções>Editor de texto>C#>Estilo de código>Geral>Preferências
'var' ou no nível da solução em um arquivo EditorConfig. Se você alterar uma
configuração de estilo do código em Opções, abra o arquivo de código para que as
alterações entrem em vigor.

Confira também
Refatoração
Visualizar Alterações
Refatorações para converter o método
Get em propriedade/converter uma
propriedade no método Get
Artigo • 13/01/2024

Essas refatorações aplicam-se a:

C#

Visual Basic

Converter o método Get em propriedade


O quê: permite converter um método Get em uma propriedade (e opcionalmente seu
método Set).

Quando: você tem um método Get que não contêm nenhuma lógica.

Como fazer
1. coloque o cursor no nome do seu método Get.

2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+. para abrir o menu Ações Rápidas e Refatorações e
selecione Substituir método por propriedade no pop-up da janela de
pré-visualização.
Mouse
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Substituir método por propriedade
no pop-up da janela Visualização.

3. (Opcional) Se houver um método Set, você também poderá convertê-lo neste


momento selecionando Substituir método Get e método Set por propriedade.

4. Se você estiver satisfeito com a alteração na visualização do código, pressione


Enter ou clique na correção no menu e as alterações serão confirmadas.

Exemplo:
C#

private int MyValue;

// Before
public int GetMyValue()
{
return MyValue;
}

// Replace 'GetMyValue' with property

// After
public int MyValue
{
get { return MyValue; }
}

Converter propriedade em método Get


O quê: permite converter uma propriedade em um método Get

Quando: você tem uma propriedade que envolve mais do que imediatamente
configurar e obter um valor

Como fazer
1. coloque o cursor no nome do seu método Get.

2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+. para abrir o menu Ações Rápidas e Refatorações e
selecione Substituir propriedades por métodos na pop-up da janela de
pré-visualização.
Mouse
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Substituir propriedade por métodos
no pop-up da janela Visualização.

3. Se você estiver satisfeito com a alteração na visualização do código, pressione


Enter ou clique na correção no menu e as alterações serão confirmadas.

Confira também
Refatoração
Visualizar Alterações
Refatoração para converter entre literais
de cadeias de caracteres regulares e
verbatim
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: permite converter entre literais de cadeias de caracteres regulares e verbatim.

Quando: você deseja economizar espaço ou fornecer mais clareza no código.

Por quê: Converter um literal de cadeia de caracteres textual em um literal de cadeia de


caracteres regular pode ajudar a economizar espaço. Converter um literal de cadeia de
caracteres regular em um literal de cadeia de caracteres verbatim pode fornecer mais
clareza.

Como fazer
1. Coloque o cursor na cadeia no literal de cadeia de caracteres regular ou verbatim:

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione uma das seguintes opções:

Selecione Converter em cadeia de caracteres regular.

Selecione Converter em cadeia de caracteres verbatim.


Confira também
Refatoração
Converter uma função local em um
método
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: converter uma função local em um método.

Quando: você tem uma função local que deseja definir fora do contexto local atual.

Porque: você deseja converter uma função local em um método para poder chamá-la
fora do contexto local. O recomendado é converter em um método quando a função
local está ficando muito longa. Ao definir a função em um método separado, seu código
fica mais fácil de ler.

Refatoração de converter uma função local em


um método
1. Coloque o cursor na função local.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.


3. Pressione Enter para aceitar a refatoração.

Confira também
Refatoração
Dicas para desenvolvedores do .NET
Converter um loop foreach em LINQ
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: permite que você converta facilmente seu loop foreach que usa um IEnumerable
para consulta LINQ ou um formulário de chamada LINQ (também conhecido como
método LINQ).

Quando: você tem um loop foreach que usa um IEnumerable e deseja que esse loop
seja lido como uma consulta LINQ.

Por que: você prefere usar a sintaxe LINQ, em vez de um loop foreach. O LINQ faz uma
consulta em um constructo de linguagem de primeira classe no C#. O LINQ pode
reduzir a quantidade de código em um arquivo, facilitar a leitura e permitir que
diferentes fontes de dados tenham padrões de expressão de consulta semelhantes.

7 Observação

A sintaxe LINQ é normalmente menos eficiente do que um loop foreach. É bom


estar ciente de que pode ocorrer alguma compensação de desempenho ao usar o
LINQ para melhorar a legibilidade do código.

Converter um loop foreach em refatoração de


LINQ
1. Coloque o cursor na palavra-chave foreach .
2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Converter em LINQ ou Converter em Linq (formulário de chamada).


Código de exemplo
C#

using System.Collections.Generic;

public class Class1


{
public void MyMethod()
{
var greetings = new List<string>()
{ "hi", "yo", "hello", "howdy" };

IEnumerable<string> enumerable()
{
foreach (var greet in greetings)
{
if (greet.Length < 3)
{
yield return greet;
}
}

yield break;
}
}
}

Confira também
Refatoração
Janela Visualização de Alterações
Dicas para desenvolvedores do .NET
Converter instrução if em instrução
switch ou em expressão switch
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

What: converta uma instrução if em uma instrução switch ou na expressão switch do C#


8.0.

When: converta uma instrução if em uma instrução switch ou uma expressão switch
e vice-versa.

Why: se você estiver usando uma instrução if , esta refatoração permitirá uma transição
fácil para instruções switch ou expressões switch .

Como fazer
1. Coloque o cursor na palavra-chave if .

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione uma destas duas opções:

Selecione Converter em instrução 'switch'.


Selecione Converter em expressão 'switch'.

Confira também
Refatoração
Refatorar para converter LINQ em uma
instrução foreach
Artigo • 13/01/2024

Use essa refatoração para converter a sintaxe da consulta LINQ em uma instrução
foreach.

Esta refatoração aplica-se a:

C#

Visual Basic

Como usá-lo
1. Selecione toda a consulta LINQ começando com from .

7 Observação

Esta refatoração só pode ser usada para converter consultas LINQ expressas
com a sintaxe de consulta e não a sintaxe do método.

2. Pressione Ctrl+. ou clique no ícone de chave de fenda na margem do arquivo


de código.
3. Selecione Converter em 'foreach'. Ou selecione Visualizar alterações para abrir a
caixa de diálogo Visualizar alterações e, em seguida, selecione Aplicar.

7 Observação

Para C#, o código gerado por essas refatorações usa um tipo de explícito ou var
para a variação de iteração do loop foreach . O tipo no código gerado, explícito ou
implícito, depende das configurações de estilo de código em escopo. Essas
configurações específicas de estilo de código são definidas no nível do computador
em Ferramentas>Opções>Editor de texto>C#>Estilo de
código>Geral>Preferências 'var' ou no nível da solução em um arquivo
EditorConfig. Se você alterar uma configuração de estilo do código em Opções,
abra o arquivo de código para que as alterações entrem em vigor.

Confira também
LINQ
Refatoração
Visualizar Alterações
Converter typeof em nameof
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#
Visual Basic

O quê: permite converter uma instância de typeof(<QualifiedType>).Name em


nameof(<QualifiedType>) em C# e uma instância de GetType(<QualifiedType>).Name em

NameOf(<QualifiedType>) no Visual Basic.

Quando: todas as instâncias de typeof(<QualifiedType>).Name em que someType não é


um tipo genérico. Essa exclusão é necessária porque esse caso não retorna o mesmo
valor de cadeia de caracteres que nameof(<QualifiedType>) . O mesmo vale para a
instância do Visual Basic.

Porque: usar nameof em vez do nome de type evita a reflexão envolvida na recuperação
de um objeto type e é uma maneira mais pragmática de escrevê-lo.

Como fazer
1. Coloque o cursor dentro da instância typeof(<QualifiedType>).Name para C# ou de
GetType(<QualifiedType>).Name no Visual Basic.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione uma das seguintes opções:

C#
Selecione Converter 'typeof' em 'nameof':
Visual Basic
Selecione Converter 'GetType' em 'NameOf':

Confira também
Refatoração
Converter instrução switch em
expressão switch
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: converter uma instrução switch em uma expressão switch de C# 8.0.

Quando: você deseja converter uma instrução switch em uma expressão switch e vice-
versa.

Por quê: se você estiver usando apenas expressões, esta refatoração permitirá uma
transição fácil das instruções switch tradicionais.

Como fazer
1. No arquivo de projeto, defina a versão da linguagem como versão prévia, uma vez
que as expressões switch são um novo recurso do C# 8.0.

2. Coloque o cursor na palavra-chave switch e pressione Ctrl+. para disparar o menu


Ações Rápidas e Refatorações.

3. Selecione Converter instrução switch em expressão.


Confira também
Refatoração
Preenchimento de DateTime e
TimeSpan usando o menu do
IntelliSense
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: Preenchimento de literal da cadeia de caracteres DateTime e TimeSpan e cadeia


de caracteres de formatação por meio do menu do IntelliSense.

Quando: Você deseja escrever um literal de cadeia de caracteres DateTime e TimeSpan


e uma cadeia de caracteres de formatação. O IntelliSense fornece preenchimento básico
e uma explicação sobre o que cada um dos caracteres significa.

Porque: Lembrar os formatos de DateTime é difícil e o IntelliSense pode ajudar a


escrevê-los.

Como fazer
1. Coloque o cursor na cadeia de caracteres de formatação de DateTime ou
TimeSpan.

2. Pressione Ctrl+espaço para disparar o menu do IntelliSense.

3. Selecione o caractere que você deseja adicionar.

Confira também
Refatoração
Refatoração Encapsular um campo
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite que você transforme um campo em uma propriedade e atualize todos
os usos desse campo a fim de usar a propriedade recém-criada.

Quando: você quer mover um campo para uma propriedade e atualizar todas as
referências a esse campo.

Por quê: você quer conceder a outras classes o acesso a um campo, mas não quer que
essas classes tenham acesso direto. Ao encapsular o campo em uma propriedade, você
pode escrever o código para verificar o valor que está sendo atribuído, por exemplo.

Como fazer
1. realce ou coloque o cursor do texto dentro do nome do campo para encapsular:

C#:

Visual Basic:
2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+R, em seguida, Ctrl+E. (Observe que o atalho de teclado
pode ser diferente com base no perfil selecionado.)
Pressione Ctrl+. para abrir o menu Ações Rápidas e Refatorações e
selecione a entrada Encapsular Campo na pop-up da janela de pré-
visualização.
Mouse
Selecione Editar > Refatorar > Encapsular Campo.
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Encapsular campo no pop-up da
janela Visualização.

ノ Expandir a tabela

Seleção Descrição

Encapsular campo (e usar Encapsula o campo com uma propriedade e atualiza todos os
propriedade) usos do campo a fim de usar a propriedade gerada

Encapsular campo (mas Encapsula o campo com uma propriedade, mas não altera
ainda usá-lo) qualquer uso do campo

A propriedade é criada e as referências ao campo são atualizadas, se selecionadas.

 Dica

Use o link Visualizar alterações na janela pop-up para ver qual será o
resultado antes de confirmar as alterações.

C#:
Visual Basic:

Confira também
Refatoração
Visualizar Alterações
Extrair classe base
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: Extrair classe base.

Quando: Você deseja extrair membros de uma classe selecionada para uma nova classe
base.

Porque: Extrair membros manualmente pode ser demorado e tirá-lo do seu fluxo de
trabalho.

Como fazer
1. Coloque o cursor sobre o nome da classe ou um membro realçado.

2. Pressione Ctrl+. para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Efetuar pull de membros até a nova classe base.


A nova caixa de diálogo Extrair Classe Base será aberta, onde você poderá especificar o
nome da classe base e o local onde ela deve ser colocada. Você pode selecionar os
membros que deseja transferir para a nova classe base e optar por tornar os membros
abstratos marcando a caixa de seleção na coluna Tornar abstrato.

Confira também
Refatoração
Refatoração Extrair uma interface
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite que você crie uma interface usando membros existentes de uma classe,
struct ou interface.

Quando: você tem membros em uma classe, um struct ou uma interface que podem ser
herdados por outras classes, outros structs ou outras interfaces.

Por quê: as interfaces são ótimos constructos para designs orientados a objetos.
Imagine ter classes para vários animais (gato, cachorro, pássaro) que podem ter
métodos comuns, como comer, beber, dormir. Usar uma interface como IAnimal
permitiria que cachorro, gato e pássaro tivessem uma "assinatura" comum para esses
métodos.

Refatoração Extrair uma interface


1. Coloque o cursor no nome da classe.

C#:

Visual Basic:
2. Em seguida, realize uma das seguintes ações:

Teclado
Pressione Ctrl+R, em seguida, Ctrl+I. (O atalho de teclado pode ser
diferente de acordo com o perfil selecionado.)
Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e
selecionar Extrair Interface no pop-up da janela Visualização.
Mouse
Selecione Editar > Refatorar > Extrair Interface.
Clique com o botão direito do mouse no nome da classe, selecione o
menu Ações Rápidas e Refatorações e selecione Extrair Interface no pop-
up da janela Visualização.

3. Na caixa de diálogo Extrair Interface que é exibida, insira as informações


solicitadas:
ノ Expandir a tabela

Campo Descrição

Nome da nova O nome da interface a ser criada. O nome usará como padrão
interface IClassName, em que ClassName é o nome da classe selecionada
acima.

Nome do novo O nome do arquivo gerado que conterá a interface. Assim como
arquivo ocorre com o nome da interface, esse nome usará como padrão
IClassName, em que ClassName é o nome da classe selecionada
acima. Selecione também a opção para Adicionar ao arquivo atual.

Selecionar Os itens a serem extraídos para a interface. Você pode selecionar


membros públicos quantos desejar.
para formar a
interface

4. Selecione OK.

A interface foi criada no arquivo com o nome especificado. Além disso, a classe
que você selecionou implementa essa interface.
C#:

Visual Basic:

Confira também
Refatoração
Dicas para desenvolvedores do .NET
Refatoração Extrair um método
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite transformar um fragmento de código em seu próprio método.

Quando: você tem um fragmento de código existente em algum método que precisa
ser chamado desde outro método.

Por quê: você poderia copiar/colar esse código, mas que poderia levar à eliminação de
duplicação. A melhor solução é refatorar esse fragmento em seu próprio método, o que
pode ser chamado livremente por qualquer outro método.

Como fazer
1. realce o código a ser extraído:

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+R, em seguida, Ctrl+M. (Observe que o atalho de teclado
pode ser diferente com base no perfil selecionado.)
Pressione Ctrl+. para ativar o menu Ações rápidas e refatorações e
selecione Método de extração na janela pop-up Pré-visualização.
Mouse
Selecione Editar > Refatorar > Extrair Método.
Clique com o botão direito do mouse no código e selecione Refatorar>
Extrair > Método de extração.
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Extrair Método no pop-up da janela
Visualização.

O método será criado imediatamente. A partir daqui, agora você pode renomear o
método digitando o novo nome.

 Dica

Também é possível atualizar os comentários e outras cadeias de caracteres


para usar esse novo nome, bem como visualizar as alterações antes de salvar
usando as caixas de seleção na caixa Renomear, que aparece na parte
superior direita do seu IDE.

C#:

Visual Basic:
3. Quando estiver satisfeito com a alteração, escolha Aplicar ou pressione Enter e as
alterações serão confirmadas.

Confira também
Refatoração
Visualizar Alterações
Extrair refatoração de função local
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#

O que: permite converter um fragmento de código de um método existente em uma


função local.

Quando: você tem um fragmento de código existente em algum método que precisa
ser chamado de uma função local.

Por quê: você poderia copiar/colar esse código, mas que poderia levar à eliminação de
duplicação. Uma solução melhor é refatorar esse fragmento em sua própria função
local.

Como fazer
1. Realce o código a ser extraído.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Extrair função local.

Confira também
Refatoração
Visualizar Alterações
Método embutido
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O que: refatoração de método embutido.

Quando: substitua usos de um método estático, de instância e de extensão em um


único corpo da instrução, usando uma opção para remover a declaração de método
original.

Por que: essa refatoração fornecerá uma sintaxe mais clara.

Como fazer
1. Posicione o caret sobre o uso do método.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione uma das seguintes opções:

Selecione Embutir <QualifiedMethodName> para remover a declaração de método


embutido:

Selecione Embutir e manter <QualifiedMethodName> para preservar a declaração de


método original:
Confira também
Refatoração
Refatoração Embutir uma variável
temporária
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite que você remova uma variável temporária e substitua-a pelo seu valor.

Quando: o uso da variável temporária dificulta o entendimento do código.

Por quê: remover uma variável temporária pode facilitar a leitura do código.

Como fazer
1. realce ou coloque o cursor do texto dentro de uma variável temporária para ser
embutida:

C#:

Visual Basic:

2. Depois, siga um destes procedimentos:

Teclado
Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
Mouse
Clique com o botão direito do mouse no código e selecione o menu
Ações e Refatorações Rápidas.

3. Selecione Variável temporária embutida no pop-up da janela Visualização.


A variável é removida e seus usos são substituídos pelo valor da variável.

C#:

Visual Basic:

Confira também
Refatoração
Preenchimento do IntelliSense para
métodos de extensão e tipos não
importados
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: o IntelliSense fornece preenchimento para tipos e métodos de extensão não


importados.

Quando: você deseja usar um tipo ou métodos de extensão que já têm uma
dependência em seu projeto, mas a instrução using ainda não foi adicionada ao seu
arquivo.

Por quê: você não precisa adicionar manualmente a instrução de importação ao seu
arquivo.

Como fazer
1. Depois de começar a digitar o nome de um tipo ou método de extensão que
tenha uma dependência em seu projeto, o IntelliSense lhe dará sugestões. Itens de
namespaces não importados sem suporte teriam o respectivo namespace
recipiente mostrado como sufixo.

 Dica

Você pode mostrar/ocultar itens de namespaces sem suporte sob demanda,


usando o botão Expansor (Alt + A) que aparece na parte inferior esquerda da
lista de preenchimento. Para alterar o comportamento padrão, acesse
Ferramentas>Opções>Editor> de TextoC# (ou Visual Basic) >IntelliSense e
procure Mostrar itens de namespaces não importados.

2. Selecione e confirme um item não importado.

A instrução using será adicionada automaticamente ao arquivo.


Confira também
IntelliSense
Refatoração
Inverter expressões condicionais e
operadores AND/OR condicionais
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#
Visual Basic

O quê: permite inverter uma expressão condicional ou um operador AND/OR


condicional.

Quando: você tiver uma expressão condicional ou um operador AND/OR condicional


que será mais bem compreendido se invertido.

Porque: a inversão manual de uma expressão ou de um operador AND/OR condicional


pode levar muito mais tempo e, possivelmente, introduzir erros. Essa correção de
código ajuda você a fazer a refatoração automaticamente.

Refatoração de inverter expressões


condicionais e operadores AND/OR
condicionais
1. Coloque o cursor em uma expressão condicional ou um operador AND/OR
condicional.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Inverter condicional ou Substitua '&&' por '||'


Confira também
Refatoração
Dicas para desenvolvedores do .NET
Inverter instrução if
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#
Visual Basic

O que: permite inverter uma instrução if ou if else sem alterar o significado do


código.

Quando: quando você tem uma instrução if ou if else que será melhor
compreendida quando invertida.

Por que: a inversão manual de uma instrução if ou if else pode levar muito mais
tempo e, possivelmente, introduzir erros. Essa correção de código ajuda você a fazer a
refatoração automaticamente.

Refatoração de inverter instrução if


1. Coloque o cursor em uma instrução if ou if else .
2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Inverter if.

Confira também
Refatoração
Dicas para desenvolvedores do .NET
Tornar a classe abstrata
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: fazer uma refatoração de classe abstrata.

Quando: você escreve um método abstrato em uma classe que não é abstrata.

Por que: ter uma correção de código para tornar uma classe abstrata depois de escrever
um método abstrato poupará tempo.

Como fazer
1. Coloque o cursor no método abstrato.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Tornar classe 'abstrata'.

Confira também
Refatoração
Tornar membro estático
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#

O quê: tornar um membro estático.

Quando: você deseja que um membro não estático passe a ser estático.

Porque: membros estáticos melhoram a legibilidade; saber que o código específico é


isolado facilita a compreensão, a releitura e a reutilização.

Como fazer
1. Coloque um acento circunflexo sobre o nome do membro.

2. Pressione Ctrl+. (ponto) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Tornar estático.

Confira também
Refatoração
Mover declaração de variável para perto
da referência no Visual Studio
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite mover declarações de variável mais próximo do seu uso.

Quando: você tem declarações de variável que podem estar em um escopo mais
restrito.

Por quê: você pode deixá-lo como está, mas isso pode causar problemas de legibilidade
ou ocultação de informações. Esta é uma chance de refatorar para melhorar a
legibilidade.

Como fazer
1. coloque o cursor na declaração da variável.

2. Depois, siga um destes procedimentos:

Teclado
Press Ctrl+. para disparar o menu Ações Rápidas e Refatorações e
selecione Mover declaração para próximo da referência no pop-up da
janela Visualização.
Mouse
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Mover declaração para próximo da
referência no pop-up da janela Visualização.

3. Quando estiver satisfeito com a alteração, pressione Enter ou clique na correção


no menu e as alterações serão confirmadas.

Exemplo:

C#

// Before
int x;
if (condition)
{
x = 1;
Console.WriteLine(x);
}

// Move declaration near reference

// After
if (condition)
{
int x = 1;
Console.WriteLine(x);
}

Confira também
Refatoração
Visualizar Alterações
Refatoração Mover um tipo para um
arquivo correspondente
Artigo • 15/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite mover o tipo selecionado para um arquivo separado com o mesmo
nome.

Quando: você tem várias classes, structs, interfaces, etc. no mesmo arquivo que deseja
separar.

Por quê: colocar vários tipos no mesmo arquivo pode dificultar a localização desses
tipos. Ao mover os tipos de arquivos com o mesmo nome, o código torna-se mais
legível e mais fácil de navegar.

Como fazer
1. Coloque o cursor dentro do nome do tipo de onde ele está definido. Por exemplo:

C#

class Person

2. Depois, siga um destes procedimentos:

Pressione Ctrl+.
Clique com o botão direito do mouse sobre o nome do tipo e selecione Ação
Rápidas e Refatorações

3. Selecione Mover tipo para NomeDoTipo.cs no menu, em que NomeDoTipo é o


nome do tipo selecionado.

O tipo é movido para um novo arquivo no projeto que possui o mesmo nome do
tipo.

C#:
Visual Basic:

Confira também
Refatoração
Subir os membros
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite que você efetue pull dos membros até o tipo base.

Quando: você implementou uma interface e deseja mover um membro para o tipo
base.

Por quê: efetuar pull dos membros permite que outras implementações de sua interface
também herdem esses membros.

Como fazer
1. Coloque o cursor em qualquer membro de uma interface implementada.

2. Pressione Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Subir os membros até o tipo base.

4. Na caixa de diálogo, selecione quais membros você deseja adicionar à interface


selecionada.
5. Selecione OK. Os membros selecionados sobem para a interface.
Confira também
Refatoração
Conclusão de Regex por meio do
IntelliSense
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: conclusão da expressão regular (regex) por meio do menu do IntelliSense.

Quando: você deseja gravar uma expressão regular com a ajuda do IntelliSense. O
IntelliSense fornece conclusão básica e uma explicação sobre o que cada um dos
caracteres regex significa.

Por que: escrever uma expressão regular é difícil e o IntelliSense pode ajudar você a
escrevê-la.

Como fazer
1. Coloque o cursor na cadeia de caracteres do regex.

2. Pressione Ctrl+espaço para disparar o menu do IntelliSense.

3. Selecione o caractere que você deseja adicionar à sua cadeia de caracteres do


regex.

Confira também
Refatoração
Refatoração Remover código inacessível
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: remove o código que nunca será executado.

Quando: seu programa não tem um caminho para um snippet de código, tornando esse
snippet de código desnecessário.

Por quê: melhorar a legibilidade e a facilidade de manutenção removendo o código que


é supérfluo e nunca será executado.

Como fazer
1. coloque o cursor em qualquer lugar no código esmaecido que está inacessível:

1. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+. para abrir o menu Ações Rápidas e Refatorações e
selecione Remover código inacessível na pop-up da janela de
visualização.
Mouse
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Remover código inacessível no pop-
up da janela Visualização.
2. Quando estiver satisfeito com a alteração, pressione Enter ou clique na correção
no menu e as alterações serão confirmadas.

Exemplo:

C#

// Before
private void Method()
{
throw new Exception(nameof(Method));
Console.WriteLine($"Exception for method {nameof(Method)}");
}

// Remove unreachable code

// After
private void Method()
{
throw new Exception(nameof(Method));
}

Confira também
Refatoração
Visualizar Alterações
Remover referências não usadas
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#
Visual Basic

O quê: vamos remover referências não usadas de projetos no estilo do SDK.

Quando: você deseja limpar referências de projeto e pacotes NuGet que não têm uso.

Por quê: remover referências de projeto que não têm uso pode ajudar a economizar
espaço e reduzir o tempo de inicialização do aplicativo, pois leva tempo para carregar
cada módulo e isso evita que o compilador carregue metadados que nunca serão
usados.

Como fazer
1. Clique com o botão direito do mouse em um nó de dependências ou nome do
projeto no Gerenciador de Soluções.

2. Selecione Remover Referências Não Usadas.


3. O diálogo Remover Referências Não Usadas será aberto exibindo referências que
não têm uso no código-fonte. As referências não usadas serão pré-selecionadas
para remoção com uma opção de preservar referências com a seleção de Keep na
lista suspensa Ação.

4. Clique em Apply para remover as referências selecionadas.

Confira também
Refatoração
Refatoração Renomear um símbolo de
código
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite renomear identificadores para símbolos de código, como campos,


variáveis locais, métodos, namespaces, propriedades e tipos.

Quando: você deseja renomear algo com segurança sem a necessidade de localizar
todas as instâncias e copiar/colar o novo nome.

Por quê: copiar e colar o novo nome em um projeto inteiro provavelmente resultaria em
erros. Essa ferramenta de refatoração realizará com precisão a ação de renomeação.

Como fazer
1. realce ou coloque o cursor do texto dentro do item a ser renomeado:

C#:

Visual Basic:

2. Em seguida, use o teclado ou mouse da seguinte maneira:

Teclado
Pressione Ctrl+R, em seguida, Ctrl+R. (Observe que o atalho de teclado
pode ser diferente com base no perfil selecionado.)
Mouse
Selecione Editar > Refatorar > Renomear.
Clique com o botão direito do mouse no código e selecione Renomear.

3. Renomeie o item digitando o novo nome.

C#:

Visual Basic:

 Dica

Também é possível atualizar os comentários e outras cadeias de caracteres


para usar esse novo nome, bem como visualizar as alterações antes de salvar
usando as caixas de seleção na caixa Renomear que aparece na parte superior
direita do editor.

4. Quando estiver satisfeito com a alteração, escolha Aplicar ou pressione Enter e as


alterações serão confirmadas.

Comentários
A partir do Visual Studio 2019 versão 16.3, quando você renomeia um tipo que
corresponde ao nome do arquivo em que ele está, é exibida uma caixa de seleção
que permite renomear o arquivo ao mesmo tempo. Essa opção aparece quando
você renomeia uma classe, interface ou enumeração. Essa opção não tem suporte
para tipos parciais com várias definições.
Se você escolher um nome que já exista, o que causaria um conflito, a caixa
Renomear o avisará.

Outra maneira de renomear um símbolo é alterar seu nome no editor. Em seguida,


com o cursor no nome do símbolo, pressione Ctrl+. ou apenas expanda o menu
exibido com ícone de lâmpada e escolha Renomear <nome antigo> para <novo
nome>.

Confira também
Refatoração
Visualizar Alterações
Simplificar a refatoração das expressões
condicionais
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: Permite simplificar uma expressão condicional.

Quando: você deseja remover o código desnecessário para proporcionar mais clareza.

Por quê: simplificar uma expressão condicional pode fornecer mais clareza e sintaxe
concisa. Essa ferramenta de refatoração executará a tarefa automaticamente em vez de
precisar fazer isso manualmente.

Como fazer
1. Coloque o cursor na expressão condicional:

2. Pressione Ctrl+. para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Simplificar a expressão condicional

Confira também
Refatoração
Simplificar a expressão LINQ
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

What: refatora instâncias de SomeEnumerableType.Where(<LambdaExpression>).Single()


para SomeEnumerable.Single(<LambdaExpression>) de Enumerable.Single() , além dos
seguintes métodos Enumeráveis: SingleOrDefault() , Last() , LastOrDefault() , Any() ,
Count() , First() e FirstOrDefault() .

Quando: todas as instâncias em que as chamadas de método Single() ,


SingleOrDefault() e assim por diante não têm argumentos e são precedidas por uma
expressão Where() . A entrada para a expressão Where() não pode ser construída como
uma árvore de expressão.

Why: remover a chamada desnecessária para o Enumerável do método .Where()


melhora a legibilidade e, em alguns casos, o desempenho; consulte os comentários.

Como fazer
1. Coloque o cursor dentro da instância
SomeEnumerableType.Where(<LambdaExpression>).Single() no Visual Studio.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecionar Simplificar a expressão LINQ

Comentários
Em alguns casos, essa refatoração pode reduzir o desempenho. As operações LINQ em
List<T> e T[] não são otimizadas nesse caso e resultam em um desempenho pior.

Confira também
Refatoração
Simplificar a refatoração da
interpolação de cadeias de caracteres
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite simplificar uma interpolação de cadeias de caracteres.

Quando: você tem uma interpolação de cadeias de caracteres que pode ser
simplificada.

Por quê: simplificar uma interpolação de cadeias de caracteres pode fornecer mais
clareza e uma sintaxe concisa. Essa ferramenta de refatoração executará a tarefa
automaticamente em vez de precisar fazer isso manualmente.

Como fazer
1. Coloque o cursor sobre a interpolação de cadeias de caracteres:

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Simplificar interpolação

Confira também
Refatoração
Classificar usos
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O que: classificar usings.

Quando: você deseja classificar as diretivas using na parte superior do arquivo para que
elas estejam em ordem alfabética.

Por que: facilita encontrar uma diretiva using.

Como fazer
1. Selecione Editar na barra de menus.

2. Selecione Intellisense>Classificar usos.


3. Você também pode definir configurações diferentes para diretivas using em
Ferramentas>Opções>Editor de Texto>C#>Avançado.

Confira também
Refatoração
Dividir ou mesclar instruções if
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O que:O que: dividir ou mesclar instruções if.

Quando: para dividir uma instrução if que usa os operadores && ou || em uma
instrução if aninhada ou para mesclar uma instrução if com uma instrução if
externa.

Por quê: é uma questão de preferência de estilo.

Como fazer
Se você quiser dividir a instrução if :

1. Coloque o cursor na instrução if pelo operador && ou || .

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Dividir em instruções if aninhadas.


Se você deseja mesclar a instrução if interna com a instrução if externa:

1. Coloque o cursor na palavra-chave if interna.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Mesclar com instrução if externa.

Confira também
Refatoração
Refatorações de função local estática e
Ações Rápidas
Artigo • 13/01/2024

Este artigo descreve dois recursos de produtividade relacionados a funções locais


estáticas. Uma é uma refatoração que torna uma função local estática e a outra é uma
Ação Rápida que gera código para passar variáveis para uma função local estática.

Tornar local a função estática


Esta refatoração aplica-se a:

C#

O que: torna uma função local em função estática e passa variáveis definidas fora da
função para a declaração e as chamadas da função.

Quando: você deseja que sua função local seja estática e que todas as variáveis sejam
definidas no escopo da função.

Por que: funções locais estáticas melhoram a legibilidade; saber que o código específico
é isolado facilita a compreensão, a releitura e a reutilização. As funções locais estáticas
também fornecem escopo para evitar a poluição de uma classe com uma função
estática que é chamada apenas em um único método.

Como fazer
1. Coloque o caret sobre o nome da função local.

2. Pressione Ctrl+. (ponto) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione: Tornar local a função ‘estática’.


Passar a variável explicitamente em uma
função local estática
Esta Ação Rápida se aplica a:

C#

What: passa uma variável explicitamente para uma função estática local.

Quando: você deseja que uma função local seja estática, mas ainda use variáveis
inicializadas fora dela.

Por que: o uso de funções locais estáticas fornece esclarecimentos aos leitores porque
eles sabem que ele só pode ser declarado e chamado em um contexto específico do
programa. Ele fornece a flexibilidade para definir variáveis fora desse contexto, mas
ainda pode passá-las como argumentos para a função local estática.

Como fazer
1. Coloque seu caret sobre a variável usada na função local estática.

2. Pressione Ctrl+. (ponto) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Passar variável explicitamente na função estática local.

Confira também
Refatoração
Sincronizar namespace e nome da pasta
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: sincronizar namespace e nome da pasta.

Quando: você deseja replanejar partes da sua solução arrastando um arquivo para uma
nova pasta.

Por quê: você deseja se certificar de que seu namespace se mantenha atualizado com
sua nova estrutura de pasta.

Como fazer
1. Coloque o cursor no nome do namespace.

2. Pressione Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Alterar namespace para <nome da pasta>.

Confira também
Refatoração
Refatoração Sincronizar um tipo para
um nome de arquivo ou um nome de
arquivo para um tipo
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite que você renomeie um tipo para corresponder ao nome do arquivo, ou
renomeie um nome de arquivo para corresponder ao tipo que ele contém.

Quando: você renomeou um arquivo ou tipo e ainda não atualizou o arquivo


correspondente ou tipo a ser correspondido.

Por quê: se você colocar um tipo em um arquivo com um nome diferente, ou vice-versa,
será difícil encontrar o que está procurando. Se você renomear o tipo ou nome de
arquivo, o código se tornará mais legível e mais fácil de navegar.

7 Observação

Esta refatoração ainda não está disponível para projetos .NET Core e .NET Standard.

Como fazer
1. realce ou coloque o cursor do texto dentro do nome do tipo para sincronizar:

C#:

Visual Basic:
2. Depois, siga um destes procedimentos:

Teclado
Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e
selecione Renomear arquivo para TypeName.cs no pop-up da janela
Visualização, onde TypeName é o nome do tipo selecionado.
Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e
selecione Renomear tipo para Filename no pop-up da janela Visualização,
onde Filename é o nome do arquivo atual.
Mouse
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Renomear o arquivo para
TypeName.cs no pop-up da janela Visualização, onde TypeName é o nome
do tipo selecionado.
Clique com o botão direito do mouse no código, selecione o menu Ações
Rápidas e Refatorações e selecione Renomear o tipo para Filename no
pop-up da janela Visualização, onde Filename é o nome do arquivo atual.

O tipo ou o arquivo foi renomeado.

C#: no exemplo abaixo, o arquivo MyClass.cs foi renomeado para


MyNewClass.cs para corresponder ao nome do tipo.

Visual Basic: no exemplo abaixo, o arquivo Employee.vb foi renomeado para


Person.vb para corresponder ao nome do tipo.
Confira também
Refatoração
Refatorar para substituir var por um tipo
explícito
Artigo • 13/01/2024

Use esta refatoração para substituir var em uma declaração de variável local com um
tipo explícito.

Esta refatoração aplica-se a:

C#

Por que usar um tipo explícito


Veja a seguir alguns motivos para declarar uma variável com um tipo explícito:

Para melhorar a legibilidade do código.

Quando você não quer inicializar a variável na declaração.

No entanto, é necessário usar var quando uma variável é inicializada com um tipo
anônimo e as propriedades do objeto são acessadas em um momento posterior. Para
saber mais, confira Variáveis locais de tipo implícito (C#).

Como usá-lo
1. Coloque o cursor sobre a palavra-chave var .

2. Pressione Ctrl+. ou clique no ícone de chave de fenda na margem do arquivo


de código.

3. Selecione Usar o tipo explícito. Ou selecione Visualizar alterações para abrir a


caixa de diálogo Visualizar alterações e, em seguida, selecione Aplicar.
Confira também
Variáveis tipadas implicitamente (C#)
Refatoração
Visualizar Alterações
Use o corpo da expressão ou o corpo do
bloco para expressões lambda
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O quê: permite refatorar uma expressão lambda para usar um corpo da expressão ou
um corpo do bloco.

Quando: você prefere que as expressões lambda usem um corpo da expressão ou um


corpo do bloco.

Por quê: as expressões lambda podem ser refatoradas para aprimorar a legibilidade de
acordo com a preferência do usuário.

Refatoração do corpo do bloco ou do corpo da


expressão lambda
1. Coloque o cursor à direita de um operador lambda.
2. Pressione Ctrl+. para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Usar corpo do bloco para expressões lambda ou Usar corpo da


expressão para expressões lambda.

Confira também
Refatoração
Dicas para desenvolvedores do .NET
Use new() .
Artigo • 13/01/2024

Isso se aplica a:

C#

O quê: usar new() .

Quando: você tem um campo que não pode usar var ou uma preferência de estilo de
código de não usar var .

Por quê: para que você não precise escrever código repetitivo repetindo o tipo duas
vezes.

Como fazer
1. Coloque o cursor na declaração de campo.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Usar 'new(…)':

Confira também
Refatoração
Usar correspondência de padrões
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#

O que: usar padrões correspondentes.

Quando: você deseja usar os novos recursos de padrões correspondentes em C#.

Por que: essa refatoração tornará seu código mais claro e conciso.

Como fazer
1. Coloque o acento circunflexo dentro da instrução.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Usar a correspondência de padrões.

Confira também
Refatoração
Parâmetros, variáveis e atribuições de
valor não usados
Artigo • 13/01/2024

Esta refatoração aplica-se a:

C#
Visual Basic

O que: esmaece parâmetros não usados e gera um aviso para valores de expressão não
usados. O compilador também executa uma análise de fluxo para localizar todas as
atribuições de valor não usadas. Atribuições de valor não usadas esmaecem e uma
lâmpada aparece com um Ação Rápida para remover a atribuição redundante. Variáveis
não utilizadas com valores desconhecidos mostram uma sugestão de Ação Rápida para
usar discards em vez disso. (Os descartes são variáveis fictícias temporárias que são
intencionalmente não utilizados no código do aplicativo. Eles podem reduzir a alocação
de memória e facilitar a leitura do código.)

Quando: você tem atribuições de valor, parâmetros ou valores de expressão que nunca
são usados.

Por que: às vezes, é difícil dizer se uma atribuição de valor, uma variável ou um
parâmetro não está mais sendo usado. Esmaecendo esses valores ou gerando um aviso,
você obtém uma indicação visual de qual código pode ser excluído.

Diagnóstico de valores de expressão e


parâmetros não usados
1. Observe qualquer atribuição de valor, variável ou parâmetro que não é usado.
2. A atribuição ou parâmetro de valor não utilizado aparece esmaecido. O valor da
expressão não utilizada gera um aviso.
Confira também
Visão geral da refatoração de código no Visual Studio
Guia de produtividade do Visual Studio para desenvolvedores de C#
Encapsular, recuar e alinhar refatoração
Artigo • 13/01/2024

Encapsular e alinhar cadeias de chamadas


Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite encapsular e alinhar cadeias de chamadas de método.

Quando: você tem uma cadeia longa composta por várias chamadas de método em
uma só instrução.

Por quê: ler uma longa lista fica mais fácil quando os itens são encapsulados ou
recuados de acordo com as preferências do usuário.

Como fazer
1. Posicione o cursor em qualquer uma das cadeias de chamadas.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Encapsular cadeia de chamadas ou Encapsular e alinhar cadeia de


chamadas para aceitar a refatoração.

Encapsular, recuar e alinhar parâmetros ou


argumentos
Esta refatoração aplica-se a:
C#

Visual Basic

O quê: permite encapsular, recuar e alinhar parâmetros ou argumentos.

Quando: você tem uma declaração de método ou uma chamada que tem vários
parâmetros ou argumentos.

Por quê: ler uma longa lista de parâmetros ou argumentos é mais fácil quando eles são
encapsulados ou são recuados de acordo com a preferência do usuário.

Como fazer
1. Coloque o cursor em uma lista de parâmetros.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Encapsular todos os parâmetros para aceitar a refatoração.

Encapsular expressões binárias


Esta refatoração aplica-se a:

C#

Visual Basic

O quê: permite encapsular expressões binárias.

Quando: você tem uma expressão binária.

Por quê: a leitura de uma expressão binária é mais fácil quando ela é encapsulada
segundo a preferência do usuário.

Como fazer
1. Coloque o cursor na expressão binária.

2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

3. Selecione Encapsular expressão para aceitar a refatoração.

Confira também
Refatoração
Instruções passo a passo:
desenvolvimento de teste antes da
codificação com o recurso gerar com
base no uso
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este tópico demonstra como usar o recurso Gerar do Uso, que oferece suporte ao
desenvolvimento de test-first.

O desenvolvimento test-first é uma abordagem para design de software em que você


primeiro escreve testes de unidade baseados nas especificações do produto e, em
seguida, escreve o código-fonte que é necessário para tornar os testes bem-sucedidos.
O Visual Studio é compatível com o desenvolvimento teste antes da codificação (test-
first) através da geração de novos tipos e membros no código-fonte ao referenciá-los
pela primeira vez em seus casos de teste antes de serem definidos.

O Visual Studio gera os novos tipos e membros com uma interrupção mínima no seu
fluxo de trabalho. Você pode criar stubs para tipos, métodos, propriedades, campos ou
construtores sem sair do seu local atual no código. Quando você abre uma caixa de
diálogo para especificar as opções para a geração de tipo, o foco retorna
imediatamente para o arquivo aberto no momento quando a caixa de diálogo é
fechada.

O recurso Gerar com Base no Uso pode ser usado com estruturas de teste integradas
ao Visual Studio. A Estrutura de Teste de unidade da Microsoft é demonstrada neste
tópico.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Criar um projeto de Biblioteca de Classes do Windows e


um projeto de Teste
1. Em C# ou no Visual Basic, crie um projeto da Biblioteca de classes do Windows.
Nomeie-o GFUDemo_VB ou GFUDemo_CS , dependendo de qual linguagem você está
usando.

2. No Gerenciador de Soluções, clique com o botão direito do mouse no ícone da


solução na parte superior, escolha Adicionar>Novo Projeto.

3. Crie um projeto de Teste de Unidade (.NET Framework).

Adicionar uma referência ao projeto de Biblioteca de


Classes
1. No Gerenciador de Soluções, em seu projeto de teste de unidade, clique com o
botão direito do mouse na entrada Referências e escolha Adicionar Referência.

2. Na caixa de diálogo Gerenciador de Referências, selecione Projetos e, em seguida,


selecione o projeto da biblioteca de classes.

3. Escolha OK para fechar a caixa de diálogo Gerenciador de Referências.

4. Salvar sua solução. Agora você está pronto para começar a escrever testes.

Gerar uma nova classe com base em um teste de unidade


1. O projeto de teste contém um arquivo chamado UnitTest1. Clique duas vezes neste
arquivo no Gerenciador de Soluções para abri-lo no editor de código. Uma classe
de teste e um método de teste foram gerados.

2. Localize a declaração da classe UnitTest1 e renomeie para AutomobileTest .

7 Observação

O IntelliSense agora fornece duas alternativas para o preenchimento de


declaração do IntelliSense: modo de preenchimento e modo de sugestão. Use o
modo de sugestão para situações nas quais classes e membros são usados
antes de serem definidos. Quando uma janela do IntelliSense é aberta,
pressione Ctrl+Alt+Espaço para alternar entre o modo de conclusão e o
modo de sugestão. Consulte Usar o IntelliSense para obter mais informações.
O modo de sugestão ajudará quando você estiver digitando Automobile na
próxima etapa.
3. Localize o método TestMethod1() e renomeie-o para
DefaultAutomobileIsInitializedCorrectly() . Dentro desse método, crie uma nova
instância de uma classe chamada Automobile , conforme mostrado nas capturas de
tela a seguir. Um sublinhado ondulado é exibido, indicando um erro em tempo de
compilação e uma lâmpada de erro de Ações Rápidas aparece na margem
esquerda ou diretamente abaixo do rabisco, se você passa o mouse sobre ele.

4. Escolha ou clique na lâmpada Ações Rápidas. Você verá uma mensagem de erro
afirmando que o tipo Automobile não está definido. Você também verá algumas
possíveis soluções.

5. Clique em Gerar novo tipo para abrir a caixa de diálogo Gerar Tipo. Essa caixa de
diálogo fornece opções que incluem a geração de tipo em um projeto diferente.

6. Na lista Projeto, clique em GFUDemo_VB ou GFUDemo_CS para instruir o Visual


Studio a adicionar o arquivo ao projeto de biblioteca de classes em vez do projeto
de teste. Se ainda não estiver selecionado, escolha Criar novo arquivo e nomeie-o
Automobile.cs ou Automobile.vb.
7. Clique em OK para fechar a caixa de diálogo e criar o novo arquivo.

8. No Gerenciador de Soluções, procure no nó de projeto GFUDemo_VB ou


GFUDemo_CS para verificar se o novo arquivo Automobile.vb ou Automobile.cs
está nesse local. No editor de código, o foco ainda estará em
AutomobileTest.DefaultAutomobileIsInitializedCorrectly , o que permite que você

continue a escrever o teste com um mínimo de interrupção.

Gerar um stub de propriedade


Suponha que a especificação de produto afirma que a classe Automobile tem duas
propriedades públicas chamadas Model e TopSpeed . Essas propriedades devem ser
inicializadas com valores padrão de "Not specified" e -1 pelo construtor padrão. O
seguinte teste de unidade verificará para que o construtor padrão defina as
propriedades para seus valores padrão corretos.

1. Adicione a seguinte linha de código no método de teste


DefaultAutomobileIsInitializedCorrectly .

C#

C#

Assert.IsTrue((myAuto.Model == "Not specified") && (myAuto.TopSpeed


== -1));
2. Com o código faz referência a duas propriedades indefinidas em Automobile , um
sublinhado ondulado aparecerá sob Model e TopSpeed . Passe o mouse sobre
Model , escolha a lâmpada de erro Ações Rápidas e, em seguida, escolha Gerar

propriedade 'Automobile.Model'.

3. Gere um stub de propriedade para a propriedade TopSpeed da mesma maneira.

Na classe Automobile , os tipos das novas propriedades são inferidos corretamente


do contexto.

Gerar um stub para um novo construtor


Agora vamos criar um método de teste que gerará um stub de construtor para inicializar
as propriedades Model e TopSpeed . Depois, você adicionará mais código para concluir o
teste.

1. Adicione também o seguinte método de teste à sua classe AutomobileTest .

C#

C#

[TestMethod]
public void AutomobileWithModelNameCanStart()
{
string model = "Contoso";
int topSpeed = 199;
Automobile myAuto = new Automobile(model, topSpeed);
}

2. Clique na lâmpada de erro Ações Rápidas sob a linha ondulada vermelha e, em


seguida, clique em Gerar construtor em 'Automobile'.

No arquivo de classe Automobile , observe que o novo construtor examinou os


nomes das variáveis locais que são usadas na chamada do construtor, encontrou
propriedades que têm os mesmos nomes na classe Automobile e forneceu código
no corpo do construtor para armazenar os valores de argumento nas propriedades
Model e TopSpeed .

3. Depois de gerar o novo construtor, um sublinhado ondulado aparece sob a


chamada para o construtor padrão em DefaultAutomobileIsInitializedCorrectly .
A mensagem de erro informa que a classe Automobile não tem nenhum construtor
que assuma zero argumentos. Para gerar um construtor padrão explícito que não
tem parâmetros, clique na lâmpada de erro Ações Rápidas e, em seguida, clique
em Gerar construtor em 'Automobile'.

Gerar um stub para um método


Suponha que a especificação afirme que um novo Automobile poderá ser colocado em
um estado IsRunning se suas propriedades Model e TopSpeed forem definidas como
algo diferente dos valores padrão.

1. Adicione as seguintes linhas ao método AutomobileWithModelNameCanStart .

C#

C#

myAuto.Start();
Assert.IsTrue(myAuto.IsRunning == true);

2. Clique na lâmpada de erro Ações Rápidas para a chamada de método


myAuto.Start e, em seguida, clique em Gerar método 'Automobile.Start'.

3. Clique na lâmpada Ações Rápidas para a propriedade IsRunning e, em seguida,


clique em Gerar propriedade 'Automobile.IsRunning'.

Agora a classe Automobile contém um método chamado Start() e uma


propriedade chamada IsRunning .

Executar os testes
1. No menu Teste, escolha Executar>Todos os Testes.

O comando Executar>Todos os Testes executa todos os testes nas estruturas de


teste escritas para a solução atual. Nesse caso, há dois testes e ambos falham
conforme o esperado. O teste DefaultAutomobileIsInitializedCorrectly falha
porque a condição Assert.IsTrue retorna False . O teste
AutomobileWithModelNameCanStart falha porque o método Start na classe

Automobile lança uma exceção.

A janela Resultados do Teste é mostrada na ilustração a seguir.


2. Na janela Resultados de Teste, clique duas vezes em cada linha de resultado do
teste para ir até o local de cada teste.

Implementar o código-fonte
1. Adicione o seguinte código ao construtor padrão, de maneira que as propriedades
Model , TopSpeed e IsRunning sejam inicializadas com seus valores padrão corretos,

"Not specified" , -1 e False (ou false para o C#).

C#

C#

public Automobile()
{
this.Model = "Not specified";
this.TopSpeed = -1;
this.IsRunning = true;
}

2. Quando o método Start é chamado, ele deve definir o sinalizador IsRunning


como true apenas se as propriedades Model ou TopSpeed estiverem definidas com
valor diferente de seu valor padrão. Remova o NotImplementedException do corpo
do método e adicione o código a seguir.

C#
C#

public void Start()


{
if (this.Model != "Not specified" || this.TopSpeed != -1)
this.IsRunning = true;
else
this.IsRunning = false;
}

Executar os testes novamente


No menu Testar, aponte para Executar e, em seguida, clique em Todos os Testes.

Dessa vez os testes são aprovados. A janela Resultados do Teste é mostrada na


ilustração a seguir.

Confira também
Gerar com base no uso
Recursos do editor de código
Usar o IntelliSense
Realizar teste de unidade do seu código
Ações Rápidas
IntelliSense no Visual Studio
Artigo • 22/01/2024

O IntelliSense é uma ajuda de preenchimento de código que inclui inúmeras


funcionalidades: Listar Membros, Informações do Parâmetro, Informações Rápidas e
Completar Palavra. Essas funcionalidades ajudam você a aprender mais sobre o código
que está usando, a manter o acompanhamento dos parâmetros que está digitando e a
adicionar chamadas a métodos e propriedades pressionando apenas algumas teclas.

Vários aspectos do IntelliSense são específicos do idioma. Para obter mais informações
sobre o IntelliSense para diferentes idiomas, consulte os tópicos listados na seção
Conteúdo relacionado.

Listar Membros
Uma lista de membros válidos de um tipo (ou namespace) aparece depois que você
digita um caractere disparador (por exemplo, um ponto ( . ) no código gerenciado ou
:: em C++). Se você continuar a digitar caracteres, a lista será filtrada para incluir

somente os membros que começam com esses caracteres ou aqueles em que o início
de qualquer palavra do nome começar com esses caracteres. O IntelliSense também
realiza a correspondência de "palavras concatenadas", para que você possa digitar
apenas a primeira letra de cada palavra concatenada no nome do membro para ver as
correspondências.

Após selecionar um item, você poderá inseri-lo em seu código pressionando Tab ou
inserindo um espaço. Se você selecionar um item e digitar um ponto, o item aparecerá
seguido pelo ponto, que abrirá outra lista de membros. Ao selecionar um item, mas
antes de inseri-lo, você obtém a Informação Rápida do item.

Na lista de membros, o ícone à esquerda representa o tipo do membro, como


namespace, classe, função ou variável. A lista pode ser muito longa, de modo que você
pode pressionar PgUp e PgDn para mover para cima ou para baixo na lista.
Invoque o recurso Listar Membros manualmente digitando Ctrl+J, escolhendo
Editar>IntelliSense>Listar Membros ou escolhendo o botão Listar Membros na barra
de ferramentas do editor. Quando é invocada em uma linha em branco ou fora de um
escopo reconhecível, a lista exibe símbolos no namespace global.

Para desativar Listar Membros por padrão (para que ele não seja exibido, exceto se
invocado especificamente), acesse Ferramentas>Opções>Editor de Texto>Todas os
idiomas e desmarque Listar membros automaticamente. Se você deseja desligar Listar
Membros somente para uma linguagem específica, vá para as configurações Gerais
dessa linguagem.

Você também pode alterar para o modo de sugestão, no qual apenas o texto que você
digita é inserido no código. Por exemplo, se você inserir um identificador que não está
na lista e pressionar a Guia, no modo de preenchimento, a entrada poderá substituir o
identificador digitado. Para alternar entre o modo de conclusão e o modo de sugestão,
pressione Ctrl+Alt+Espaço ou escolha Editar>IntelliSense>Alternar entre conclusão do
IntelliSense automático e somente tabulação.

Informações de Parâmetro
Informações de Parâmetro fornecem informações sobre o número, os nomes e os tipos
de parâmetros exigidos por um método, um parâmetro de tipo genérico de atributo
(em C#) ou um modelo (em C++).

O parâmetro em negrito indica o próximo parâmetro que é necessário à medida que


você digita a função. Para funções sobrecarregadas, use as teclas de direção Para Cima
e Para Baixo para exibir informações de parâmetro alternativas para as sobrecargas de
função.
Quando você anota funções e parâmetros com comentários da Documentação XML, os
comentários são exibidos como Informações do Parâmetro. Para obter mais
informações, consulte Fornecer comentários de código XML.

Invoque a opção Informações do Parâmetro manualmente escolhendo


Editar>IntelliSense>Informações do Parâmetro, pressionando Ctrl+Shift+Espaço ou
escolhendo o botão Informações do Parâmetro na barra de ferramentas do editor.

Informação Rápida
Informação Rápida exibe a declaração completa de qualquer identificador no seu
código.

Quando você seleciona um membro na caixa Listar Membros, as Informações Rápidas


também são exibidas.

É possível invocar Informações Rápidas ao selecionar Editar>IntelliSense>Informações


Rápidas, pressionar Ctrl+K, Ctrl+I ou escolher o botão Informações Rápidas na barra
de ferramentas do editor.
Se uma função estiver sobrecarregada, o IntelliSense não poderá exibir informações de
todos os formulários da sobrecarga.

É possível invocar desativar as informações rápidas para o código C++ ao navegar em


Ferramentas>Opções>Editor de Texto>C/C++>Avançado e configurar as Informações
Rápidas Automáticas para false .

Completar Palavra
Completar Palavra completa o restante de uma variável, um comando ou um nome de
função uma vez que você tenha inserido caracteres suficientes para remover
ambiguidades do termo. É possível invocar Completar Palavra ao selecionar
Editar>IntelliSense>Completar Palavra, pressionar Ctrl+Espaço ou ao escolher o botão
Completar Palavra na barra de ferramentas do editor.

Opções do IntelliSense
As opções do IntelliSense são ativadas por padrão. Para desativá-las, acesse
Ferramentas>Opções>Editor de Texto>Todos os Idiomas e desmarque a seleção de
Informações de Parâmetro ou Listar membros automaticamente se você não deseja
usar o recurso Listar Membros.

 Dica

Se você quiser alterar a aparência dos elementos da interface do usuário no Visual


Studio, acesse Ferramentas>Opções>Ambiente>Fontes e Cores. Para obter mais
informações sobre essas configurações e como interagir com elas, confira Caixa de
diálogo de Opções, Fontes e Cores, Ambiente, Opções.

Ícones do IntelliSense
Os ícones no IntelliSense podem transmitir significado adicional com modificadores de
ícone. Esses são estrelas, corações e cadeados sobrepostos ao ícone do objeto e que
transmitem, respectivamente, os significados de protegido, interno ou privado.

ノ Expandir a tabela
ícone Acessibilidade Descrição

Classe pública O acesso não é restrito.

Classe protegida O acesso é limitado à classe que os contém ou aos tipos derivados
da classe que os contém.

Classe interna O acesso é limitado ao assembly atual ou aos tipos derivados da


protegida classe que os contém.

Classe interna O acesso é limitado ao assembly atual.

Classe privada O acesso é limitado à classe que o contém ou a tipos derivados da


classe que o contém no assembly atual. (Disponível desde o C#
7.2.)

Solução de problemas do IntelliSense


As opções do IntelliSense podem não funcionar como você espera em alguns casos.

O cursor está abaixo de um erro de código. Talvez não seja possível usar o IntelliSense
se uma função incompleta ou outro erro existirem no código acima do cursor, pois o
IntelliSense talvez não possa analisar os elementos do código. Você pode resolver esse
problema comentando o código aplicável.

O cursor está em um comentário de código. Não será possível usar o IntelliSense se o


cursor estiver em um comentário no arquivo de origem.

O cursor está em um literal de cadeia de caracteres. Não será possível usar o


IntelliSense se o cursor estiver entre aspas em um literal de cadeia de caracteres, como
no exemplo a seguir:

C++

MessageBox( hWnd, "String literal|")

As opções automáticas estão desativadas. Por padrão, o IntelliSense funciona


automaticamente, mas é possível desabilitar isso. Mesmo se o preenchimento
automático de declaração for desabilitado, é possível invocar um recurso IntelliSense.

Conteúdo relacionado
C# IntelliSense
Visual Basic IntelliSense
JavaScript IntelliSense
Escrever e refatorar o código (C++)
Fornecer comentários de código XML
IntelliSense para arquivos de código do
Visual Basic
Artigo • 13/01/2024

O editor de código-fonte do Visual Basic oferece os seguintes recursos de IntelliSense:

Dicas de sintaxe
Dicas de sintaxe são exibidas na sintaxe da instrução que você está digitando. Isso é útil
para instruções de como Declare.

Conclusão automática
Conclusão em várias palavras-chave

Por exemplo, se você digitar goto e um espaço, o IntelliSense exibirá uma lista dos
rótulos definidos em um menu suspenso. Outras palavras-chave com suporte
incluem Exit , Implements , Option e Declare .

Conclusão em Enum e Boolean

Quando uma instrução fizer referência a um membro de uma enumeração, o


IntelliSense exibirá uma lista dos membros de Enum . Quando uma instrução fizer
referência a um Boolean , o IntelliSense exibirá um menu suspenso de verdadeiro
ou falso.

A conclusão pode ser desativada por padrão desmarcando Listar membros


automaticamente na página de propriedades Geral na pasta Visual Basic.

Você pode invocar manualmente a conclusão invocando Listar Membros, Completar


Palavra ou Alt+Seta para a Direita. Para obter mais informações, confira Usar o
IntelliSense.

IntelliSense por Zona


O IntelliSense por Zona ajuda desenvolvedores de Visual Basic que precisam implantar
aplicativos por meio do ClickOnce e que estão restritos a configurações de confiança
parcial. Este recurso:

Permite escolher as permissões com que o aplicativo será executado.


Exibe APIs na Zona escolhida como disponíveis em Listar Membros e exibe APIs
que requerem permissões adicionais como não disponíveis.

Para obter mais informações, consulte Segurança de acesso do código para aplicativos
ClickOnce.

Listas de preenchimento filtradas


No Visual Basic, as listas de conclusão do IntelliSense têm dois controles de guia
localizados na parte inferior das listas. A guia Comum, que é selecionada por padrão,
exibe itens que são usados com maior frequência para completar a instrução que você
está escrevendo. A guia Todos exibe todos os itens disponíveis para preenchimento
automático, incluindo aqueles que também estão na guia Comum.

Conteúdo relacionado
Usar o IntelliSense
C# IntelliSense
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O C# IntelliSense fica disponível durante a codificação no editor e durante a depuração


na janela Comando do Modo imediato.

Listas de conclusão
As listas de preenchimento do IntelliSense no C# contêm tokens de Listar Membros,
Completar Palavra e muito mais. Ele fornece acesso rápido a:

Membros de um tipo ou namespace

Variáveis, comandos e nomes de funções

Snippets de código

Palavras-chave de linguagem

Métodos de extensão

A lista de conclusão no C# também é inteligente o suficiente para filtrar tokens


irrelevantes e pré-selecionar um token com base no contexto. Para obter mais
informações, consulte Listas de conclusão filtradas.

Snippets de código em listas de conclusão


No C#, a lista de preenchimento inclui snippets de código para ajudá-lo a inserir com
facilidade corpos de código predefinidos no programa. Os snippets de código são
exibidos na lista de conclusão como texto de atalho do snippet. Para obter mais
informações sobre os snippets de código disponíveis no C# por padrão, consulte
Snippets de código do C#.

Palavras-chave de linguagem em listas de conclusão


No C#, a lista de preenchimento também inclui palavras-chave. Para obter mais
informações sobre palavras-chave da linguagem C#, consulte Palavras-chave do C#.

Métodos de extensão em listas de conclusão


No C#, a lista de conclusão inclui métodos de extensão que estão no escopo.

7 Observação

A lista de conclusão não exibe todos os métodos de extensão para objetos String.

Os métodos de extensão usam um ícone diferente dos métodos de instância. Para obter
um guia de referência dos ícones de lista, confira Modo de Exibição de Classe e ícones
do Pesquisador de Objetos. Quando um método de instância e um método de extensão
com o mesmo nome estão no escopo, a lista de preenchimento exibe o ícone do
método de extensão.

Listas de preenchimento filtradas


O IntelliSense remove membros desnecessários da lista de preenchimento usando
filtros. O C# filtra as listas de preenchimento exibidas para estes itens:

Interfaces e classes base: o IntelliSense remove automaticamente itens das listas


de conclusão de interface e de classe base, tanto nas listas de interface quanto nas
listas de restrição de base de declaração de classe. Por exemplo, enumerações não
aparecem na lista de preenchimento nas classes base, pois enumerações não
podem ser usadas para as classes base. A lista de preenchimento de classes base
contém apenas interfaces e namespaces. Se você selecionar um item na lista e, em
seguida, digitar uma vírgula, o IntelliSense removerá as classes base da lista de
preenchimento, pois o C# não dá suporte à herança múltipla. O mesmo
comportamento também ocorre em cláusulas de restrição.

Atributos: ao aplicar um atributo a um tipo, a lista de conclusão é filtrada para que


ela tenha somente os tipos que descendem dos namespaces que contêm esses
tipos, como Attribute.

Cláusulas Catch

Inicializadores de objeto: somente os membros que podem ser inicializados serão


exibidos na lista de conclusão.

Palavra-chave new: ao digitar new e, em seguida, pressionar o Espaço, uma lista


de conclusão é exibida. Um item é selecionado na lista automaticamente, de
acordo com o contexto no código. Por exemplo, os itens são selecionados
automaticamente na lista de preenchimento em busca de declarações e instruções
de retorno nos métodos.
Palavra-chave enum: ao pressionar o Espaço após um sinal de igual para uma
atribuição de enum, uma lista de conclusão será exibida. Um item é selecionado na
lista automaticamente, de acordo com o contexto no código. Por exemplo, os itens
serão selecionados automaticamente na lista de conclusão depois que você digitar
a palavra-chave retorno e quando fizer uma declaração.

Operadores as e is: uma lista de conclusão filtrada é exibida automaticamente ao


pressionar o Espaço depois de digitar a palavra-chave as ou is .

Eventos: ao digitar a palavra-chave event , a lista de conclusão conterá apenas os


tipos de delegado.

A ajuda do parâmetro classifica automaticamente para a primeira sobrecarga de


método que corresponde aos parâmetros, conforme eles são inseridos. Se houver
várias sobrecargas de método disponíveis, será possível usar as setas para cima e
para baixo para navegar para a próxima sobrecarga possível na lista.

Membros usados mais recentemente


O IntelliSense lembra os membros selecionados recentemente na caixa pop-up Listar
Membros quanto à conclusão automática de nome de objeto. Na próxima vez que você
usar a Lista de Membros, os membros usados mais recentemente serão mostrados na
parte superior. O histórico dos membros mais usados recentemente é limpo entre cada
sessão do Visual Studio.

override
Ao digitar override e, em seguida, pressionar Espaço, o IntelliSense exibe todos os
membros da classe base válidos que podem ser substituídos em uma caixa de listagem
pop-up. Digitar o tipo de retorno do método após override solicitará que o IntelliSense
mostre apenas os métodos que retornam o mesmo tipo. Quando o IntelliSense não
conseguir encontrar nenhuma correspondência, ele exibirá todos os membros da classe
base.

IntelliSense aprimorado com a inteligência artificial


O Visual Studio IntelliCode fornece listas de conclusão do IntelliSense aprimoradas com
inteligência artificial. O IntelliCode prevê a API mais provavelmente correta a ser usada,
em vez de apenas apresentar uma lista de membros em ordem alfabética. Ele usa os
seus padrões e contexto de código atuais para fornecer a lista dinâmica.
Geração automática de código

Adicionar usando
A operação Adicionar usando do IntelliSense adiciona automaticamente a diretiva
using necessária em seu arquivo de código. Esse recurso permite que você mantenha o

foco no código que está sendo escrito, em vez de precisar mudar o foco para outra
parte do código.

Para iniciar a operação Adicionar usando, posicione o cursor em uma referência de tipo
que não pode ser resolvida. Por exemplo, quando você cria um aplicativo de console e,
em seguida, adiciona XmlReader ao corpo do método Main , um rabisco vermelho
aparece nessa linha de código, porque a referência de tipo não pode ser resolvida. Em
seguida, você pode invocar a operação Adicionar usando por meio da Ação Rápida. As
Ações Rápidas ficam visíveis apenas quando o cursor está posicionado no tipo não
associado.

Clique no ícone de lâmpada de erro e, em seguida, escolha using System.Xml; para


adicionar automaticamente a diretiva using.

Adicionar diretivas using ausentes quando colar


O IntelliSense pode adicionar automaticamente diretivas using ausentes ao seu código
quando você cola um tipo no arquivo de código. Esse recurso economiza seu tempo
automatizando a tarefa de adicionar diretivas using ausentes ao colar um tipo em um
arquivo. Habilite esse recurso em Ferramentas>Opções>Editor de Texto>C# (ou Visual
Basic) >Avançado e selecione Adicionar diretivas using ausentes na colagem.

Remover e classificar usos


A opção Remover e Classificar Usos classifica e remove as declarações using e extern
sem alterar o comportamento do código-fonte. Ao longo do tempo, os arquivos de
origem poderão ficar sobrecarregados e ser difíceis de serem lidos devido a diretivas
using desnecessárias e desorganizadas. A opção Remover e Classificar Usos compacta
o código-fonte ao remover as diretivas using não utilizadas e melhora a legibilidade
com sua classificação. No menu Editar, selecione IntelliSense e, depois, selecione
Organizar Usos.

Implementar interface
O IntelliSense fornece uma opção para ajudá-lo a implementar uma interface enquanto
estiver trabalhando no editor de códigos. Normalmente, para implementar uma
interface corretamente, é necessário criar uma declaração de método para cada
membro da interface na classe. Usando o IntelliSense, depois de digitar o nome de uma
interface em uma declaração de classe, uma lâmpada de Ações Rápidas é exibida. A
lâmpada oferece a opção de implementar a interface automaticamente, usando a
nomenclatura explícita ou implícita. Na nomenclatura explícita, as declarações de
método levam o nome da interface. Na nomenclatura implícita, as declarações de
método não indicam a interface à qual pertencem. Um método de interface
explicitamente nomeado só pode ser acessado por meio de uma instância de interface,
e não por meio de uma instância de classe. Para obter mais informações, consulte
Implementação explícita da interface.

A implementação da interface gera o número mínimo de stubs de método necessários


para atender à interface. Se uma classe base implementar partes da interface, os stubs
não serão regenerados.

Implementar classe base abstrata


O IntelliSense fornece uma opção para ajudá-lo a implementar membros de uma classe
base abstrata automaticamente enquanto estiver trabalhando no editor de códigos.
Normalmente, para implementar membros de uma classe base abstrata, é necessário
criar uma nova definição de método para cada método da classe base abstrata na classe
derivada. Usando o IntelliSense, depois de digitar o nome de uma classe base abstrata
em uma declaração de classe, uma lâmpada Ações Rápidas é exibida. A lâmpada
oferece a opção de implementar os métodos de classe base automaticamente.

Os stubs de método gerados pelo recurso Implementar Classe Base Abstrata são
modelados pelo trecho de código definido no arquivo MethodStub.snippet. Os snippets
de código são modificáveis. Para obter mais informações, consulte Passo a passo: Criar
um snippet de código.

Gerar com base no uso


O recurso Gerar com Base no Uso permite usar classes e membros antes de defini-los. É
possível gerar um stub para qualquer classe, construtor, método, propriedade, campo
ou enumeração que você deseja usar, mas que ainda não foi definido. É possível gerar
novos tipos e membros sem sair do local atual no código. Isso minimiza a interrupção
do fluxo de trabalho.

Um sublinhado vermelho ondulado é exibido em cada identificador indefinido. Ao


posicionar o ponteiro do mouse sobre o identificador, uma mensagem de erro é exibida
em uma dica de ferramenta. Para exibir as opções apropriadas, é possível usar um dos
seguintes procedimentos:

Clique no identificador indefinido. Uma lâmpada de erro de Ações Rápidas é


exibida abaixo do identificador. Clique na lâmpada de erro.

Clique no identificador indefinido e, em seguida, pressione Ctrl+. (Ctrl + ponto


final).

Clique com o botão direito do mouse no identificador indefinido e, em seguida,


clique em Ações Rápidas e Refatorações.

As opções exibidas podem incluir as seguintes:

Gerar propriedade

Gerar campo

Gerar método

Gerar classe

Gerar novo tipo (para uma classe, um struct, uma interface ou enumeração)

Gerar manipuladores de eventos


No editor de códigos, o IntelliSense pode ajudá-lo a vincular métodos (manipuladores
de eventos) a campos de evento.

Ao digitar o operador += após um campo de evento em um arquivo .cs, o IntelliSense


mostra a opção de pressionar a tecla Tab. Isso insere uma nova instância de um
delegado que aponta para o método que manipula o evento.
Se você pressionar a tecla Tab, o IntelliSense concluirá a instrução para você
automaticamente e exibirá a referência do manipulador de eventos como um texto
selecionado no editor de códigos. Para concluir o vínculo automático de evento, o
IntelliSense solicita que você pressione a tecla Guia novamente para criar um stub vazio
para o manipulador de eventos.

7 Observação

Se um novo delegado criado pelo IntelliSense referenciar um manipulador de


eventos existente, o IntelliSense comunicará essas informações na dica de
ferramenta. Em seguida, você pode modificar essa referência; o texto já está
selecionado no editor de códigos. Caso contrário, o vínculo automático de evento
será concluído nesse ponto.

Se você pressionar a Guia, o IntelliSense criará um stub de um método com a assinatura


correta e colocará o cursor no corpo do manipulador de eventos.

7 Observação

Use o comando Navegação Regressiva no menu Exibir (Ctrl+-) para retornar à


declaração de vínculo de evento.

Confira também
Usar o IntelliSense
Visual Studio IDE
JavaScript IntelliSense
Artigo • 09/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio fornece uma experiência de edição de JavaScript avançada pronta para
uso. Ativado por um serviço de linguagem baseado no TypeScript, o Visual Studio
oferece um IntelliSense sofisticado, suporte para recursos modernos do JavaScript e
recursos de produtividade como Ir para Definição, refatoração e muito mais.

Para obter mais informações sobre a funcionalidade geral do IntelliSense no Visual


Studio, consulte Usando o IntelliSense.

O JavaScript IntelliSense exibe informações sobre listas de parâmetro e de membros.


Essas informações são fornecidas pelo serviço de linguagem TypeScript, que usa a
análise estática nos bastidores para entender melhor o código.

O TypeScript usa várias fontes para criar essas informações:

IntelliSense baseado na inferência de tipos


IntelliSense baseado no JSDoc
IntelliSense baseado em arquivos de declaração do TypeScript
Aquisição automática de definições de tipo

IntelliSense com base em inferência de tipos


No JavaScript, na maioria das vezes, não há nenhuma informação de tipo explícita
disponível. Felizmente, geralmente é bastante fácil descobrir um tipo dado o contexto
de código ao redor. Esse processo é chamado de inferência de tipos.

Para uma variável ou uma propriedade, em geral, o tipo é o tipo do valor usado para
inicializá-lo ou a atribuição de valor mais recente.

JavaScript

var nextItem = 10;


nextItem; // here we know nextItem is a number

nextItem = "box";
nextItem; // now we know nextItem is a string

Para uma função, o tipo de retorno pode ser inferido de instruções de returno.
Para parâmetros de função, atualmente, não há nenhuma inferência, mas existem
maneiras de resolver esse problema usando arquivos JSDoc ou TypeScript .d.ts (confira
as próximas seções).

Além disso, há uma inferência especial para o seguinte:

Classes de “estilo ES3”, especificadas usando uma função de construtor e


atribuições à propriedade de protótipo.
Padrões de módulo de estilo CommonJS, especificados como atribuições de
propriedade no objeto exports ou atribuições à propriedade module.exports .

JavaScript

function Foo(param1) {
this.prop = param1;
}
Foo.prototype.getIt = function () { return this.prop; };
// Foo will appear as a class, and instances will have a 'prop' property and
a 'getIt' method.

exports.Foo = Foo;
// This file will appear as an external module with a 'Foo' export.
// Note that assigning a value to "module.exports" is also supported.

IntelliSense com base em JSDoc


Nos casos em que a inferência de tipos não fornecer as informações de tipo desejadas
(ou para dar suporte à documentação), as informações de tipo podem ser fornecidas
explicitamente por meio de anotações do JSDoc. Por exemplo, para fornecer um tipo
específico a um objeto parcialmente declarado, é possível usar a marcação @type
conforme mostrado abaixo:

JavaScript

/**
* @type {{a: boolean, b: boolean, c: number}}
*/
var x = {a: true};
x.b = false;
x. // <- "x" is shown as having properties a, b, and c of the types
specified

Conforme mencionado, os parâmetros de função nunca são inferidos. No entanto,


usando a marcação @param do JSDoc, é possível adicionar tipos a parâmetros de função
também.
JavaScript

/**
* @param {string} param1 - The first argument to this function
*/
function Foo(param1) {
this.prop = param1; // "param1" (and thus "this.prop") are now of type
"string".
}

Consulte as informações do JsDoc em Verificação de Tipos de Arquivos JavaScript


para ver as anotações do JsDoc com suporte no momento.

IntelliSense com base em arquivos de


declaração TypeScript
Como o JavaScript e o TypeScript são baseados no mesmo serviço de linguagem, eles
podem interagir de forma sofisticada. Por exemplo, o JavaScript IntelliSense pode ser
fornecido para valores declarados em um arquivo .d.ts (confira a Documentação do
TypeScript ), e tipos como interfaces e classes declaradas em TypeScript estão
disponíveis para serem usados como tipos em JsDoc.

Abaixo, mostramos um exemplo simples de um arquivo de definição TypeScript que


fornece essas informações de tipo (por meio de uma interface) para um arquivo
JavaScript no mesmo projeto (usando uma marca JsDoc ).
Aquisição automática das definições de tipo
No mundo do TypeScript, as bibliotecas mais populares do JavaScript têm suas APIs
descritas por arquivos .d.ts e o repositório mais comum dessas definições está em
DefinitelyTyped .

Por padrão, o serviço de linguagem tenta detectar quais bibliotecas do JavaScript estão
em uso e baixará e referenciará automaticamente o arquivo .d.ts correspondente que
descreve a biblioteca, a fim de fornecer um IntelliSense mais completo. Os arquivos são
baixados em um cache localizado na pasta do usuário em
%LOCALAPPDATA%\Microsoft\TypeScript.

7 Observação

Esse recurso estará desabilitado por padrão se um arquivo de configuração


tsconfig.json estiver sendo usado, mas poderá ser definido como habilitado,
conforme descrito mais abaixo.

Atualmente, a detecção automática funciona para dependências baixadas do npm (com


a leitura do arquivo package.json), no Bower (com a leitura do arquivo bower.json) e em
arquivos soltos no projeto que correspondem a uma lista com aproximadamente as 400
bibliotecas mais populares do JavaScript. Por exemplo, se você tiver jquery-1.10.min.js
em seu projeto, o arquivo jquery.d.ts será buscado e carregado para proporcionar uma
experiência melhor de edição. Esse arquivo .d.ts não afetará o projeto.

Confira também
Usando o IntelliSense
Suporte a JavaScript (Visual Studio para Mac)
Funcionalidades do Visual C++
IntelliSense
Artigo • 13/01/2024

IntelliSense é um nome dado a um conjunto de recursos que tornam a codificação mais


conveniente. O IntelliSense para C++ está disponível para arquivos autônomos, bem
como para arquivos que fazem parte de um projeto em C++. Em projetos
multiplataforma, alguns recursos do IntelliSense estão disponíveis nos arquivos .cpp e .c
no projeto de código compartilhado, mesmo quando você está em um contexto
Android ou iOS.

Este artigo fornece uma visão geral dos recursos C++ IntelliSense. Para obter
informações sobre como configurar seu projeto para o IntelliSense e como solucionar
problemas, consulte Configurar um projeto do C++ para o IntelliSense.

Recursos do IntelliSense em C++


IntelliSense é um nome dado a um conjunto de recursos que tornam a codificação mais
conveniente. Uma vez que pessoas diferentes têm ideias diferentes sobre o que é
conveniente, praticamente todos os recursos do IntelliSense podem ser habilitados ou
desabilitados na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado. A
caixa de diálogo Opções está disponível no menu Ferramentas na barra de menus.
Você pode usar os itens de menu e os atalhos de teclado mostrados na imagem a seguir
para acessar o IntelliSense.

Lista de membro e preenchimento de


declaração
Quando você começa a digitar uma palavra-chave, um tipo, uma função, um nome de
variável ou outro elemento de programa que o compilador reconhece, o editor se
oferece para completar a palavra para você.

Na primeira vez que você invoca a lista de membros, ela mostra apenas membros
acessíveis para o contexto atual. Se você pressionar Ctrl+J depois disso, ela mostrará
todos os membros, independentemente da acessibilidade. Se você invocá-la uma
terceira vez, uma lista ainda maior de elementos do programa será mostrada. Você pode
desativar a lista de membros na caixa de diálogo Opções, em Editor de
Texto>C/C++>Geral>Listar membros automaticamente.
Ajuda do parâmetro
Quando você digita uma chave de abertura de uma chamada de função ou colchete
angular em uma declaração de variável de modelo de classe, o editor mostra uma
pequena janela com tipos de parâmetro para cada sobrecarga da função ou do
construtor. O parâmetro "atual", com base no local do cursor, está em negrito. Você
pode desativar as informações de parâmetro na caixa de diálogo Opções, em Editor de
Texto>C/C++>Geral>Informações de parâmetro.

Informação Rápida
Quando você passa o cursor do mouse sobre uma variável, aparece uma pequena janela
embutida que mostra as informações de tipo e o cabeçalho no qual o tipo é definido.
Passe o cursor do mouse sobre uma chamada de função para ver a assinatura da
função. Você pode desativar as Informações Rápidas na caixa de diálogo Opções, em
Editor de Texto>C/C++>Avançado>Informações Rápidas Automáticas.
Linhas onduladas de erro
Linhas onduladas em um elemento de programa (variável, palavra-chave, chave, nome
do tipo e assim por diante) chamam a atenção para um erro ou erro em potencial no
código. Uma linha ondulada verde é exibida quando você escreve uma declaração de
encaminhamento para lembrá-lo de que você ainda precisa escrever a implementação.
Uma linha ondulada roxa aparece em um projeto compartilhado quando há um erro no
código que não está ativo no momento, por exemplo, quando você está trabalhando no
contexto do Windows, mas digita algo que seria um erro em um contexto do Android.
Uma linha ondulada vermelha indica um erro do compilador ou aviso no código ativo
que você precisa resolver.

Colorização e fontes de código


As fontes e cores padrão podem ser alteradas na caixa de diálogo Opções, em
Ambiente>Fontes e Cores. Você pode alterar as fontes para muitas janelas da interface
do usuário aqui, não apenas para o editor. As configurações específicas do C++
começam com "C++"; as outras configurações são para todas as linguagens.

IntelliSense multiplaforma
Em um projeto de código compartilhado, alguns recursos do IntelliSense, como linhas
onduladas, estão disponíveis, mesmo quando você está trabalhando em um contexto
Android. Se você escrever algum código que resultaria em um erro em um projeto
inativo, o IntelliSense ainda mostrará linhas onduladas, mas elas estarão em uma cor
diferente das linhas onduladas para erros no contexto atual.

Considere um aplicativo OpenGLES configurado para compilação no Android e no iOS.


A ilustração mostra o código compartilhado que está sendo editado. Nesta imagem, o
projeto ativo é iOS.StaticLibrary:
Observe o seguinte:

O branch #ifdef na linha 6 é esmaecido para indicar uma região inativa, pois
__ANDROID__ não está definido para o projeto iOS.

A variável de saudação na linha 11 é inicializada com o identificador HELLO , que


agora tem uma linha ondulada vermelha. Isso ocorre porque nenhum identificador
HELLO está definido no projeto iOS atualmente ativo.

A linha 12 tem linha ondulada roxa no identificador BYE , pois esse identificador
não está definido no projeto Android.NativeActivity inativo (no momento).
Embora essa linha seja compilada quando iOS é o projeto ativo, ela não será
compilada quando Android for o projeto ativo. Uma vez que esse é um código
compartilhado, você precisa corrigir o código, embora ele seja compilado na
configuração ativa no momento.

Se você alterar o projeto ativo para Android, as linhas onduladas mudarão:

O branch #else na linha 8 é esmaecido para indicar uma região inativa, pois
__ANDROID__ está definido para o projeto Android.

A variável de saudação na linha 11 é inicializada com o identificador HELLO , que


tem uma linha ondulada roxa. Isso ocorre porque nenhum identificador HELLO está
definido no projeto iOS atualmente inativo.

A linha 12 tem uma linha ondulada vermelha no identificador BYE pois esse
identificador não está definido no projeto ativo.

IntelliSense para arquivos autônomos


Ao abrir um arquivo único fora de qualquer projeto, você ainda obtém o IntelliSense.
Você pode habilitar ou desabilitar os recursos do IntelliSense específicos na caixa de
diálogo Opções, em Editor de Texto>C/C++>Avançado. Para configurar o IntelliSense
para arquivos únicos que não fazem parte de um projeto, procure a seção IntelliSense e
navegação para arquivos que não são de projeto.

Por padrão, IntelliSense de arquivo único usa apenas diretórios de inclusão padrão para
localizar arquivos de cabeçalho. Para adicionar mais diretórios, abra o menu de atalho
no nó Solução e adicione seu diretório à lista Depurar Código-Fonte, como mostra a
seguinte ilustração:

Habilitar ou desabilitar funcionalidades


Uma vez que pessoas diferentes têm ideias diferentes sobre o que é conveniente,
praticamente todos os recursos do IntelliSense podem ser habilitados ou desabilitados
na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado. A caixa de diálogo
Opções está disponível no menu Ferramentas na barra de menus.

Conteúdo relacionado
Usando o IntelliSense
Configurar um projeto do C++ para o IntelliSense
Configurar um projeto do C++ para o
IntelliSense
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Em alguns casos, pode ser necessário configurar manualmente o projeto do C++ para
fazer com que o IntelliSense funcione corretamente. Para projetos do MSBuild (com
base em arquivos .vcxproj), é possível ajustar as configurações nas propriedades do
projeto. Para projetos não MSBuild, as configurações são ajustadas no arquivo
CppProperties.json no diretório raiz do projeto. Em alguns casos, pode ser preciso criar
um arquivo de dicas para ajudar o IntelliSense a entender as definições de macro. O
ambiente de desenvolvimento integrado (IDE) do Visual Studio ajuda a identificar e
corrigir problemas do IntelliSense.

IntelliSense de arquivo único


Ao abrir um arquivo que não está incluído em um projeto, o Visual Studio fornece um
certo suporte IntelliSense, mas por padrão, nenhum rabisco de erro é mostrado. Se a
Barra de Navegação exibir Arquivos Diversos, esse é o possível motivo de você não estar
vendo rabiscos de erros na opção código incorreto, ou pode ser porque um macro pré-
processador não foi definido.

Verificar a Lista de Erros


Se um arquivo não for aberto no modo de arquivo único e o IntelliSense não estiver
funcionando corretamente, o primeiro lugar a verificar é a janela de Lista de Erros. Para
ver todos os erros de IntelliSense para o arquivo de origem atual, junto com todos os
arquivos de cabeçalho incluídos, escolha Compilação + IntelliSense na lista suspensa:

O IntelliSense produz um máximo de 1.000 erros. Se houver mais de 1.000 erros nos
arquivos de cabeçalho incluídos por um arquivo de origem, este mostrará apenas um
rabisco de erro único no início do arquivo de origem.
Certificar-se de que os caminhos de #include
estão corretos

Projetos do MSBuild
Se você executar suas compilações fora do ambiente de desenvolvimento integrado
(IDE) do Visual Studio e elas estiverem tendo êxito, mas o IntelliSense está incorreto, é
possível que sua linha de comando esteja fora de sincronia com as configurações de
projeto para uma ou mais configurações. Clique com o botão direito do mouse no nó
do projeto no Gerenciador de Soluções e certifique-se de que todos os caminhos de
#include estejam adequados para a configuração e a plataforma atual. Se os caminhos
forem idênticos em todas as configurações e plataformas, você pode selecionar Todas
as configurações e Todas as plataformas e depois verificar se os caminhos estão
corretos.

Para ver os valores atuais para a compilação de macros, como VC_IncludePath,


selecione a linha de Diretórios de Inclusão e clique na lista suspensa à direita. Depois,
escolha <Editar> e clique no botão Macros.

projetos Makefile
Para projetos Makefile baseados no modelo de projeto NMake, escolha NMake no
painel esquerdo e caminho de pesquisas de inclusão na categoria IntelliSense:
Projetos de pasta aberta
Para projetos CMake, certifique-se de que os caminhos de #include estejam
especificados corretamente para todas as configurações em CMakeLists.txt. Outros tipos
de projeto podem exigir um arquivo CppProperties.json. Para saber mais, confira
Configurar o IntelliSense com CppProperties.json. Os caminhos devem estar corretos
para cada configuração definida no arquivo.

Se houver um erro de sintaxe no arquivo CppProperties.json, o IntelliSense ficará


incorreto nos arquivos afetados. O Visual Studio exibirá o erro na Janela de Saída.

Problemas do analisador de marca


O analisador de marca é um analisador de C++ “difuso” usado para navegação. Ele é
muito rápido, mas não tenta entender completamente cada constructo de código.

Por exemplo, ele não avalia os macros de pré-processador e, portanto, pode analisar
incorretamente o código que faz uso intenso deles. Quando o Analisador de Marca
encontra um constructo de código não familiar, ele pode ignorar toda aquela região do
código.

Há duas maneiras comuns em que esse problema se manifesta no Visual Studio:

1. Se a Barra de Navegação mostrar um macro mais interno, a definição da função


atual foi ignorada:
2. O IDE se oferece para criar uma definição de função para uma função já definida:

Para corrigir esses tipos de problemas, adicione um arquivo chamado cpp.hint na raiz
do diretório de soluções. Para saber mais, confira Arquivos de dicas.

Os erros de analisador de marca são exibidos na janela Lista de Erros.

Validar configurações do projeto com o log de


diagnóstico
Para verificar se o compilador do IntelliSense está usando as opções do compilador
corretas, incluindo as macros de Caminhos e Pré-processadores, ative o Log de
Diagnóstico nas linhas de comando do IntelliSense em Ferramentas > Opções > Editor
de Texto > C/C++ > Avançado > Log de Diagnóstico. Defina como True Habilitar
registro em log, 5 (mais detalhado) para Nível de log e 8 (registro em log do
IntelliSense) para Filtro de registro em log.

A Janela de Saída passará a mostrar as linhas de comando que são passadas para o
compilador do IntelliSense. Aqui está uma amostra de saída:
Saída

[IntelliSense] Configuration Name: Debug|Win32


[IntelliSense] Toolset IntelliSense Identifier:
[IntelliSense] command line options:
/c
/I.
/IC:\Repo\Includes
/DWIN32
/DDEBUG
/D_DEBUG
/Zc:wchar_t-
/Zc:forScope
/Yustdafx.h

Essas informações podem ajudar você a entender por que o IntelliSense está
fornecendo informações imprecisas. Por exemplo, se o diretório de inclusão do seu
projeto contiver $(MyVariable)\Include e o log de diagnóstico mostrar /I\Include como
um caminho de inclusão, quer dizer que $(MyVariable) não foi avaliada e foi removida
do caminho de inclusão final.

Sobre a compilação do IntelliSense


O Visual Studio usa um compilador de C++ dedicado para criar e manter o banco de
dados que sustenta todos os recursos do IntelliSense. Para manter o banco de dados do
IntelliSense em sincronia com o código, o Visual Studio inicia automaticamente as
compilações somente IntelliSense como tarefas em segundo plano em resposta a
determinadas alterações feitas nas configurações de projetos ou em arquivos de
origem.

No entanto, em alguns casos o Visual Studio pode não atualizar o banco de dados do
IntelliSense de maneira oportuna. Por exemplo, quando você executa um comando de
pull do git ou check-out do git, o Visual Studio pode levar até uma hora para detectar
alterações nos arquivos. Você pode forçar um novo exame de todos os arquivos em
uma solução clicando com o botão direito do mouse no nó do projeto no Gerenciador
de Soluções e escolhendo Examinar novamente a solução.

Como solucionar problemas de falhas de


compilação do IntelliSense
Uma compilação do IntelliSense não produz binários, mas ainda assim poderá falhar.
Uma possível causa de falha são os arquivos personalizados .props ou .targets. No
Visual Studio 2017 versão 15.6 e posterior, os erros de build somente do IntelliSense são
registrados em log na Janela de Saída. Para vê-los, defina Mostrar saída de a Solução:

A mensagem de erro pode instruir você a habilitar o rastreamento de tempo de design:

Saída

error: Designtime build failed for project


'E:\src\MyProject\MyProject.vcxproj',
configuration 'Debug|x64'. IntelliSense might be unavailable.
Set environment variable TRACEDESIGNTIME=true and restart
Visual Studio to investigate.

Se você definir a variável de ambiente TRACEDESIGNTIME como true e reiniciar o Visual


Studio, verá um arquivo de log no diretório %TEMP%, que pode ajudar a diagnosticar a
falha de compilação.

Saiba mais sobre a variável de ambiente TRACEDESIGNTIME em Roslyn e Common


Project System . As informações neste artigo são relevantes para projetos do C++.

Confira também
Visual C++ IntelliSense
Navegue pelos códigos
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio fornece várias maneiras de navegar no código usando o editor. Este
tópico resume as diferentes maneiras de navegar no código e fornece links para tópicos
com mais detalhes.

Comandos Navegar para trás e Navegar para


frente
Você pode usar os botões Navegar para Trás (Ctrl+-) e Navegar para Frente
(Ctrl+Shift+-) na barra de ferramentas para mover o ponto de inserção para locais
anteriores ou para retornar para um local mais recente de um local anterior. Esses
botões retém os últimos 20 locais do ponto de inserção. Esses comandos também estão
disponíveis no menu Exibir, em Navegar para Trás e Navegar para Frente.

Barra de navegação
Você pode usar a barra de navegação (as caixas suspensas na parte superior da janela
de código) para navegar para o código em uma base de código. É possível escolher um
tipo ou membro para ir diretamente a ele. A barra de navegação é exibida ao editar
códigos no Visual Basic, C# ou base de código C++. Em uma classe parcial, os membros
definidos fora do arquivo de código atual podem estar desabilitados (aparecendo em
cinza).
Você pode navegar nas caixas suspensas da seguinte maneira:

Para navegar para outro projeto ao qual o arquivo atual pertence, escolha-o na
lista suspensa à esquerda.

Para navegar para uma classe ou um tipo, escolha-o no menu suspenso central.

Para navegar diretamente para um procedimento ou para outro membro de uma


classe, escolha-o no menu suspenso à direita.

Para mudar o foco da janela de código para a barra de navegação, pressione a


combinação de teclas de atalho Ctrl+F2.

Para mudar o foco de caixa para caixa na barra de navegação, pressione a tecla
Tab.

Para selecionar o item da barra de navegação que tem o foco e retornar à janela
de código, pressione a tecla Enter.

Para retornar o foco da barra de navegação para o código sem selecionar nada,
pressione a tecla Esc.

Para ocultar a barra de navegação, altere a opção Barra de navegação nas


configurações Todas as Linguagens do Editor de Texto (Ferramentas>Opções>Editor
de Texto>Todas as Linguagens) ou altere as configurações das linguagens
individualmente.

Localizar todas as referências


Localiza todas as referências ao elemento selecionado na solução. Você pode usar isso
para verificar possíveis efeitos colaterais de uma refatoração grande ou para verificar
código "morto". Pressione F8 para pular entre os resultados. Para obter mais
informações, confira Localizar referências no código.

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione
Shift+F12

Mouse Selecione Localizar Todas as Referências no menu do clique com o botão direito

Realce de referência
Quando você clica em um símbolo no código-fonte, todas as instâncias desse símbolo
são realçadas no documento. Os símbolos realçados podem incluir declarações e
referências e muitos outros símbolos que Localizar Todas as Referências retornaria. Isso
inclui os nomes de classes, objetos, variáveis, métodos e propriedades. No código do
Visual Basic, as palavras-chave de muitas estruturas de controle também são realçadas.
Para passar para o próximo símbolo realçado ou para o anterior, pressione
Ctrl+Shift+Seta para Baixo ou Ctrl+Shift+Seta para Cima. Você pode alterar a cor de
realce em Ferramentas>Opções>Ambiente>Fontes e Cores>Referência Realçada.

Comandos Ir Para
Ir Para tem os seguintes comandos que estão disponíveis no menu Editar em Ir Para:

Ir Para Linha (Ctrl+G): mover para o número de linha especificado no documento


ativo.

Ir para Todos (Ctrl+T ou Ctrl+,): mover para a linha, o tipo, o arquivo, o membro
ou o símbolo especificado.

Ir para Arquivo (Ctrl+1, Ctrl+F): mover para o arquivo especificado na solução.

Ir para Arquivo Recente (Ctrl+1, Ctrl+R): mover para o arquivo especificado e


visitado recentemente na solução.
Ir para Tipo (Ctrl+1, Ctrl+T): mover para o tipo especificado na solução.

Ir para Membro (Ctrl+1, Ctrl+M): mover para o membro especificado na solução.

Ir para Símbolo (Ctrl+1, Ctrl+S): mover para o símbolo especificado na solução.

No Visual Studio 2017 versão 15.8 e posteriores, os seguintes comandos de navegação


Ir Para também estão disponíveis:

Ir para Próximo Problema no Arquivo (Alt+PgDn) e Ir para o Problema Anterior


no Arquivo (Alt+PgUp)

Ir para Local da Última Edição (Ctrl+Shift+Backspace)

Veja mais informações sobre esses comandos no tópico Localizar código usando os
comandos Ir Para.

Ir para definição
Ir para Definição leva para a definição do elemento selecionado. Para saber mais, veja Ir
para Definição e Inspecionar Definição.

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione F12

Mouse Clique com o botão direito do mouse no nome do tipo e selecione Ir para Definição
OU pressione Ctrl e clique no nome do tipo

Inspecionar Definição
Espiar Definição exibe a definição do elemento selecionado em uma janela sem sair do
local atual no editor de código. Para obter mais informações, confira Como exibir e
editar o código usando Espiar Definição e Ir para Definição e Espiar Definição.

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione
Alt+F12

Mouse Clique com o botão direito do mouse no nome do tipo e selecione Espiar Definição ou
pressione Ctrl e clique no nome do tipo (se a opção Abrir definição na exibição de
espiada estiver marcada)
Ir Para Implementação
Usando Ir para Implementação, você pode navegar de uma classe ou tipo base para
suas implementações. Se houver várias implementações, você as verá listadas na janela
Localizar Resultados de Símbolos:

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione
Ctrl+F12

Mouse Clique com o botão direito do mouse no nome do tipo e selecione Ir Para
Implementação

Ir Para a Base
Usando Ir para Base, você pode navegar até a cadeia de herança do elemento
selecionado. Se houver vários resultados, você vai visualizá-los listados na janela Ir para
Base:

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione
Alt+Home

Mouse Clique com o botão direito do mouse no nome do tipo e selecione Ir para Base

Hierarquia de chamadas
Você pode exibir as chamadas de e para um método na Janela Hierarquia de Chamada:

Entrada Função

Teclado Coloque o cursor de texto em algum lugar dentro do nome do tipo e pressione Ctrl+K,
Ctrl+T

Mouse Clique com o botão direito do mouse no nome do membro e selecione Exibir
Hierarquia de Chamadas

Comandos Próximo Método e Método Anterior


(Visual Basic)
Nos arquivos de código Visual Basic, use esses comandos para mover o ponto de
inserção para diferentes métodos. Escolha Editar>Próximo Método ou Editar>Método
Anterior.

Visualizador de Estrutura
O recurso Visualizador de Estrutura no editor de códigos mostra as linhas guias da
estrutura – linhas verticais tracejadas que indicam a correspondência de chaves em sua
base de código. Isso facilita ver onde os blocos lógicos começam e terminam.

Para desabilitar as linhas da guia da estrutura, acesse Ferramentas>Opções>Editor de


Texto>Geral e limpe a caixa Mostrar linhas da guia da estrutura.

Barra de rolagem avançada


Você pode usar a barra de rolagem avançada em uma janela de código para obter uma
visão geral do seu código. No modo de mapa, você pode acessar visualizações do
código ao mover o cursor para cima e para baixo na barra de rolagem. Para obter mais
informações, confira Como acompanhar o código personalizando a barra de rolagem.
Informações do CodeLens
Você pode localizar informações sobre o código específico, como alterações e quem fez
essas alterações, referências, bugs, itens de trabalho, revisões de código e status de
teste de unidade ao usar o CodeLens no editor de código. O CodeLens funciona como
uma exibição de alerta quando você usa o Visual Studio Enterprise com o Team
Foundation Server. Consulte Localizar alterações de código e outros históricos.

Confira também
Recursos do editor de código
Exibir a hierarquia de chamada
Localizar referências no seu código
Artigo • 10/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar o comando Localizar Todas as Referências para localizar onde
elementos de código específicos são referenciados em toda a base de código. O
comando Localizar Todas as Referências está disponível no menu de contexto
(acessado com o clique do botão direito do mouse) do elemento cujas referências você
deseja localizar. Ou, se você estiver usando um teclado, pressione Shift + F12.

Os resultados serão exibidos em uma janela de ferramentas chamada referências do


<elemento>, em que elemento é o nome do item que você está procurando. Uma barra
de ferramentas na janela referências permite que você faça o seguinte:

Altere o escopo da pesquisa em uma caixa de listagem suspensa. É possível optar


por examinar apenas documentos alterados até a solução inteira.
Copie o item referenciado selecionado ao selecionar o botão Copiar.
Escolha os botões para acessar o local anterior ou seguinte na lista. Também é
possível pressionar as teclas F8 e Shift + F8 para fazer isso.
Remova todos os filtros nos resultados retornados, escolhendo o botão Limpar
Todos os Filtros.
Altere a forma em que os itens retornados são agrupados escolhendo uma
configuração na caixa de listagem suspensa Agrupar por:.
Mantenha a janela de resultados da pesquisa atual ao escolher o botão Manter
Resultados. Ao selecionar este botão, os resultados da pesquisa atual ficam nessa
janela, e novos resultados da pesquisa são exibidos em uma nova janela de
ferramentas.
Pesquisar cadeias de caracteres nos resultados da pesquisa inserindo texto na
caixa de texto Pesquisar Localizar Todas as Referências.

Também é possível passar o mouse sobre qualquer resultado da pesquisa para obter
uma visualização da referência.
Navegue até referências
Você pode usar os seguintes métodos para navegar para as referências na janela
referências:

Pressione F8 para acessar a próxima referência ou Shift + F8 para acessar a


referência anterior.
Pressione a tecla Enter em uma referência ou clique duas vezes nela para acessá-la
no código.
No menu do clique com o botão direito (menu de contexto) de uma referência,
escolha os comandos Ir para Local Anterior ou Ir para Próximo Local.
Use as teclas Seta para cima e Seta para baixo (se elas estiverem habilitadas na
caixa de diálogo Opções). Para habilitar essa funcionalidade, na barra de menus,
selecione Ferramentas>Opções>Ambiente>Guias e Janelas e, na seção da guia
Visualizar, selecione as caixas Permitir que novos arquivos sejam abertos na guia
de visualização e Visualizar arquivos selecionados em Localizar Resultados.

Alterar agrupamentos de referência


Por padrão, as referências são agrupadas por projetos, depois por definição. No
entanto, é possível mudar essa ordem de agrupamento, alterando a configuração na
caixa de listagem suspensa Agrupar por: na barra de ferramentas. Por exemplo, é
possível alterá-la na configuração padrão de Projeto em vez de definição para
Definição em vez de projeto e também para outras configurações.

Definição e Projeto são dois agrupamentos padrão usados, mas é possível adicionar
outros ao escolher o comando Agrupamento no menu do clique com o botão direito
ou de contexto do item selecionado. Pode ser útil adicionar mais agrupamentos se sua
solução tiver vários arquivos e caminhos.

Filtrar por tipo de referência no .NET


Em C# ou Visual Basic, a janela Localizar Referências tem uma coluna de Tipo em que
ela lista o tipo de referência encontrada. Você pode usar essa coluna para filtrar por tipo
de referência. Selecione o ícone de filtro que é exibido quando você passa o mouse
sobre o cabeçalho da coluna. Você pode filtrar as referências por Leitura, Gravação,
Referência, Nome, Namespace e Tipo.

Depois de aplicar um filtro ou um conjunto de filtros, você pode removê-los facilmente


usando o botão Limpar Todos os Filtros.

Confira também
Navegando no código
Exibir Definições de Membro e de Tipo
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os desenvolvedores normalmente precisam exibir as definições de código de origem


para tipos ou membros de classe que eles usam no código. No Visual Studio, os
recursos Ir para Definição e Espiar Definição permitem exibir facilmente a definição de
um tipo ou membro. Se o código-fonte não estiver disponível, os metadados serão
exibidos no lugar.

Ir para definição
O recurso Ir para Definição navega até a origem de um tipo ou membro e abre o
resultado em uma nova guia. Se você for um usuário de teclado, coloque o cursor de
texto em algum lugar dentro do nome do símbolo e pressione F12. Se você estiver
usando um mouse, selecione Ir para Definição no menu do clique com o botão direito
ou use o recurso Ctrl+clique descrito na seção a seguir.

CTRL + clique para Ir para Definição


Ctrl+clique é um atalho para o acesso rápido de Ir para definição quando o mouse está
sendo usado. Os símbolos tornam-se clicáveis quando você pressiona Ctrl e passa o
mouse sobre o tipo ou membro. Para navegar rapidamente para a definição de um
símbolo, pressione a tecla Ctrl e, em seguida, clique nele. É fácil assim!

Altere a tecla modificadora do clique do mouse de Ir para definição acessando


Ferramentas>Opções>Editor de Texto>Geral e selecionando Alt ou Ctrl+Alt na lista
suspensa Usar tecla modificadora. Você também pode desabilitar o clique do mouse
para Ir para Definição desmarcando a caixa de seleção Habilitar clique do mouse para
Ir para Definição.
Inspecionar Definição
O recurso Espiar Definição permite visualizar a definição de um tipo sem sair do local
atual no editor. Se você estiver usando um teclado, coloque o cursor de texto em algum
lugar dentro do nome do tipo ou do membro e pressione Alt + F12. Se você estiver
usando um mouse, selecione Inspecionar Definição no menu do clique com o botão
direito.

Para habilitar a funcionalidade Ctrl+clique, acesse Ferramentas>Opções>Editor de


Texto>Geral. Selecione a opção Abrir definição na espiada de exibição e clique em OK
para fechar a caixa de diálogo Opções.
Em seguida, pressione Ctrl (ou qualquer outra tecla modificadora que estiver
selecionada em Opções) e clique no tipo ou no membro.

Se você espiar outra definição na janela pop-up, iniciará um caminho de navegação


estrutural no qual poderá navegar usando as setas e os círculos exibidos acima do pop-
up.

Para obter mais informações, consulte Como exibir e editar códigos usando Inspecionar
Definição (Alt + F12).
Exibir metadados como código de origem (C#)
Quando você exibe a definição de tipos ou membros de C# cujo código-fonte não está
disponível, seus metadados são exibido no lugar. Você pode ver as declarações de tipos
e membros, mas não suas implementações.

Quando você executa o comando Ir para Definição ou Inspecionar Definição para um


item cujo código-fonte está indisponível, um documento com guias que contém uma
exibição dos metadados do item, exibidos como código-fonte, ele é exibido no editor
de códigos. O nome do tipo, seguido por [de metadados], aparece na guia do
documento.

Por exemplo, se você executar o comando Ir para Definição para o Console, os


metadados para o Console aparecerão no editor de código como o código-fonte de C#.
O código será semelhante a sua declaração, mas não exibirá uma implementação.

7 Observação

Quando você tenta executar o comando Ir para Definição ou Inspecionar


Definição para tipos ou membros que estão marcados como internos, o Visual
Studio não exibe seus metadados como código-fonte, independentemente se o
assembly de referência for um amigo ou não.

Exibir definições de fonte descompilada em vez de


metadados (C#)
Defina uma opção para ver o código-fonte descompilado quando exibir a definição de
um tipo ou membro C# cujo código-fonte não está disponível. Para ativar esse recurso,
escolha Ferramentas>Opções na barra de menus. Em seguida, expanda Editor de
Texto>C#>Avançadoe selecione Habilitar navegação para fontes descompiladas.

7 Observação

O Visual Studio reconstrói corpos de método usando a descompilação ILSpy. Na


primeira vez que você acessar esse recurso, deverá concordar com uma isenção de
responsabilidade sobre leis de direitos autorais de marcas e licenciamento de
software.

Confira também
Navegue pelos códigos
Como exibir e editar códigos usando a janela Inspecionar Definição (Alt+F12)
Como visualizar e editar códigos usando
a janela Inspecionar Definição (Alt+F12)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar o comando Inspecionar Definição para exibir e editar código sem
abandonar o código que está escrevendo. Inspecionar Definição e Ir Para Definição
mostram as mesmas informações, mas Inspecionar Definição faz a exibição em uma
janela pop-up e Ir Para Definição mostra o código em uma janela de código separada.
Ir Para Definição faz com que seu contexto (ou seja, a janela de código ativo, a linha
atual e a posição do cursor) mude para a janela de código de definição. Usando Espiar
Definição, você pode exibir e editar a definição e percorrer o arquivo de definição
enquanto mantém seu local no arquivo original do código.

Você pode usar Inspecionar Definição com código C#, Visual Basic e C++. No Visual
Basic, a opção Inspecionar Definição mostra um link para o Pesquisador de Objetos
para símbolos sem metadados de definição (por exemplo, os tipos .NET internos).

Usar Inspecionar Definição

Abrir uma janela Inspecionar Definição


1. Você pode inspecionar uma definição escolhendo Inspecionar Definição no menu
do clique com o botão direito para um tipo ou membro que deseja explorar. Se a
opção estiver habilitada, você também poderá espiar uma definição usando o
mouse, pressionando Ctrl (ou outro modificador) e clicando no nome do membro.
Ou, usando o teclado, pressione Alt+F12.

Esta ilustração mostra a janela Inspecionar Definição de um método que é


chamado Print() :
A janela de definição aparece abaixo da linha printer.Print("Hello World!") no
arquivo original. A janela não oculta nenhum dos códigos em seu arquivo original.
As linhas após printer.Print("Hello World!") aparecem na janela de definição.

2. Você pode mover o cursor para locais diferentes na janela de inspeção de


definição. Além disso, você ainda pode percorrer a janela original do código.

3. Você pode copiar uma cadeia de caracteres da janela de definição e colá-la no


código original. Também é possível arrastar e soltar a cadeia de caracteres da
janela de definição para o código original sem excluí-la da janela de definição.

4. Você pode fechar a janela de definição, escolhendo a tecla Esc ou o botão Fechar
na guia da janela de definição.

Abrir uma janela Inspecionar Definição desde uma janela


Inspecionar Definição
Se você já tiver uma janela Inspecionar Definição aberta, será possível chamar
Inspecionar Definição novamente no código nessa janela. Outra janela de definição é
aberta. Um conjunto de pontos de trilha aparece ao lado da guia da janela de definição,
que você pode usar para navegar entre as janelas de definição. A dica de ferramenta em
cada ponto mostra o nome do arquivo e o caminho do arquivo de definição que o
ponto representa.
Usar Inspecionar Definição com vários resultados
Se você usar Inspecionar Definição no código com mais de uma definição (por
exemplo, uma classe parcial), uma lista de resultados aparecerá à direita do modo de
exibição de definição de código. É possível escolher qualquer resultado na lista para
exibir sua definição.

Editar na janela Inspecionar Definição


Quando você começa a editar dentro de uma janela Espiar Definição, o arquivo que
está sendo modificado é aberto automaticamente como uma guia separada no editor
de códigos e reflete as alterações já feitas. Você pode continuar fazendo, desfazendo e
salvando alterações na janela Inspecionar Definição e a guia continuará refletindo essas
alterações. Mesmo se você fechar a janela Espiar Definição sem salvar as alterações,
ainda será possível fazer, desfazer e salvar mais alterações na guia, exatamente no
ponto em que você parou na janela Espiar Definição.

Para alterar as opções de Espiar Definição


1. Vá até Ferramentas>Opções>Editor de Texto>Geral.

2. Selecione a opção Abrir definição na exibição de espiada.

3. Clique em OK para fechar a caixa de diálogo Opções .


Atalhos de teclado para Inspecionar Definição
Você pode usar estes atalhos de teclado com a janela Inspecionar Definição:

Funcionalidade Atalho de teclado

Abrir a janela de definição Alt+F12

Fechar a janela de definição Esc

Promover a janela de definição para uma guia de documento regular Ctrl+Alt+Início

Navegar entre janelas de definição Ctrl+Alt+- e Ctrl+Alt+=

Navegar entre vários resultados F8 e Shift+F8

Alternar entre a janela do editor de códigos e a janela de definição Shift+Esc

7 Observação

Você também pode usar os mesmos atalhos de teclado para editar código em uma
janela Inspecionar Definição, como usa em qualquer outro lugar no Visual Studio.

Confira também
Navegue pelos códigos
Ir para Definição e Definição de Pico
Recursos de produtividade no Visual Studio
Localizar código usando comandos Ir
Para
Artigo • 22/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os comandos Ir Para do Visual Studio executam uma pesquisa restrita no código para
ajudá-lo a localizar rapidamente os itens especificados. É possível ir para uma linha, um
tipo, um símbolo, um arquivo e um membro específico usando uma interface simples e
unificada.

No Visual Studio 2022, uma nova experiência de pesquisa substitui grande parte da
funcionalidade descrita aqui. Por exemplo, Ir para digitar ou Ctrl+T vai (por padrão)
para a nova experiência de pesquisa no Visual Studio 2022, em vez de abrir a janela Ir
para digitar. A nova experiência de pesquisa está documentada na pesquisa do Visual
Studio.

O Visual Studio pode ser configurado para usar a funcionalidade anterior, conforme
descrito neste artigo. Para definir essa opção, acesse
Ferramentas>Opções>Ambiente>Versão prévia do recurso>Nova experiência de
Pesquisa do Visual Studio.

Como usá-lo
Entrada Função

Teclado Pressione Ctrl+T ou Ctrl+,

Mouse Selecione Editar>Ir para>Ir para Todos

Uma janela pequena é exibida na parte superior direita do editor de código.

Conforme você digita na caixa de texto, os resultados aparecem na lista suspensa abaixo
da caixa de texto. Para ir até um elemento, escolha-o na lista.
Também é possível inserir um ponto de interrogação (?) para obter ajuda adicional.

Pesquisas filtradas
Por padrão, o item especificado é pesquisado em todos os itens de solução. No entanto,
é possível limitar sua pesquisa de código para tipos de elementos específicos ao
preceder os termos de pesquisa com determinados caracteres. Também é possível
alterar rapidamente o filtro de pesquisa ao escolher botões na barra de ferramentas da
caixa de diálogo Ir para. Os botões que alteram os filtros de tipo estão do lado
esquerdo e os botões que alteram o escopo da pesquisa estão do lado direito.
Filtrar por um tipo específico de elemento de código
Para restringir sua pesquisa para um tipo de elemento de código específico, especifique
um prefixo na caixa de pesquisa ou selecione um dos cinco ícones de filtro:

Prefixo ícone Atalho Descrição

: CTRL+G Ir para o número de linha especificado

f Ctrl+1, Ctrl+F Ir para o arquivo especificado

r Ctrl+1, Ctrl+R Ir para o arquivo visitado recentemente especificado

t Ctrl+1, Ctrl+T Ir para o tipo especificado

m Ctrl+1, Ctrl+M Ir para o membro especificado

# Ctrl+1, Ctrl+S Ir para o símbolo especificado

Filtrar por um local específico


Para restringir sua pesquisa para um local específico, selecione um dos dois ícones de
documentos:

ícone Descrição

Pesquisar apenas o documento atual

Pesquisar documentos externos além daqueles localizados no projeto/solução


ícone Descrição

Concatenação com maiúsculas e minúsculas


Se você usar concatenação com maiúsculas e minúsculas em seu código, será possível
encontrar elementos de código com mais rapidez, inserindo somente as letras
maiúsculas do nome do elemento de código. Por exemplo, se o código tem um tipo
chamado CredentialViewModel , é possível refinar a pesquisa escolhendo o filtro Tipo (t)
e, em seguida, inserindo apenas as letras maiúsculas do nome ( CVM ) na caixa de diálogo
Ir Para. Esse recurso pode ser útil caso seu código tenha nomes longos.

Configurações
Selecionar o ícone de engrenagem permite que você altere como esse recurso
funciona:

Configuração Descrição

Usar guia de Exibir o item selecionado imediatamente na guia de visualização do IDE


visualização

Mostrar detalhes Exibir informações do projeto, do arquivo, da linha e de resumo dos


comentários da documentação na janela

Centralizar janela Mover esta janela para a parte superior central do editor de códigos e não
para a parte superior direita
Confira também
Navegue pelos códigos
Caixa de diálogo Ir Para Linha
Ir para Definição e Definição de Pico
Alterar maiúsculas e minúsculas do
texto no editor
Artigo • 16/01/2024

É possível usar comandos de menu ou atalhos de teclado para converter o padrão de


maiúsculas e minúsculas do texto selecionado e deixar todas as letras maiúsculas ou
todas as letras minúsculas.

7 Observação

As caixas de diálogo e comandos de menu exibidos podem ser diferentes daqueles


descritos neste artigo, que se baseiam nas configurações de ambiente gerais. Para
alterar suas configurações de ambiente, escolha Ferramentas>Importar e Exportar
Configurações e Redefinir todas as configurações.

Para alterar a grafia em maiúsculas ou


minúsculas do texto
1. Selecione o texto que você deseja converter.

2. Para converter o texto e deixar todas as letras maiúsculas, escolha


Editar>Avançado>Colocar em Maiúsculas ou pressione Ctrl+Shift+U.

Para converter o texto e deixar todas as letras minúsculas, escolha


Editar>Avançado>Colocar em Minúsculas ou pressione Ctrl+U. (Se você tem a
carga de trabalho de desenvolvimento do C++ instalada, essa associação de teclas
pode ser usada por um comando diferente.)

 Dica

Para reverter para a formatação anterior antes dessa alteração, selecione Desfazer
no menu Editar.

Conteúdo relacionado
Recursos do editor de código
Gerenciar modos do editor
Artigo • 13/01/2024

Com o Visual Studio, você pode exibir o editor de código em vários modos de exibição.

7 Observação

As caixas de diálogo e os comandos de menu que você vê podem ser diferentes


dos descritos neste artigo, dependendo da sua edição ou das configurações ativas.
Para alterar as configurações, por exemplo, para configurações Gerais ou do Visual
C++, selecione Ferramentas>Importar e Exportar Configurações e, em seguida,
selecione Redefinir todas as configurações.

Habilitar o modo de tela inteira


É possível escolher ocultar todas as janelas de ferramentas e exibir apenas janelas do
documento, habilitando o modo de Tela Inteira.

Pressione Shift+Alt+Enter para entrar ou sair do modo de Tela Inteira.

-- ou --

Emita o comando View.Fullscreen na janela Comando.

Para exibir ou alterar essa opção, acesse Ferramentas>Opções>Ambiente>Teclado e


insira 'View.FullScreen' na seção Mostrar comandos que contém.
Para saber mais sobre atalhos de teclado e seus comandos associados, consulte Atalhos
de teclado no Visual Studio.

Habilitar o modo de espaço virtual


No modo Espaço virtual, os espaços são inseridos no final de cada linha de código.
Selecione essa opção para posicionar comentários em um ponto consistente ao lado do
seu código.

1. Selecione Opções no menu Ferramentas.

2. Expanda a pasta Editor de Texto e selecione Todos os Idiomas para definir essa
opção globalmente ou selecione uma pasta de idioma específico. Por exemplo,
para ativar os números de linha apenas no Visual Basic, selecione o nó
Básico>Editor de Texto.

3. Selecione as opções Gerais e, em Configurações, selecione Habilitar Espaço


virtual.

7 Observação
O Espaço virtual está habilitado no modo Seleção de Coluna. Quando o
modo Espaço virtual não está habilitado, o ponto de inserção é movido do
final de uma linha diretamente para o primeiro caractere da próxima.

Conteúdo relacionado
Personalizar layouts de janela e guias
Caixa de diálogo Fontes e Cores, Ambiente, Opções
Gerenciar janelas do editor
Artigo • 13/01/2024

Você pode trabalhar com o código em vários locais ao mesmo tempo. Faça isso
dividindo uma janela do editor ou abrindo várias instâncias de janelas do editor.

7 Observação

Nem todas as janelas do editor dão suporte a várias instâncias.

Dividir uma janela do editor


Uma instância de uma janela do editor pode ser dividida em dois modos de exibição
separados para facilitar a edição.

Para dividir um painel


1. Clique dentro da janela do editor para colocá-la em foco.

2. No menu Janela, selecione Dividir.

A área de edição é dividida em dois painéis separados por uma barra divisória.
Você pode rolar esses painéis de forma independente para exibir e editar as
diferentes partes do documento ativo ao mesmo tempo. Todas as alterações feitas
em um painel são refletidas no outro.

 Dica

Para tornar um painel maior do que o outro, arraste a barra de divisão para
cima ou para baixo.

Para retornar ao modo de exibição de painel único


No menu Janela, selecione Remover Divisão.

Criar novas janelas


Também é possível criar várias instâncias de uma janela do editor. Esse recurso permite
abrir um documento longo em mais de uma instância de um editor, para que você
possa exibir e editar seções diferentes simultaneamente em janelas do editor separadas,
com tamanho normal.

No menu Janela, clique em Nova Janela.

Uma nova instância com guias do editor será adicionada.

Conteúdo relacionado
Recursos do editor de código
Personalizar layouts de janela
Como alterar fontes, cores e temas no
Visual Studio
Artigo • 24/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível alterar as fontes e as cores no Visual Studio de várias maneiras. Por exemplo,
é possível alterar o tema escuro padrão (também conhecido como "modo escuro") para
um tema claro, um tema azul, um tema de contraste extra ou um tema que corresponda
às configurações do sistema. Também é possível alterar a fonte padrão e o tamanho do
texto no IDE e no editor de código.

 Dica

Confira a postagem de blog Atualizamos a interface do usuário no Visual Studio


2022 para saber mais sobre os ajustes sutis de taxa de contraste de cores e uma
nova fonte do Cascadia Code que adicionamos para tornar o Visual Studio mais
acessível para todos.

Alterar o tema de cores


Veja como alterar o tema de cores do quadro IDE e as janelas de ferramentas no Visual
Studio.

1. Na barra de menus, selecione Ferramentas>Opções.

2. Na lista de opções, escolha Ambiente>Geral.

3. Na lista de Tema de cores, selecione o tema Escuro padrão, o tema Claro, o tema
Azul ou o tema Azul (Contraste extra).

Você também pode optar por usar o tema que o Windows usa selecionando Usar
configuração do sistema.
7 Observação

Ao alterar um tema de cores, o texto no IDE é revertido para as fontes e os


tamanhos padrão ou personalizados anteriormente para esse tema.

 Dica

Quer ainda mais temas para escolher? Confira a ampla variedade de temas
personalizados no Visual Studio Marketplace . E para ver exemplos de
novos temas personalizados do Visual Studio 2022 com base no VS Code,
confira a postagem no blog Introdução a uma coleção de novos temas do
Visual Studio .

Alterar fontes e tamanho do texto


É possível alterar a fonte e o tamanho do texto para todas as janelas de quadros e
ferramentas do IDE ou apenas para determinadas janelas ou elementos de texto. Você
também pode alterar a fonte e o tamanho do texto no editor.

Para alterar a fonte e o tipo de texto no IDE


1. Na barra de menus, selecione Ferramentas>Opções.
2. Na lista de opções, selecione Ambiente>Fontes e Cores.

3. Na lista Mostrar configurações de, selecione Ambiente.

7 Observação

Para alterar apenas a fonte das janelas de ferramentas, na lista Mostrar


configurações de, selecione Todas as janelas de ferramentas de texto.

4. Modifique as opções Fontee Tamanho para alterar a fonte e o tamanho do texto


do IDE.

5. Selecione o item apropriado em Exibir itens e, em seguida, modifique as opções


Primeiro plano do item e Tela de fundo do item.

Para alterar a fonte e o tipo de texto no editor


1. Na barra de menus, selecione Ferramentas>Opções.

2. Na lista de opções, selecione Ambiente>Fontes e Cores.

3. Na lista Mostrar configurações de, selecione Editor de Texto.


4. Modifique as opções Fontee Tamanho para alterar a fonte e o tamanho do texto
do editor.

5. Selecione o item apropriado em Exibir itens e, em seguida, modifique as opções


Primeiro plano do item e Tela de fundo do item.

Para obter mais informações sobre como alterar fontes e cores para acessibilidade,
consulte a seção Definir opções de acessibilidade desta página. E, para obter detalhes
sobre todos os elementos da interface do usuário em que você pode alterar esquemas
de fontes e cores, consulte a página Fontes e Cores, Ambiente, Caixa de Diálogo
Opções.

Definir opções do editor específicas a um


idioma
Você pode fazer várias alterações no editor de código para adequá-lo à linguagem de
programação de sua escolha. Por exemplo, é possível alterar a formatação de chave no
C# para aparecer embutido ou em uma nova linha e muito mais. Para saber como
personalizar o editor de código, consulte Definir opções de editor específicas do idioma.

Definir opções de Acessibilidade.


Em um mundo neurodiverso, queremos dar suporte a nossos diferentes alunos e
usuários com deficiência visual oferecendo as seguintes opções de fonte e temas de
cores:

É possível usar a fonte Cascadia Code, que adiciona mais peso às proporções de
letras, numerais e caracteres para ajudar a remover a ambiguidade. O Cascadia
Code também inclui ligaturas de codificação.
É possível optar por usar um tema de cores de alto contraste para todos os
aplicativos e interface do usuário em um computador ou um tema de cor de
contraste extra apenas para o Visual Studio.

Saiba mais sobre a fonte Cascadia Code


A nova fonte Cascadia Code inclui Cascade Mono, que é a fonte padrão no Visual
Studio 2022. Não só essas duas fontes são mais fáceis de ler, mas a fonte Cascadia Code
também inclui ligaturas de codificação que transformam uma sequência de caracteres
em um glifo. A codificação de ligaturas ou glifos torna mais fácil que as pessoas
associem cognitivamente o significado por trás delas.

A captura de tela a seguir mostra um exemplo da fonte Cascadia Mono padrão e lista
uma série de caracteres para incluir símbolos matemáticos, que você pode encontrar
usando enquanto codifica.

A captura de tela a seguir mostra um exemplo da fonte Cascadia Code, em que a


mesma série de caracteres mostrados anteriormente agora é convertida em ligaturas de
codificação ou glifos.

Observe que a última linha de texto na captura de tela do Cascadia Code mostra como
o espaço entre caracteres duplicados é reduzido, o que também facilita a leitura.

Veja como alternar entre as fontes Cascadia:

1. Acesse Ferramentas>Opções>Ambiente>Fontes e Cores.

2. Na lista suspensa Fonte, selecione a fonte Cascadia Code ou a fonte Cascadia


Mono desejada e, em seguida, selecione OK.
Usar alto contraste do Windows
Use um dos procedimentos a seguir para alternar a opção de alto contraste do
Windows:

No Windows ou em qualquer aplicativo da Microsoft, pressione as teclas Alt à


esquerda+Shift à direita+PrtScn.

No Windows, selecione Iniciar>Configurações>Facilidade de Acesso. Depois, na


seção Visão do Windows 10 e posterior, selecione Alto contraste.

2 Aviso

A configuração de alto contraste do Windows afeta todos os aplicativos e


interface do usuário no computador.

Usar contraste extra do Visual Studio


Use os procedimentos a seguir para alternar a opção de contraste extra do Visual
Studio:

1. Na barra de menus do Visual Studio, selecione Ferramentas>Opções e, na lista de


opções, selecione Ambiente>Geral.
2. Na lista suspensa do Tema de cores, selecione o tema Azul (Contraste Extra) e
selecione OK.

 Dica

Se houver uma opção de acessibilidade para cores ou fontes que você acha que
podem ser úteis, mas não estão disponíveis no Visual Studio no momento,
informe-nos selecionando Sugerir um recurso no Visual Studio Developer
Community . Para obter mais informações sobre esse fórum e como funciona,
consulte a página Sugerir um recurso.

Mais recursos de acessibilidade no Visual Studio


O Visual Studio também inclui recursos para ajudar pessoas que têm limitações para
escrita. Por exemplo, o Visual Studio fornece suporte a layouts de teclado Dvorak, que
torna os caracteres digitados com maior frequência mais acessíveis.

Você também pode personalizar os atalhos de teclado padrão disponíveis com o Visual
Studio. Para obter mais informações, consulte as seguintes páginas:

Identificar e personalizar atalhos de teclado


Como usar exclusivamente o teclado
Atalhos de teclado no Visual Studio

O Visual Studio também inclui preenchimento automático para métodos e parâmetros.


Para obter mais informações, consulte IntelliSense no Visual Studio.

Há mais maneiras de personalizar o Visual Studio para ser mais acessível para você. Por
exemplo, você pode alterar o comportamento de janelas pop-up, janelas de ferramentas
baseadas em texto, botões da barra de ferramentas, indicadores de margem e muito
mais.

7 Observação

As caixas de diálogo e os comandos de menu vistos podem ser diferentes daqueles


descritos aqui, o que pode variar dependendo da edição ou das configurações
ativas. Para alterar as configurações, selecione Importar e Exportar Configurações
no menu Ferramentas. Para obter mais informações, confira Redefinir as
configurações.
Alterar o comportamento das janelas pop-up
O Visual Studio exibe janelas pop-up no editor. Essas janelas pop-up incluem
informações que facilitam a codificação, como parâmetros para concluir uma função ou
instrução. Essas janelas pop-up também podem ser úteis se você tiver dificuldades para
digitar. No entanto, alguns usuários podem achar que interferem no foco do editor de
código, o que pode ser um problemático.

Veja como desativar as janelas pop-up:

1. No menu Ferramentas , selecione Opções.

2. Selecione Editor de texto>Todos os idiomas>Geral.

3. Desmarque as caixas de seleção Listar membros automaticamente e Informações


de parâmetros.

É possível reorganizar as janelas no IDE (ambiente de desenvolvimento integrado) para


se adequar melhor à maneira como você trabalha. Você pode encaixar, derivar, ocultar
ou ocultar automaticamente cada janela de ferramentas. Saiba mais sobre como alterar
os layouts das janelas em Personalizar layouts de janela.

Alterar as configurações das janelas de ferramentas baseadas em


texto

É possível alterar as configurações de janelas de ferramentas baseadas em texto, como


as janelas Comando, Imediato e de Saída, usando
Ferramentas>Opções>Ambiente>Fontes e cores.

Ao selecionar [Todas as janelas de ferramentas de texto] na lista suspensa Mostrar


configurações de, a configuração padrão é listada como Padrão nas listas suspensas
Primeiro plano do item e Tela de fundo do item. Selecione o botão Personalizar para
alterar essas configurações.

Também é possível alterar as configurações de como o texto é exibido no editor. Veja


aqui como fazer isso.

1. No menu Ferramentas , selecione Opções.

2. Selecione Ambiente>Fontes e Cores.

3. Selecione uma opção no menu suspenso Mostrar configurações de.

Para alterar o tamanho da fonte do texto em um editor, selecione Editor de Texto.


Para alterar o tamanho da fonte do texto em janelas de ferramentas baseadas em
texto, selecione [Todas as Janelas de Ferramentas de Texto].

Para alterar o tamanho da fonte do texto das Dicas de Ferramentas de um editor,


selecione Dica de Ferramenta do Editor.

Para alterar o tamanho da fonte do texto em pop-ups de preenchimento de


declaração, selecione Preenchimento de Declaração.

4. Em Exibir Itens, selecione Texto sem formatação.

5. Em Fonte, selecione um novo tipo de fonte.

6. Em Tamanho, selecione um novo tamanho da fonte.

 Dica

Para redefinir o tamanho do texto em editores e janelas de ferramentas


baseadas em texto, selecione Usar Padrões.

7. Selecione OK.

Alterar as cores de texto, indicadores de margem, espaços em


branco e elementos de código

Você pode optar por alterar as cores padrão de texto, indicadores de margem, espaços
em branco e elementos de código no editor. Veja aqui como fazer isso.

1. No menu Ferramentas , selecione Opções.

2. Na pasta Ambiente, selecione Fontes e Cores.

3. Em Mostrar configurações de, selecione Editor de Texto.

4. Em Exibir Itens, selecione um item cuja exibição você precisa alterar, como Texto
sem formatação, Margem de Indicadores, Espaço em branco visível, Nome do
Atributo HTML ou Atributo XML.

5. Selecione configurações de exibição entre as opções a seguir: Primeiro plano do


item, Tela de fundo do item e Negrito.

6. Selecione OK.

 Dica
Para usar cores de alto contraste em todas as janelas de aplicativo do sistema
operacional, pressione as teclas Alt esquerda+Shift esquerda+PrtScn. Feche e
reabra o Visual Studio, se estiver aberto, para implementar completamente as cores
de alto contraste.

Adicionar texto aos botões da barra de ferramentas ou modificar o


texto
Para melhorar a acessibilidade e a usabilidade da barra de ferramentas, você pode
adicionar texto a botões da barra de ferramentas.

Para atribuir texto a botões da barra de ferramentas

1. No menu Ferramentas, selecione Personalizar.

2. Na caixa de diálogo Personalizar, selecione a guia Comandos.

3. Selecione Barra de ferramentas e escolha o nome da barra de ferramentas que


contém o botão cujo texto você pretende exibir.

4. Na lista, selecione o comando que deseja alterar.

5. Selecione Modificar Seleção.

6. Selecione Imagem e Texto.

Para modificar o texto exibido em um botão

1. Selecione Modificar Seleção novamente.

2. Em Nome, insira uma nova legenda para o botão selecionado.

Suporte à acessibilidade
Para obter mais informações sobre recursos, produtos e serviços que tornam o Windows
mais acessível para pessoas com deficiências, consulte Produtos e serviços de
acessibilidade da Microsoft. E, para obter mais informações sobre como obter formatos
mais acessíveis de documentação para produtos da Microsoft, consulte a seção
Documentação em formatos alternativos da página Produtos e serviços de
acessibilidade da Microsoft.
As informações de acessibilidade incluídas nesta página podem se aplicar somente aos
usuários que têm licença de produtos Microsoft nos Estados Unidos. Se você adquiriu
este produto fora dos Estados Unidos, visite o site Acessibilidade da Microsoft para
obter uma lista de números de telefone e endereços dos serviços de suporte da
Microsoft. Contate qualquer subsidiária para descobrir se os tipos de produtos ou
serviços descritos nesta página estão disponíveis em sua região. Informações sobre
acessibilidade também estão disponíveis em outros idiomas.

Confira também
Recursos do editor de código no Visual Studio
Personalizar o editor e o IDE do Visual Studio
Gerenciar a quebra automática de linha
no editor
Artigo • 13/01/2024

É possível definir e desmarcar a opção Quebra automática de linha. Quando essa opção
for definida, a parte de uma linha longa que se estender além da largura atual da janela
Editor de Código será exibida na próxima linha. Quando essa opção estiver desmarcada,
por exemplo, para facilitar o uso de numeração de linha, será possível rolar para a
direita para conferir os finais das linhas longas.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. No Visual Studio para Mac,
consulte Editor de origem: quebra automática de linha do Word.

Para definir preferências de quebra automática


de linha
1. Na barra de menus do Visual Studio, selecione Ferramentas>Opções.

2. Selecione Editor de Texto>Todas as Linguagens>Geral para definir essa opção


globalmente.

— ou —
Selecione Editor de Texto, selecione a pasta que corresponde à linguagem de
programação que você está usando e selecione a pasta Geral. Por exemplo,
selecione Editor de Texto>C#>Geral.

3. Em Configurações, marque ou desmarque a opção Quebra automática de linha.

Quando a opção Quebra automática de linha estiver selecionada, a opção


Mostrar glifos visuais para quebra automática de linha será habilitada.

7 Observação

A opção Mostrar glifos visuais para quebra automática de linhaexibe um


indicador de seta de retorno em que uma linha longa é quebrada em uma
segunda linha. Essas setas de lembrete não são adicionadas ao código, elas
são apenas para exibição.

Problemas conhecidos
Se você estiver familiarizado com a quebra automática de linha no Notepad++, Sublime
Text, ou Visual Studio Code (também conhecido como VS Code), esteja ciente dos
seguintes problemas em que o Visual Studio tem um comportamento diferente dos
outros editores:

O clique triplo não seleciona a linha inteira


A tecla End pressionada duas vezes não move o cursor para o fim da linha

Conteúdo relacionado
Recursos do editor de código
exibir números de linha no editor
Artigo • 13/01/2024

É possível mostrar ou ocultar números de linha em seu código. Veja aqui como fazer
isso.

1. Na barra de menus, selecione Ferramentas>Opções>Editor de texto e, em


seguida, selecione a linguagem que está usando ou Todos os idiomas para ativar
os números de linha em todas as linguagens de programação com suporte.

 Dica

Também é possível digitar o número de linha na caixa de Pesquisa e depois


selecione Ativar ou desativar números de linha dos resultados.

2. Marque a caixa de seleção Números de linha para mostrar números de linha ou


desmarque a caixa de seleção para ocultar números de linha.

7 Observação

Os números de linha não são adicionados ao seu código, eles são apenas para
referência.

Conteúdo relacionado
Recursos do editor de código
exibir URLs como links no editor
Artigo • 15/01/2024

É possível optar por fazer o Editor de Código tratar URLs (Uniform Resource Locators)
em seu código como links ativos. Quando você usa esse recurso, as URLs:

São exibidas sublinhadas.

Exibem uma Dica de Ferramenta quando você passa o mouse sobre elas.

Tente abrir o site da Web indicado quando você pressiona CTRL+clique no link.
Por padrão, o site é exibido no navegador da Web interno.

Exibir URLs como links


1. No menu Ferramentas , clique em Opções.

2. Clique em Editor de Texto.

3. Para alterar a opção para apenas uma linguagem, expanda a pasta dessa
linguagem e escolha Geral.

— ou —

Para alterar a opção para todas as linguagens, expanda a pasta Todas as


Linguagens e escolha Geral.

4. Em Exibir, selecione Habilitar navegação de URL com um único clique.

Conteúdo relacionado
Recursos do editor de código
Definir opções do editor específicas a
um idioma
Artigo • 13/01/2024

O Visual Studio oferece uma variedade de opções de editor de texto que se aplicam a
linguagens de programação específicas. Você pode configurar opções na caixa de
diálogo Opções, que é acessada através do menu Ferramentas. Você também pode
definir algumas configurações do editor por projeto ou base de código, criando um
arquivo de EditorConfig.

Configurações disponíveis na caixa de diálogo


Opções
Opções, Editor de Texto, Visual Basic
Descreve configurações para construtores end, reformatação de código, estrutura de
tópicos e sugestões de correção de erro, entre outros, para código do Visual Basic.

Opções, Editor de Texto, C/C++, Formatação


Descreve estrutura de tópicos, recuo, Informações Rápidas e outras configurações para
código C e C++.

Opções, Editor de Texto, C/C++, Avançado


Descreve configurações para arquivos de banco de dados e IntelliSense ao usar C e
C++.

Opções, Editor de Texto, C#, Formatação


Descreve configurações para recuo, formatação de nova linha e quebra automática de
texto, entre outros, para C#.

Opções, Editor de Texto, C#, Avançado


Descreve configurações de estrutura de tópicos, identificação de erro e comentário da
documentação XML para C#.

Opções, Editor de Texto, C#, IntelliSense


Descreve configurações que especificam como a lista de conclusão do IntelliSense se
comporta quando você trabalha no código C#.

Opções, Editor de Texto, XAML, Formatação


Descreve configurações para organização de atributo e elemento em documentos
XAML.
Confira também
Personalizar o editor
Criar configurações do editor portátil e personalizado com o EditorConfig
Personalizar o IDE do Visual Studio
Preferências de estilo de código
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode definir as configurações de estilo do código por projeto usando um arquivo
EditorConfig ou para todo o código que editar no Visual Studio na página Opções do
editor de texto. Para o código C#, também é possível configurar o Visual Studio para
aplicar essas preferências de estilo de código usando os comandos Limpeza de código
(Visual Studio 2019, Visual Studio 2022) e Formatar documento (Visual Studio 2017).

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Comportamento do editor no Visual Studio para Mac.

Estilos de código em arquivos EditorConfig


As configurações de estilo de código para .NET podem ser especificadas com a adição
de um EditorConfig ao seu projeto. Os arquivos EditorConfig são associados a uma base
de códigos em vez de uma conta de personalização do Visual Studio. As configurações
em um arquivo EditorConfig têm precedência sobre os estilos de código que são
especificados na caixa de diálogo Opções. Use um arquivo EditorConfig quando quiser
impor estilos de codificação para todos os fatores que contribuem para o seu
repositório ou projeto.

Você pode preencher manualmente o arquivo EditorConfig ou gerar automaticamente


um arquivo com base nas configurações de estilo de código definidas na caixa de
diálogo Opções do Visual Studio. Essa página de opções está disponível em
Ferramentas>Opções>Editor de texto> [C# ou Visual Basic] >Estilo de código>Geral.
Clique em Gerar arquivo .editorconfig das configurações para gerar automaticamente
um arquivo .editorconfig de estilo de codificação com base nas configurações na página
Opções.
Estilos de código na caixa de diálogo Opções
As preferências de estilo de código podem ser definidas para todos os seus projetos C#
e do Visual Basic abrindo a caixa de diálogo Opções no menu Ferramentas. Na caixa de
diálogo Opções, selecione Editor de Texto> [C# ou Visual Basic] >Estilo de
código>Geral.

Cada item na lista mostra uma versão prévia da preferência quando selecionada:

As opções definidas nessa janela são aplicáveis à sua conta de personalização do Visual
Studio e não estão associadas a um determinado projeto ou base de códigos. Além
disso, elas não são impostas no tempo de compilação, inclusive em builds de CI
(integração contínua). Se você quiser associar as preferências de estilo de código ao seu
projeto e ter os estilos impostos durante a criação, especifique as preferências em um
arquivo .editorconfig que foi associado ao projeto.

Preferência e gravidade
Em cada configuração de estilo de código nessa página, é possível definir os valores de
Preferência e Gravidade usando as listas suspensas de cada linha. A gravidade pode ser
definida como Somente Refatoração, Sugestão, Aviso ou Erro. Se você quiser habilitar
Ações Rápidas para um estilo de código, verifique se a configuração de Gravidade está
definida como algo diferente de Somente Refatoração. O ícone de lâmpada Ações
Rápidas, lâmpada de erro ou chave de fenda aparece quando um estilo
não preferencial é usado. É possível escolher uma opção na lista Ações Rápidas para
reescrever o código automaticamente no estilo preferencial.

Impor estilo de código na compilação


A partir do Visual Studio 2019 versão 16.8, que inclui o SDK do .NET 5.0 RC2, é possível
impor as convenções de codificação do .NET na compilação para todos os projetos do
.NET. No momento da compilação, as violações de estilo de código aparecem como
avisos ou erros com o prefixo "IDE". Assim, você pode impor estritamente estilos de
código de acordo com sua base de código.

Aplicar estilos de código


Para arquivos de código C#, o Visual Studio tem um botão Limpeza de código na parte
inferior do editor (teclado: Ctrl+K, Ctrl+E) para aplicar estilos de código de um arquivo
EditorConfig ou da página opções estilo de código. Se um arquivo .editorconfig existir
para o projeto, essas serão as configurações com precedência.

 Dica

As regras configuradas com uma gravidade de Nenhum não participam da limpeza


de código, mas podem ser aplicadas individualmente por meio do menu Ações
rápidas e refatorações.

Primeiramente, configure quais estilos de código deseja aplicar (em um dos dois perfis)
na caixa de diálogo Configurar limpeza de código. Para abrir essa caixa de diálogo,
clique na seta de expansão ao lado do ícone de vassoura de limpeza de código e, em
seguida, escolha Configurar limpeza de código.
Depois que tiver configurado a limpeza de código, você poderá clicar no ícone de
vassoura ou pressionar Ctrl+K, Ctrl+E para executar a limpeza de código. Você também
pode fazer a limpeza de código em todo o projeto ou em toda a solução. Clique com o
botão direito do mouse no nome do projeto ou da solução no Gerenciador de
Soluções, selecione Análise e Limpeza de Código e selecione Executar Limpeza de
Código.

Configurações de limpeza de código


A maioria das configurações de limpeza de código é mapeada para um ou mais estilos
de código .NET compatível com .editorconfig. Para obter exemplos que mostram os
efeitos das configurações, use os links da tabela a seguir.
Configuração ID da regra ou opção de estilo

Remover Importações ou IDE0005


usos desnecessários

Aplicar preferências de file_header_template


cabeçalho de arquivo

Remover variáveis não IDE0051


utilizadas

Aplicar preferências de visual_basic_style_prefer_simplified_object_creation


criação de objeto

Aplicar preferências de IsNot visual_basic_style_prefer_isnot_expression

Adicionar a qualificação IDE0003-IDE0009


“este” ou “Eu”

Adicionar modificadores de dotnet_style_require_accessibility_modifiers


acessibilidade

Modificadores de ordem IDE0036

Tornar campo “somente dotnet_style_readonly_field


leitura”

Remover conversões IDE0004


desnecessárias

Aplicar parâmetros de dotnet_style_object_initializer


inicialização de
objeto/coleção)

Aplicar preferências de uso csharp_using_directive_placement


de posicionamento de
diretiva

Aplicar preferências de IDE0047-IDE0048


parênteses

Aplicar preferências de valor IDE0058


não utilizadas

Aplicar preferências de tipo IDE0049


de linguagem/estrutura

Remover supressões não dotnet_remove_unnecessary_suppression_exclusions


utilizadas
Configuração ID da regra ou opção de estilo

Aplicar simplificar dotnet_style_prefer_simplified_boolean_expressions


preferências de expressão
booliana

Aplicar preferências de dotnet_style_prefer_simplified_interpolation


interpolação de cadeia de
caracteres

Remover parâmetros não dotnet_code_quality_unused_parameters


usados

Aplicar preferências de dotnet_style_prefer_auto_properties


propriedade automática

Aplicar preferências de dotnet_style_prefer_compound_assignment


atribuição composta

Aplicar preferências de dotnet_style_coalesce_expression


expressão de união

Aplicar preferências de dotnet_style_prefer_conditional_expression_over_assignment


expressão condicional dotnet_style_prefer_conditional_expression_over_return

Aplicar preferências de nome dotnet_style_explicit_tuple_names


de tupla dotnet_style_prefer_inferred_tuple_names

Aplicar preferências de dotnet_style_prefer_inferred_anonymous_type_member_names


nomes de membros do tipo
anônimo inferido

Aplicar preferências de dotnet_style_prefer_is_null_check_over_reference_equality_method


verificação nula

Aplicar preferências de dotnet_style_null_propagation


propagação nula

Aplicar preferências de “var” IDE0007-IDE0008

Adicionar as chaves csharp_prefer_braces


necessárias para as
instruções de controle de
linha única

Aplicar preferências de corpo Membros aptos para expressão


de expressão/bloco

Aplicar preferências de csharp_style_inlined_variable_declaration


variáveis 'out' embutidas
Configuração ID da regra ou opção de estilo

Aplicar preferências de Preferências de padrões correspondentes


padrões correspondentes

Aplicar preferências de csharp_style_conditional_delegate_call


chamada de delegado
condicional

Aplicar preferências de csharp_prefer_static_local_function


função local estática

Aplicar preferências de csharp_style_deconstructed_variable_declaration


desconstrução

Aplicar preferências csharp_prefer_simple_default_expression


padrão(T)

Aplicar novas() preferências csharp_style_implicit_object_creation_when_type_is_apparent

Aplicar preferências de csharp_style_prefer_range_operator


intervalo

Aplicar preferências de csharp_style_pattern_local_over_anonymous_function


função locais em vez de
anônimas

Aplicar preferências nulas de Preferências de verificação nula


parâmetro

Aplicar preferências de uso csharp_prefer_simple_using_statement


de instrução

Aplicar preferências de csharp_style_throw_expression


expressão throw

Se você quiser que as configurações de estilo de código sejam aplicadas sempre que
salvar um arquivo, acesse Opções>Editor de texto>Limpeza de código e selecione
Executar perfil de Limpeza de Código ao salvar.

Confira também
Ações Rápidas
Configurações de convenção de codificação do .NET para o EditorConfig
Comportamento do editor (Visual Studio para Mac)
Criar configurações do editor portátil e
personalizado com o EditorConfig
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Adicione um arquivo EditorConfig ao projeto ou à base de código para impor estilos de


codificação consistentes para todas as pessoas que trabalham com a base de código. As
configurações de EditorConfig têm precedência sobre as configurações do editor de
texto global do Visual Studio. Isso significa que é possível personalizar cada base de
código para usar as configurações de editor de texto específicas para esse projeto. Você
ainda pode definir suas preferências pessoais editor na caixa de diálogo Opções do
Visual Studio. Essas configurações serão aplicadas sempre que você estiver trabalhando
em uma base de código sem um arquivo .editorconfig ou quando o arquivo .editorconfig
não substituir determinada configuração. Um exemplo desse tipo de preferência é o
estilo de recuo: tabulações ou espaços.

As configurações de EditorConfig são compatíveis com vários editores de códigos e


IDEs, incluindo o Visual Studio. Ele é um componente portátil que acompanha o seu
código e pode impor estilos de codificação mesmo fora do Visual Studio.

Quando você adiciona um arquivo EditorConfig ao projeto no Visual Studio, novas


linhas de código são formatadas com base nas configurações de EditorConfig. A
formatação do código existente não será alterada a menos que você execute um dos
seguintes comandos:

Limpeza de Código (Ctrl+K, Ctrl+E), que aplica configurações de espaço em


branco, como estilo de recuo, e configurações de estilo do código selecionado,
como classificar diretivas using .
Editar>Avançado>Formatar Documento (ou Ctrl+K, Ctrl+D no perfil padrão), que
aplica apenas configurações de espaço em branco, como estilo de recuo.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira EditorConfig no Visual Studio para Mac.

Consistência do código
As configurações em arquivos EditorConfig permitem manter configurações e estilos de
codificação consistentes em uma base de código, como estilo de recuo, largura de
tabulação, caracteres de fim de linha, codificação e mais, independentemente do editor
ou do IDE usado. Por exemplo, ao codificar em C#, se sua base de código tiver uma
convenção de preferir que os recuos sempre sejam compostos por cinco caracteres de
espaço, que os documentos usem codificação UTF-8 e que cada linha sempre termine
com uma CR/LF, será possível configurar um arquivo .editorconfig para fazer isso.

As convenções de codificação usadas em seus projetos pessoais podem ser diferentes


das usadas nos projetos de sua equipe. Por exemplo, talvez você prefira que, quando
estiver codificando, o recuo adicione um caractere de tabulação. No entanto, sua equipe
pode preferir que o recuo adicione quatro caracteres de espaço em vez de um caractere
de tabulação. Arquivos EditorConfig resolvem esse problema permitindo que você
tenha uma configuração para cada cenário.

Como um arquivo na base de código contém as configurações, elas viajam juntamente


com essa base de código. Desde que você abra o arquivo de código em um editor em
conformidade com EditorConfig, as configurações do editor de texto são ativadas. Para
obter mais informações sobre arquivos EditorConfig, consulte o site EditorConfig.org .

Configurações com suporte


O editor no Visual Studio é compatível com o conjunto principal de propriedades do
EditorConfig :

indent_style
indent_size
tab_width
end_of_line
charset
trim_trailing_whitespace
insert_final_newline
root

Todas as linguagens com suporte do Visual Studio, exceto por configurações do editor
EditorConfig com suporte para XML. Além disso, EditorConfig dá suporte a convenções
de estilo de código, incluindo linguagem, formatação e convenções de nomenclatura
para C# e Visual Basic.

Adicionar e remover arquivos EditorConfig


Quando você adiciona um arquivo EditorConfig ao seu projeto ou base de código, as
novas linhas de código que você escreve são formatadas de acordo com o arquivo
EditorConfig. No entanto, adicionar um arquivo EditorConfig não converte estilos
existentes em novos até que você formate o documento ou execute uma Limpeza de
Código. Por exemplo, se você tiver recuos no arquivo formatados com tabulações e
adicionar um arquivo EditorConfig com recuos com espaços, os caracteres de recuo não
serão convertidos automaticamente em espaços. Quando você formata o documento
(Editar>Avançado>Formatar Documento ou Ctrl+K, Ctrl+D), as configurações de
espaço em branco no arquivo EditorConfig são aplicadas às linhas de código existentes.

Se você remover um arquivo EditorConfig de seu projeto ou base de códigos e desejar


que as novas linhas sejam formatadas de acordo com as configurações globais do
editor, é preciso fechar e reabrir os arquivos de código abertos.

Adicionar um arquivo EditorConfig a um projeto


1. Abra um projeto ou uma solução no Visual Studio. Selecione o nó do projeto ou
da solução, dependendo se as configurações de .editorconfig tiverem que ser
aplicadas a todos os projetos na solução ou a apenas um. Também é possível
selecionar uma pasta no projeto ou na solução para adicionar o arquivo
.editorconfig.

2. Na barra de menus, escolha Projeto>Adicionar Novo Item ou pressione


Ctrl+Shift+A.

A caixa de diálogo Adicionar Novo Item é aberta.

3. Na caixa de pesquisa, pesquise editorconfig.

Dois modelos de item de Arquivo editorconfig são mostrados nos resultados da


pesquisa.
4. Selecione o modelo Arquivo editorconfig (padrão) para adicionar um arquivo
EditorConfig pré-preenchido com duas opções principais do EditorConfig para
tamanho e estilo de recuo. Ou selecione o modelo Arquivo editorconfig (.NET)
para adicionar um arquivo EditorConfig pré-preenchido com convenções de
nomenclatura, formatação e estilo de código .NET.

Um arquivo .editorconfig aparece no Gerenciador de Soluções e é aberto no editor.

5. Edite o arquivo conforme o desejado.

Outras formas de adicionar um arquivo EditorConfig


Há algumas outras maneiras de adicionar um arquivo EditorConfig ao projeto:
O recurso de inferência de código do IntelliCode para Visual Studio infere seus
estilos de código com base no código existente. Ele cria um arquivo EditorConfig
não vazio com suas preferências de estilo de código já definidas.

A partir do Visual Studio 2019, você pode gerar um arquivo EditorConfig com base
em suas configurações de estilo de código em Ferramentas>Opções.

Precedência e hierarquia de arquivos


Quando você adiciona um arquivo .editorconfig a uma pasta em sua hierarquia de
arquivos, as configurações se aplicam a todos os arquivos aplicáveis nesse nível e
abaixo. Você também pode substituir as configurações de EditorConfig para um projeto
específico, uma base de código ou parte de uma base de código, de modo que ele use
convenções diferentes do que as outras partes da base de código. Isso pode ser útil
quando você incorpora código de outro lugar e não quer alterar suas convenções.

Para substituir algumas ou todas as configurações do EditorConfig, adicione um arquivo


.editorconfig no nível da hierarquia de arquivos em que você deseja aplicar essas
configurações substituídas. As novas configurações de arquivo do EditorConfig aplicam-
se aos arquivos no mesmo nível e a todas as subpastas.

Se você quiser substituir algumas, mas não todas as configurações, especifique apenas
essas configurações no arquivo .editorconfig. Somente as propriedades que você listar
explicitamente no arquivo de nível inferior são substituídas. As outras configurações de
arquivos ..editorconfig de nível superior continuam sendo aplicadas.

Para garantir que nenhuma configuração de nenhum arquivo .editorconfig de nível


superior seja aplicada a essa parte da base de código, adicione a propriedade root=true
ao arquivo .editorconfig de nível inferior:

ini

# top-most EditorConfig file


root = true
Os arquivos EditorConfig são lidos de cima para baixo. Se houver várias propriedades
com o mesmo nome, a propriedade mais recente encontrada com esse nome terá
precedência.

Editar os arquivos EditorConfig


O Visual Studio ajuda a editar arquivos .editorconfig fornecendo listas de conclusão do
IntelliSense.

Depois de editar seu arquivo EditorConfig, será necessário recarregar seus arquivos de
código para que as novas configurações entrem em vigor.

Se você editar muitos arquivos .editorconfig, talvez ache a extensão Serviço de


Linguagem de EditorConfig útil. Alguns dos recursos dessa extensão incluem realce
de sintaxe, IntelliSense aprimorado, validação e formatação de código.
Exemplo
O exemplo a seguir mostra o estado de recuo de um snippet de código C# antes e
depois de adicionar um arquivo .editorconfig ao projeto. A configuração Tabulações na
caixa de diálogo Opções do editor de texto do Visual Studio foi definida para produzir
caracteres de espaço ao pressionar a tecla Tab.

Conforme esperado, pressionar a tecla Tab na próxima linha a faz recuar por meio da
adição de mais quatro caracteres de espaço em branco.

Adicione um novo arquivo chamado .editorconfig ao projeto, com o conteúdo a seguir.


A configuração [*.cs] significa que essa alteração se aplica somente a arquivos de
código C# no projeto.

ini

# Top-most EditorConfig file


root = true

# Tab indentation
[*.cs]
indent_style = tab

Agora, ao pressionar a tecla TAB, você obtém caracteres de tabulação em vez de


espaços.

Solução de problemas de configurações do


EditorConfig
Se houver um arquivo do EditorConfig na estrutura do diretório no local do seu projeto
ou acima desse local, o Visual Studio aplicará as configurações do editor nesse arquivo
ao seu editor. Nesse caso, você poderá ver a seguinte mensagem na barra de status:

User preferences for this file type are overridden by this project's coding

conventions.

Isso significa que, se as configurações do editor em Ferramentas>Opções>Editor de


Texto (como tamanho e estilo do recuo, tamanho da tabulação ou convenções de
codificação) forem especificadas em um arquivo EditorConfig no projeto ou acima dele
na estrutura de diretório, as convenções no arquivo EditorConfig substituirão as
configurações em Opções. Você pode controlar esse comportamento
ativando/desativando a opção Seguir as convenções de codificação do projeto em
Ferramentas>Opções>Editor de Texto. Desmarcar a opção desliga o suporte do
EditorConfig para Visual Studio.
É possível encontrar arquivos .editorconfig em diretórios pai abrindo um prompt de
comando e executando o seguinte comando na raiz do disco que contém seu projeto:

Shell

dir .editorconfig /s

Você pode controlar o escopo das convenções do EditorConfig configurando a


propriedade root=true no arquivo .editorconfig na raiz do seu repositório ou no
diretório em que o projeto reside. O Visual Studio procurará um arquivo chamado
.editorconfig no diretório do arquivo aberto e em todos os diretórios pai. A pesquisa
terminará quando atingir o caminho do arquivo raiz ou se um arquivo .editorconfig com
root=true for encontrado.

Confira também
Convenções de estilo de código do .NET
Dando suporte ao EditorConfig para um serviço de linguagem
EditorConfig.org
Recursos do editor de código
EditorConfig (Visual Studio para Mac)
Regras de estilo de código
Artigo • 27/01/2024

A análise de estilo de código do .NET fornece regras que visam manter o estilo de código
consistente em sua base de código. Essas regras têm um prefixo "IDE" na ID da regra. A
maioria das regras tem opções associadas para personalizar o estilo preferencial. As
regras são organizadas nas seguintes subcategorias:

Regras de linguagem

Regras referentes à linguagem C# ou Visual Basic. Por exemplo, você pode


especificar regras que consideram o uso de var ao definir variáveis ou se os
membros com corpo de expressão são preferenciais.

Regras de código desnecessárias

Regras que pertencem a um código desnecessário que indica uma possível


legibilidade, manutenção, desempenho ou problema funcional. Por exemplo, código
inacessível em métodos ou campos privados não utilizados, propriedades ou
métodos é um código desnecessário.

Regras de formatação

Regras referentes ao layout e a estrutura do seu código para facilitar a leitura. Por
exemplo, você pode especificar regras relativas a chaves Allman ou se espaços em
blocos de controle são preferidos.

Regras de nomenclatura

Regras que pertencem à nomenclatura de elementos de código. Por exemplo, você


pode especificar que o método async deve ter um sufixo "Async".

Regras diversas

Regras que não pertencem a outras categorias.

Índice
A tabela a seguir lista todas as regras de estilo de código por ID e opções, se houver.

ノ Expandir a tabela
ID da Título Opção
regra

IDE0001 Simplificar nome

IDE0002 Simplificar acesso de


membro

IDE0003 Remover qualificação this dotnet_style_qualification_for_field


ou Me dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event

IDE0004 Remover conversão


desnecessária

IDE0005 Remover importação


desnecessária

IDE0007 Usar var em vez do tipo csharp_style_var_for_built_in_types


explícito csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere

IDE0008 Usar o tipo explícito em vez csharp_style_var_for_built_in_types


de var csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere

IDE0009 Adicionar qualificação this dotnet_style_qualification_for_field


ou Me dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event

IDE0010 Adicionar casos ausentes à


instrução switch

IDE0011 Adicionar chaves csharp_prefer_braces

IDE0016 Use a expressão throw csharp_style_throw_expression

IDE0017 Usar inicializadores de dotnet_style_object_initializer


objeto

IDE0018 Declaração de variável csharp_style_inlined_variable_declaration


embutida

IDE0019 Usar padrões csharp_style_pattern_matching_over_as_with_null_check


correspondentes para
evitar as seguido por uma
verificação null

IDE0020 Usar padrões csharp_style_pattern_matching_over_is_with_cast_check


correspondentes para
ID da Título Opção
regra

evitar a verificação is
seguida por uma conversão
(com variável)

IDE0021 Usar o corpo da expressão csharp_style_expression_bodied_constructors


para construtores

IDE0022 Usar o corpo da expressão csharp_style_expression_bodied_methods


para métodos

IDE0023 Usar o corpo da expressão csharp_style_expression_bodied_operators


para operadores de
conversão

IDE0024 Usar o corpo da expressão csharp_style_expression_bodied_operators


para operadores

IDE0025 Usar o corpo da expressão csharp_style_expression_bodied_properties


para propriedades

IDE0026 Usar o corpo da expressão csharp_style_expression_bodied_indexers


para indexadores

IDE0027 Usar o corpo da expressão csharp_style_expression_bodied_accessors


para acessadores

IDE0028 Usar inicializadores de dotnet_style_collection_initializer


coleção

IDE0029 Usar expressão unir (tipos dotnet_style_coalesce_expression


não anuláveis)

IDE0030 Usar expressão unir (tipos dotnet_style_coalesce_expression


anuláveis)

IDE0031 Usar tratamento de nulo dotnet_style_null_propagation

IDE0032 Usar a propriedade auto dotnet_style_prefer_auto_properties

IDE0033 Usar o nome de tupla dotnet_style_explicit_tuple_names


fornecido explicitamente

IDE0034 Simplificar a expressão csharp_prefer_simple_default_expression


default

IDE0035 Remover o código


inacessível

IDE0036 Modificadores de ordem csharp_preferred_modifier_order


visual_basic_preferred_modifier_order
ID da Título Opção
regra

IDE0037 Usar o nome do membro dotnet_style_prefer_inferred_tuple_names


inferido dotnet_style_prefer_inferred_anonymous_type_member_names

IDE0038 Usar padrões csharp_style_pattern_matching_over_is_with_cast_check


correspondentes para
evitar a verificação is
seguida por uma conversão
(sem variável)

IDE0039 Usar a função local em vez csharp_style_pattern_local_over_anonymous_function


de lambda

IDE0040 Adicionar modificadores de dotnet_style_require_accessibility_modifiers


acessibilidade

IDE0041 Usar verificação is null dotnet_style_prefer_is_null_check_over_reference_equality_method

IDE0042 Desconstruir declaração de csharp_style_deconstructed_variable_declaration


variável

IDE0044 Adicionar modificador dotnet_style_readonly_field


somente leitura

IDE0045 Usar expressão condicional dotnet_style_prefer_conditional_expression_over_assignment


para atribuição

IDE0046 Usar expressão condicional dotnet_style_prefer_conditional_expression_over_return


para retorno

IDE0047 Remover os parênteses dotnet_style_parentheses_in_arithmetic_binary_operators


desnecessários dotnet_style_parentheses_in_relational_binary_operators
dotnet_style_parentheses_in_other_binary_operators
dotnet_style_parentheses_in_other_operators

IDE0048 Adicionar parênteses para dotnet_style_parentheses_in_arithmetic_binary_operators


esclarecimento dotnet_style_parentheses_in_relational_binary_operators
dotnet_style_parentheses_in_other_binary_operators
dotnet_style_parentheses_in_other_operators

IDE0049 Usar palavras-chave de dotnet_style_predefined_type_for_locals_parameters_members


linguagem em vez de dotnet_style_predefined_type_for_member_access
nomes de tipo de estrutura
para referências de tipo

IDE0050 Converter tipo anônimo em


tupla

IDE0051 Remover membro


particular não utilizado
ID da Título Opção
regra

IDE0052 Remover membro privado


não lido

IDE0053 Usar o corpo da expressão csharp_style_expression_bodied_lambdas


para lambdas

IDE0054 Usar atribuição composta dotnet_style_prefer_compound_assignment

IDE0055 Corrigir a formatação

IDE0056 Usar operador de índice csharp_style_prefer_index_operator

IDE0057 Usar operador de intervalo csharp_style_prefer_range_operator

IDE0058 Remover valor de csharp_style_unused_value_expression_statement_preference


expressão não utilizado visual_basic_style_unused_value_expression_statement_preference

IDE0059 Remover atribuição de csharp_style_unused_value_assignment_preference


valor desnecessária visual_basic_style_unused_value_assignment_preference

IDE0060 Remover parâmetro não dotnet_code_quality_unused_parameters


utilizado

IDE0061 Usar o corpo da expressão csharp_style_expression_bodied_local_functions


para funções locais

IDE0062 Tornar local a função csharp_prefer_static_local_function


estática

IDE0063 Usar instrução using csharp_prefer_simple_using_statement


simples

IDE0064 Tornar os campos de struct


graváveis

IDE0065 Posicionamento da diretiva csharp_using_directive_placement


using

IDE0066 Usar a expressão switch csharp_style_prefer_switch_expression

IDE0070 Use
System.HashCode.Combine.

IDE0071 Simplificar a interpolação dotnet_style_prefer_simplified_interpolation

IDE0072 Adicionar casos ausentes


para a expressão switch

IDE0073 Adicionar cabeçalho de file_header_template


arquivo
ID da Título Opção
regra

IDE0074 Usar atribuição composta dotnet_style_prefer_compound_assignment


de unir

IDE0075 Simplificar a expressão dotnet_style_prefer_simplified_boolean_expressions


condicional

IDE0076 Remover global inválido


SuppressMessageAttribute

IDE0077 Evitar o destino de formato


herdado no
SuppressMessageAttribute
global

IDE0078 Usar correspondência de csharp_style_prefer_pattern_matching


padrões

IDE0079 Remover a supressão dotnet_remove_unnecessary_suppression_exclusions


desnecessária

IDE0080 Remover o operador de


supressão desnecessário

IDE0081 Remover ByVal

IDE0082 Converter typeof em


nameof

IDE0083 Usar padrões csharp_style_prefer_not_pattern


correspondentes (operador
not )

IDE0084 Usar padrões visual_basic_style_prefer_isnot_expression


correspondentes (operador
IsNot )

IDE0090 Simplificar a expressão new csharp_style_implicit_object_creation_when_type_is_apparent

IDE0100 Remover operador de


igualdade desnecessário

IDE0110 Remover discard


desnecessário

IDE0140 Simplificar a criação de visual_basic_style_prefer_simplified_object_creation


objeto

IDE1005 Usar chamada de delegado csharp_style_conditional_delegate_call


condicional
ID da Título Opção
regra

IDE1006 Estilos de nomenclatura

Legenda
A tabela a seguir mostra o tipo de informação fornecida para cada regra na
documentação de referência.

ノ Expandir a tabela

Item Descrição

ID da regra O identificador exclusivo da regra. A ID da regra é usada para configurar a


gravidade da regra e suprimir avisos no arquivo de código.

Título O título da regra.

Categoria A categoria da regra.

Subcategoria A subcategoria da regra, como regras de idioma, regras de formatação ou


regras de nomenclatura.

Linguagens Linguagens .NET aplicáveis (C# ou Visual Basic), além da versão mínima da
aplicáveis linguagem, se aplicável.

Versão Versão do SDK do .NET ou do Visual Studio quando a regra foi introduzida
introduzida pela primeira vez.

Para cada opção para a regra, as informações a seguir são fornecidas.

ノ Expandir a tabela

Item Descrição

Nome da opção O nome da opção de estilo de código para a regra, se houver. As opções para
personalizar o estilo são especificadas em um arquivo EditorConfig.

Valores da Os valores de opção de estilo de código para a opção de regra, se houver.


opção

Valor da opção Valor de opção de estilo de código padrão para a opção de regra, se houver.
padrão

Exemplos Exemplos para o estilo de código correspondente à opção.


Confira também
Impor estilo de código no build
Ações rápidas no Visual Studio
Criar opções de editor personalizado portátil no Visual Studio

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Opções de refatoração de código .NET
Artigo • 25/08/2023

As opções de refatoração de código neste artigo se aplicam ao C# e ao Visual Basic.

As opções descritas neste artigo não têm uma gravidade e não aparecem na Lista de
Erros como avisos ou sugestões. Em vez disso, são usadas apenas durante uma
refatoração no Visual Studio.

Para regras de estilo de código .NET que se aplicam durante a compilação e refatoração,
ou seja, aquelas que têm uma ID do formulário IDEXXXX , consulte Regras de estilo de
código.

Exemplo de arquivo .editorconfig:

ini

# .NET formatting rules


[*.{cs,vb}]
dotnet_style_operator_placement_when_wrapping = end_of_line

dotnet_style_operator_placement_when_wrapping
Use essa opção para personalizar como você deseja que os operadores sejam colocados
ao encapsular linhas de código durante uma refatoração.

ノ Expandir a tabela

Property Valor Descrição

Nome da opção dotnet_style_operator_placement_when_wrapping

Linguagens C# e Visual Basic


aplicáveis

Versão Visual Studio 2022


introduzida

Valores da end_of_line Coloca o operador no


opção final de uma linha.

beginning_of_line Coloca o operador em


uma nova linha.

Valor padrão beginning_of_line


Exemplos de código:

C#

// dotnet_style_operator_placement_when_wrapping = end_of_line
if (true &&
true)

// dotnet_style_operator_placement_when_wrapping = beginning_of_line
if (true
&& true)
Como: personalizar a barra de rolagem
Artigo • 05/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Ao trabalhar com arquivos de código longos, pode ser difícil manter o controle de onde
tudo está no arquivo. É possível personalizar a barra de rolagem do editor de código
para ter um panorama geral do que está acontecendo no código.

Anotações
Você pode selecionar se a barra de rolagem deve mostrar anotações, como alterações
de código, pontos de interrupção, indicadores, erros e posição do cursor.

1. Abra a página de opções Barras de rolagem escolhendo


Ferramentas>Opções>Editor de Texto>Todos os Idiomas>Barras de rolagem.

2. Selecione Mostrar anotações sobre a barra de rolagem vertical e selecione as


anotações que deseja ver. As anotações disponíveis são:

alterações
marcas
erros
posição do cursor

 Dica

A opção Exibir marcas inclui pontos de interrupção e indicadores.

Experimente abrir um arquivo de código grande e substituir algumas partes do texto


que ocorrem em vários locais no arquivo. A barra de rolagem mostra o efeito das
substituições, de modo que você pode desfazer suas alterações se tiver substituído algo
que não deveria.

Esta é a aparência da barra de rolagem após o usuário pesquisar por uma cadeia de
caracteres. Observe que todas as instâncias da cadeia de caracteres são exibidas na
barra de rolagem.
Esta é a barra de rolagem após a substituição de todas as instâncias da cadeia de
caracteres. As marcas vermelhas na barra de rolagem mostram em que local a
substituição de texto introduziu erros.

Tabela de anotações
Curioso para saber quais anotações da barra de rolagem e suas cores associadas
correspondem a quais ações? Confira as tabelas a seguir para obter detalhes.

Alterações de código
As alterações de código são anotadas no lado esquerdo da barra de rolagem vertical.

Arquivos rastreados (em um repositório Git)

Color Anotação Status Nome das configurações


padrão

Verde Não Acompanhar adições em arquivos sob controle do


salvo código-fonte

Verde Salvo Acompanhar adições em arquivos sob controle do


código-fonte

Vermelho Excluído Acompanhar exclusões em arquivos sob controle do


código-fonte

Azul Não Acompanhar modificações em arquivos sob controle


salvo do código-fonte

Azul Salvo Acompanhar modificações em arquivos sob controle


do código-fonte

Arquivos não rastreados (não em um repositório Git)

Color Anotação padrão Status Nome das configurações

Ouro Não salvo Acompanhar alterações em arquivos antes de salvá-los

Verde Salvo Acompanhar alterações em arquivos após salvá-los

Azul Revertida Acompanhar alterações revertidas em arquivos

Marks
As marcas são anotadas na seção intermediária da barra de rolagem vertical.

Color Anotação padrão Nome das configurações

Cinza escuro Indicador

Amarelo Localizar correspondência

Vermelho escuro Ponto de interrupção

Cinza claro Correspondência de seleção

Azul Exibir definição

Erro, Aviso, Informações ou Sugestão


Erros, Avisos, Informações e Sugestões são anotados no lado direito da barra de
rolagem vertical.

Color Anotação padrão Nome das configurações

Vermelho Erro de sintaxe

Verde Aviso

Azul Informações

Cinza claro Reticências de sugestão (…)

Posição do cursor

A posição do cursor também é anotada no lado direito da barra de rolagem vertical.

Color Anotação padrão Nome das configurações

Azul-escuro Visão geral do cursor

Modos de exibição
A barra de rolagem tem dois modos: o modo de barra e o modo de mapa.
Modo de barra
O modo de barra exibe indicadores de anotação na barra de rolagem. Clicar na barra de
rolagem rola a página para cima ou para baixo, mas não pula para esse local no arquivo.

Modo de mapa
O modo de mapa exibe linhas de código, em miniatura, na barra de rolagem. É possível
escolher a largura da coluna do mapa selecionando um valor em Visão geral do
Código-fonte. Para habilitar uma visualização maior do código quando você parar o
ponteiro no mapa, selecione a opção Mostrar Dica de Ferramenta de Visualização. As
regiões recolhidas ficam sombreadas de forma diferente e são expandidas quando você
clica duas vezes nelas.

 Dica

Você pode desabilitar a exibição de código em miniatura no modo de mapa


definindo a opção Visão geral do código-fonte como Desabilitada. Se a opção
Mostrar Dica de Ferramenta de Visualização estiver selecionada, você ainda verá
uma visualização do código nesse local ao passar o ponteiro do mouse sobre a
barra de rolagem e, o cursor ainda o levará para esse local no arquivo quando você
clicar.

A imagem a seguir mostra o exemplo de pesquisa quando o modo de mapa está


ativado e a largura está definida como Média:
A imagem a seguir mostra a opção Mostrar dica de ferramenta de visualização:

 Dica

Para alterar as cores que você vê no modo de mapa, escolha


Ferramentas>Opções>Ambiente>Fontes e Cores. Em seguida, em Exibir itens,
escolha qualquer um dos itens precedidos por "Visão geral", faça as alterações de
cor desejadas e escolha OK.

Confira também
Recursos do editor de código
Saiba mais sobre o recurso de Rolagem Autoadesiva do Editor
Código de indicador no Visual Studio
Artigo • 13/01/2024

Você pode usar indicadores para marcar linhas em seu código para que você possa
retornar rapidamente para um local específico ou alternar entre locais. Os indicadores
podem ajudar a acompanhar partes importantes do seu código e lembrar do que você
pode querer trabalhar em seguida, o que pode melhorar sua produtividade.

Os comandos e ícones do indicador estão disponíveis em dois locais:

A janela Indicadores; para abrir, selecione Exibir>Janela de Indicadores na barra


de menus ou use o atalho de teclado Ctrl+K, Ctrl+W.

A barra de ferramentas Indicadores

A tabela a seguir inclui comandos de barra de ferramentas disponíveis e seus


atalhos de teclado, listados da esquerda para a direita.

ノ Expandir a tabela

ícone Ação Atalho de


teclado

Alternar um indicador Criar um indicador na linha atual ou Ctrl+K, Ctrl+K


alternar entre indicadores existentes
linha por linha

Nova Pasta Criar uma nova pasta Ctrl+K, Ctrl+F

Indicador anterior Mover o ponto de intercalação para o Ctrl+K, CtrlP


indicador anterior

Próximo indicador Mover o sinal de intercalação para o Ctrl+K, CtrlN


próximo indicador
ícone Ação Atalho de
teclado

Indicador anterior em uma Mover o ponto de intercalação para o Ctrl+Shift+K,


pasta indicador anterior na pasta atual Ctrl+Shift+P

Próximo indicador em uma Mover o ponto de intercalação para o Ctrl+Shift+K,


pasta próximo indicador na pasta atual Ctrl+Shift+N

Desabilitar/Habilitar Todos Desabilitar ou habilitar todos os ---


os Indicadores indicadores

Excluir Excluir (indicador, pasta) ---

Adicionar indicadores
Confira como adicionar um indicador:

1. Coloque o cursor na linha de código que você deseja marcar.


2. Selecione Alternar um indicador.
3. O Visual Studio adiciona um ícone de indicador ao lado da linha selecionada e
uma entrada correspondente à janela Indicadores.

Se você selecionar Alternar um indicador novamente, o indicador será removido.

Renomear indicadores
Confira como renomear um indicador:
1. Se a janela Indicadores não estiver aberta, selecione Exibir>Janela de Indicadores
na barra de menus. Ou insira Ctrl+K, Ctrl+K.

2. Clique com o botão direito do mouse no indicador para abrir o menu de contexto
e selecione Renomear.

Desabilitar ou excluir indicadores


Você poderá excluir indicadores ao selecionar o botão Excluir na janela de indicadores.

Você poderá desligar indicadores (sem removê-los) ao escolher o botão Desabilitar


Todos os Indicadores na janela de indicadores. Você pode reabilitá-los ao escolher o
mesmo botão, que agora é chamado de Habilitar Todos os Indicadores.

Navegar por indicadores e organizá-los


Você pode navegar entre marcadores usando os botões Próximo indicador e Indicador
anterior na janela de indicadores.

Você poderá organizar indicadores em pastas virtuais ao selecionar Nova Pasta na


janela de indicadores e arrastando os indicadores selecionados para a nova pasta. Além
disso, você também pode renomear as pastas usando o menu de contexto de clique
com o botão direito do mouse.

Conteúdo relacionado
Explore mais recursos do editor de código.
Saiba mais sobre outros recursos de produtividade no guia Produtividade do
Visual Studio.
Localizar alterações de código e outro
histórico com o CodeLens
Artigo • 04/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Com o CodeLens, você pode manter o foco no trabalho enquanto descobre o que
aconteceu com seu código. Tudo isso sem sair do editor. Encontre referências e
alterações no código, bugs vinculados, itens de trabalho do Azure DevOps, revisões de
código e testes de unidade.

7 Observação

O CodeLens está disponível na edição Community do Visual Studio, no entanto, os


indicadores do controle do código-fonte não estão disponíveis nesta edição.

O CodeLens pode mostrar onde e como as partes individuais do código são usadas em
sua solução.

Para escolher os indicadores que você deseja ver ou para ativar e desativar o CodeLens,
vá para Ferramentas>Opções>Editor de Texto>Todas as linguagens>CodeLens.

Localize referências ao seu código


Encontre referências no código C# ou Visual Basic. Veja aqui como fazer isso.

1. No editor de código, selecione o indicador de referências ou pressione Alt+2.

7 Observação
Se o indicador mostrar 0 referências, isso indicará que você não tem
nenhuma referência do código C# ou Visual Basic. No entanto, pode haver
referências em outros itens, como arquivos .xaml e .aspx.

2. Para exibir o código de referência, focalize a referência na lista.

3. Para abrir o arquivo que contém a referência, clique duas vezes na referência.

Mapas de código
Para ver as relações entre o código e suas referências, crie um mapa de códigos. No
menu de atalho do mapa de códigos, selecione Mostrar Todas as Referências.

Encontre alterações no código


Inspecione o histórico do código para descobrir o que aconteceu com ele. Ou examine
as alterações antes que elas tenham sido mescladas em seu código para que você possa
entender melhor como as alterações em outras ramificações podem afetar seu código.

Você precisa de:

Visual Studio Enterprise ou Visual Studio Professional

Git ou Azure DevOps Server (antigo Team Foundation Server) ou Controle de


Versão do Team Foundation

Para o código C# ou Visual Basic armazenado com o TFVC (Controle de Versão do Team
Foundation) ou Git, você obtém detalhes do CodeLens nos níveis de classe e de método
(indicadores no nível do elemento de código).

Para arquivo de tipos diferentes de .cs ou .vb, obtenha detalhes do CodeLens do arquivo
inteiro em um só lugar (indicadores no nível do arquivo).

Indicadores no nível do elemento de código


Os indicadores no nível do elemento de código permitem que você veja quem alterou o
código e quais alterações foram feitas. Os indicadores no nível do elemento de código
estão disponíveis para o código C# e Visual Basic.

Você também pode exibir o histórico de alterações ao usar Controle de Versão do Team
Foundation (TFVC) em Azure DevOps Services.

O período de tempo padrão são os últimos 12 meses.


Para ver um histórico detalhado de todas as alterações, incluindo as alterações
posteriores a um ano atrás, selecione Mostrar todas as alterações do arquivo, que abre
a janela Histórico.

Na janela Histórico, você pode exibir todos os arquivos que estão em um repositório
Git. Em seguida, você pode selecionar o indicador de alterações no nível do elemento
de código para obter mais detalhes.

Indicadores no nível do arquivo


Você também pode exibir os indicadores de nível de arquivo para um arquivo inteiro.

7 Observação

Os indicadores no nível do arquivo não estão disponíveis para arquivos C# e Visual


Basic.

Para ver mais detalhes sobre uma alteração, clique com o botão direito do mouse no
item. Dependendo se você estiver usando o TFVC ou o Git, haverá opções para
comparar as versões do arquivo, exibir detalhes e acompanhar o conjunto de alterações,
obter a versão selecionada do arquivo e enviar por email para o autor dessa alteração.
Alguns desses detalhes aparecem no Team Explorer se você o tiver habilitado; caso
contrário, esses detalhes aparecerão em Alterações do Git.

Você também pode ver quem alterou seu código ao longo do tempo, o que pode
ajudá-lo a encontrar padrões nas alterações de sua equipe e avaliar seu impacto.

Encontre alterações na sua ramificação atual


Sua equipe pode ter vários branches, por exemplo, um branch principal e um branch de
desenvolvimento filho, para reduzir o risco de interrupção de código estável. Descubra
quantas pessoas alteraram seu código e a quantas alterações foram feitas no branch
principal pressionando Alt+6:

Descubra quando o código foi ramificado


Para saber quando o código foi ramificado, navegue para o código no branch filho. Em
seguida, selecione o indicador alterações ou pressione Alt+6:

Descubra alterações recebidas de outras ramificações


Veja as alterações recebidas. E você não precisa sair do branch atual para revisar uma
alteração.

Descubra onde as alterações foram mescladas


Você pode ver quando as alterações foram mescladas, para que você possa determinar
quais alterações são incluídas no branch.

Comparar uma alteração recebida com a versão local


Para comparar uma alteração de entrada com a versão local, clique duas vezes no
conjunto de alterações ou pressione Shift+F10.

Ícones do branch
O ícone na coluna Branch indica como o branch está relacionado ao branch no qual
você está trabalhando.

Ícone A alteração foi proveniente de:

A ramificação atual

A ramificação pai

Uma ramificação filha

Uma ramificação par

Uma ramificação mais distante que uma pai, filha ou par

Uma mesclagem da ramificação pai para uma ramificação filha

Uma mesclagem de uma ramificação filha para a ramificação pai

Uma mesclagem de uma ramificação não relacionada (mesclagem sem base)

Itens de trabalho vinculados


Encontre itens de trabalho vinculados selecionando o indicador itens de trabalho ou
pressionando Alt+8.

Revisões de código vinculadas


Encontre revisões de código vinculadas selecionando o indicador revisões. Para usar o
teclado, mantenha pressionada a tecla Alt e, em seguida, pressione Seta para a
esquerda ou Seta para a direita para navegar pelas opções de indicador.

Bugs vinculados
Encontre bugs vinculados selecionando o indicador bugs ou pressionando Alt+7.

Contatar o proprietário de um item


Encontre o autor de um item selecionando o indicador autores ou pressionando Alt+5.

Você também pode abrir o menu de atalho de um item para ver as opções de contato.
(Se você tiver o Teams instalado, terá opções de comunicação adicionais disponíveis
para você.)

Testes de unidade associados


Descubra testes de unidade existentes para o código C# ou Visual Basic sem abrir o
Gerenciador de Testes.

1. Acesse o código do aplicativo que tem o código de teste de unidade associado.

2. Se você ainda não tiver feito isso, crie seu aplicativo para carregar os indicadores
de teste do CodeLens.

3. Examine o código nos testes pressionando Alt+3.

4. Se você vir um ícone de aviso , os testes ainda não foram executados, portanto,
execute-os.

5. Para examinar a definição de um teste, clique duas vezes no item de teste na janela
do indicador CodeLens para abrir o arquivo de código no editor.

6. Para examinar os resultados do teste, escolha o indicador de status do teste ( ou


) ou pressione Alt+1.

7. Para ver quantas pessoas alteraram esse teste, quem alterou esse teste ou quantas
alterações foram feitas nesse teste, encontre o histórico e os itens vinculados do
código.

Atalhos do teclado
Para usar o teclado para selecionar indicadores, pressione a tecla Alt e mantenha-a
pressionada para exibir as teclas numéricas relacionadas e, em seguida, pressione o
número que corresponde ao indicador que você deseja selecionar.

7 Observação

Para selecionar o indicador revisões, mantenha Alt pressionado usando as teclas de


seta para a esquerda e direita para navegar.

P&R

P: Como fazer para ativar ou desativar o CodeLens ou


escolher quais indicadores exibir?
R: é possível ativar ou desativar indicadores, exceto o indicador de referências. Vá para
Ferramentas>Opções>Editor de Texto>Todas as Linguagens>CodeLens.

Quando os indicadores são ativados, você pode abrir as opções do CodeLens nos
indicadores. E você pode ativar e desativar os indicadores de nível de arquivo do
CodeLens usando os ícones de divisas na parte inferior da janela do editor.

P: Em que local o CodeLens se encontra?


R: o CodeLens é exibido no código C# e Visual Basic no nível de método, classe,
indexador e propriedade. O CodeLens é exibido no nível de arquivo para todos os
outros tipos de arquivos.

Certifique-se que o CodeLens está ativado. Vá para Ferramentas>Opções>Editor


de Texto>Todas as Linguagens>CodeLens.

Os indicadores relacionados ao Azure DevOps são exibidos apenas quando os


itens de trabalho são vinculados ao código e quando você tem permissão para
abrir itens de trabalho vinculados. Confirme se você tem permissões de membro
da equipe.

Os indicadores de teste de unidade não são exibidos quando o código do


aplicativo não tem testes de unidade. Os indicadores de status do teste aparecem
automaticamente em projetos de teste. Se você souber que seu código do
aplicativo tem testes de unidade, mas os indicadores de teste não forem exibidos,
tente criar a solução (Ctrl+Shift+B).
 Dica

O CodeLens está disponível na edição Visual Studio Community, no entanto, os


indicadores do controle do código-fonte não estão disponíveis nesta edição.

P: Por que eu não vejo os detalhes de item de trabalho


para uma confirmação?
R: Isso pode acontecer porque o CodeLens não consegue localizar os itens de trabalho
no Azure Boards. Verifique se você está conectado ao projeto que tem esses itens de
trabalho e se tem permissões para vê-los. Além disso, os detalhes do item de trabalho
poderão não ser exibidos se a descrição de confirmação contiver informações incorretas
sobre as IDs de item de trabalho no Azure Boards.

P: como posso alterar a fonte e a cor do CodeLens?


R: Acesse Ferramentas>Opções>Ambiente>Fontes e Cores.

Para usar o teclado:

1. Pressione Alt+T+O para abrir a caixa de diálogo Opções.

2. Pressione Seta para cima ou Seta para baixo para acessar o nó Ambiente. Em
seguida, pressione Seta para a esquerda para expandir o nó.
3. Pressione Seta para baixo para acessar Fontes e Cores.

4. Pressione Tab para acessar a lista Mostrar configurações de e, em seguida,


pressione Seta para baixo para selecionar CodeLens.

P: Posso mover o HUD do CodeLens?


R: Sim, escolha o para encaixar o CodeLens como uma janela.

P: Como posso atualizar os indicadores?


R: isso depende do indicador:

Referências: este indicador é atualizado automaticamente quando o código é


alterado. Se o indicador referências estiver encaixado como uma janela separada,
atualize o indicador selecionando Atualizar.

Equipe: atualize esses indicadores selecionando Atualizar Indicadores da Equipe


CodeLens no menu de clique com o botão direito.

Teste: encontre os testes de unidade do código para atualizar o indicador Teste.

P: O que é "Versão Local"?


R: A seta Versão local aponta para o conjunto de alterações mais recente na versão local
de um arquivo. Quando o servidor tem um conjunto de alterações mais recente, elas são
exibidas acima ou abaixo da seta Versão local, dependendo da ordem usada para
classificar os conjuntos de alterações.

P: Meus indicadores de teste do CodeLens não aparecem


mais no meu arquivo quando abro minha solução pela
primeira vez. Como posso carregá-los?
R: Recompile seu projeto para obter os indicadores de teste do CodeLens para carregar
no seu arquivo. Para melhorar o desempenho, o Visual Studio não busca mais
informações de origem para os indicadores de teste quando os arquivos de código são
carregados. Os indicadores de teste são carregados após um build ou quando você
navega até um teste clicando duas vezes nele no Gerenciador de Testes.

Próximas etapas
Saiba mais sobre como usar o Git e o Azure DevOps nos documentos de controle de
versão do Visual Studio.

Confira também
Recursos do editor de código
Comando CodeIndex
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use o comando CodeIndex para gerenciar a indexação de código no Team Foundation


Server. Por exemplo, você pode desejar redefinir o índice para consertar informações
CodeLens ou desativar a indexação para investigar problemas de desempenho do
servidor.

Permissões necessárias
Para usar o comando CodeIndex, é necessário ser um membro do grupo de segurança
Team Foundation Administrators. Consulte Permissões e grupos definidos para o Azure
DevOps Services e o TFS.

7 Observação

Mesmo que use credenciais administrativas para entrar, você deve abrir uma janela
de prompt de comandos com privilégios elevados para executar esse comando.
Você também deve executar esse comando a partir do nível de aplicativo para o
Team Foundation.

Sintaxe
Prompt de comando do Windows

TFSConfig CodeIndex /indexingStatus | /setIndexing:[ on | off | keepupOnly ]


| /ignoreList:[ add | remove | removeAll | view ] ServerPath |
/listLargeFiles [/fileCount:FileCount] [/minSize:MinSize] | /reindexAll |
/destroyCodeIndex [/noPrompt] | /temporaryDataSizeLimit:[ view | <SizeInGBs>
| disable ] | /indexHistoryPeriod:[ view | all | <NumberOfMonths> ]
[/collectionName:CollectionName | /collectionId:CollectionId]

Parâmetros

Argument Descrição

CollectionName Especifica o nome da coleção de projetos. Se o nome tiver espaços, coloque o


nome entre aspas, por exemplo, "Site do Fabrikam".
Argument Descrição

CollectionId Especifica o número de identificação da coleção de projetos.

ServerPath Especifica o caminho para um arquivo de código.

Opção Descrição

/indexingStatus Mostra o status e a configuração do serviço de


indexação de código.

/setIndexing:[ on | off | keepupOnly ] - on: iniciar a indexação de todos os conjuntos de


alterações.
- off: interromper a indexação de todos os conjuntos
de alterações.
- keepupOnly: interromper a indexação de conjuntos
de alterações criados anteriormente e iniciar apenas a
indexação de novos conjuntos de alterações.

/ignoreList:[ add | remove | removeAll | Especifica uma lista de arquivos de código e seus
view ] ServerPath caminhos que você não deseja indexar.

É possível usar o caractere curinga (*) - add: adicionar o arquivo que você não deseja indexar
no início, no fim ou em ambas as à lista de arquivos ignorados.
extremidades do caminho do servidor. - remove: remover o arquivo que você deseja que seja
indexado na lista de arquivos ignorados.
- removeAll: limpar a lista de arquivos ignorados e
iniciar a indexação de todos os arquivos.
- view: ver todos os arquivos que não estão sendo
indexados.

/listLargeFiles Mostra o número especificado de arquivos que excede


[/fileCount: FileCount /minSize: MinSize ] o tamanho especificado em KB. É possível usar a opção
/ignoreList para excluir esses arquivos da indexação.

/reindexAll Limpe os dados indexados anteriormente e reinicie a


indexação.

/destroyCodeIndex [/noPrompt] Exclua o índice de código e remota todos os dados


indexados. Não requererá confirmação se você usar a
opção /noPrompt.
Opção Descrição

/temporaryDataSizeLimit:[ view | Controle quantos dados temporários que o CodeLens


< SizeInGBs > | disable ] cria ao processar conjuntos de alterações. O limite
padrão é 2 GB.

- exibir: mostrar o limite do tamanho atual.


- SizeInGBs : alterar o limite do tamanho.
- desabilitar: remover o limite do tamanho.

Esse limite é verificado antes de CodeLens processa


um novo conjunto de alterações. Se os dados
temporários excederem esse limite, o CodeLens
pausará o processamento de conjuntos de alterações
passados, não novos. CodeLens reiniciará o
processamento depois que os dados são limpos e ficar
abaixo desse limite. Limpeza executa automaticamente
uma vez por dia. Isso significa que os dados
temporários podem exceder esse limite até que a
limpeza começa a ser executado.

/indexHistoryPeriod:[ view | all | Controle por quanto tempo indexar o histórico de


< NumberOfMonths > ] alterações. Isso afeta a quantidade de histórico que o
CodeLens mostra a você. O limite padrão é 12 meses.
Isso significa que o CodeLens mostra seu histórico de
alterações apenas dos últimos 12 meses.

- exibir: mostrar o número atual de meses.


- tudo: indexar todo o histórico de alterações.
- NumberOfMonths : Altere o número de meses usado
para indexar o histórico de alterações.

/collectionName: CollectionName Especifica o nome da coleção de projetos na qual


executar o comando CodeIndex. Obrigatório se você
não usar /CollectionId.

/collectionId: CollectionId Especifica o número de identificação da coleção de


projetos na qual executar o comando CodeIndex.
Obrigatório se você não usar /CollectionName.

Exemplos

7 Observação

Os exemplos de empresas, organizações, produtos, nomes de domínio, endereços


de email, logotipos, pessoas, lugares e eventos aqui mencionados são fictícios.
Nenhuma associação com nenhuma empresa, organização, produto, nome de
domínio, endereço de email, logotipo, pessoa, locais ou eventos reais é intencional
nem deve ser inferida.

Para ver o status e a configuração de indexação do código:

Prompt de comando do Windows

TFSConfig CodeIndex /indexingStatus /collectionName:"Fabrikam Website"

Para iniciar a indexação de todos os conjuntos de alterações:

Prompt de comando do Windows

TFSConfig CodeIndex /setIndexing:on /collectionName:"Fabrikam Website"

Para interromper a indexação de conjuntos de alterações criados anteriormente e iniciar


indexação apenas para novos conjuntos de alterações:

Prompt de comando do Windows

TFSConfig CodeIndex /setIndexing:keepupOnly /collectionName:"Fabrikam


Website"

Para encontrar até 50 arquivos maiores que 10 KB:

Prompt de comando do Windows

TFSConfig CodeIndex /listLargeFiles /fileCount:50 /minSize:10


/collectionName:"Fabrikam Website"

Para excluir um arquivo específico da indexação e adicioná-lo à lista de arquivos


ignorados:

Prompt de comando do Windows

TFSConfig CodeIndex /ignoreList:add "$/Fabrikam Website/Catalog.cs"


/collectionName:"Fabrikam Website"

Para ver todos os arquivos que não estão indexados:

Prompt de comando do Windows

TFSConfig CodeIndex /ignoreList:view


Para limpar os dados indexados anteriormente e reinicie a indexação:

Prompt de comando do Windows

TFSConfig CodeIndex /reindexAll /collectionName:"Fabrikam Website"

Para salvar todo o histórico de alterações:

Prompt de comando do Windows

TFSConfig CodeIndex /indexHistoryPeriod:all /collectionName:"Fabrikam


Website"

Para remover o limite de tamanho CodeLens os dados temporários e continuar a


indexação independentemente do tamanho de dados temporários:

Prompt de comando do Windows

TFSConfig CodeIndex /temporaryDataSizeLimit:disable


/collectionName:"Fabrikam Website"

Para excluir o índice de código com confirmação:

Prompt de comando do Windows

TFSConfig CodeIndex /destroyCodeIndex /collectionName:"Fabrikam Website"

Confira também
Localizar alterações de código e outro histórico com o CodeLens
Gerenciando a configuração do servidor com TFSConfig
Adicionar suporte para outras
linguagens ao editor do Visual Studio
Artigo • 16/01/2024

Saiba mais sobre como o editor do Visual Studio dá suporte à leitura e à navegação por
meio de diferentes linguagens de computador e como é possível adicionar suporte ao
editor do Visual Studio para outras linguagens.

Colorização de sintaxe, preenchimento de


declaração e suporte Navegar até
Os recursos no editor do Visual Studio, como colorização de sintaxe, preenchimento de
declaração (também conhecido como IntelliSense) e Navegar Para, podem ajudá-lo a
escrever, ler e editar o código com mais facilidade. A captura de tela a seguir mostra um
exemplo de edição de um script Perl no Visual Studio. A sintaxe é automaticamente
colorizada. Por exemplo, os comentários no código são coloridos em verde, o código é
em preto, os caminhos são em vermelho e as instruções são em azul. O editor do Visual
Studio aplica automaticamente a colorização de sintaxe a qualquer linguagem que ele
dá suporte. Além disso, quando você começar a inserir uma palavra-chave ou objeto de
linguagem conhecido, o preenchimento de declaração exibe uma lista de possíveis
declarações e objetos. O preenchimento de declaração pode ajudá-lo a escrever o
código com mais rapidez e facilidade.
No momento, o Visual Studio oferece suporte à colorização de sintaxe e preenchimento
de declaração básico para as seguintes linguagens usando gramáticas TextMate . Se
sua linguagem favorita não estiver na tabela, não se preocupe, é possível adicioná-la.

Bat
F#
Java
Markdown
Rust
Visual Basic
Clojure
Go
JavaDoc
Objective-C
ShaderLab
C#
CMake
Groovy
JSON
Perl
ShellScript
Visual C++
CoffeeScript
HTML
LESS
Python
SQL
VBNet
CSS
INI
LUA
R
Swift
XML
Docker
Jade
Faça
Ruby
TypeScript
YAML
Além da colorização de sintaxe e do preenchimento de declaração, o Visual Studio
também tem um recurso chamado Navegar até. Esse recurso permite pesquisar
rapidamente arquivos de código, caminhos de arquivo e símbolos de código. O Visual
Studio oferece suporte Navegar até para as seguintes linguagens.

C#

C++

TypeScript

JavaScript

Visual Basic

Go

Java

PHP

Todos esses tipos de arquivo terão os recursos descritos anteriormente, mesmo se o


suporte para uma linguagem determinada ainda não tiver sido instalado. Instalar
suporte especializado para algumas linguagens pode oferecer suporte a outras
linguagens, como IntelliSense ou outros recursos de linguagem avançados como
lâmpadas.

Adicionar suporte para linguagens sem suporte


O Visual Studio 2015 oferece suporte a linguagens no editor usando Gramáticas
TextMate . Se a sua linguagem de programação favorita não tiver suporte no editor do
Visual Studio, em primeiro lugar, pesquise na Web. Talvez já exista um pacote TextMate
para a linguagem. No entanto, se você não encontrar um, poderá adicionar suporte a
ela sozinho criando um modelo de pacote TextMate para snippets e gramáticas de
linguagem.

Adicione novas Gramáticas TextMate para o Visual Studio na seguinte pasta:

%userprofile%\.vs\Extensions

Nesse caminho base, adicione as pastas a seguir se forem aplicáveis à sua situação:

ノ Expandir a tabela
Nome da Pasta Descrição

\<language A pasta da linguagem. Substitua <language name> pelo nome da linguagem.


name> Por exemplo, \Matlab.

\Syntaxes A pasta da gramática. Contém os arquivos .json da gramática para a


linguagem, como Matlab.json.

\Snippets A pasta de snippets. Contém snippets da linguagem.

No Windows, %userprofile% é resolvido no caminho: c:\Usuários\<nome do usuário>. Se


a pasta Extensões não existir em seu sistema, será necessário criá-la. Se a pasta já existir,
ela será oculta.

 Dica

Se você tiver arquivos abertos no editor, precisará fechá-los e reabri-los para ver o
realce de sintaxe depois de adicionar as Gramáticas TextMate.

Para obter detalhes sobre como criar Gramáticas TextMate, confira TextMate: introdução
a gramáticas de linguagem e Observações sobre como criar uma gramática de
linguagem e um tema personalizado para um pacote Textmate .

Conteúdo relacionado
Adicionar uma extensão do Language Server Protocol
Passo a passo: Para criar um snippet de código
Passo a passo: exibir preenchimento de declaração
Código de exemplo: Gramática do TextMate
Código de exemplo: suporte a linguagem personalizada
Exibir a estrutura do código usando
janelas de ferramentas diferentes
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode examinar as classes e seus membros no Visual Studio usando várias janelas
de ferramentas, incluindo Modo de Exibição de Classe, Hierarquia de Chamadas,
Pesquisador de Objetos e Definição de Código (somente C++). Essas janelas de
ferramentas podem examinar o código em projetos do Visual Studio, componentes
.NET, componentes COM, DLL (bibliotecas de vínculo dinâmico) e TLB (bibliotecas de
tipos).

Também é possível usar o Gerenciador de Soluções para procurar os tipos e membros


em seus projetos, pesquisar símbolos, exibir a hierarquia de chamada de um método,
localizar referências de símbolos e muito mais, sem precisar mudar entre as várias
janelas de ferramentas.

Se tiver o Visual Studio Enterprise, você poderá usar mapas de código para visualizar a
estrutura do código e suas dependências em toda a solução. Para saber mais, confira
Mapear as dependências com mapas de código.

Modo de Exibição de Classe (Visual Basic, C#,


C++)
O Modo de Exibição de Classe é mostrado como parte do Gerenciador de Soluções, e
como uma janela separada. Modo de Exibição de Classe exibe os elementos de um
aplicativo. O painel superior exibe namespaces, tipos, interfaces, enumerações e classes,
e o painel inferior exibe os membros que pertencem ao tipo selecionado no painel
superior. Usando essa janela, você pode passar para definições de membro no código-
fonte (ou no Pesquisador de Objetos se o elemento for definido fora de sua solução).

Não é necessário compilar um projeto para exibir seus elementos no Modo de Exibição
de Classe. A janela é atualizada conforme você modifica o código em seu projeto.

É possível adicionar código ao seu projeto selecionando o nó do projeto e escolhendo o


botão Adicionar para abrir a caixa de diálogo Adicionar Novo Item. O código é
adicionado em um arquivo separado.
Caso tenha sido realizado o check-in do seu projeto para controle do código-fonte,
cada elemento do Modo de Exibição de Classe exibirá um ícone que indica o status do
código-fonte do arquivo. Comandos de controle do código-fonte comuns, como Fazer
Check-Out, Fazer Check-In e Obter Versão Mais Recente, também estão disponíveis no
menu de atalho do elemento.

Barra de Ferramentas Modo de Exibição de Classe


A barra de ferramentas Modo de Exibição de Classe contém os comandos a seguir:

Nome Descrição

Nova Pasta Cria uma pasta ou subpasta virtual na qual você pode organizar os elementos
usados com frequência. Eles são salvos no arquivo da solução ativa (.suo). Após
você renomear ou excluir um elemento em seu código, ele pode aparecer em uma
pasta virtual como um nó de erro. Para corrigir esse problema, exclua o nó de erro.
Se tiver renomeado um elemento, você pode movê-lo da hierarquia do projeto
para a pasta novamente.

Voltar Navega para o item selecionado anteriormente.

Encaminhar Navega para o item selecionado seguinte.

Exibir em É disponibilizado quando você seleciona um namespace ou tipo no Modo de


Diagrama Exibição de Classe. Quando um namespace é selecionado, o diagrama de classe
de Classe mostra todos os tipos contidos nele. Quando um tipo é selecionado, o diagrama
(somente de classe mostra apenas esse tipo.
em projetos
de código
gerenciado)

Configurações do Modo de Exibição de Classe


O botão Configurações do Modo de Exibição de Classe na barra de ferramentas tem as
seguintes configurações:

Nome Descrição

Mostrar Tipos Base Tipos base são exibidos.

Mostrar referências de As referências de projeto são exibidas.


projeto

Mostrar Tipos e Tipos e membros ocultos (que não devem ser usados por clientes) são
Membros Ocultos exibidos em texto cinza claro.
Nome Descrição

Mostrar Membros Membros públicos são exibidos.


Públicos

Mostrar Membros Membros protegidos são exibidos.


Protegidos

Mostrar Membros Membros particulares são exibidos.


Particulares

Mostrar Outros Outros tipos de membros são exibidos, incluindo membros internos
Membros (ou Amigos no Visual Basic).

Mostrar Membros Membros herdados são exibidos.


Herdados

Menu de atalho do Modo de Exibição de Classe


O menu de atalho (ou clique com o botão direito do mouse) no Modo de Exibição de
Classe pode conter os seguintes comandos, dependendo do tipo de projeto
selecionado:

Nome Descrição

Ir para definição Localiza a definição do elemento no código-fonte ou no Pesquisador de


Objetos se o elemento não estiver definido no projeto aberto.

Procurar definição Exibe o item selecionado no Pesquisador de Objetos.

Localizar Todas as Localiza o item do objeto selecionado e exibe os resultados em uma janela
Referências Localizar Resultados.

Filtrar por Tipo Exibe apenas o namespace ou o tipo selecionado. Remova o filtro
(somente código escolhendo o botão Limpar Localizar (X) ao lado da caixa Localizar.
gerenciado)

Copy Copia o nome totalmente qualificado do item.

Classificar em Lista tipos e membros em ordem alfabética por nome.


Ordem Alfabética

Classificar por Tipo Lista tipos e membros ordenados segundo o tipo (de forma que classes
de Membro precedam interfaces, interfaces precedam representantes e métodos
precedam propriedades).

Classificar por Lista tipos e membros ordenados segundo o tipo de acesso, como público
Acesso a Membro ou privado.
Nome Descrição

Agrupar por Tipo Classifica tipos e membros em grupos por tipo de objeto.
de Membro

Ir para Declaração Exibe a declaração do tipo ou membro no código-fonte, se disponível.


(somente para
código C++)

Ir para definição Exibe a definição do tipo ou membro no código-fonte, se disponível.

Ir para Referência Exibe uma referência ao tipo ou membro no código-fonte, se disponível.

Exibir Hierarquia Exibe o método selecionado na janela Hierarquia de Chamada.


de Chamada

Janela de hierarquia de chamada (Visual Basic,


C#, C++)
A janela Hierarquia de Chamadas mostra onde um determinado método ou
propriedade é chamada. Também lista os métodos que são chamados a partir desse
método. É possível exibir vários níveis de grafo de chamadas, que mostra as relações
Exibição do Chamador/Receptor entre os métodos em um escopo especificado.

Você pode exibir a janela Hierarquia de Chamada selecionando um método (ou


propriedade ou construtor) no editor e, em seguida, escolhendo Exibir Hierarquia de
Chamadas no menu de atalho. A exibição deve se parecer com a imagem a seguir:

Usar a lista suspensa na barra de ferramentas, é possível especificar o escopo da


hierarquia: a solução, o projeto atual ou o documento atual.

O painel principal exibe as chamadas do método e para ele, e o painel Chamar Sites
exibe o local da chamada selecionada. Para membros virtuais ou abstratos, um nó
Substitui o nome do método é exibido. Para membros de interface, um nó Implementa
o nome do método é exibido.

A janela Hierarquia de Chamada não encontra referências do grupo do método, que


incluem os locais nos quais um método é adicionado como um manipulador de eventos
ou é atribuído a um delegado. Para localizar essas referências, use o comando Localizar
todas as referências.

O menu de atalho na janela Hierarquia de Chamada contém os comandos a seguir:

Nome Descrição

Adicionar como Nova Raiz Adiciona o nó selecionado como um novo nó raiz.

Remover Raiz Remove o nó raiz selecionado do painel do modo de exibição de


árvore.

Ir para Definição Navega para a definição original de um método.

Localizar Todas as Localiza no projeto todas as referências ao método selecionado.


Referências

Copy Copia o nó selecionado (mas não seus subnós).

Atualizar Atualiza as informações.

Pesquisador de Objetos
A janela Pesquisador de Objetos exibe descrições do código em seus projetos.

Você pode filtrar os componentes que deseja exibir usando a lista suspensa na parte
superior da janela. Componentes personalizados podem incluir executáveis de código
gerenciado, assemblies de biblioteca, bibliotecas de tipos e arquivos .ocx. Não é possível
adicionar componentes personalizados C++.

As configurações personalizadas são salvas no diretório de aplicativos do usuário do


Visual Studio, %APPDATA%\Microsoft\VisualStudio\16.0\ObjBrowEX.dat.

O painel esquerdo do Pesquisador de Objetos mostra assemblies. É possível expandir


os assemblies para exibir os namespaces que eles contêm e, em seguida, expandir os
namespaces para exibir os tipos que eles contêm. Quando você seleciona um tipo, seus
membros (como propriedades e métodos) são listados no painel direito. O painel
inferior direito exibe informações detalhadas sobre o item selecionado.

Você pode pesquisar um item específico usando a caixa Pesquisar na parte superior da
janela. As pesquisas não diferenciam maiúsculas de minúsculas. Os resultados da
pesquisa são exibidos no painel esquerdo. Para limpar uma pesquisa, escolha o botão
Limpar Pesquisa (X) ao lado da caixa Pesquisar.

O Pesquisador de Objetos mantém controle das seleções feitas, e você pode navegar
entre suas seleções usando os botões Avançar e Voltar na barra de ferramentas.

É possível usar o Pesquisador de Objetos para adicionar uma referência de assembly a


uma solução aberta selecionando um item (assembly, namespace, tipo ou membro) e
escolhendo o botão Adicionar Referência na barra de ferramentas.

Configurações do Pesquisador de Objetos


Usar o botão Configurações do Pesquisador de Objetos na barra de ferramentas, você
pode especificar um dos seguintes modos de exibição:

Nome Descrição

Exibir Exibe namespaces em vez de contêineres físicos, no painel esquerdo.


Namespaces Namespaces armazenados em vários contêineres físicos são mesclados.

Exibir Exibe contêineres físicos em vez de namespaces, no painel esquerdo. As


contêineres configurações Exibir Namespaces e Exibir Contêineres são mutuamente
exclusivas.

Mostrar Tipos Exibe tipos de base.


Base

Mostrar Tipos e Exibe tipos e membros ocultos (que não devem ser usados por clientes) em
Membros texto cinza claro.
Ocultos

Mostrar Exibe membros públicos.


Membros
Públicos

Mostrar Exibe membros protegidos.


Membros
Protegidos

Mostrar Exibe membros particulares.


Membros
Particulares

Mostrar Outros Exibe outros tipos de membros, incluindo membros internos (ou Amigos no
Membros Visual Basic).
Nome Descrição

Mostrar Exibe membros herdados.


Membros
Herdados

Mostrar Exibe métodos de extensão.


Métodos de
Extensão

Comandos do menu de atalho do Pesquisador de Objetos


O menu de atalho (ou clique com o botão direito do mouse) no Pesquisador de
Objetos pode conter os seguintes comandos, dependendo do tipo de projeto
selecionado:

Nome Descrição

Procurar definição Mostra o nó principal do item selecionado.

Localizar Todas as Localiza o item do objeto selecionado e exibe os resultados em uma janela
Referências Localizar Resultados.

Filtrar Por Tipo Exibe apenas o namespace ou o tipo selecionado. É possível remover o
filtro escolhendo o botão Limpar Pesquisa.

Copy Copia o nome totalmente qualificado do item.

Remover Se o escopo for um conjunto de componentes personalizado, remove o


componente selecionado do escopo.

Classificar em Lista tipos e membros em ordem alfabética por nome.


Ordem Alfabética

Classificar por Tipo Lista tipos e membros ordenados segundo o tipo (de forma que classes
de Objeto precedam interfaces, interfaces precedam representantes e métodos
precedam propriedades).

Classificar por Lista tipos e membros ordenados segundo o tipo de acesso, como público
Acesso a Objeto ou privado.

Agrupar por Tipo Classifica tipos e membros em grupos por tipo de objeto.
de Objeto

Ir para Declaração Exibe a declaração do tipo ou membro no código-fonte, se disponível.


(somente projetos
em C++)

Ir para definição Exibe a definição do tipo ou membro no código-fonte, se disponível.


Nome Descrição

Ir para Referência Exibe uma referência ao tipo ou membro no código-fonte, se disponível.

Exibir Hierarquia Exibe o método selecionado na janela Hierarquia de Chamada.


de Chamada

Janela de Definição de Código (C++)


A Janela de Definição de Código exibe a definição de um membro ou tipo C++
selecionado no projeto ativo. O tipo ou membro pode ser selecionado no editor de
código ou em uma janela de exibição de código.

Embora essa janela seja somente leitura, você pode definir pontos de interrupção ou
indicadores nela. Para modificar a definição exibida, escolha Editar Definição no menu
de atalho. Isso abre o arquivo de origem no editor de códigos e move o ponto de
inserção para a linha em que a definição começa.

7 Observação

A partir do Visual Studio 2015, a janela Definição de Código pode ser usada
somente com o código C++.

Menu de atalho de Definição de Código


O menu de atalho (ou clique com o botão direito do mouse) na janela Definição de
Código pode conter os seguintes comandos:

Nome Descrição

Ações e Refatorações
Rápidas

Renomear

Gerar Grafo de Arquivos


de Inclusão

Inspecionar Definição

Ir para definição Localiza a definição (ou definições, para classes parciais) e as exibe
em uma janela Localizar Resultados.

Ir para a Declaração
Nome Descrição

Localizar Todas as Localiza as referências ao tipo ou membro na solução.


Referências

Exibir Hierarquia de Exibe o método na janela Hierarquia de Chamada.


Chamada

Alternar
Cabeçalho/Arquivo de
Códigos

Executar Testes Se houver testes de unidade no projeto, execute os testes para o


código selecionado.

Depurar Testes

Ponto de interrupção Insere um ponto de interrupção (ou um tracepoint).

Executar até o cursor Executa o programa em modo de depuração até o local do cursor.

Snippet

Recortar, Copiar, Colar

Anotação

Estrutura de tópicos Comandos de estrutura de tópicos padrão.

Examinar Novamente

Editar Definição Move o ponto de inserção para a definição na janela de código.

Escolher Codificação Abre a janela Codificação para que você possa definir uma
codificação para o arquivo.

Janela Estrutura de Tópicos de Documento


É possível usar a janela Estrutura de Tópicos do Documento em conjunto com exibições
de designer, como o designer de uma página XAML ou um designer do Windows
Forms, ou com páginas HTML. Esta janela exibe os elementos em um modo de exibição
de árvore para que você pode exibir a estrutura lógica do formulário ou página e
localizar controles que estão incorporados profundamente ou ocultos.

Confira também
Ícones do Pesquisador de Objetos e do Modo de Exibição de Classe
Usar a Lista de Tarefas
Artigo • 13/01/2024

Use a Lista de Tarefas para rastrear comentários de código que usam tokens, como
TODO e HACK , ou tokens personalizados, e para gerenciar atalhos que levarão você

diretamente a um local predefinido no código. Selecione um item na lista para acessar


seu local no código-fonte.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Comentários da tarefa (Visual Studio para Mac).

A janela Lista de Tarefas


Quando a Lista de Tarefas é aberta, ela aparece na parte inferior da janela do aplicativo.

Para abrir a Lista de Tarefas, selecione Exibir>Lista de Tarefas, ou pressione no teclado


Ctrl+\,T.

Para alterar a ordem de classificação da lista, selecione o cabeçalho de qualquer coluna.


Para refinar ainda mais os resultados da pesquisa, pressione Shift e selecione um
segundo cabeçalho da coluna. Como alternativa, no menu de atalho, escolha Classificar
por e escolha um cabeçalho. Para refinar ainda mais os resultados da pesquisa,
pressione Shift e escolha um segundo cabeçalho.

Para mostrar ou ocultar colunas, no menu de atalho, escolha Mostrar Colunas.


Selecione as colunas que você deseja mostrar ou ocultar.

Para alterar a ordem das colunas, arraste qualquer cabeçalho de coluna para o local
desejado.
 Dica

A coluna Classificação do Projeto indica as dependências do projeto. Projetos com


uma classificação de 1 não dependem de nenhum outro projeto. Projetos com uma
classificação de 2 dependem de um ou mais projetos com uma classificação de 1 e
assim por diante. Para obter mais informações, confira Definições padrão de
colunas de tabela: campo classificação do projeto.

Tokens e comentários
Um comentário no código precedido por um marcador de comentário e um token
predefinido também será exibido na janela Lista de Tarefas. Por exemplo, o seguinte
comentário do C# tem três partes distintas:

O marcador de comentário ( // )

O token, por exemplo ( TODO )

O comentário (o restante do texto)

C#

// TODO: Load state from previously suspended application

Uma vez que TODO é um token pré-definido, esse comentário aparece como uma tarefa
TODO na lista.

Tokens personalizados
Por padrão, o Visual Studio inclui os seguintes tokens: HACK , TODO , UNDONE e
UnresolvedMergeConflict . Os valores não diferenciam maiúsculas de minúsculas.

Também é possível criar seus próprios tokens personalizados.

7 Observação

Os tokens padrão estão disponíveis somente para as linguagens C/C++, C# e


Visual Basic. Para criar seus próprios tokens para outras linguagens de
programação, use as etapas abaixo:

Para criar um token personalizado:


1. No menu Ferramentas, escolha Opções.

2. Abra a pasta Ambiente e escolha Lista de Tarefas.

A página de opções da lista de tarefas é exibida.

3. Na caixa de texto Nome, insira o nome do seu token, por exemplo, BUG.

4. Na lista suspensa Prioridade, escolha uma prioridade padrão para o novo token.

5. Escolha Adicionar.

 Dica

O botão Adicionar fica habilitado depois de inserir um nome. Insira um nome


antes de selecionar Adicionar.

Atalhos
Um atalho é um indicador no código que é rastreado na Lista de Tarefas. Ele tem um
ícone diferente de um indicador comum. Clique duas vezes no atalho na Lista de
Tarefas para ir até o local correspondente no código.
Criar um atalho
Para criar um atalho, insira o ponteiro no código no local em que deseja colocar um
atalho. Escolha Editar>Indicadores>Adicionar Atalho da Lista de Tarefas ou pressione
Ctrl+K, Ctrl+H.

Para navegar pelos atalhos no código, selecione um atalho na lista e escolha Próxima
Tarefa ou Tarefa Anterior no menu Visualizar. (Também é possível escolher essas
opções no menu de contexto com o botão direito do mouse na janela Lista de Tarefas.)

Conteúdo relacionado
Caixa de diálogo Lista de Tarefas, Ambiente, Opções
Comentários da tarefa (Visual Studio para Mac)
O que é o Designer de Classe?
Artigo • 11/01/2024

Com a ferramenta Designer de Classe do Visual Studio, você pode projetar, visualizar e
refatorar diagramas de classes em projetos C#, Visual Basic ou C++. Os diagramas de
classe mostram os elementos do código e suas relações em uma superfície de design
visual, o que pode ajudar a entender melhor a estrutura do projeto e a reorganizar o
código.

7 Observação

O Designer de Classe não está disponível nos projetos .NET Core.

Sobre os diagramas de classe


Veja detalhadamente o que você pode fazer com os diagramas de classe:

Criar: edite o código do projeto editando o diagrama de classe. Adicione novos


elementos e exclua os que não deseja mais. As alterações serão refletidas no
código.

Visualizar: entenda a estrutura do projeto exibindo as classes do projeto em um


diagrama. Personalize o diagrama para que você possa se concentrar nos detalhes
do projeto mais importantes para você. Salve o diagrama para usar posteriormente
na demonstração ou documentação.

Refatorar: substitua métodos, renomeie identificadores, refatore parâmetros e


implemente interfaces e classes abstratas.

Exibir tipos e relações


Os diagramas de classe mostram os detalhes de tipos, por exemplo, seus membros
constituintes e as relações entre eles. A visualização dessas entidades é uma exibição
dinâmica do código. Isso significa que é possível editar tipos no designer e, em seguida,
ver as edições refletidas no código-fonte da entidade. Da mesma forma, o diagrama de
classe é mantido sincronizado com as alterações feitas nos arquivos de código.

7 Observação
Se o projeto contiver um diagrama de classe e referenciar um tipo localizado em
outro projeto, o diagrama de classes não mostra o tipo referenciado até que você
construa o projeto para esse tipo. Da mesma forma, o diagrama não exibe as
alterações no código da entidade externa até que você reconstrua o projeto para
essa entidade.

Fluxo de trabalho do diagrama de classe


Os diagramas de classe podem ajudar você a entender a estrutura de classe dos
projetos. Esses projetos podem ter sido criados por outros desenvolvedores ou você
apenas precisa de uma atualização em um projeto que você mesmo criou. Você pode
usar diagramas de classe para personalizar, compartilhar e apresentar informações
sobre o projeto para outras pessoas.

A primeira etapa na apresentação de informações do projeto é criar um diagrama de


classe que exibe o que você deseja mostrar. Para obter mais informações, consulte Add
a class diagram (Adicionar um diagrama de classe). Você pode criar vários diagramas de
classe para um projeto que pode ser usado para exibir uma exibição distinta do projeto,
um subconjunto escolhido dos tipos do projeto ou um subconjunto escolhido dos
membros de tipos.

Além de definir o que cada diagrama de classes mostra, você também pode alterar a
forma como as informações são apresentadas; para obter mais informações, confira
Personalizar diagramas de classe.

Depois de ajustar um ou mais diagramas de classe, copie-os em documentos do


Microsoft Office e imprima ou exporte-os como arquivos de imagem. Para obter mais
informações, confira Copiar elementos do diagrama de classe para um documento do
Microsoft Office, Imprimir diagramas de classe e Exportar diagramas de classe como
imagens.

7 Observação

O Designer de Classe não controla o local dos arquivos de origem, por isso,
quando você altera a estrutura do projeto ou move os arquivos de origem no
projeto, o Designer de Classe pode perder o controle do tipo, especialmente o tipo
de origem de um typedef, classes base ou tipos de associação. Você pode receber
um erro, como O Designer de Classe não pode exibir esse tipo. Se você fizer isso,
arraste o código-fonte realocado ou modificado para o diagrama de classe, para
exibi-lo novamente.
Adicionar diagramas de classe a projetos
Para criar, editar e refatorar classes e outros tipos, adicione um diagrama de classe ao
projeto em C#, Visual Basic ou C++. Para visualizar diferentes partes do código em um
projeto, adicione vários diagramas de classes ao projeto.

Instalar o componente do Designer de Classe


Se você não tiver instalado o componente do Designer de Classe, siga estas etapas para
instalá-lo.

1. Abra o Instalador do Visual Studio no menu Iniciar do Windows ou selecionando


Ferramentas>Obter Ferramentas e Recursos na barra de menus no Visual Studio.

O Instalador do Visual Studio é aberto.

2. Se você já tiver o Visual Studio instalado, clique no botão Modificar nas opções.

3. Selecione a guia Componentes individuais e, em seguida, role para baixo até a


categoria Ferramentas de código.

4. Selecione Designer de Classe e, em seguida, selecione Modificar.

O componente do Designer de Classe inicia a instalação.

Adicionar um diagrama de classe em branco a


um projeto
1. No Gerenciador de Soluções, clique com o botão direito do mouse no nó do
projeto e escolha Adicionar>Novo Item. Ou pressione Ctrl+Shift+A. Se uma
janela pequena aparecer apenas com a opção de adicionar um arquivo de código,
escolha o botão Mostrar Todos os Modelos.

A caixa de diálogo Adicionar Novo Item é aberta.

2. Expanda Geral e selecione Diagrama de Classe na lista de modelos. Para projetos


do Visual C++, examine a categoria Utilitário para localizar o modelo Diagrama de
Classe.

7 Observação

Se você não vir o modelo Diagrama de Classe, siga as etapas para instalar o
componente do Designer de Classe para o Visual Studio.

O diagrama de classe é aberto no Designer de Classe e é exibido como um arquivo


que tem uma extensão .cd no Gerenciador de Soluções. É possível arrastar formas
e linhas para o diagrama da Caixa de ferramentas.

Para adicionar vários diagramas de classes, repita as etapas deste procedimento.

Adicionar um diagrama de classe com base em


tipos existentes
No Gerenciador de Soluções, abra o menu de contexto de um arquivo (clique com o
botão direito do mouse) e escolha Exibir em Diagrama de Classe.

-ou-

No Modo de Exibição de Classe, abra o namespace ou o menu de contexto de tipo e


escolha Exibir Diagrama de Classe.

 Dica

Se o Modo de Exibição de Classe não estiver aberto, abra o Modo de Exibição de


Classe no menu Exibir. Ou pressione Ctrl+Shift+C.

Para exibir o conteúdo de um projeto completo em um


diagrama de classe
No Gerenciador de Soluções ou no Modo de Exibição de Classe, clique com o botão
direito do mouse no projeto e escolha Exibir e, em seguida, escolha Exibir Diagrama de
Classe.

Um diagrama de classe populado automaticamente é criado.

) Importante

O Designer de Classe não está disponível nos projetos .NET Core.

Personalizar diagramas de classe


É possível alterar como os diagramas de classes exibem informações. Você pode
personalizar o diagrama inteiro ou os tipos individuais na superfície de design.

Por exemplo, é possível ajustar o nível de zoom de um diagrama de classes inteiro,


alterar como os membros de tipo individual são agrupados e classificados, ocultar ou
mostrar relações, bem como mover tipos individuais ou em conjunto para qualquer
lugar no diagrama.

7 Observação

Personalizar a maneira como as formas aparecem no diagrama não altera o código


subjacente dos tipos representados no diagrama.

As seções que contêm membros de tipo, como a seção Propriedades em uma classe,
são chamadas de compartimentos. Você pode ocultar ou mostrar compartimentos
individuais e membros de tipo.

Ampliar e reduzir o diagrama de classes


1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Na barra de ferramentas do Designer de Classe, clique no botão Ampliar ou


Reduzir para alterar o nível de zoom da superfície do designer.

ou

Especifique um determinado valor de zoom. É possível usar a lista suspensa


Aplicar Zoom ou digitar um nível de zoom válido (o intervalo válido é entre 10% e
400%).
7 Observação

Alterar o nível de zoom não afeta a escala de impressão do seu diagrama de


classes.

Personalizar o agrupamento e a classificação dos


membros de tipo
1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Clique com o botão direito do mouse em uma área vazia na superfície de design e
aponte para Membros do Grupo.

3. Selecione uma das opções disponíveis:

Agrupar por Tipo separa membros de tipo individuais em uma lista agrupada
de Propriedades, Métodos, Eventos e Campos. Os grupos individuais
dependem da definição das entidades, por exemplo, uma classe não exibe
nenhum grupo de eventos se ainda não houver eventos definidos para essa
classe.

Agrupar por Acesso separa membros de tipo individuais em uma lista


agrupada com base nos modificadores de acesso do membro. Por exemplo,
Público ou Privado.

Classificar em Ordem Alfabética exibe os itens que compõem uma entidade


como uma única lista alfabetizada. A lista é classificada em ordem crescente.

Ocultar compartimentos em um tipo


1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Clique com o botão direito do mouse na categoria do membro no tipo que você
deseja personalizar (por exemplo, selecione o nó Métodos em uma classe).

3. Clique em Ocultar Compartimento.

O compartimento selecionado desaparece do contêiner de tipo.

Ocultar membros individuais em um tipo


1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.
2. Clique com o botão direito do mouse no membro do tipo que deseja ocultar.

3. Clique em Ocultar.

O membro selecionado desaparece do contêiner de tipo.

Mostrar compartimentos e membros ocultos em um tipo


1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Clique com o botão direito do mouse no nome do tipo com o compartimento


oculto.

3. Clique em Mostrar Todos os Membros.

Todos os membros e compartimentos ocultos aparecem no contêiner de tipo.

Ocultar relações
1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Clique com o botão direito do mouse na linha de herança ou associação que


deseja ocultar.

3. Clique em Ocultar para linhas de associação e em Ocultar Linha de Herança para


linhas de herança.

4. Clique em Mostrar Todos os Membros.

Todos os membros e compartimentos ocultos aparecem no contêiner de tipo.

Mostrar relações ocultas


1. Abra e selecione um arquivo de diagrama de classe no Designer de Classe.

2. Clique com o botão direito do mouse no tipo com a associação ou a herança


oculta.

Clique em Mostrar Todos os Membros para linhas de associação e em Mostrar


Classe Base ou Mostrar Classes Derivadas para linhas de herança.

Remover uma forma de um diagrama de classes


Você pode remover uma forma de tipo do diagrama de classes sem afetar o código
subjacente do tipo. Remover formas de tipo de um diagrama de classes afeta somente
esse diagrama. O código subjacente que define o tipo e outros diagramas que exibem o
tipo não são afetados.

1. No diagrama de classes, selecione a forma de tipo que deseja remover do


diagrama.

2. No menu Editar, escolha Remover do Diagrama.

A forma de tipo e todas as linhas de associação ou herança conectadas à forma


não aparecem mais no diagrama.

Excluir uma forma de tipo e seu código subjacente


1. Clique com o botão direito do mouse na forma, na superfície de design.

2. Selecione Excluir Código no menu de contexto.

A forma é removida do diagrama e seu código subjacente é excluído do projeto.

Copiar elementos do diagrama de classe para


um documento do Microsoft Office
É possível copiar formas de um diagrama de classe do .NET (arquivo .cd) para outros
documentos. Você receberá uma cópia da forma ou seu código subjacente com base no
tipo de documento no qual colá-la. Para copiar formas de diagramas de classes UML em
um projeto de modelagem, consulte Exportar diagramas como imagens.

Copiar um único elemento


Clique com o botão direito do mouse na forma e escolha Copiar Imagem.

Copiar vários elementos


1. Selecione as formas no diagrama que você deseja copiar.

2. Clique com o botão direito do mouse na seleção e escolha Copiar Imagem.

Copiar todos os elementos em um diagrama de classe


1. Clique com o botão direito do mouse na superfície do diagrama e escolha
Selecionar Tudo ou pressione Ctrl+A.

2. No menu Editar, selecione Copiar Imagem.

Você também pode escolher Copiar em vez de Copiar Imagem. Copiar copia a imagem
como um bitmap regular. Copiar Imagem copia a imagem como uma imagem baseada
em vetor, o que é melhor para a maioria dos aplicativos do Office.

Exportar diagramas de classe como imagens


Para exportar um diagrama de classe que você criou do código em um projeto, salve o
diagrama como uma imagem. Se você quiser exportar diagramas de classe UML em vez
disso, consulte Exportar diagramas como imagens.

Exportar um diagrama
1. Abra seu arquivo de diagrama de classe (.cd).

2. No menu Diagrama de Classe ou no menu de atalho da superfície do diagrama,


escolha Exportar Diagrama como Imagem.

3. Selecione um diagrama.

4. Selecione o formato que você deseja.

5. Escolha Exportar para concluir a exportação.

Para atualizar automaticamente as imagens exportadas vinculadas de outros


documentos, exporte o diagrama novamente no Visual Studio.

Imprimir diagramas de classe


É possível imprimir um diagrama de classe usando o recurso de impressão do Visual
Studio.

Para imprimir um diagrama de classe


1. Abra o diagrama de classe.

2. Clique em Imprimir no menu Arquivo.


O diagrama de classe inteiro é impresso. Pode ser necessário ajustar as configurações na
caixa de diálogo Configuração de Página para imprimir em um tamanho apropriado.

Adicionar comentários a diagramas de classe


Você pode usar formas de comentário para anotar os diagramas de classe. Uma forma
de comentário tem uma propriedade, Texto, na qual você pode digitar texto. Formas de
comentário existem apenas na superfície do diagrama, e não no código.

Um comentário reside na exibição de diagrama de classe no Designer de Classe. Se


você abrir um segundo diagrama de classe no mesmo projeto, os comentários criados
na primeira exibição não ficarão visíveis. Se você excluir um diagrama, todos os
comentários que ele continha também serão excluídos.

Você pode redimensionar uma forma de comentário, mas não pode alterar outros
aspectos da sua aparência, como o tamanho da fonte, a fonte ou a cor da tela de fundo.

Para adicionar um comentário


1. Arraste um comentário da Caixa de Ferramentas do Designer de Classe para o
diagrama de classe.

2. Clique na nova forma de comentário no diagrama e digite o texto desejado.

Usar os atalhos de mouse e teclado na janela


Diagrama de Classe e Detalhes da Classe
É possível usar o teclado, além do mouse, para executar ações de navegação no
Designer de Classe e na janela Detalhes da Classe.

Usar o mouse no Designer de Classe


As seguintes ações do mouse têm suporte em diagramas de classe:

ノ Expandir a tabela

Combinação do mouse Contexto Descrição

Clicar duas vezes Elementos de forma Abre o editor de códigos.

Clicar duas vezes Conector de pirulito Expande/recolhe o pirulito.


Combinação do mouse Contexto Descrição

Clicar duas vezes Rótulo do conector de Invoca o comando Mostrar


pirulito Interface.

Botão de rolagem do mouse Diagrama de classe Rolar verticalmente.

Shift + botão de rolagem do Diagrama de classe Rolar horizontalmente.


mouse

Ctrl + botão de rolagem do Diagrama de classe Zoom.


mouse

Ctrl+Shift + clique Diagrama de classe Zoom.

Usar o mouse na janela Detalhes da Classe


Usando um mouse, é possível alterar a aparência da janela Detalhes da Classe e os
dados que ela exibe das seguintes maneiras:

Clicar em qualquer célula editável permite editar o conteúdo da célula. As


alterações são refletidas em todos os locais em que dados são armazenados ou
exibidos, incluindo na janela Propriedades e no código-fonte.

Clicar em qualquer célula de uma linha faz com que a janela Propriedades exiba as
propriedades do elemento representado pela linha.

Para alterar a largura de uma coluna, arraste o limite do lado direito do título de
coluna até que a coluna tenha a largura desejada.

É possível expandir ou recolher nós de propriedade ou compartimento clicando


nos símbolos de direção à esquerda da linha.

A janela Detalhes da Classe oferece vários botões para a criação de novos


membros na classe atual e para navegar entre os compartimentos dos membros
na grade da janela Detalhes da Classe.

Usar o teclado do Designer de Classe


As seguintes ações do teclado têm suporte em diagramas de classe:

ノ Expandir a tabela
Chave Contexto Descrição

Teclas de Dentro das Navegação em estilo de árvore pelo conteúdo da forma (há
direção formas de tipo suporte para o encapsulamento da forma). As teclas esquerda
e direita expandem/recolhem o item atual se ele for
expansível e navegam até o pai se ele não for (consulte a
navegação do modo de exibição em árvore para obter
detalhes sobre o comportamento).

Teclas de Formas de nível Mover formas no diagrama.


direção superior

Shift+tecla de Dentro das Criar uma seleção contínua que consiste em elementos de
direção formas de tipo forma, como membros, tipos aninhados ou compartimentos.
Esses atalhos não dão suporte ao encapsulamento.

Início Dentro das Navegue até o título de forma de nível superior.


formas de tipo

Início Formas de nível Navegue até a primeira forma no diagrama.


superior

End Dentro das Navegue até o último elemento visível dentro da forma.
formas de tipo

End Formas de nível Navegue até a última forma no diagrama.


superior

Shift+Home Dentro da Seleciona elementos dentro da forma, começando pelo item


forma de tipo atual e terminando com o item superior na mesma forma.

Shift+End Dentro da O mesmo que Shift+Home, mas na direção de cima para


forma de tipo baixo.

Enter Todos os Invoca a ação padrão na forma, o que também está


contextos disponível por meio de um clique duplo. Na maioria dos
casos, essa ação é Exibir Código, mas alguns elementos a
definem de maneira diferente (pirulitos, cabeçalhos de
compartimento, rótulos de pirulito).

+e- Todos os Se o elemento em foco no momento for expansível, essas


contextos chaves expandirão ou recolherão o elemento.

> Todos os Em elementos com filhos, isso expande o elemento se ele


contextos estiver recolhido e navega até o primeiro filho.

< Todos os Navega até o elemento pai.


contextos

Alt+Shift+L Dentro de Navega até o "pirulito" da forma atualmente selecionada, se


formas de tipo estiver presente.
Chave Contexto Descrição

+ em formas de
tipo.

Alt+Shift+B Dentro de Se lista de tipos base for mostrada na forma de tipo e tiver
formas de tipo mais de um item, isso alternará o estado de expansão da lista
+ em formas de (expandir/recolher).
tipo.

Excluir Em formas de Invoca o comando Remover do Diagrama.


tipo e de
comentário

Excluir Em todo o Invoca o comando Excluir do Código (membros, parâmetros,


resto. associações, herança, rótulos de pirulito).

CTRL+Delete Todos os Invoca o comando Excluir do Código na seleção.


contextos

Guia Todos os Navega até o próximo filho dentro do mesmo pai (dá suporte
contextos a encapsulamento).

Shift+Tab Todos os Navega até o filho anterior dentro do mesmo pai (dá suporte
contextos a encapsulamento).

Barra de Todos os Alterna a seleção no elemento atual.


espaços contextos

Usar o teclado na janela Detalhes da Classe

7 Observação

As seguintes associações de teclas reproduzem a experiência de digitar código.

Usar as chaves a seguir para navegar na janela Detalhes da Classe:

ノ Expandir a tabela

Chave Result

, (vírgula) Se o cursor estiver em uma linha de parâmetro, digitar uma vírgula move o
cursor para o campo Nome do parâmetro seguinte. Se o cursor estiver na
última linha de parâmetro de um método, ele moverá o cursor para o
campo <adicionar parâmetro>, que você pode usar para criar um novo
parâmetro.
Chave Result

Se o cursor estiver em outro lugar na janela Detalhes da Classe, digitar


uma vírgula adicionará literalmente uma vírgula ao campo atual.

; (ponto e vírgula) Mova o cursor para o campo Nome da próxima linha de membro na grade
ou ) (parênteses de da janela Detalhes da Classe.
fechamento)

Guia Move o cursor para o campo seguinte, se movendo primeiro da esquerda


para a direita e, depois, de cima para baixo. Se o cursor estiver saindo de
um campo no qual você digitou algum texto, a janela Detalhes da Classe
processará o texto e o armazenará se ele não produzir um erro.

Caso o cursor esteja em um campo vazio como <adicionar parâmetro>,


Tab o move para o primeiro campo da linha seguinte.

Barra de espaços Move o cursor para o campo seguinte, se movendo primeiro da esquerda
para a direita e, depois, de cima para baixo. Se o cursor estiver em um
campo vazio como <adicionar parâmetro>, ele será movido para o
primeiro campo da linha seguinte. Observe que o <espaço> digitado
imediatamente depois de uma vírgula é ignorado.

Se o cursor estiver no campo Resumo, digitar um espaço adiciona um


caractere de espaço.

Se o cursor estiver na coluna Ocultar de uma determinada linha, digitar um


espaço alterna o valor da caixa de seleção Ocultar.

Ctrl+Tab Mude para outra janela do documento. Por exemplo, mude da janela
Detalhes da Classe para um arquivo de código aberto.

Esc Se você tiver começado a digitar texto em um campo, pressionar ESC atua
como uma tecla de desfazer, revertendo o conteúdo do campo para o valor
anterior. Se a janela Detalhes da Classe tiver o foco geral, mas nenhuma
célula específica estiver em foco, pressionar ESC removerá o foco da janela
Detalhes da Classe.

Seta para cima e Essas chaves movem o cursor de uma linha para outra, verticalmente, na
seta para baixo grade da janela Detalhes da Classe.

Seta para a Se o cursor estiver na coluna Nome, pressionar a seta para a esquerda
esquerda recolhe o nó atual da hierarquia (se ele estiver aberto).

Seta para a direita Se o cursor estiver na coluna Nome, pressionar a seta para a direita
expande o nó atual da hierarquia (se ele estiver recolhido).

 Dica
Para obter uma lista abrangente de atalhos de teclado, confira Atalhos de teclado
no Visual Studio.

Conteúdo relacionado
Criar tipos usando o Designer de Classe
Trabalhar com código C++ no Designer de Classe
Criar tipos usando o Designer de Classe
Artigo • 31/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Para criar novos tipos para projetos em C# e Visual Basic, você precisa criá-los em um
diagrama de classe. Para ver os tipos existentes, consulte Exibir os Tipos Existentes.

Criar um novo tipo


1. Na Caixa de Ferramentas, no Designer de Classe, arraste um dos itens abaixo para
um diagrama de classe:

Classe ou Classe Abstrata

Enumeração

Interface

Estrutura (VB) ou Struct (C#)

Delegar

Módulo (apenas VB)

2. Dê um nome ao tipo. Selecione o nível de acesso.

3. Selecione o arquivo em que deseja adicionar o código inicial para o tipo:

Para criar um novo arquivo e adicioná-lo ao projeto atual, selecione Criar


novo arquivo e dê um nome ao arquivo.

Para adicionar código a um arquivo existente, selecione Adicionar a arquivo


existente.

Se sua solução tiver um projeto que compartilha código entre vários


aplicativos, você poderá adicionar um novo tipo a um diagrama de classes no
projeto do aplicativo, mas somente se o arquivo de classe correspondente
estiver no mesmo projeto de aplicativo ou no projeto compartilhado.

4. Agora adicione outros itens para definir o tipo:


For Adicionar

Classes, classes abstratas, Métodos, propriedades, campos, eventos, construtores


estruturas ou structs (método), destruidores (método) e constantes que definem o
tipo

Enumerações Valores de campo que compõem a enumeração

Interfaces Métodos, propriedades e eventos que compõem a interface

Delegar Parâmetros que definem o representante

Módulo Métodos, propriedades, campos, eventos, construtores


(método) e constantes que definem o módulo

Consulte Criando membros.

Aplicar um atributo personalizado a um tipo


1. Clique na forma do tipo em um diagrama de classes.

2. Na janela Propriedades, ao lado da propriedade Atributos Personalizados do tipo,


clique no botão de reticências (…).

3. Adicione um ou mais atributos personalizados, um por linha. Não os coloque entre


colchetes.

Os atributos personalizados são aplicados ao tipo.

Aplicar um atributo personalizado a um membro de tipo


1. Clique no nome do membro na forma de seu tipo em um diagrama de classes ou
em sua linha na janela Detalhes da Classe.

2. Na janela Propriedades, localize a propriedade Atributos Personalizados do


membro.

3. Adicione um ou mais atributos personalizados, um por linha. Não os coloque entre


colchetes.

Os atributos personalizados são aplicados ao tipo.

Criar herança entre tipos no Designer de Classe


Para criar uma relação de herança entre dois tipos em um diagrama de classe usando o
Designer de Classe, conecte o tipo base ao seu tipo ou aos tipos derivados. Você pode
ter uma relação de herança entre duas classes, entre uma classe e uma interface ou
entre duas interfaces.

Para criar uma herança entre tipos


1. Em seu projeto no Gerenciador de Soluções, abra um arquivo de diagrama de
classe (.cd).

Se você não possuir um diagrama de classes, crie um. Consulte Adicionar


Diagramas de Classe a Projetos.

2. Na Caixa de Ferramentas, no Designer de Classe, clique em Herança.

3. No diagrama de classes, desenhe uma linha de herança entre os tipos que você
deseja, começando de:

Uma classe derivada para uma classe base

Uma classe de implementação para uma interface implementada

Uma interface em extensão para uma interface estendida

4. Se desejar, quando você tiver um tipo derivado de um tipo genérico, clique na


linha de herança. Na janela Propriedades, defina a propriedade Argumentos de
Tipo para corresponder ao tipo que você deseja para o tipo genérico.

7 Observação

Se uma classe abstrata pai contiver pelo menos um membro abstrato, todos
os membros abstratos serão implementados como classes de herança não
abstratas.

Embora você possa visualizar os tipos genéricos existentes, não é possível


criar novos tipos genéricos. Você também não pode alterar os parâmetros de
tipos genéricos existentes.

Criar associações entre tipos no Designer de


Classe
As linhas de associação no Designer de Classe mostram como as classes em um
diagrama são relacionadas. Uma linha de associação representa uma classe que é o tipo
de uma propriedade ou de um campo de outra classe no seu projeto. As linhas de
associação geralmente são usadas para ilustrar as relações mais importantes entre
classes do projeto.

Embora você possa exibir todos os campos e propriedades como associações, faz mais
sentido mostrar apenas membros importantes como associações, dependendo do que
você pretende enfatizar no diagrama. (É possível mostrar membros menos importantes
como membros regulares ou ocultá-los no geral.)

7 Observação

O Designer de Classe é compatível com apenas associações unidirecionais.

Para definir uma linha de associação no Diagrama de


Classes
1. Na Caixa de Ferramentas, em Designer de Classe, selecione Associação.

2. Desenhe uma linha entre as duas formas que deseja vincular a uma associação.

Uma nova propriedade é criada na primeira classe. Essa propriedade é exibida


como uma linha de associação (não como uma propriedade em um
compartimento na forma) com um nome padrão. Seu tipo é a forma para a qual a
linha de associação aponta.

Para alterar o nome de uma associação


Na superfície de diagrama, clique no rótulo da linha de associação e edite-o.

Ou siga estas etapas:

1. Selecione a forma que contém a propriedade mostrada como uma associação.

A forma obtém foco e seus membros são exibidos nas janelas Detalhes da Classe
e Propriedades.

2. Na janela Detalhes da Classe ou Propriedades, edite o campo de nome dessa


propriedade e pressione Enter.

O nome é atualizado na janela Detalhes da Classe, na linha de associação, na


janela Propriedades e no código.
Visualizar uma associação de coleção no
Designer de Classe
Propriedades e campos que são coleções de outros tipos podem ser exibidos no
diagrama de classe como uma associação de coleção. Diferentemente de uma
associação regular, que exibe um campo ou uma propriedade como uma linha que
vincula a classe proprietária ao tipo do campo, uma associação de coleção é exibida
como uma linha que vincula a classe proprietária ao tipo coletado.

Para criar uma associação de coleção


1. No código, crie uma propriedade ou campo cujo tipo seja uma coleção fortemente
tipada.

2. No diagrama de classe, expanda a classe de modo que os campos e as


propriedades sejam mostrados.

3. Na classe, clique com o botão direito do mouse no campo ou propriedade e


escolha Mostrar como Associação de Coleção.

A propriedade ou o campo é mostrado como uma linha de associação vinculando ao


tipo coletado.

Confira também
Criar e configurar membros de tipo no Designer de Classe
O que é o Designer de Classe?
Criar e configurar membros de tipo no
Designer de Classe
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível adicionar esses membros aos tipos em um diagrama de classe e configurá-los


na Janela Detalhes da Classe:

Tipo Membros que pode conter

Classe método, propriedade (para C# e Visual Basic), campo, evento (para C# e Visual
Basic), construtor (método), destruidor (método), constante

Enumeração member

Interface método, propriedade, evento (para C# e Visual Basic)

Classe método, propriedade (para C# e Visual Basic), campo, evento (para C# e Visual
Abstrata Basic), construtor (método), destruidor (método), constante

Estrutura método, propriedade (para C# e Visual Basic), campo, evento (para C# e Visual
(Struct no Basic), construtor (método), constante
C#)

Delegar parâmetro

Módulo método, propriedade, campo, evento, construtor, constante


(apenas VB)

7 Observação

Torne a declaração de propriedade mais concisa quando os acessadores get e set


de uma propriedade não precisarem de lógica adicional usando propriedades
autoimplementadas (apenas C#). Para mostrar a assinatura completa, no menu
Diagrama de Classe, escolha Alterar Formato dos Membros>Exibir Assinatura
Completa. Para obter mais informações sobre propriedades autoimplementadas,
consulte Propriedades Autoimplementadas.

Tarefas comuns
Tarefa Conteúdo de suporte
Tarefa Conteúdo de suporte

Introdução: antes de criar e configurar membros de tipo, - Abrir a janela Detalhes da


você precisa abrir a janela Detalhes da Classe. Classe
- Observações sobre uso de
detalhes da classe
- Exibição de informações
somente leitura
- Atalhos de teclado e do mouse
no Diagrama de Classe e na
janela Detalhes da Classe

Criar e modificar membros de tipo: você pode criar - Criar membros


membros, modificar membros e adicionar parâmetros a um - Modificar membros de tipo
método usando a janela Detalhes da Classe. - Adicionar parâmetros a
métodos

Abra a janela Detalhes da Classe


Por padrão, a janela Detalhes da Classe é exibida automaticamente quando você abre
um novo diagrama de classe. Confira Como adicionar diagramas de classe a projetos.
Também é possível abrir a janela Detalhes da Classe destas maneiras:

Clique com o botão direito do mouse em qualquer classe no diagrama para exibir
um menu de contexto. Depois, selecione Detalhes da Classe.

Clique em Exibição>Outras Janelas>Detalhes da Classe na barra de menus.

Criar membros
Você pode criar um membro usando qualquer uma das ferramentas a seguir:

Designer de Classe

Barra de ferramentas da janela Detalhes da Classe

Janela Detalhes da Classe

7 Observação

Você também pode criar construtores e destruidores usando os procedimentos


desta seção. Lembre-se de que construtores e destruidores são tipos especiais de
método e, portanto, eles aparecem no compartimento Métodos nas formas do
diagrama de classe e na seção Métodos da grade da janela Detalhes da Classe.
7 Observação

A única entidade que você pode adicionar a um representante é o parâmetro.


Observe que o procedimento denominado ‘Criar um membro usando a barra de
ferramentas da janela Detalhes da Classe’ não é válido para essa ação.

Criar um membro usando o Designer de Classe


1. Clique com o botão direito do mouse no tipo ao qual deseja adicionar um
membro, aponte para Adicionar e escolha o tipo de membro que deseja adicionar.

Uma nova assinatura de membro é criada e adicionada ao tipo. Ela recebe um


nome padrão que pode ser alterado no Designer de Classe, na Janela Detalhes da
Classe ou na janela Propriedades.

2. Se preferir, especifique outros detalhes sobre o membro, como seu tipo.

Criar um membro usando a barra de ferramentas da


janela Detalhes da Classe
1. Na superfície de diagrama, selecione o tipo ao qual deseja adicionar um membro.

O tipo obtém foco e seu conteúdo é exibido na janela Detalhes da Classe.

2. Na barra de ferramentas da janela Detalhes da classe, clique no ícone superior e


selecione Novo <membro> na lista suspensa.

O cursor é movido para o campo Nome em uma linha para o tipo de membro que
você deseja adicionar. Por exemplo, se você tiver clicado em Nova Propriedade, o
cursor passará para uma nova linha na seção Propriedades da janela Detalhes da
Classe.

3. Digite o nome do membro que deseja criar e pressione Enter (ou, de outra forma,
mova o foco, pressionando Tab).

Uma nova assinatura de membro é criada e adicionada ao tipo. Agora, o membro


existe no código e é exibido no Designer de Classe, na janela Detalhes da Classe e
na janela Propriedades.

4. Se preferir, especifique outros detalhes sobre o membro, como seu tipo.

Criar um membro usando a janela Detalhes da Classe


1. Na superfície de diagrama, selecione o tipo ao qual deseja adicionar um membro.

O tipo obtém foco e seu conteúdo é exibido na janela Detalhes da Classe.

2. Na janela Detalhes da classe, na seção que contém o tipo de membro que você
deseja adicionar, clique em <Adicionar membro>. Por exemplo, se quiser
adicionar um campo, clique em <Adicionar campo>.

3. Digite o nome do membro que deseja criar e pressione Enter.

Uma nova assinatura de membro é criada e adicionada ao tipo. Agora, o membro


existe no código e é exibido no Designer de Classe, na janela Detalhes da Classe e
na janela Propriedades.

4. Se preferir, especifique outros detalhes sobre o membro, como seu tipo.

7 Observação

Use também atalhos de teclado para criar membros. Para obter mais
informações, confira Atalhos de teclado e do mouse no Diagrama de Classe
e na janela Detalhes da Classe.

Modificar membros de tipo


O Designer de Classe permite modificar os membros dos tipos que são exibidos no
diagrama. É possível modificar os membros de qualquer tipo exibido em um diagrama
de classes que não sejam somente leitura. Modifique os membros de tipo usando a
edição in-loco na superfície de design, na janela Propriedades e na janela Detalhes da
Classe.

Todos os membros exibidos na janela Detalhes da Classe representam os membros dos


tipos no diagrama de classe. Há quatro tipos de membro: métodos, propriedades,
campos e eventos.

Todas as linhas de membro aparecem abaixo dos cabeçalhos que agrupam os membros
por tipo. Por exemplo, todas as propriedades aparecem abaixo do cabeçalho
Propriedades que, como um nó na grade, pode ser recolhido ou expandido.

Cada linha de membro exibe os seguintes elementos:

Ícone do membro
Cada tipo de membro é representado por seu próprio ícone. Aponte o mouse para
o ícone do membro para exibir a assinatura do membro. Clique no ícone do
membro ou no espaço em branco à esquerda do ícone do membro para selecionar
a linha.

Nome do membro

A coluna Nome em uma linha de membro exibe o nome do membro. Esse nome
também é exibido na propriedade Nome na janela Propriedades. Use essa célula
para alterar o nome de qualquer membro que tenha permissões de
leitura/gravação.

Se a coluna Nome for muito estreita para mostrar o nome inteiro, apontar o
mouse para o nome do membro exibe o nome inteiro.

Tipo do membro

A célula MemberType usa o IntelliSense, que permite fazer seleções em uma lista
de todos os tipos disponíveis no projeto atual ou em projetos referenciados.

Modificador do membro

Altere o modificador de visibilidade de um membro para Public ( public ), Private


( private ), Friend ( internal ) Protected ( protected ), Protected Friend ( protected
internal ) ou Default .

<Adicionar membro>

A última linha na janela Detalhes da classe contém o texto <Adicionar membro>


na célula Nome. Se você clicar nessa célula, será possível criar um novo membro.
Para obter mais informações, consulte Criar membros.

Propriedades do membro na janela Propriedades

A janela Detalhes da Classe exibe um subconjunto das propriedades do membro


que são exibidas na janela Propriedades. Alterar uma propriedade em um local
atualizará o valor da propriedade globalmente. Isso inclui a exibição de seu valor
em outro local.

Resumo

A célula Resumo expõe um resumo das informações sobre o membro. Clique nas
reticências na célula Resumo para exibir ou editar informações sobre o Resumo, o
Tipo de Retorno e os Comentários do membro.

Ocultar
Quando a caixa de seleção Ocultar é marcada, o membro não é exibido no tipo.

Para modificar um membro de tipo


1. Usando o Designer de Classe, selecione um tipo.

2. Se a janela Detalhes da Classe não for exibida, clique no botão da janela Detalhes
da Classe na barra de ferramentas do Designer de Classe.

3. Edite os valores nos campos da grade da janela Detalhes da Classe. Após cada
edição, pressione ENTER ou, caso contrário, mova o foco para longe do campo
editado, por exemplo, pressionando TAB. Suas edições são refletidas
imediatamente no código.

7 Observação

Se desejar modificar apenas o nome de um membro, você poderá fazer isso


usando a edição in-loco.

Adicionar parâmetros a métodos


Adicione parâmetros aos métodos usando a janela Detalhes da Classe. Os parâmetros
podem ser configurados para serem obrigatórios ou opcionais. Fornecer um valor para a
propriedade Padrão Opcional de um parâmetro instrui o designer a gerar código como
um parâmetro opcional.

As linhas de parâmetro contém os seguintes itens:

Nome

A coluna Nome em uma linha de parâmetro exibe o nome do parâmetro. Esse


nome também é exibido na propriedade Nome na janela Propriedades. Você pode
usar essa célula para alterar o nome de qualquer parâmetro com permissões de
leitura/gravação.

Apontar para o nome do parâmetro exibe o nome do parâmetro se a coluna


Nome for muito estreita para mostrar o nome inteiro.

Tipo

A célula Tipo de Parâmetro usa o IntelliSense, o que lhe permite fazer escolhas em
uma lista com todos os tipos disponíveis no projeto atual ou nos projetos
referenciados.

Modificador

A célula Modificador em uma linha de parâmetro aceita e exibe o novo


modificador do parâmetro. Para inserir um novo modificador de parâmetro, use a
caixa de listagem suspensa para selecionar Nenhum, ref, out ou params no C# e
ByVal, ByRef ou ParamArray no VB.

Resumo

A célula Resumo em uma linha de parâmetro permite inserir comentários de


código que aparecem no IntelliSense ao inserir o parâmetro no editor de código.

<Adicionar parâmetro>

A última linha de parâmetro de um membro contém o texto <Adicionar


parâmetro> na célula Nome. Clicar nessa célula permite criar um novo parâmetro.
Para obter mais informações, consulte Para adicionar um parâmetro a um método.

A janela Propriedades exibe as mesmas propriedades de parâmetro exibidas na janela


Detalhes da Classe: Nome, Tipo, Modificador, Resumo e também a propriedade
Padrão Opcional. Alterar uma propriedade em um local atualiza o valor da propriedade
globalmente, incluindo a exibição de seu valor em outro local.

7 Observação

Para adicionar um parâmetro a um representante, consulte Criar membros.

7 Observação

Embora um destruidor seja um método, ele não pode ter parâmetros.

Para adicionar um parâmetro a um método


1. Na superfície de diagrama, clique no tipo que contém o método ao qual deseja
adicionar um parâmetro.

O tipo obtém foco e seu conteúdo é exibido na janela Detalhes da Classe.

2. Na janela Detalhes da Classe, expanda a linha do método ao qual deseja adicionar


um parâmetro.
Uma linha de parâmetro recuada é exibida, contendo apenas um par de
parênteses e as palavras <adicionar parâmetro>.

3. Clique em <Adicionar parâmetro>, digite o nome do novo parâmetro e pressione


Enter.

O novo parâmetro é adicionado ao método e ao código do método. Ele é exibido


na janela Detalhes da Classe e na janela Propriedades.

4. Se preferir, especifique outros detalhes sobre o parâmetro, como seu tipo.

Para adicionar um parâmetro opcional a um método


1. Na superfície de diagrama, clique no tipo que contém o método ao qual deseja
adicionar um parâmetro opcional.

O tipo obtém foco e seu conteúdo é exibido na janela Detalhes da Classe.

2. Na janela Detalhes da Classe, expanda a linha do método ao qual deseja adicionar


um parâmetro opcional.

Uma linha de parâmetro recuada é exibida, contendo apenas um par de


parênteses e as palavras <adicionar parâmetro>.

3. Clique em <Adicionar parâmetro>, digite o nome do novo parâmetro e pressione


Enter.

O novo parâmetro é adicionado ao método e ao código do método. Ele é exibido


na janela Detalhes da Classe e na janela Propriedades.

4. Na janela Propriedades, digite um valor para a propriedade Padrão Opcional.


Definir a propriedade Padrão Opcional de um parâmetro o torna opcional.

7 Observação

Os parâmetros opcionais devem ser os últimos parâmetros na lista de


parâmetros.

Observações sobre uso de detalhes da classe


Observe as seguintes dicas para usar a janela Detalhes da Classe.
Células editáveis e não editáveis
Todas as células na janela Detalhes da Classe são editáveis, com algumas exceções:

O tipo inteiro é somente leitura, quando, por exemplo, ele reside em um assembly
referenciado. Quando você seleciona a forma no Designer de Classe, a janela
Detalhes da Classe exibe seus detalhes em um estado somente leitura.

Para indexadores, o nome é somente leitura e o restante (tipo, modificador,


resumo) é editável.

Todos os genéricos têm parâmetros somente leitura na janela Detalhes da Classe.


Para alterar um parâmetro genérico, edite seu código-fonte.

O nome do parâmetro de tipo que é definido em um tipo genérico é somente


leitura.

Quando o código de um tipo está quebrado (não analisável), a janela Detalhes da


Classe exibe o conteúdo do tipo como somente leitura.

A janela Detalhes da Classe e o código-fonte


Você pode exibir o código-fonte clicando com o botão direito do mouse em uma
forma na janela Detalhes da Classe (ou no Designer de Classe) e clicando em Exibir
Código. O arquivo do código-fonte é aberto e rola até o elemento selecionado.

A alteração do código-fonte é refletida imediatamente na exibição das


informações de assinatura no Designer de Classe e na janela Detalhes da Classe.
Se a janela Detalhes da Classe estiver fechada no momento, as novas informações
ficarão visíveis na próxima vez em que ela for aberta.

Quando o código de um tipo está quebrado (não analisável), a janela Detalhes da


Classe exibe o conteúdo do tipo como somente leitura.

Funcionalidade de área de transferência na janela


Detalhes da Classe
Você pode copiar ou recortar campos ou linhas da janela Detalhes da Classe e colá-los
em outro tipo. Uma linha poderá ser recortada se não for somente leitura. Quando você
cola a linha, a janela Detalhes da Classe atribui um novo nome (derivado do nome da
linha copiada) para evitar um conflito.
Exibir informações somente leitura
O Designer de Classe e a janela Detalhes da Classe podem exibir os tipos (e membros
do tipo) para o seguinte:

um projeto que contém um diagrama de classes

um projeto referenciado de um projeto que contém um diagrama de classes

um assembly referenciado de um projeto que contém um diagrama de classes

Nos dois últimos casos, a entidade referenciada (um tipo ou um membro) é somente
leitura no diagrama de classes que a representa.

Um projeto inteiro ou partes dele, como arquivos individuais, podem ser somente
leitura. Os casos mais comuns em que um projeto ou um de seus arquivos é somente
leitura são quando ele está sob controle do código-fonte (e não foi verificado), ele
existe em um assembly externo ou quando o sistema operacional considera os arquivos
como sendo somente leitura.

Controle do código-fonte

Como um diagrama de classe é salvo como um arquivo em um projeto, você precisa


fazer check-out do projeto para salvar todas as alterações feitas no Designer de Classe
ou na janela Detalhes da Classe.

Projetos somente leitura

O projeto pode ser somente leitura por um motivo que não seja o controle de código-
fonte. Ao fechar o projeto, uma caixa de diálogo é exibida, perguntando se você deseja
substituir o arquivo de projeto, descartar as alterações (não salvar) ou cancelar a
operação de fechamento. Se você optar por substituir, os arquivos de projeto serão
substituídos e transformados em leitura/gravação. O novo arquivo de diagrama de
classes é adicionado.

Tipos somente leitura

Se você tentar salvar um projeto que contém um tipo cujo arquivo do código-fonte seja
somente leitura, a caixa de diálogo Salvamento de Arquivo Somente Leitura será
exibida, fornecendo opções de salvar o arquivo com um novo nome ou em um novo
local, ou de substituir o arquivo somente leitura. Se você substituir o arquivo, a nova
cópia não será mais somente leitura.

Se um arquivo de código contiver um erro de sintaxe, as formas que exibem o código


nesse arquivo serão somente leitura temporariamente até que o erro de sintaxe seja
corrigido. As formas nesse estado exibem texto em vermelho e um ícone vermelho que
exibe uma dica de ferramenta onde se lê "O arquivo do código-fonte contém um erro
de análise".

Um tipo referenciado (como um tipo .NET), que existe sob outro nó do projeto ou sob
um nó de assembly referenciado, é indicado na área de design do Designer de Classe
como somente leitura. Um tipo local, que existe no projeto que você abriu, é
leitura/gravação e sua forma na superfície de design de Designer de Classe é indicada
como tal.

Os indexadores são de leitura/gravação no código e na janela Detalhes da Classe, mas


o nome do indexador é somente leitura.

Não é possível editar métodos parciais usando o Designer de Classe ou a janela


Detalhes da Classe. Use o Editor de Códigos para editá-los.

Não é possível editar código C++ nativo usando o Designer de Classe ou a janela
Detalhes da Classe. Use o Editor de Códigos para editar código C++ nativo.

Confira também
Exibindo tipos e relações
Refatorando classes e tipos
Exibir os tipos e as relações no Designer
de Classe
Artigo • 31/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Com o Designer de Classe, é possível gerenciar diagramas de classe executando as


seguintes ações:

Exibir tipos existentes e seus membros


Encontre uma relação de herança entre um tipo básico e seus tipos derivados
Alterar a forma como um diagrama de classes representa uma relação de
associação entre dois tipos

Exibir tipos existentes no Designer de Classe


Para ver um tipo existente e seus membros, adicione sua forma a um diagrama de
classe.

Você pode ver tipos locais e referenciados. Um tipo local existe no projeto atualmente
aberto e é leitura/gravação. Um tipo referenciado existe em outro projeto ou em um
assembly referenciado e é somente leitura.

Para criar novos tipos em diagramas de classes, consulte Criar tipos usando o Designer
de Classe.

Para ver tipos de um projeto em um diagrama de classes


1. Em um projeto no Gerenciador de Soluções, abra um arquivo de diagrama de
classe (.cd) existente. Ou, se não houver nenhum diagrama de classes, adicione um
novo ao projeto. Consulte Como adicionar diagramas de classe a projetos.

2. No projeto localizado no Gerenciador de Soluções, arraste um arquivo de código-


fonte para o diagrama de classe.

7 Observação

Se sua solução tiver um projeto que compartilha código por vários aplicativos,
você poderá arrastar arquivos ou código para um diagrama de classe apenas
das seguintes fontes:
Do projeto de aplicativo que contém o diagrama
De um projeto compartilhado que foi importado pelo projeto de
aplicativo
De um projeto referenciado
De um assembly

As formas que representam os tipos definidos no arquivo de código-fonte


aparecem no diagrama na posição para a qual você arrastou o arquivo.

Também é possível exibir tipos no projeto arrastando um ou mais tipos do nó do


projeto no Modo de Exibição de Classe para o diagrama de classe.

 Dica

Se o Modo de Exibição de Classe não estiver aberto, abra o Modo de Exibição de


Classe no menu Exibir.

Para exibir tipos em locais padrão no diagrama, selecione um ou mais tipos no Modo de
Exibição de Classe, clique com o botão direito do mouse nos tipos selecionados e
escolha Exibir Diagrama de Classe.

7 Observação

Se um diagrama de classes fechado contendo o tipo já existir no projeto, o


diagrama de classes será aberto para exibir a forma do tipo. No entanto, se
nenhum diagrama de classe contiver o tipo que existe no projeto, o Designer de
Classe criará um diagrama de classe no projeto e o abrirá para exibir o tipo.

Quando você exibe um tipo no diagrama pela primeira vez, sua forma aparece recolhida
por padrão. É possível expandir a forma para exibir seu conteúdo.

Para exibir o conteúdo de um projeto em um diagrama


de classe
No Gerenciador de Soluções ou no Modo de Exibição de Classe, clique com o botão
direito do mouse no projeto e escolha Exibir e, em seguida, escolha Exibir Diagrama de
Classe. Um Diagrama de Classe populado automaticamente é criado.
Exibir herança entre tipos no Designer de
Classe
Você poderá localizar a relação de herança, se ela existir, entre um tipo base e seus tipos
derivados em um diagrama de classe no Designer de Classe. Para criar uma relação de
herança, se não existir nenhuma entre dois tipos, confira Criar herança entre tipos.

Para localizar o tipo base


1. No diagrama de classe, clique no tipo para o qual você deseja ver a classe ou a
interface base.

2. No menu Diagrama de Classe, escolha Mostrar Classe Base ou Mostrar Interfaces


Base.

A classe ou a interface base do tipo aparece selecionada no diagrama. Todas as


linhas de herança ocultas aparecem agora entre as duas formas.

Você pode também clicar com o botão direito do mouse no tipo cujo tipo base deseja
exibir e escolher Mostrar Classe Base ou Mostrar Interfaces Base.

Para localizar os tipos derivados


1. No diagrama de classe, clique no tipo para o qual você deseja ver as classes ou
interfaces derivadas.

2. No menu Diagrama de Classe, escolha Mostrar Classes Derivadas ou Mostrar


Interfaces Derivadas.

As classes ou interfaces derivadas do tipo aparecem no diagrama. Todas as linhas


de herança ocultas aparecem agora entre as formas.

Você pode também clicar com o botão direito do mouse no tipo cujos tipos derivados
deseja ver e escolher Mostrar Classes Derivadas ou Mostrar Interfaces Derivadas.

Alterar entre notação de membro e notação de


associação no Designer de Classe
No Designer de Classe, você pode alterar a maneira que o diagrama de classe
representa uma relação de associação entre dois tipos de notação de membro para
notação de associação e vice-versa. Membros exibidos como linhas de associação
geralmente fornecem uma visualização útil de como os tipos estão relacionados.

7 Observação

Os relacionamentos de associação podem ser representados como um campo ou


uma propriedade de membro. Para alterar notação de membro para notação de
associação, um tipo deve ter um membro de outro tipo. Para alterar notação de
associação para a notação de membro, os dois tipos devem estar conectados por
uma linha de associação. Para obter mais informações, consulte Como criar
associações entre tipos. Se o projeto contiver vários diagramas de classe, as
alterações feitas na forma como um diagrama exibe os relacionamentos de
associação afetarão somente esse diagrama. Para alterar a maneira como outro
diagrama exibe os relacionamentos de associação, abra ou exiba esse diagrama e
execute estas etapas.

Para alterar de notação de membro para notação de


associação
1. No nó do projeto no Gerenciador de Soluções, abra um arquivo de diagrama de
classe (.cd).

2. Na forma de tipo no diagrama de classe, clique com o botão direito do mouse na


propriedade do membro ou no campo que representa a associação e escolha
Mostrar como Associação.

 Dica

Se não houver campos ou propriedades visíveis na forma de tipo, os


compartimentos da forma poderão ser recolhidos. Para expandir a forma do
tipo, clique duas vezes no nome do compartimento ou clique com o botão
direito do mouse na forma de tipo e escolha Expandir.

O membro desaparece do compartimento na forma de tipo e uma linha de


associação é exibida para conectar os dois tipos. A linha de associação é rotulada
com o nome da propriedade ou do campo.

Para alterar de notação de associação para notação de


membro
No diagrama de classe, clique com o botão direito do mouse na linha de associação e
escolha Mostrar como Propriedade ou Mostrar como Campo, conforme apropriado. A
linha de associação desaparece e a propriedade é exibida no compartimento apropriado
em sua forma de tipo no diagrama.

Confira também
Refatorar classes e tipos no Designer de Classe
Refatorar classes e tipos no Designer de
Classe
Artigo • 16/01/2024

Quando você refatora o código, ele fica mais fácil de entender, manter e mais eficiente,
alterando a estrutura interna e como os seus objetos são criados, não o comportamento
externo dele. Use o Designer de Classe e a janela Detalhes da Classe para reduzir o
trabalho necessário e a possibilidade de introduzir bugs quando você refatora o código
do C#, Visual Basic ou C++ no projeto do Visual Studio.

7 Observação

Os arquivos de um projeto podem ser somente leitura porque o projeto está sob
controle do código-fonte e não foi submetido a check-out, é um projeto
referenciado ou os arquivos estão marcados como somente leitura no disco. Ao
trabalhar em um projeto em um desses estados, você terá várias maneiras de salvar
o trabalho, dependendo do estado do projeto. Isso se aplica ao código de
refatoração e também ao código que você altera de outra forma, como editando-o
diretamente.

Tarefas comuns
ノ Expandir a tabela

Tarefa Conteúdo de suporte

Classes de refatoração: você pode usar as operações de refatoração - Dividir uma classe
para dividir uma classe em classes parciais ou para implementar uma em classes parciais
classe base abstrata.

Trabalho com interfaces: no Designer de Classe, você pode implementar - Implementar uma
uma interface no diagrama de classe se ela for conectada a uma classe interface
que fornece o código para os métodos de interface.

Refatoração de tipos, membros de tipo e parâmetros: usando o - Renomear tipos e


Designer de Classe, você pode renomear tipos, substituir membros de membros de tipo
tipo ou movê-los de um tipo para outro. Você também pode criar tipos - Mover membros de
que permitem valor nulo. tipo de um tipo para
outro
- Criar um tipo que
permite valor nulo
Renomear tipos e membros de tipo
No Designer de Classe, é possível renomear um tipo ou membro de um tipo no
diagrama de classe ou na janela Propriedades. Na janela Detalhes da Classe, é possível
alterar o nome de um membro, mas não um tipo. A renomeação de um tipo ou
membro do tipo propaga para todas as janelas e locais de código onde o nome antigo
é exibido.

Renomear no Designer de Classe


1. No diagrama de classe, selecione o tipo ou membro e clique no nome.

O nome do membro se torna editável.

2. Digite o novo nome do tipo ou membro do tipo

Renomear na janela Detalhes da Classe


1. Para exibir a janela Detalhes da Classe, clique com o botão direito do mouse no
tipo ou membro de tipo e clique em Detalhes da Classe.

A janela Detalhes da Classe será exibida.

2. Na coluna Nome, altere o nome do membro de tipo

3. Para mover o foco da célula, pressione a tecla Enter ou clique fora da célula.

7 Observação

Na janela Detalhes da Classe, é possível alterar o nome de um membro, mas


não um tipo.

Renomear na janela Propriedades


1. No diagrama de classe ou na janela Detalhes da Classe, clique com o botão direito
do mouse no tipo ou membro e selecione Propriedades.

A janela Propriedades aparecerá e exibirá as propriedades do tipo ou membro do


tipo.

2. Na propriedade Nome, altere o nome do tipo ou do membro de tipo.


O novo nome propagada para todas as janelas e locais de código no projeto atual
em que o nome antigo é exibido.

Mover membros de tipo de um tipo para outro


Com o Designer de Classe, é possível mover um membro de tipo de um tipo para outro.
Ambos precisam estar visíveis no diagrama de classe atual.

1. Em um tipo visível na área de design, clique com o botão direito do mouse sobre o
membro que você deseja mover para o outro tipo e clique em Recortar.

2. Clique com o botão direito do mouse no tipo de destino e clique em Colar.

A propriedade é removida do tipo de origem e aparece no tipo de destino.

Conteúdo relacionado
Criar classes no Designer de Classe
Implementar uma interface no Designer
de Classe
Artigo • 16/01/2024

No Designer de Classe, você pode implementar uma interface no diagrama de classe


conectando-a a uma classe que forneça código para os métodos da interface. O
Designer de Classe gera uma implementação da interface e exibe a relação entre a
interface e a classe como uma relação de herança. É possível implementar uma interface
desenhando uma linha de herança entre a interface e a classe ou arrastando a interface
do Modo de Exibição de Classe.

 Dica

Você pode criar interfaces da mesma maneira como cria outros tipos. Se a interface
existir, mas não aparecer no diagrama de classe, exiba-a primeiro. Para obter mais
informações, confira Criar tipos usando o Designer de Classe e Exibir tipos
existentes.

Para implementar uma interface desenhando


uma linha de herança
1. No diagrama de classe, exiba a interface e a classe que a implementará.

2. Desenhe uma linha de herança da classe e da interface.

Um pirulito aparece anexado à classe, e um rótulo com o nome da interface


identifica a relação de herança. O Visual Studio gera stubs para todos os membros
da interface.

Para obter mais informações, confira Criar herança entre tipos.

Para implementar uma interface da janela do


Modo de Exibição de Classe
1. No diagrama de classe, exiba a classe cuja interface você deseja implementar.

2. Abra o Modo de Exibição de Classe e localize a interface.


 Dica

Se o Modo de Exibição de Classe não estiver aberto, abra o Modo de


Exibição de Classe no menu Exibir ou pressione Ctrl+Shift+C.

3. Arraste o nó da interface para a forma de classe no diagrama.

Um pirulito aparece anexado à classe, e um rótulo com o nome da interface


identifica a relação de herança. O Visual Studio gera stubs para todos os membros
da interface. Neste ponto, a interface é implementada.

Conteúdo relacionado
Criar tipos usando o Designer de Classe
Refatorando classes e tipos
Como dividir uma classe em classes
parciais no Designer de Classe
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar a palavra-chave partial ( Partial em Visual Basic) para dividir a
declaração de uma classe ou estrutura entre várias declarações. Você pode usar quantas
declarações parciais desejar.

As declarações podem estar em um ou em vários arquivos de origem. Todas as


declarações precisam estar no mesmo assembly e no mesmo namespace.

Classes parciais são úteis em várias situações. Em um projeto grande, por exemplo, a
separação de uma classe em vários arquivos permite que mais de um programador
trabalhe no projeto ao mesmo tempo. Quando você está trabalhando com o código
que o Visual Studio gera, é possível alterar a classe sem precisar recriar o arquivo de
origem. (Exemplos de código gerados pelo Visual Studio incluem Windows Forms e
código wrapper do serviço Web.) Assim, você pode criar um código que usa classes
geradas automaticamente sem precisar modificar o arquivo que o Visual Studio cria.

Existem dois tipos de métodos parciais. No C#, eles são chamados de declarar e
implementar. No Visual Basic, são chamados de declaração e implementação.

O Designer de Classe é compatível com métodos e classes parciais. A forma de tipo no


diagrama de classe se refere a um único local de declaração para a classe parcial. Se a
classe parcial for definida em vários arquivos, você poderá especificar qual local de
declaração o Designer de Classe usará definindo a propriedade Local do Novo Membro
na janela Propriedades. Ou seja, quando você clica duas vezes em uma forma de classe,
o Designer de Classe vai até o arquivo de origem que contém a declaração de classe
identificada pela propriedade Local do Novo Membro. Quando você clica duas vezes
em um método parcial em uma forma de classe, o Designer de Classe vai para a
declaração de método parcial. Além disso, na janela Propriedades, a propriedade Nome
de Arquivo aponta para o local da declaração. Para classes parciais, Nome de Arquivo
lista todos os arquivos que contêm código de implementação e declaração dessa classe.
No entanto, para métodos parciais, Nome de Arquivo lista apenas o arquivo que
contém a declaração de método parcial.

Os exemplos a seguir dividem a definição da classe Employee em duas declarações, cada


uma das quais define um procedimento diferente. As duas definições parciais nos
exemplos podem estar em um arquivo de origem ou em dois arquivos de origem
diferentes.

7 Observação

O Visual Basic usa definições de classe parcial para separar o código gerado pelo
Visual Studio do código de autoria do usuário. O código é separado em arquivos
de origem distintos. Por exemplo, o Windows Form Designer define classes
parciais para controles, como Form . Você não deve modificar o código gerado
nesses controles.

Para obter mais informações sobre tipos parciais no Visual Basic, consulte Parcial.

Exemplo
Para dividir uma definição de classe, use a palavra-chave partial ( Partial no Visual
Basic), conforme mostrado no exemplo a seguir:

C#

C#

// First part of class definition.


public partial class Employee
{
public void CalculateWorkHours()
{
}
}

// Second part of class definition.


public partial class Employee
{
public void CalculateTaxes()
{
}
}

Confira também
Classes e métodos parciais
partial (tipo) (Referência do C#)
partial (método) (Referência do C#)
Parcial (Visual Basic)
Criar um tipo que permite valor nulo no
Designer de Classe
Artigo • 16/01/2024

Alguns tipos de valor nem sempre têm (ou precisam de) um valor definido. Essa é uma
prática comum em bancos de dados, em que alguns campos podem não receber
nenhum valor. Por exemplo, é possível atribuir um valor nulo a um campo de banco de
dados para indicar que ele ainda não recebeu um valor.

Um tipo que permite valor nulo é um tipo de valor que é estendido, para que ele use o
intervalo de valores típico para esse tipo e também um valor nulo. Por exemplo, um tipo
que permite valor nulo igual a Int32 , também indicado como Nullable<Int32>, pode
receber qualquer valor de -2147483648 a 2147483647 ou receber um valor nulo. Um
Nullable<bool> pode receber os valores True , False ou nulo (nenhum valor).

Os tipos que permitem valor nulo são instâncias da estrutura Nullable<T>. Cada
instância de um tipo que permite valor nulo tem duas propriedades públicas somente
leitura, HasValue e Value :

HasValue é do tipo bool e indica se a variável contém um valor definido. True

significa que a variável contém um valor não nulo. É possível testar um valor
definido usando uma instrução como if (x.HasValue) ou if (y != null) .

Value é do mesmo tipo que o tipo subjacente. Se HasValue for True , Value

conterá um valor significativo. Se HasValue for False , o acesso a Value gerará


uma exceção de operação inválida.

Por padrão, ao declarar uma variável como um tipo que permite valor nulo, ela não terá
nenhum valor definido ( HasValue é False ), além do valor padrão de seu tipo de valor
subjacente.

O Designer de Classe exibe um tipo que permite valor nulo assim que ele exibe seu tipo
subjacente.

Para obter mais informações sobre tipos que permitem valor nulo no C#, confira Tipos
que permitem valor nulo. Para obter mais informações sobre tipos que permitem valor
nulo no Visual Basic, consulte Tipos de valores que permitem valor nulo.

7 Observação
Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Para adicionar um tipo que permite valor nulo


usando o Designer de Classe
1. No Diagrama de Classe, expanda uma classe existente ou crie uma classe.

2. Para adicionar uma classe ao projeto, no menu Diagrama de Classe, clique em


Adicionar>Adicionar Classe.

3. Para expandir a forma da classe, no menu Diagrama de Classe, clique em


Expandir.

4. Selecione a forma da classe. No menu Diagrama de Classe, clique em


Adicionar>Campo. Um novo campo que tem o nome padrão Campo será exibido
na forma da classe e também na Janela Detalhes da Classe.

5. Na coluna Nome da Janela Detalhes da Classe (ou na própria forma da classe),


altere o nome do novo campo para um nome válido e significativo.

6. Na coluna Tipo da janela Detalhes da Classe, declare o tipo como um tipo que
permite valor nulo, especificando o seguinte:

int? (Visual C#)

Nullable(Of Integer) (Visual Basic)

Para adicionar um tipo que permite valor nulo


usando o Editor de Código
1. Adicione uma classe ao projeto. Selecione o nó do projeto no Gerenciador de
Soluções e, no menu Projeto, clique em Adicionar Classe.

2. No arquivo .cs ou .vb da nova classe, adicione um ou mais tipos que permitem
valor nulo da nova classe à declaração de classe.

C#
// Declare a nullable type in Visual C#:
class Test
{
int? building_number = 5;
}

3. No Modo de Exibição de Classe, arraste o ícone da nova classe para a superfície de


design do Designer de Classe. Uma forma de classe é exibida no diagrama de
classe.

4. Expanda os detalhes da forma de classe e mova o ponteiro do mouse sobre os


membros da classe. A dica de ferramenta exibe a declaração de cada membro.

5. Clique com o botão direito do mouse na forma da classe e clique em Detalhes da


Classe. É possível exibir ou modificar as propriedades do novo tipo na Janela
Detalhes da Classe.

Conteúdo relacionado
Nullable<T>
Tipos que permitem valor nulo
Usando tipos que permitem valor nulo
Identificar um Tipo Anulável
Tipos de Valor Anulável
Trabalhar com código C++ no Designer
de Classe
Artigo • 31/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Designer de Classe exibe uma superfície de design visual chamada de diagrama de


classe que fornece uma representação visual dos elementos de código no projeto. É
possível usar diagramas de classe para criar e visualizar classes e outros tipos em um
projeto.

O Designer de Classe é compatível com os seguintes elementos de código C++:

Classe (semelhante a uma forma de classe gerenciada, com exceção de que ela
pode ter vários relacionamentos de herança)

Classe anônima (exibe o nome gerado do Modo de Exibição de Classe para o tipo
anônimo)

Classe de modelo

Estrutura

Enumeração

Macro (exibe a exibição pós-processada da macro)

Typedef

7 Observação

Isso não é o mesmo que o diagrama de classe UML, que pode ser criado em um
Projeto de Modelagem. Para obter mais informações, consulte Diagramas de classe
UML: Referência.

Classes C++ no Designer de Classe


O Designer de Classe é compatível com classes do C++ e visualiza classes nativas do
C++ da mesma maneira que as formas de classe do Visual Basic e do C#, exceto que as
classes do C++ podem ter várias relações de herança. É possível expandir a forma de
classe para exibir mais campos e métodos na classe ou recolhê-la para economizar
espaço.

7 Observação

O Designer de Classe não é compatível com uniões (um tipo especial de classe em
que a memória alocada é apenas a quantidade necessária para o maior membro de
dados da união).

Herança simples
Quando você arrasta mais de uma classe para um diagrama de classe e as classes têm
uma relação de herança de classe, uma seta as conecta. A seta aponta para a direção da
classe base. Por exemplo, quando as classes a seguir são exibidas em um diagrama de
classe, uma seta as conecta, apontando de B para A:

C++

class A {};
class B : A {};

Você também pode arrastar apenas a classe B para o diagrama de classe, clicar com o
botão direito do mouse na forma de classe de B e, em seguida, clicar em Mostrar
Classes Base. Isso exibe sua classe base: A.

Herança múltipla
O Designer de Classe é compatível com a visualização de relações de herança com
várias classes. A herança múltipla é usada quando uma classe derivada tem atributos
com mais de uma classe base. A seguir, temos um exemplo de herança múltipla:

C++

class Bird {};


class Swimmer {};
class Penguin : public Bird, public Swimmer {};

Quando você arrasta mais de uma classe para o diagrama de classe e as classes têm
uma relação de herança com várias classes, uma seta as conecta. A seta aponta para a
direção das classes base.
Clicar com o botão direito do mouse em uma forma de classe e, depois, clicar em
Mostrar Classes Base exibe as classes base da classe selecionada.

7 Observação

O comando Mostrar Classes Derivadas não tem suporte para código C++. É
possível exibir as classes derivadas acessando o Modo de Exibição de Classe,
expandindo o nó de tipo, expandindo a subpasta Tipos Derivados e, em seguida,
arrastando esses tipos para o diagrama de classe.

Para obter mais informações sobre a herança de classes múltiplas, consulte Herança
múltipla e Classes Base Múltiplas.

Classes abstratas
O Designer de Classe é compatível com classes abstratas (também chamadas de
"classes base abstratas"). Essas são classes que você nunca instancia, mas das quais
pode derivar outras classes. Usando um exemplo de "Herança múltipla" no início deste
documento, você pode instanciar a classe Bird como objetos individuais, da seguinte
maneira:

C++

int main()
{
Bird sparrow;
Bird crow;
Bird eagle;
}

No entanto, talvez você não pretenda instanciar a classe Swimmer como objetos
individuais. Talvez você pretenda apenas derivar outros tipos de classes de animal, por
exemplo, Penguin , Whale e Fish . Nesse caso, você declararia a classe Swimmer como
uma classe base abstrata.

Para declarar uma classe como abstrata, você pode usar a palavra-chave abstract .
Membros marcados como abstratos, ou incluídos em uma classe abstrata, são virtuais e
devem ser implementados por classes que derivam da classe abstrata.

C++

class Swimmer abstract


{
virtual void swim();
void dive();
};

Você também pode declarar uma classe como abstrata incluindo pelo menos uma
função virtual pura:

C++

class Swimmer
{
virtual void swim() = 0;
void dive();
};

Quando você exibe essas declarações em um Diagrama de Classe, o nome da classe


Swimmer e sua função virtual pura swim são exibidos em itálico em uma forma de classe

abstrata, em conjunto com a notação Classe Abstrata. Observe que a forma do tipo de
classe abstrata é a mesmo de uma classe regular, mas sua borda é uma linha pontilhada.

Uma classe derivada de uma classe base abstrata deve substituir cada função virtual
pura na classe base, ou a classe derivada não poderá ser instanciada. Portanto, por
exemplo, se você derivar uma classe Fish da classe Swimmer , Fish deverá substituir o
método swim :

C++

class Fish : public Swimmer


{
void swim(int speed);
};

int main()
{
Fish guppy;
}

Quando você exibe esse código em um Diagrama de Classe, o Designer de Classe


desenha uma linha de herança de Fish para Swimmer .

Classes anônimas
O Designer de Classe é compatível com classes anônimas. Tipos de classe anônima são
classes declaradas sem um identificador. Elas não podem ter um construtor ou um
destruidor, não podem ser passadas como argumentos para funções e não podem ser
retornadas como valores retornados de funções. É possível usar uma classe anônima
para substituir um nome de classe por um nome de typedef, como no exemplo a seguir:

C++

typedef struct
{
unsigned x;
unsigned y;
} POINT;

As estruturas também podem ser anônimas. O Designer de Classe exibe estruturas e


classes anônimas da mesma forma que exibe o respectivo tipo. Embora você possa
declarar e exibir estruturas e classes anônimas, o Designer de Classe não usará o nome
de marca que você especificar. Ele usará o nome gerado pelo Modo de Exibição de
Classe. A classe ou a estrutura aparece no Modo de Exibição de Classe e no Designer de
Classe como um elemento chamado __unnamed.

Para obter mais informações sobre classes anônimas, consulte Tipos de classe anônima.

Classes de modelo
O Designer de Classe é compatível com a visualização de classes de modelo.
Declarações aninhadas têm suporte. A tabela a seguir mostra algumas declarações
típicas.

Elemento de código Modo de exibição do Designer de Classe

template <class T> A<T>

class A {}; Classe de modelo

template <class T, class U> A<T, U>

class A {}; Classe de modelo

template <class T, int i> A<T, i>

class A {}; Classe de modelo

template <class T, template <class K> class U> A<T, U>

class A {}; Classe de modelo

A tabela a seguir mostra alguns exemplos de especialização parcial.


Elemento de código Modo de exibição do Designer de Classe

template<class T, class U> A<T, U>

class A {}; Classe de modelo

template<class T> A<T, T>

class A<T, T> {}; Classe de modelo

template <class T> A<T, int>

class A<T, int> {}; Classe de modelo

template <class T1, class T2> A<T1*, T2*>

class A<T1*, T2*> {}; Classe de modelo

A tabela a seguir mostra alguns exemplos de herança na especialização parcial.

Elemento de código Modo de exibição do Designer de Classe

template <class T, class U> A<T, U>

class A {}; Classe de modelo

template <class TC> B

class A<T, int> {}; Classe

class B : A<int, float> (aponta para a Classe A)

{}; C

class C : A<int, int> Classe

{}; (aponta para a Classe A)

A tabela a seguir mostra alguns exemplos de funções de modelo de especialização


parcial.

Elemento de código Modo de exibição do Designer de Classe

class A A

{ func<T, U> (+ 1 de sobrecarga)

template <class T, class U>


Elemento de código Modo de exibição do Designer de Classe

void func(T a, U b);

template <class T>

void func(T a, int b);

};

template <class T1> A<T1>

class A { Classe de modelo

template <class T2> B<T2>

class B {}; Classe de modelo

}; (B está contido na classe A em Tipos Aninhados)

template<> template<>

class A<type>::B<type> {};

template <class T> A

class C {}; Classe

class A : C<int> {}; -> C<int>

C<T>

Classe de modelo

A tabela a seguir mostra alguns exemplos de herança de modelo.

Elemento de código Modo de exibição do Designer de Classe

template <class T> A

class C {}; Classe

template<> ->B

class C<int> { C<int>

class B {}; Classe


Elemento de código Modo de exibição do Designer de Classe

} (B está contido na classe C em Tipos Aninhados)

class A : C<int>::B {}; C<T>

Classe de modelo

A tabela a seguir mostra alguns exemplos de conexões de classe especializada


canônicas.

Elemento de código Modo de exibição do Designer de Classe

template <class T> A

class C {}; Classe

template<> ->C<int>

class C<int> {}; C<int>

class A : C<int> {}; Classe

class D : C<float> {}; C<T>

Classe de modelo

Classe

->C<float>

class B { B

template <class T> min <T>

T min (const T &a, const T &b);

};

Enumerações do C++ no Designer de Classe


O Designer de Classe é compatível com os tipos enum e enum class no escopo do C++.
A seguir está um exemplo:

C++
enum CardSuit {
Diamonds = 1,
Hearts = 2,
Clubs = 3,
Spades = 4
};

// or...
enum class CardSuit {
Diamonds = 1,
Hearts = 2,
Clubs = 3,
Spades = 4
};

Uma forma de enumeração do C++ em um diagrama de classes parece e funciona


como uma forma de estrutura, exceto pelo seguinte: o rótulo exibe Enum ou Enum
class, ele é rosa em vez de azul e tem uma borda colorida nas margens esquerda e
superior. As formas de enumeração e formas de estrutura tem cantos quadrados.

Para obter mais informações sobre o uso do tipo enum , consulte Enumerações.

Typedefs C++ no Designer de Classe


As instruções typedef criam uma ou mais camadas de indireção entre um nome e seu
tipo subjacente. O Designer de Classe é compatível com tipos de typedef do C++
declarados com a palavra-chave typedef , por exemplo:

C++

typedef class coord


{
void P(x,y);
unsigned x;
unsigned y;
} COORD;

Então, você pode usar esse tipo para declarar uma instância:

COORD OriginPoint;

Formas de classe e de struct


No Designer de Classe, um typedef do C++ tem a forma do tipo especificado no
typedef. Se a fonte declarar typedef class , a forma terá cantos arredondados e o rótulo
Classe. Para typedef struct , a forma tem cantos quadrados e o rótulo Struct.

Classes e estruturas podem ter typedefs aninhados declarados dentro delas. No


Designer de Classe, formas de classe e de estrutura podem mostrar declarações de
typedef aninhado como formas aninhadas.

As formas typedef oferecem suporte aos comandos Mostrar como Associação e


Mostrar como Associação de Coleções no menu do clique com o botão direito (menu
de contexto).

Exemplo do typedef de classe

C++

class B {};
typedef B MyB;

Exemplo do typedef de struct

C++

typedef struct mystructtag


{
int i;
double f;
} mystruct;
Typedefs sem nome
Embora seja possível declarar um typedef sem um nome, o Designer de Classe não
usará o nome da marca especificada. O Designer de Classe use o nome gerado pelo
Modo de Exibição de Classe. Por exemplo, a declaração a seguir é válida, mas ela
aparece no Modo de Exibição de Classe e no Designer de Classe como um objeto
chamado __unnamed:

C++

typedef class coord


{
void P(x,y);
unsigned x;
unsigned y;
};

7 Observação

O Designer de Classe não exibe typedefs cujo tipo de origem é um ponteiro de


função.

Saiba mais sobre limitações para elementos de


código C++
Quando um projeto C++ é carregado, o Designer de Classe funciona em modo
somente leitura. É possível alterar o diagrama de classe, mas não é possível salvar
alterações do diagrama de classe de volta no código-fonte.

O Designer de Classe é compatível com somente a semântica nativa do C++. Para


projetos C++ compilados em código gerenciado, o Designer de Classe visualizará
apenas os elementos de código que forem tipos nativos. Portanto, é possível
adicionar um diagrama de classe a um projeto, mas o Designer de Classe não
permitirá a visualização de elementos nos quais a propriedade IsManaged esteja
definida como true (ou seja, tipos de valor e tipos de referência).

Para projetos C++, o Designer de Classe lê somente a definição do tipo. Por


exemplo, suponha que você defina um tipo em um arquivo de cabeçalho (.h) e
defina seus membros em um arquivo de implementação (.cpp). Se você invocar
“Exibir Diagrama de Classe” no arquivo de implementação (.cpp), o Designer de
Classe não exibirá nada. Como outro exemplo, se você invocar “Exibir Diagrama de
Classe” em um arquivo .cpp que use uma instrução #include para incluir outros
arquivos, mas que não contenha nenhuma definição de classe real, o Designer de
Classe não exibirá nada novamente.

Arquivos IDL (.idl), que definem interfaces COM e bibliotecas de tipo, não exibem
diagramas, a menos que sejam compilados para o código C++ nativo.

O Designer de Classe não é compatível com funções e variáveis globais.

Designer de Classe não é compatível com uniões. Esse é um tipo especial de


classe no qual a memória alocada é apenas a quantidade necessária para o maior
membro de dados da união.

O Designer de Classe não exibe tipos de dados básicos como int e char .

O Designer de Classe não exibe tipos que são definidos fora do projeto atual se o
projeto não tem referências corretas para esses tipos.

O Designer de Classe pode exibir tipos aninhados, mas não as relações entre um
tipo aninhado e outros tipos.

O Designer de Classe não pode exibir tipos que são nulos ou derivados de um
tipo nulo.

Solucionar problemas de exibição e resolução


de tipo

Local dos arquivos de origem


O Designer de Classe não mantém um controle sobre a localização dos arquivos de
origem. Portanto, se você modificar a estrutura do projeto ou mover os arquivos de
origem no projeto, o Designer de Classe poderá perder o controle do tipo
(principalmente do tipo de origem de um typedef, de classes base ou de tipos de
associação). É possível receber um erro como O Designer de Classe não pode exibir
este tipo. Se você fizer isso, arraste o código-fonte realocado ou modificado para o
diagrama de classe, para exibi-lo novamente.

Problemas de atualização e de desempenho


Para projetos C++, pode levar de 30 a 60 segundos para que uma alteração no arquivo
de origem seja exibida no diagrama de classe. Esse atraso também pode fazer com que
o Designer de Classe gere o erro Não foi encontrado nenhum tipo na seleção. Se você
receber um erro como esse, clique em Cancelar na mensagem de erro e espere até que
o elemento de código seja exibido no Modo de Exibição de Classe. Depois de fazer
isso, o Designer de Classe deverá exibir o tipo.

Se um diagrama de classe não for atualizado com as alterações feitas no código, talvez
seja necessário fechar o diagrama e abri-lo novamente.

Problemas de resolução de tipo


O Designer de Classe pode não conseguir resolver tipos pelos seguintes motivos:

O tipo está em um projeto ou assembly que não é referenciado no projeto que


contém o diagrama de classe. Para corrigir esse erro, adicione uma referência ao
projeto ou ao assembly que contém o tipo. Para obter mais informações, consulte
Gerenciando referências em um projeto.

O tipo não está no escopo correto e, portanto, o Designer de Classe não pode
localizá-lo. Verifique se o código não tem uma declaração using , imports ou
#include ausente. Além disso, verifique se você não moveu o tipo (ou um tipo

relacionado) para fora do namespace em que ele estava originalmente localizado.

O tipo não existe (ou foi comentado). Para corrigir esse erro, verifique se você não
comentou nem excluiu o tipo.

O tipo está localizado em uma biblioteca referenciada por uma diretiva #import.
Uma possível solução alternativa é adicionar o código gerado (o arquivo .tlh)
manualmente a uma diretiva #include no arquivo de cabeçalho.

Verifique se o Designer de Classe é compatível com o tipo inserido. Confira


Limitações de elementos de código C++.

O erro que provavelmente você receberá para um problema de resolução de tipo é Não
foi possível encontrar o código em uma ou mais formas no diagrama de classe
'<element>'. Essa mensagem de erro não indica necessariamente que o código tem um
erro. Ela indica apenas que o designer de classe não pôde exibir o código. Tente as
seguintes medidas:

Verifique se o tipo existe. Verifique se você não comentou nem excluiu o código-
fonte acidentalmente.

Tente resolver o tipo. O tipo pode estar em um projeto ou assembly que não é
referenciado no projeto que contém o diagrama de classe. Para corrigir esse erro,
adicione uma referência ao projeto ou ao assembly que contém o tipo. Para obter
mais informações, consulte Gerenciando referências em um projeto.
Verifique se o tipo está no escopo correto para que o Designer de Classe possa
localizá-lo. Verifique se o código não tem uma declaração using , imports ou
#include ausente. Além disso, verifique se você não moveu o tipo (ou um tipo

relacionado) para fora do namespace em que ele estava originalmente localizado.

 Dica

Para obter informações adicionais de solução de problemas, confira Erros do


Designer de Classe.

Confira também
O que é o Designer de Classe?
Erros do Designer de Classe
Artigo • 21/03/2023

Aplica-se a: Visual Studio 2022

Este artigo apresenta como resolver problemas do Designer de Classe no Visual Studio.

Sintomas
Depois de modificar o tipo de origem de um typedef, classes base ou tipos de
associação, você poderá receber o seguinte erro:

O Designer de Classe não consegue exibir esse tipo.

Motivo
O Designer de Classe não acompanha o local dos arquivos de origem, portanto,
modificar a estrutura do projeto ou mover arquivos de origem no projeto pode fazer
com que o Designer de Classe perca o controle do tipo.

Resolução
Para resolver o erro, arraste o código-fonte modificado ou realocado para o diagrama
de classe novamente para exibi-lo.

Recursos
Você pode encontrar assistência com outros erros e avisos nos seguintes recursos:

Trabalhar com o código do Visual C++ inclui a solução de problemas de


informações sobre como exibir o C++ em um diagrama de classe.
O fórum Designer de Classes do Visual Studio fornece um fórum para perguntas
sobre o Designer de Classes.

Referências
Projetar e exibir classes e tipos
Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto


Fazer o código funcionar no Visual
Studio
Artigo • 25/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio inclui um poderoso conjunto integrado de ferramentas de depuração e


build do projeto. Este artigo descreve como o Visual Studio pode ajudar você a localizar
problemas no código usando a saída de build, a análise de código, ferramentas de
depuração e testes de unidade.

Você descobriu o editor e criou alguns códigos. Agora, você deseja ter certeza de que o
código funciona corretamente. No Visual Studio, assim como acontece com a maioria
dos IDEs, há duas fases para fazer com que o código funcione: criar o código para
capturar e resolver erros do compilador e de projeto e executar o código no ambiente
para localizar erros dinâmicos e em tempo de execução.

Compilar o código
Há dois tipos básicos de configuração de build: Depuração e Versão. A configuração
Depuração produz um executável maior e mais lento que permite uma experiência de
depuração em tempo de execução interativa e mais avançada. O executável Depuração
nunca deve ser enviado. A configuração Versão cria um executável mais rápido e
otimizado, apropriado para envio (pelo menos da perspectiva do compilador). A
configuração de build padrão é Depuração.

A maneira mais fácil de criar o projeto é pressionar F7, mas você também pode iniciar o
build selecionando Compilar>Compilar Solução no menu principal.
Você pode observar o processo de compilação na janela Saída na parte inferior da IU
(interface do usuário) do Visual Studio. Os erros, avisos e operações de build são
exibidos aqui. Se você tiver erros (ou se tiver avisos acima de um nível configurado),
haverá falha no build. Você pode selecionar os erros e avisos para ir para a linha em que
eles ocorreram. Recrie o projeto pressionando F7 novamente (para recompilar apenas
os arquivos com erros) ou Ctrl+Alt+F7 (para uma recriação completa e limpa).

Há duas janelas com guias na janela de resultados abaixo do editor: a janela Saída, que
contém a saída bruta do compilador (incluindo mensagens de erro) e a janela Lista de
Erros, que fornece uma lista filtrável e classificável de todos os erros e avisos.

Quando o build for bem-sucedido, você verá os resultados desta maneira na janela
Saída:

Examinar a Lista de Erros


A menos que você não tenha feito nenhuma modificação no código compilado com
êxito anteriormente, provavelmente haverá um erro. Se você não estiver familiarizado
com a codificação, provavelmente haverá muitos deles. Às vezes, os erros são óbvios,
como um erro de sintaxe simples ou um nome de variável incorreto, e, às vezes, eles são
difíceis de entender, com apenas um código confuso para orientar você. Para obter uma
exibição mais clara dos problemas, navegue até a parte inferior da janela Saída do build
e selecione a guia Lista de Erros. Essa ação leva a uma exibição mais organizada dos
erros e avisos do seu projeto e também algumas opções extras.

Selecione a linha de erro na janela Lista de Erros e vá para a linha em que ocorre o erro.
(Você também pode ativar os números de linha pressionando Ctrl+Q, digitando os
números de linha e, em seguida, escolhendo Ativar ou desativar números de linha dos
resultados. Essa ação é a forma mais rápida de acessar a caixa de diálogo Opções em
que você pode ativar números de linha.)

Use Ctrl+G para ir rapidamente para o número de linha em que ocorreu o erro.

O Visual Studio identifica esse erro com um sublinhado ondulado vermelho. Passe o
mouse sobre ele para obter mais detalhes. Faça a correção e ele desaparecerá, embora
você possa inserir um novo erro com a correção. (Essa ação é chamada "regressão".)

Percorra a lista de erros e resolva todos os erros em seu código.


Examinar os erros detalhadamente
Muitos erros podem não fazem sentido para você, formulados como eles estão nos
termos do compilador. Nesses casos, você talvez precise de informações adicionais. Na
janela Lista de Erros, você pode realizar uma pesquisa automática do Bing para obter
mais informações sobre o erro ou o aviso. Clique com o botão direito do mouse na linha
de entrada correspondente e selecione Mostrar Ajuda para Erros no menu de contexto
ou selecione o valor do código de erro vinculado por hiperlink na coluna Código da
Lista de Erros.

Dependendo das configurações, o navegador da Web exibe os resultados da pesquisa


para o código de erro e o texto ou uma guia é aberta no Visual Studio, que mostra os
resultados da pesquisa do Bing. Os resultados são de muitas origens diferentes na
Internet, e você pode não considerar todos úteis.

Usar a análise de código


Os analisadores de código procuram problemas comuns de código que podem levar a
erros em tempo de execução ou a problemas no gerenciamento de códigos.

Análise de código do C# e do Visual Basic


O Visual Studio inclui um conjunto interno de analisadores do .NET Compiler Platform
que examinam o código C# e Visual Basic durante a digitação. Instale mais analisadores
como uma extensão do Visual Studio ou como um pacote NuGet. Se forem encontradas
violações de regras, elas serão relatadas na Lista de Erros e no editor de código como
um sublinhado ondulado sob o código em questão.

Análise de código C++


Para analisar o código C++, execute a análise de código estático. Crie o hábito de
executá-lo depois de limpar os erros óbvios que impediam um build bem-sucedido e
reserve um tempo para resolver os avisos que ele pode produzir. Você pode evitar
algumas dores de cabeça no futuro, bem como aprender algumas técnicas de estilo de
código.

Pressione Alt+F11 (ou selecione Analisar>Executar Análise de Código na Solução no


menu superior) para iniciar a análise de código estático.

Os avisos novos ou atualizados são exibidos na guia Lista de Erros na parte inferior do
IDE. Selecione um aviso para ir até ele no código.

Usar as Ações Rápidas para corrigir ou


refatorar o código
As Ações Rápidas, disponíveis nos ícones de lâmpada ou chave de fenda, permitem
refatorar o código embutido. Elas são uma maneira fácil de corrigir avisos comuns com
rapidez e eficiência no código C#, C++ e Visual Basic. Para acessá-las, clique com o
botão direito do mouse em uma linha ondulada de aviso e selecione Ações Rápidas e
refatorações. Ou, quando o cursor estiver na linha com o rabisco colorido, pressione
Ctrl+ou selecione a lâmpada, a lâmpada de erro ou o ícone de chave de fenda na
margem. O Visual Studio mostra uma lista de possíveis correções ou refatorações que
podem ser aplicadas àquela linha de código.

As Ações Rápidas podem ser usadas sempre que os analisadores de código determinam
que há uma oportunidade para corrigir, refatorar ou melhorar o código. Selecione
qualquer linha de código, clique com o botão direito do mouse para abrir o menu de
contexto e selecione Ações Rápidas e refatorações. Se opções de refatoração ou
aprimoramento estiverem disponíveis, elas serão exibidas. Caso contrário, a mensagem
Nenhuma ação rápida disponível aqui é exibida no canto inferior esquerdo do IDE.

Com a experiência, é possível usar rapidamente as teclas de direção e Ctrl+. para


verificar se há oportunidades de refatoração fáceis e limpar seu código!

Executar limpeza de código


O Visual Studio oferece a formatação sob demanda de seu arquivo de código C#,
incluindo preferências de estilo de código com o botão de Limpeza de código na parte
inferior do editor.

Além de formatar o arquivo para espaços, recuos, entre outros, a Limpeza de Código
também aplica um conjunto de convenções de estilo de código definidas por você. Suas
preferências para cada estilo de código são lidas no arquivo EditorConfig, caso tenha
um para o projeto ou das configurações de estilo de código na caixa de diálogo
Opções.
Depurar seu código em execução
Agora que você compilou seu código com êxito e fez uma limpeza rápida, execute-o
pressionando F5 ou selecionando Depurar>Iniciar Depuração. Essa ação inicia o
aplicativo em um ambiente de depuração, para que você possa observar seu
comportamento em detalhes. O IDE do Visual Studio muda enquanto o aplicativo é
executado: a janela Saída é substituída por duas novas (na configuração de janela
padrão), a janela com guias Autos/Locais/Inspeção e a janela com guias Pilha de
Chamadas/Pontos de Interrupção/Configuração de Exceção/Saída. Essas janelas têm
várias guias que permitem inspecionar e avaliar as variáveis, os threads, as pilhas de
chamadas e outros comportamentos do aplicativo enquanto ele é executado.

Pare o aplicativo pressionando Shift+F5 ou clicando no botão Parar. Se preferir, apenas


feche a janela principal do aplicativo (ou a caixa de diálogo da linha de comando).

Se seu código for executado perfeitamente e exatamente como esperado, parabéns! No


entanto, às vezes, seu código pode parar de responder ou falhar ou fornecer alguns
resultados estranhos. Nesse caso, você deve tentar encontrar a origem desses
problemas e corrigir os bugs.

Definir pontos de interrupção simples


Pontos de interrupção são o recurso mais básico e essencial da depuração confiável. Um
ponto de interrupção indica quando o Visual Studio deve suspender o código em
execução para que você possa examinar os valores das variáveis ou o comportamento
de memória ou se uma ramificação de código está sendo executada. Você não precisa
recriar um projeto depois de configurar e remover pontos de interrupção.

Defina um ponto de interrupção clicando na margem distante da linha em que você


deseja que a interrupção ocorra ou pressione F9 para definir um ponto de interrupção
na linha de código atual. Quando você executa o código, ele é pausado (ou
interrompido) antes de as instruções para esta linha de código serem executadas.
Os usos comuns para os pontos de interrupção incluem:

Para restringir a origem de uma falha ou programa sem resposta, distribua os


pontos de interrupção ao longo e ao redor do código da chamada de método que
você acredita que está causando a falha. Conforme você executa o código no
depurador, remova e redefina os pontos de interrupção mais próximos até
encontrar a linha de código incorreta. Consulte a próxima seção para aprender a
executar o código no depurador.

Ao introduzir um novo código, defina um ponto de interrupção no início dele e


execute o código para verificar se ele está se comportando conforme o esperado.

Se você implementou um comportamento complicado, defina pontos de


interrupção para o código de algoritmo, de modo que você possa inspecionar os
valores das variáveis e dos dados quando o programa for interrompido.

Se estiver escrevendo um código C ou C++, use pontos de interrupção para


interromper o código, de modo que você possa inspecionar os valores de
endereço (procure NULL) e as contagens de referência durante a depuração
devido a falhas relacionadas à memória.

Para obter mais informações sobre como usar pontos de interrupção, confira Usar
pontos de interrupção no depurador do Visual Studio.

Inspecionar seu código no tempo de execução


Quando seu código em execução atinge um ponto de interrupção e pausa, a linha de
código marcada em amarelo (a instrução atual) não foi executada ainda. Neste ponto,
poderá ser útil executar a instrução atual e inspecionar os valores alterados. Você pode
usar vários comandos step para executar o código no depurador. Se o código marcado
for uma chamada de método, você poderá intervir nele pressionando F11. Você também
pode ultrapassar a linha de código pressionando F10. Para mais comandos e detalhes
sobre como percorrer o código, leia Navegar pelo código usando o depurador.
Na ilustração anterior, você pode avançar uma instrução do depurador pressionando
F10 ou F11 (como não há nenhuma chamada de método, os dois comandos têm o
mesmo resultado).

Quando o depurador entra em pausa, você pode inspecionar suas variáveis e pilhas de
chamadas para determinar o que está acontecendo. Os valores estão nos intervalos que
você espera ver? As chamadas estão sendo feitas na ordem correta?

Focalize uma variável para ver seu valor atual e suas referências. Se você observar um
valor que não esperava, provavelmente, haverá um bug no código anterior ou de
chamada. Para mais informações, confira Introdução ao Depurador do Visual Studio.

Além disso, o Visual Studio exibe a janela Ferramentas de Diagnóstico, na qual você
pode observar o uso de memória e CPU do aplicativo ao longo do tempo. Mais tarde no
desenvolvimento do seu aplicativo, você pode usar essas ferramentas para procurar uso
intenso da CPU ou alocação de memória inesperada. Use-a com a janela Inspeção e
com os pontos de interrupção para determinar o que está ocasionando o uso intenso
inesperado ou os recursos não liberados. Para obter mais informações, confira
Introdução às ferramentas de criação de perfil (C#, Visual Basic, C++, F#).

Executar testes de unidade


Testes de unidade são a primeira linha de defesa contra bugs no código porque, quando
realizados corretamente, eles testam uma única "unidade" de código, normalmente uma
única função, e geralmente são muito mais fáceis de serem depurados do que o
programa completo. O Visual Studio instala as estruturas de teste de unidade da
Microsoft para código gerenciado e nativo. Use uma estrutura de teste de unidade para
criar testes de unidade, executá-los e relatar os resultados desses testes. Execute os
testes de unidade novamente quando fizer alterações para testar se o código ainda está
funcionando corretamente. Com o Visual Studio Enterprise Edition, você pode executar
testes automaticamente após cada build.
Comece lendo Gerar testes de unidade para teste de fuzzing usando o IntelliTest.

Para saber mais sobre testes de unidade no Visual Studio e como eles podem ajudá-lo a
criar código de melhor qualidade, leia Noções básicas de teste de unidade.

Confira também
Introdução ao depurador
Gerar, corrigir e refatorar código
Explorar a documentação do depurador
Guia de produtividade para o Visual
Studio
Artigo • 08/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Se você quer economizar tempo enquanto estiver escrevendo código, está no lugar
certo. Este guia de produtividade inclui dicas que podem ajudar a começar a usar o
Visual Studio, escrever código, depurar código, manipular erros e usar atalhos de
teclado, tudo em uma página.

Para saber mais sobre atalhos de teclado úteis, confira Atalhos de produtividade. Para
obter uma lista completa de atalhos de comando, confira Atalhos de teclado padrão.

Introdução
Economize o tempo gasto examinando menus pesquisando rapidamente tudo de que
você precisa, incluindo comandos, configurações, documentação e opções de
instalação. Consulte atalhos de teclado correspondentes a comandos nos resultados da
pesquisa no Visual Studio para memorizá-los com mais facilidade.

Simular código usando a lista de tarefas. Se você não tiver requisitos suficientes
para concluir um trecho de código, utilize a Lista de Tarefas para rastrear
comentários de código que utilizam tokens como TODO e HACK , ou tokens
personalizados, e para gerenciar atalhos que levam diretamente a um local
predefinido no código. Para obter mais informações, consulte Usando a Lista de
Tarefas.

Usar atalhos de Gerenciador de Soluções. Se você é novo no Visual Studio, esses


atalhos são úteis e economizam tempo enquanto você está se aproximando para
acelerar em uma nova base de código. Para ver a lista completa de atalhos, confira
Atalhos de teclado padrão no Visual Studio.

Identificar e personalizar atalhos de teclado no Visual Studio. Você pode


identificar atalhos de teclado para comandos do Visual Studio, personalizar esses
atalhos e exportá-los para que outras pessoas os usem. Você sempre pode
localizar e alterar um atalho de teclado na caixa de diálogo Opções.

Tornar o Visual Studio mais acessível. O Visual Studio tem recursos internos de
acessibilidade que são compatíveis com leitores de tela e outras tecnologias
assistenciais. Confira Dicas e truques de acessibilidade para o Visual Studio para
obter a lista completa de recursos disponíveis.

Conferir o ciclo de vida e manutenção do produto Visual Studio. Para obter


informações sobre como obter atualizações do Visual Studio, opções de suporte
para clientes Enterprise e Professional, suporte para versões mais antigas do Visual
Studio e componentes não cobertos pela manutenção do Visual Studio, consulte
Ciclo de vida e manutenção do produto Visual Studio.

Instalar e gerenciar pacotes NuGet no Visual Studio. A interface do usuário do


Gerenciador de Pacotes do NuGet no Visual Studio no Windows possibilita instalar,
desinstalar e atualizar pacotes do NuGet com facilidade em projetos e soluções.
Para obter mais informações, consulte Instalar e gerenciar pacotes no Visual Studio
usando o Gerenciador de Pacotes do NuGet.

Escrever código
Escreva código mais rapidamente usando os seguintes recursos.

Usar comandos de conveniência. O Visual Studio contém vários comandos para


ajudar você a realizar tarefas comuns de edição mais rapidamente. Por exemplo,
você pode escolher um comando para duplicar com facilidade uma linha de
código sem precisar copiá-la, reposicionar o cursor e, em seguida, colá-la. Escolha
Editar>Duplicar ou pressione Ctrl+E,V. Expanda ou recolha rapidamente uma
seleção de texto escolhendo Editar>Avançado>Expandir Seleção ou
Editar>Avançado>Recolher Seleção ou pressionando Shift+Alt+= ou Shift+Alt+-.

Use o IntelliSense. À medida que você inserir código no editor, informações do


IntelliSense, como Membros da Lista, Informações do Parâmetro, Informações
Rápidas, Ajuda de Assinatura e Completar Palavras, serão exibidas. Esses recursos
dão suporte à correspondência difusa de texto; por exemplo, as listas de
resultados para Membros da Lista incluem não só entradas que começam com os
caracteres que você inseriu, mas também entradas que contêm a combinação de
caracteres em qualquer lugar de seus nomes. Para obter mais informações, confira
Usar o IntelliSense.

Altere a inserção automática de opções do IntelliSense à medida que você insere


o código. Ao alternar o IntelliSense para o modo de sugestão, você pode
especificar que opções do IntelliSense será inseridas somente se você as escolher
explicitamente.
Para habilitar o modo de sugestão, escolha as teclas Ctrl+Alt+Barra de espaço ou,
na barra de menus, escolha Editar>IntelliSense>Ativar/Desativar Modo de
Preenchimento.

Use snippets de código. Você pode usar snippets internos ou criar seus próprios
snippets.

Para inserir um snippet, na barra de menus, escolha Editar>IntelliSense>Inserir


Snippet ou Cercar com, ou abra o menu de atalho em um arquivo e escolha
Trecho>Inserir Snippet ou Cercar com. Para obter mais informações, consulte
Snippets de Código.

Colar JSON ou XML como classes. Copie qualquer fragmento de texto JSON ou
XML para a área de transferência e cole-o como classes .NET fortemente tipadas
em qualquer arquivo de código C# ou Visual Basic. Para fazer isso, use
Editar>Colar Especial>Colar JSON como Classes (ou Colar XML como Classes).

Corrija erros de código embutidos. As Ações Rápidas permitem refatorar, gerar


ou, de outro modo, modificar o código de maneira fácil com uma única ação. Essas
ações podem ser aplicadas usando os ícones de chave de fenda ou de lâmpada
ou pressionando Alt+Enter ou Ctrl+. quando o cursor estiver na linha de
código correta. Consulte Ações Rápidas para obter mais informações.

Exibir e editar a definição de um elemento de código. Você pode exibir e editar


rapidamente o módulo no qual um elemento de código, como um membro, uma
variável ou um local, é definido.

Para abrir uma definição em uma janela pop-up, realce o elemento e escolha as
teclas Alt+F12, ou abra o menu de atalho do elemento e, em seguida, escolha
Inspecionar Definição. Para abrir uma definição em uma janela de código
separada, abra o menu de atalho para o elemento de código e então escolha Ir
Para Definição.

Use aplicativos de exemplo. É possível acelerar o desenvolvimento de aplicativos


baixando e instalando aplicativos de exemplo do Microsoft Developer Network .
Você também pode aprender uma tecnologia em particular ou um conceito
baixando e explorando um Sample Pack para essa área.

Altere a formatação de chaves com Formatação/Novas Linhas. Use a página de


opções Formatação para definir opções para formatar o código no editor de
código, incluindo novas linhas. Para obter mais informações sobre como usar essa
configuração em C#, consulte Caixa de diálogo Opções: Editor de Texto > C# >
Estilo de Código > Formatação. Para C++, consulte Definir suas preferências de
codificação C++ no Visual Studio. Para Python, consulte Formatar código Python.

Alterar o recuo com Guias. Use configurações do editor personalizado, adaptadas


para cada base de código, para impor estilos de codificação consistentes para
vários desenvolvedores que trabalham no mesmo projeto em diferentes editores e
IDEs. Verifique se toda a equipe segue as mesmas convenções de linguagem,
convenções de nomenclatura e regras de formatação. Como essas configurações
personalizadas são portáteis e viajam com o código, você pode impor estilos de
codificação mesmo fora do Visual Studio. Para obter mais informações, consulte
Opções, Editor de Texto, Todas as Linguagens, Guias.

Tente copiar e cortar o recuo automático. Copie o código do Visual Studio para
outro programa (Outlook, Teams etc.), sem precisar corrigir manualmente o recuo
depois de colar seu código. Disponível no Visual Studio 2022 versão 17.7 e
posterior.

Navegar dentro do código e do IDE


Você pode usar várias técnicas para localizar e mover para locais específicos em seu
código com mais rapidez. Você também pode alterar o layout das janelas do Visual
Studio com base em suas preferências.

Usar indicadores em linhas de código. Você pode usar indicadores para navegar
rapidamente para linhas específicas do código em um arquivo.

Para definir um indicador, na barra de menus, escolha


Editar>Indicadores>Ativar/Desativar Indicador. Você pode exibir todos os
indicadores para uma solução na janela Indicadores. Para obter mais informações,
confira Definir indicadores no código.

Pesquisar definições de símbolo em um arquivo. Você pode pesquisar em uma


solução para localizar definições de símbolos e nomes de arquivos, mas os
resultados da pesquisa não incluirão os namespaces ou as variáveis locais.

Para acessar esse recurso, na barra de menus, escolha Editar>Navegar até.

Procure a estrutura geral do seu código. No Gerenciador de Soluções, você pode


pesquisar e procurar classes e seus tipos e membros em seus projetos. Você
também pode pesquisar símbolos, exibir a Hierarquia de Chamada de um método,
localizar referências de símbolos e realizar outras tarefas. Se você escolher um
elemento de código no Gerenciador de Soluções, o arquivo associado será aberto
em uma guia Visualização e o cursor se moverá para o elemento no arquivo. Para
obter mais informações, confira Exibir a estrutura do código.

Ir para um local em um arquivo com o modo de mapa. O modo de mapa exibe


linhas de código, em miniatura, na barra de rolagem. Para obter mais informações
sobre esse modo de exibição, consulte Como personalizar a barra de rolagem.

Entender a estrutura de código com o mapa de códigos. Mapas de códigos


podem ajudar você a visualizar dependências no código e ver como ele se encaixa
sem ler arquivos e linhas de código. Para saber mais, confira Mapear as
dependências com mapas de código.

Consultar arquivos usados com frequência com Editar/Ir para Arquivo Recente.
Use os comandos Ir para no Visual Studio para executar uma pesquisa restrita no
código para localizar rapidamente os itens especificados. Para obter instruções
detalhadas, consulte Localizar código usando comandos Ir para.

Mova a janela Propriedades para o lado direito. Se você está procurando um


layout de janela mais familiar, pode mover o janela Propriedades no Visual Studio
pressionando F4.

Localizar itens mais rapidamente


Você pode procurar no IDE comandos, arquivos e opções, bem como filtrar o conteúdo
de janelas de ferramenta para mostrar somente as informações relevantes para sua
tarefa atual.

Filtrar o conteúdo de janelas de ferramentas. Você pode pesquisar no conteúdo


de muitas janelas de ferramentas, como a Caixa de Ferramentas, a janela
Propriedades e o Gerenciador de Soluções, mas só poderá exibir itens cujos
nomes contenhamos caracteres que você especificar.

Exiba apenas os erros que você deseja resolver. Se você escolher o botão Filtrar
na barra de ferramentas Lista de Erros, poderá reduzir o número de erros que
aparecem na janela Lista de Erros. Você só pode exibir os erros em arquivos que
estão abertos no editor, somente os erros no arquivo atual ou somente os erros no
projeto atual. Você também pode pesquisar na janela Lista de Erros para localizar
erros específicos.

Localizar caixas de diálogo, comandos de menu, opções e mais. Na caixa de


pesquisa, digite as palavras-chave ou frases dos itens que você está tentando
localizar. Por exemplo, as seguintes opções aparecerão se você inserir novo
projeto:
Pressione Ctrl+Q para ir direto à caixa de pesquisa.

Depurar o código
A depuração pode levar tempo, mas as dicas a seguir podem ajudá-lo a acelerar o
processo.

Usar as ferramentas de depurador do Visual Studio. No contexto do Visual


Studio, quando você depura seu aplicativo, isso geralmente significa que você está
executando o aplicativo no modo de depurador. O depurador fornece várias
maneiras de ver o que o código está fazendo enquanto é executado. Consulte
Introdução ao Depurador do Visual Studio para obter um guia para começar.

Definir pontos de interrupção temporários. Você pode criar um ponto de


interrupção temporário na linha de código atual e iniciar o depurador
simultaneamente. Quando você atinge esta linha de código, o depurador entra em
modo de interrupção. Para obter mais informações, confira Navegar pelo código
com o depurador.

Para usar este recurso, escolha as teclas Ctrl+F10 ou abra o menu de atalho para a
próxima linha de código em que você deseja quebrar e, em seguida, escolha
Executar até o cursor.

Mover o ponto de execução durante a depuração. Você pode mover o ponto de


execução atual para uma seção de código diferente e então reiniciar a depuração
desse ponto. Essa técnica será útil se você quiser depurar uma seção de código
sem precisar recriar todas as etapas necessárias para acessar a seção. Para obter
mais informações, confira Navegar pelo código com o depurador.

Para mover o ponto de execução, arraste a ponta da seta amarela para um local
onde deseja definir a declaração seguinte no mesmo arquivo de origem e escolha
a tecla F5 para continuar a depuração.

Capturar informações de valor de variáveis. Você pode adicionar um DataTip a


uma variável no seu código e fixá-lo para poder acessar o último valor conhecido
da variável após a conclusão da depuração. Para obter mais informações, consulte
Exibir valores de dados em Dicas de Dados.

Para adicionar um DataTip, o depurador deverá estar em modo de interrupção.


Coloque o cursor na variável e então escolha o botão de fixação no DataTip em
que ele aparece. Quando a depuração é interrompida, um ícone de pino azul
aparece no arquivo de origem ao lado da linha de código que contém a variável.
Se você apontar para o pino azul, será exibido o valor da variável de sessão de
depuração mais recente.

Limpar a janela Imediata. Você pode apagar rapidamente o conteúdo da Janela


imediata no tempo de design inserindo >cls ou >Edit.ClearAll

Para obter mais informações sobre outros comandos, consulte aliases de comando
do Visual Studio.

Localizar alterações de código e outros históricos com o CodeLens. O CodeLens


permite que você mantenha o foco no trabalho enquanto descobre o que
aconteceu com seu código – sem sair do editor. Encontre referências e alterações
no código, bugs vinculados, itens de trabalho, revisões de código e testes de
unidade.

Usar o Live Share para depurar em tempo real com outras pessoas. O Live Share
permite que você edite e depure em colaboração com outras pessoas em tempo
real, sejam quais forem as linguagens de programação usadas ou os tipos de
aplicativo criados. Para obter mais informações, confira O que é o Visual Studio
Live Share?

Usar a Janela Interativa para gravar e testar código pequeno. O Visual Studio
fornece uma janela interativa de REPL (leitura-avaliação-impressão-loop), que
permite inserir código arbitrário e ver resultados imediatos. Esse modo de
codificação ajuda você a aprender e experimentar com APIs e bibliotecas e a
desenvolver de modo interativo código funcional para incluir em seus projetos.
Para Python, consulte Trabalhar com a Janela Interativa do Python. O recurso de
Janela Interativa também está disponível para C#.

Acessar ferramentas do Visual Studio


Você poderá acessar rapidamente o Prompt de Comando do Desenvolvedor ou outra
ferramenta do Visual Studio se você fixá-la no menu Iniciar ou na barra de tarefas.

1. No Windows Explorer, procure %ProgramData%\Microsoft\Windows\Start


Menu\Programs\Visual Studio 2019\Visual Studio Tools.

2. Clique com botão direito do mouse ou abra o menu de contexto para o Prompt
de Comando do Desenvolvedor e, em seguida, selecione Fixar na tela inicial ou
Fixar na barra de tarefas.

Gerenciar arquivos, barras de ferramentas e


janelas
A qualquer momento, você pode estar trabalhando em vários arquivos de código e se
mover entre várias janelas de ferramenta enquanto desenvolve um aplicativo. Você
pode se manter organizado usando as seguintes dicas:

Manter arquivos que você usa frequentemente visíveis no editor. Você pode fixar
arquivos no lado esquerdo da guia de modo que eles permaneçam visíveis,
independentemente de quantos arquivos estiverem abertos no editor.

Para fixar um arquivo, escolha a guia do arquivo e, então, selecione o botão


Ativar/desativar status de pin.

Mover documentos e janelas para outros monitores. Se você usar mais de um


monitor quando desenvolver aplicativos, poderá trabalhar em partes do seu
aplicativo mais facilmente movendo arquivos que estejam abertos no editor para
outro monitor. Você também pode mover janelas de ferramentas, como janelas do
depurador, para outro monitor e encaixar janelas de documento e de ferramenta
para criar "rafts". Para obter mais informações, consulte Personalizar layouts de
janela e guias no Visual Studio.

Você também pode gerenciar arquivos mais facilmente criando outra instância do
Gerenciador de Soluções e movendo-a para outro monitor. Para criar outra
instância do Gerenciador de Soluções, abra um menu de atalho no Gerenciador
de Soluções e então escolha Novo Modo de Exibição do Gerenciador de
Soluções.
Personalizar as fontes que aparecem no Visual Studio. Você pode alterar o tipo
de fonte, a cor e o tamanho usados para o texto no IDE. Por exemplo, você pode
personalizar a cor de elementos de código específicos no editor e a fonte em
janelas de ferramenta ou por meio do IDE. Para obter mais informações, confira
Como alterar fontes e cores e Como alterar fontes e cores no editor.

Confira também
Postagem no blog de dicas e truques sobre o Visual Studio
Atalhos de teclado padrão para comandos usados com frequência
Como personalizar menus e barras de ferramentas
Passo a passo: criar um aplicativo
Dicas e truques de acessibilidade
Dicas de atalho para o Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode navegar no Visual Studio de maneira mais fácil usando os atalhos deste
artigo. Esses atalhos incluem atalhos de teclado e mouse, bem como texto que você
pode digitar para ajudar na realização de uma tarefa com mais facilidade.

Para obter uma lista abrangente de atalhos de comando e uma folha de referências de
atalhos de teclado imprimível, consulte Atalhos de teclado no Visual Studio.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Atalhos de teclado padrão no Visual Studio para Mac.

Gerenciamento de janelas
Tarefa Atalho

Maximizar janela de flutuação Clique duplo na barra de título

Maximizar/minimizar janelas Win+Seta para cima / Win+Seta para baixo

Reencaixar janela flutuante Ctrl+clique duplo na barra de título

Mover/encaixar janelas flutuantes Win+Seta para a esquerda / Win+Seta para a direita

Fechar documento ativo Ctrl+F4

Mostrar lista de arquivos abertos Ctrl+Alt+Seta para baixo

Mostrar todas as janelas flutuantes CTRL+SHIFT+M

Mostrar lista de atalhos Win+Alt+N

Iniciar nova instância Win+Shift+N

Alternar entre janelas Win+N

Pesquisar
Tarefa Atalho

Pesquisa do Gerenciador de Soluções Ctrl+;

Focar a caixa de pesquisa em qualquer janela de Alt+` quando a janela de


ferramentas (exceto o editor) ferramentas tiver foco

Pesquisar Visual Studio Ctrl+Q

Pesquisar filtro de resultados da caixa @opt – Opções


@cmd – Comandos
@mru – Usados recentemente
@doc – Abrir documentos

Pesquisar em Opções de Ferramentas Ctrl+E

Localizar no editor
Tarefa Atalho

Localização Rápida Ctrl+F

Resultado Seguinte Rápido de Alterações Enter

Resultado Anterior de Localização Rápida Shift+Enter

Menu Suspenso Expansão de Localização Rápida Alt+Seta para baixo

Ignorar Localizar Esc

Substituição Rápida CTRL+H

Substituição Rápida – Substituir Próximo Alt+R

Substituição Rápida – Substituir Tudo Alt+A

Localizar em Arquivos CTRL+SHIFT+F

Substituir nos Arquivos Ctrl+Shift+H

Editor de código
Tarefa Atalho

Ir para Todos CTRL+T

Ir para arquivos recentes Ctrl+T,R


Tarefa Atalho

Pontos de inserção múltiplos com vários cursores Ctrl+Alt+clique

Adicionar seleção de correspondência com vários cursores Shift+Alt+Ins

Formatar Documento Ctrl+K,D

Modo de sugestão do IntelliSense Ctrl+Alt+Espaço (Ativar/desativar)

Forçar a exibição do IntelliSense Ctrl+J

Ações Rápidas CTRL+.

Seletor de trechos Ctrl+K,X ou ?,Guia (Visual Basic)

Envolver com Ctrl+K,S

Mostrar Informações Rápidas Ctrl+K,I

Navegar para CTRL+,

Navegar em referências realçadas Ctrl+Shift+Para cima (Anterior)


Ctrl+Shift+Para baixo (Próximo)

Zoom do editor Ctrl+Shift+> (Entrada)


Ctrl+Shift+< (Saída)

Bloquear seleção Mantenha Alt pressionada e


arraste o mouse
Shift+Alt+Teclas de direção

Mover linha para cima/para baixo Alt+Seta para cima / Alt+Seta


para baixo

Duplicar linha Ctrl+E,V

Expandir seleção Shift+Alt+=

Seleção de contrato Shift+Alt+-

Ir para definição F12

Inspecionar Definição Alt+F12

Pilha Ir para Definição Ctrl+Shift+8 (Voltar)


Ctrl+Shift+7 (Avançar)

Feche a janela Inspecionar Definição Esc

Promover a janela Inspecionar Definição para uma guia de Ctrl+Alt+Início


documento regular
Tarefa Atalho

Navegar entre várias janelas Inspecionar Definição Ctrl+Alt+- e Ctrl+Alt+=

Navegar entre vários resultados de espiada F8 e Shift+F8

Alterne entre a janela do editor de códigos e a janela de Shift+Esc


definição de auge

Ir para bloco delimitador Ctrl+Alt+Seta para cima

Ir para problema seguinte/anterior Alt+PgUp / Alt+PgDn

Menu de navegação contextual Alt+`

Barras de ferramentas
Tarefa Atalho

Adicionar botões Selecione o botão de estouro da barra de


ferramentas

Localizar a combinação na barra de Ctrl+D


ferramentas padrão

Localizar o modo de comando da caixa de Digite >


texto

Crie novos alias Digite alias <new alias><comando> na janela


Comando

Depuração
Tarefa Atalho

Iniciar a depuração F5

Parar a depuração Shift+F5

Reiniciar a depuração Ctrl+Shift+F5

Passar por F10

Avançar F11

Sair Shift+F11

Executar até o cursor Ctrl+F10


Tarefa Atalho

Definir próxima instrução Ctrl+Shift+F10

Definir e ativar pontos de interrupção F9

Desabilitar ponto de interrupção Ctrl+F9

Janela Imediata Ctrl+Alt+I

Modo de comando de janela imediato Digite >

Janela imediata – limpar cache Tipo cls

Janela imediata – valor da impressão Digite ?varname

Confira também
Dicas e truques de acessibilidade
Recursos de produtividade no Visual Studio
Atalhos de teclado no Visual Studio
Atalhos de teclado padrão no Visual Studio para Mac
Guia de produtividade do Visual Studio
para desenvolvedores de C#
Artigo • 08/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Saiba como o Visual Studio torna desenvolvedores de .NET que usam C# mais
produtivos do que nunca. Aproveite nossas melhorias em desempenho e produtividade
como a navegação para assemblies descompilados, sugestões de nomes de variáveis
durante a digitação, um modo de exibição de hierarquia no Gerenciador de Testes,
opção Ir para Todos (Ctrl+T) para navegar para as declarações de
arquivo/tipo/membro/símbolo, um Auxiliar de Exceção inteligente, configuração e
imposição de estilo de código e muitas correções de código e refatorações.

Para aumentar a produtividade geral para .NET, C++ e outras linguagens, confira o Guia
de produtividade do Visual Studio. Para saber mais sobre atalhos de teclado úteis,
confira Atalhos de produtividade. Para obter uma lista completa de atalhos de comando,
confira Atalhos de teclado padrão.

Usar atalhos de teclado de um editor diferente


Se você estiver vindo de outro IDE ou ambiente de codificação, poderá alterar o
esquema do teclado para o Visual Studio Code ou ReSharper (Visual Studio):
Algumas extensões também oferecem esquemas de teclado:

Teclas de acesso para Visual Studio (ReSharper/IntelliJ)


Emulação de Emacs
VSVim

Estes são os atalhos populares do Visual Studio:

Atalho (todos os Comando Descrição


perfis)

CTRL+T Ir para Todos Navegar diretamente para qualquer


declaração de símbolo, arquivo, tipo ou
membro

F12 (também Ir para definição Vá até onde um símbolo estiver definido


Ctrl+Clique)

Ctrl+F12 Ir Para Implementação Navegue de um membro ou tipo base até


suas várias implementações

Shift+F12 Localizar Todas as Veja todas as referências de símbolo ou de


Referências literal

Alt+Home Ir Para a Base Navegar até a cadeia de herança


Atalho (todos os Comando Descrição
perfis)

Ctrl+. (também Ações e Refatorações Veja quais correções de código, ações de


Alt+Enter no Perfil Rápidas geração de código, refatorações ou outras
C#) ações rápidas estão disponíveis na posição
do cursor ou na seleção do código

Ctrl+D Duplicar linha Duplica a linha de código em que o cursor


está

Shift+Alt++/- Expandir/Reduzir seleção Expande ou contrai a seleção atual no


editor

Shift + Alt + . Inserir próximo sinal de Adiciona uma seleção e um cursor no


interpolação próximo local que corresponde à seleção
correspondente atual

Ctrl+Q Pesquisar Pesquise todas as configurações do Visual


Studio

F5 Iniciar Depuração Inicie a depuração do aplicativo

Ctrl+F5 Executar sem Depurar Execute o aplicativo localmente sem


depuração

Ctrl+K,D (Perfil Formatar Documento Limpe as violações de formatação de um


Padrão) ou Ctrl+E,D arquivo com base nas configurações de
(Perfil C#) nova linha, de espaçamento e de recuo

Ctrl+\,Ctrl+E (Perfil Exibir Lista de Erros Veja todos os erros no documento, no


padrão) ou Ctrl+W,E projeto ou na solução
(Perfil C#)

Alt + PgUp/PgDn Ir para o problema Vá para o erro, aviso ou sugestão anterior


seguinte/anterior ou próximo em seu documento

Ctrl+K,/ Alternar linha de único Esse comando adiciona ou remove um


comentário/cancelar os comentário de linha única, dependendo do
comentários fato de sua seleção já estar comentada

CTRL+SHIFT+/ Alternar bloquear Este comando adiciona ou remove


comentário/cancelar os comentários do bloco dependendo do que
comentários você selecionou

7 Observação

Algumas extensões desassociam as associações de teclas padrão do Visual Studio.


Você pode restaurar as associações de teclas para os respectivos padrões
acessando Ferramentas>Importar e Exportar Configurações>Redefinir todas as
configurações ou Ferramentas>Opções>Teclado>Redefinir.

Para obter mais informações sobre os comandos e atalhos de teclado, confira os Atalhos
de produtividade. Ou confira Atalhos de teclado no Visual Studio para obter uma lista
abrangente, juntamente com uma folha de referência para download.

Navegar rapidamente para arquivos ou tipos


O Visual Studio tem um recurso chamado Ir para Todos que você pode usar para ir
rapidamente para qualquer arquivo, tipo, membro ou declaração de símbolo. Para abri-
lo na barra de menus, selecione Editar>Ir para>Ir para Todos. Ou você pode abri-lo
usando o atalho de teclado Ctrl+T.

Uma janela pequena é exibida na parte superior direita do editor de código.

Você pode usar este recurso para executar as seguintes ações:

Altere a localização da barra de pesquisa ou desative a visualização de navegação


dinâmica usando o ícone de engrenagem.
Filtre os resultados usando uma sintaxe como t mytype .
Defina o escopo da pesquisa somente para o documento atual.
Há suporte para a correspondência de minúsculas concatenadas.

Para obter mais informações sobre Ir para Todos, consulte Localizar código usando
comandos Ir para.

Impor regras de estilo de código


Use um arquivo EditorConfig para codificar as convenções de codificação e aplicá-las à
fonte.

Adicione um arquivo EditorConfig padrão ou estilo .NET ao seu projeto


escolhendo Adicionar>Novo Item no submenu Adicionar menu de contexto no
Gerenciador de Soluções. Em seguida, na caixa de diálogo Adicionar Novo Item,
pesquise por "editorconfig". Selecione qualquer um dos modelos de item de
Arquivo editorconfig e escolha Adicionar.

Criar automaticamente um arquivo .editorconfig com base nas configurações de


estilo de código em Ferramentas>Opções>Editor de Texto>C#>Estilo de Código.
O recurso de inferência de código do IntelliCode para Visual Studio infere seus
estilos de código com base no código existente. Ele cria um arquivo EditorConfig
não vazio com suas preferências de estilo de código já definidas.

Configure o nível de gravidade de uma regra de estilo de código diretamente por


meio do editor. Se você não tiver um arquivo .editorconfig, o Visual Studio gerará
um para você. Coloque o cursor sobre o erro, o aviso ou a sugestão e digite Ctrl+.
para abrir o menu Ações Rápidas e Refatoração. Selecione Configurar ou
Suprimir problemas. Em seguida, selecione a regra e escolha o nível de gravidade
que deseja configurar para essa regra. Isso atualizará o EditorConfig existente com
a nova severidade da regra.

Confira a documentação de opções de regra de estilo de código do .NET, que também


inclui um exemplo de um arquivo EditorConfig completo.
Limpeza de código
O Visual Studio oferece a formatação sob demanda de seu arquivo de código, incluindo
preferências de estilo de código com o recurso de Limpeza de Código. Para executar a
Limpeza de Código, selecione o ícone de vassoura na parte inferior do editor ou
pressione Ctrl+K, Ctrl+E.

Você também pode fazer a limpeza de código em todo o projeto ou em toda a solução.
Clique com o botão direito do mouse no nome do projeto ou da solução no
Gerenciador de Soluções, selecione Análise e Limpeza de Código e selecione Executar
Limpeza de Código.

Além de formatar seu arquivo em relação a espaços, recuos etc, a Limpeza de Código
também se aplica aos estilos de código selecionados. Suas preferências para cada estilo
de código são lidas no arquivo EditorConfig, caso tenha um para o projeto ou das
configurações de estilo de código na caixa de diálogo Opções.
Refatorações e correções de código
O Visual Studio vem com muitas refatorações, ações de geração de códigos e correções
de códigos. As linhas onduladas vermelhas representam erros, as linhas onduladas
verdes representam avisos e os três pontos cinzas representam sugestões de código.
Acesse as correções de código clicando selecionando o ícone de lâmpada ou chave de
fenda ou pressionando Ctrl+. ou Alt+Enter. Cada correção vem com uma janela de
visualização que mostra a diferença do código em tempo real de como a correção
funciona.

As correções rápidas e refatorações comuns incluem:

Renomear
Extrair Método
Alterar Assinatura do Método
Gerar Construtor
Gerar Método
Mover Tipo para Arquivo
Adicionar Null-Check
Adicionar parâmetro
Remover usos desnecessários
Loop Foreach para uma consulta LINQ ou um método LINQ
Subir os membros

Para saber mais, confira os recursos de geração de código.

Você pode instalar analisadores de .NET para sinalizar problemas de códigos. Ou


escrever sua própria refatoração ou correção de código com analisadores Roslyn.

Vários membros da comunidade escreveram extensões gratuitas que adicionam outras


inspeções de código:

Roslynator
SonarLint para Visual Studio

Localizar Usos, Ir Para Implementação e


Navegar para Assemblies Descompiladas
O Visual Studio tem muitos recursos para ajudar você a pesquisar e navegar em seu
código.
Recurso Atalho Detalhes/melhorias

Localizar Todas as Shift+F12 Os resultados são coloridos e podem ser agrupados por
Referências projeto, definição e tipo de referência, como leitura ou
escrita. Também é possível "bloquear" resultados.

Ir Para Ctrl+F12 É possível usar “Ir para definição” na palavra-chave


Implementação override para navegar até o membro substituído

Ir para definição F12 ou Pressione Ctrl enquanto clica para navegar até a
Ctrl+Clique definição

Inspecionar Alt+F12 Exibição embutida de uma definição


Definição

Visualizador de Linhas cinzas Passe o mouse para ver a estrutura do código


Estrutura pontilhadas
entre chaves

Navegação para F12 ou Navegue para a fonte externa (descompilada com o


assemblies Ctrl+Clique ILSpy) habilitando o recurso:
descompilados Ferramentas>Opções>Editor de
Texto>C#>Avançado>Habilitar a navegação para
fontes descompiladas.

IntelliSense aprimorado
Use o IntelliCode para Visual Studio para obter preenchimentos de código com
reconhecimento de contexto em vez de apenas uma lista em ordem alfabética. É
possível também treinar um modelo personalizado do IntelliSense com base em suas
próprias bibliotecas específicas de domínio.

Teste de unidade
Fizemos inúmeros aprimoramentos na experiência de teste. Você pode realizar testes
com as estruturas de teste MSTest (MSTest v1 ou MSTest v2), NUnit e XUnit.

A detecção de testes do Gerenciador de Testes é rápida.

Organize seus testes no Gerenciador de Testes com a classificação hierárquica.

O Live Unit Testing executa continuamente os testes afetados pelas alterações de


código e atualiza os ícones do editor embutido para informar o status dos testes.
Inclua ou exclua testes específicos ou projetos de teste pelo Live Test Set (conjunto
de teste de modo real). (somente na edição Visual Studio Enterprise.)
Para obter mais informações, confira Noções básicas sobre o teste de unidade.

Depuração
O Visual Studio inclui os seguintes recursos de depuração:

A capacidade de pesquisar uma cadeia de caracteres dentro das janelas Inspeção,


Autos e Locais.
Clique para executar, que permite focalizar uma linha de código, pressionar o ícone
verde 'executar' que é exibido e executar o programa até atingir essa linha.
O Auxiliar de Exceção, que coloca as informações mais importantes no nível
superior na caixa de diálogo, por exemplo, qual variável está null em uma
NullReferenceException .

Depuração para retroceder novamente, que permite voltar a pontos de


interrupção ou etapas anteriores e exibir o estado do aplicativo no passado.
Depuração de instantâneo, que permite investigar o estado de um aplicativo Web
online no momento em que uma exceção foi lançada (é necessário estar no Azure).

Controle de versão
No Visual Studio 2022, você pode usar o Git diretamente do IDE para criar, examinar,
fazer check-out e executar solicitações de pull. Para saber mais, consulte Como o Visual
Studio facilita o controle de versão com o Git.

Que outros recursos eu devo conhecer?


Aqui está uma lista dos recursos do editor e de produtividade para escrever código com
mais eficiência. Talvez seja necessário habilitar alguns recursos, pois eles ficam
desativados por padrão.

Recurso Detalhes Como habilitar

Arquivo local no Realça o arquivo ativo no Ferramentas>Opções>Projetos e


Gerenciador de Gerenciador de Soluções Soluções>Acompanhar Item Ativo no
Soluções Gerenciador de Soluções
Recurso Detalhes Como habilitar

Adicionar usos para Mostra uma lâmpada de erro Ferramentas>Opções>Editor de


tipos em assemblies de com uma correção de Texto>C#>Avançado>Sugerir usos
referência e pacotes do código para instalar um para tipos em assemblies de referência
NuGet pacote do NuGet para um e Sugerir usos para tipos em pacotes
tipo não referenciado NuGet

Habilitar análise de Ver todos os erros na Ferramentas>Opções>Editor de


solução completa solução na Lista de Erros Texto>C#>Avançado>Habilitar análise
completa da solução

Habilitar a navegação Habilite Ir Para a Definição Ferramentas>Opções>Editor de


para origens em tipos/membros de fontes Texto>C#>Avançado>Habilitar
descompiladas externas e usar o navegação para fontes descompiladas
descompilador ILSpy para
mostrar os corpos de
método

Modo de Altera o comportamento de Editar>IntelliSense>Alternar Modo de


conclusão/sugestão conclusão no IntelliSense. Os Preenchimento (ou pressione
desenvolvedores com Ctrl+Alt+Espaço no editor)
experiência em IntelliJ
tendem a não usar a
configuração padrão aqui.

CodeLens Exibe informações de Ferramentas>Opções>Editor de


referência de código e o Texto>Todas as Linguagens>CodeLens
histórico de alterações no
editor. (Os indicadores do
CodeLens de controle do
código-fonte não estão
disponíveis na edição do
Visual Studio Community.)

Snippets de código Ajudar a apagar um código Digite um nome de snippet e pressione


clichê comum Tab duas vezes.

Colar JSON ou XML Copie qualquer fragmento Editar>Colar Especial>Colar JSON


como classes de texto JSON ou XML para como Classes (ou Colar XML como
a área de transferência e Classes)
cole-o como classes .NET
fortemente tipadas em
qualquer arquivo de código
C#.

Copiar e cortar recuo Copie o código do Visual


Studio para outro programa
(Outlook, Teams etc.), sem
precisar corrigir
manualmente o recuo depois
Recurso Detalhes Como habilitar

de colar seu código.


Disponível no Visual Studio
2022 versão 17.7 e posterior.

Confira também
Documentação de C# do .NET
Trabalhando com C# no VS Code
Identificar e personalizar atalhos de
teclado no Visual Studio
Artigo • 08/01/2024

Você pode identificar atalhos de teclado para comandos do Visual Studio, personalizar
esses atalhos e exportá-los para que outras pessoas os usem. Muitos atalhos sempre
invocam os mesmos comandos, mas o comportamento de um atalho pode variar de
acordo com as seguintes condições:

Quais configurações de ambiente padrão você escolhe na primeira vez que abre o
Visual Studio, por exemplo, Desenvolvimento Geral ou Visual C#. (Para obter mais
informações sobre como alterar ou redefinir suas configurações, confira
Configurações do ambiente.)

Se você personalizou o comportamento do atalho.

Em que contexto você está quando escolhe o atalho. Por exemplo, o atalho F2
invocará o comando Edit.EditCell se você estiver usando o Designer de
Configurações e invocará o comando File.Rename se você estiver usando o
Gerenciador de Soluções.

Independentemente das configurações, da personalização e do contexto, você sempre


pode localizar e alterar um atalho de teclado na caixa de diálogo Opções. Você também
pode procurar os atalhos de teclado padrão de dezenas de comandos em Atalhos de
teclado populares. Para obter uma lista completa de todos os atalhos e dos respectivos
comandos, confira Atalhos de teclado no Visual Studio.

Se um atalho for atribuído a um comando no contexto Global e em mais nenhum outro


contexto, esse atalho sempre invocará o comando em questão. Porém, um atalho pode
ser atribuído a um comando no contexto Global e a um comando diferente em um
contexto específico. Se você usar tal atalho quando estiver no contexto específico, o
atalho invocará o comando para o contexto específico, e não para o contexto Global.
Para obter uma lista completa de todos os atalhos padrão, confira Atalhos globais.

7 Observação

Suas configurações e a edição do Visual Studio podem alterar os nomes e os locais


dos comandos de menu, bem como as opções que aparecem nas caixas de
diálogo. Essa página se baseia no perfil de configurações Desenvolvimento Geral.
Identificar um atalho de teclado
1. Na barra de menus, escolha Ferramentas>Opções.

2. Expanda Ambiente e escolha Teclado.

3. Na caixa Mostrar comandos que contenham, digite todo ou parte do nome do


comando sem espaços.

Por exemplo, você pode localizar os comandos para solutionexplorer .

4. Na lista, escolha o comando correto.

Por exemplo, você pode escolher View.SolutionExplorer .

5. Se o comando tiver um atalho de teclado, ele será exibido na lista Atalho(s) para o
comando selecionado.
Personalizar um atalho de teclado
1. Na barra de menus, escolha Ferramentas>Opções.

2. Expanda Ambiente e escolha Teclado.

3. Opcional: filtre a lista de comandos inserindo todo ou parte do nome do comando,


sem espaços, na caixa Mostrar comandos que contenham.

4. Na lista, escolha o comando ao qual você deseja atribuir um atalho de teclado.

Na lista Usar novo atalho em, escolha a área do recurso em que deseja usar o
atalho.

Por exemplo, você pode escolher Global se desejar que o atalho funcione em
todos os contextos. É possível usar qualquer atalho que não esteja mapeado
(como Global) em outro editor. Caso contrário, o editor substitui o atalho.

7 Observação

Não é possível atribuir as seguintes teclas como parte de um atalho de


teclado em Global:

Enter, Tab, Caps Lock


Print Scrn/Sys Rq, Scroll Lock, Pause/Break
Insert, Home, End, Page Up, Page Down
A tecla do logotipo do Windows, a tecla Application, qualquer uma das
teclas de direção
Num Lock, Delete ou Clear no teclado numérico
A combinação de teclas Ctrl + Alt + Delete

5. Na caixa Pressionar tecla(s) de atalho, digite o atalho que deseja usar.

7 Observação

Você pode criar um atalho que combine uma letra com a tecla Alt e/ou com a
tecla Ctrl. Você também pode criar um atalho que combine a tecla Shift e
uma letra com a tecla Alt e/ou a tecla Ctrl.

Se um atalho já estiver atribuído a outro comando, ele aparecerá na caixa Atalho


usado atualmente por. Nesse caso, escolha a tecla Backspace para excluir o atalho
inserido antes de tentar outro.

6. Escolha o botão Atribuir.

7 Observação

Se você especificar um atalho diferente para um comando, clique em Atribuir


e, em seguida, em Cancelar para fechar a caixa de diálogo; o atalho atribuído
não é revertido.

Compartilhar atalhos de teclado personalizados


Você pode compartilhar os atalhos de teclado personalizados exportando-os para um
arquivo e fornecendo o arquivo a outras pessoas para que elas importem os dados.

Para exportar apenas atalhos de teclado


1. Na barra de menus, escolha Ferramentas>Importar e Exportar Configurações.

2. Escolha Exportar configurações de ambiente selecionadas e escolha Avançar.

3. Em Quais configurações você deseja exportar?, desmarque a caixa de seleção


Todas as Configurações, expanda Opções e expanda Ambiente.
4. Marque a caixa de seleção Teclado e escolha Avançar.

5. Nas caixas Qual nome deseja dar ao arquivo de configurações e Armazenar meu
arquivo de configurações neste diretório, mantenha os valores padrão ou
especifique outros valores e, em seguida, escolha Concluir.

7 Observação

Por padrão, os atalhos são salvos em um arquivo no seguinte local:

%USERPROFILE%\AppData\Local\Microsoft\VisualStudio\1x.0_xxxxxxxx\Settings

Para o Visual Studio 2022, a pasta 1x.0_xxxxxxxx começaria com os numerais 17.0
seguidos por um conjunto de caracteres alfanuméricos específicos para a sua
instalação. Da mesma forma, para o Visual Studio 2019, a pasta começaria com os
numerais 16.0.

O nome do arquivo reflete a data de quando as configurações foram exportadas, e


a extensão é .vssettings.

Para importar apenas atalhos de teclado


1. Na barra de menus, escolha Ferramentas>Importar e Exportar Configurações.

2. Escolha o botão de opção Importar configurações de ambiente selecionadas e


Avançar.

3. Escolha o botão de opção Não, apenas importe as novas configurações,


substituindo minhas configurações atuais e Avançar.
4. Em Minhas Configurações, escolha o arquivo que contém os atalhos que deseja
importar, ou escolha o botão Procurar para localizar o arquivo correto.

5. Escolha Próxima.

6. Em Quais configurações você deseja importar?, desmarque a caixa de seleção


Todas as Configurações, expanda Opções e expanda Ambiente.

7. Marque a caixa de seleção Teclado e escolha Concluir.

Conteúdo relacionado
Recursos de acessibilidade do Visual Studio
Limitação de suporte de chave de função estendida
Como usar exclusivamente o teclado
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os atalhos de teclado podem tornar mais fácil a navegação no IDE do Visual Studio,
assim como escrever código. Este artigo explora algumas maneiras de usar atalhos de
teclado com mais eficiência.

Para obter uma lista completa de teclas de atalho de comando no Visual Studio, confira
Atalhos de teclado padrão.

7 Observação

Dependendo de suas configurações ou da edição do Visual Studio usada, as caixas


de diálogo e os comandos de menu poderão diferir dos descritos na Ajuda. Para
alterar as configurações, selecione Importar e Exportar Configurações no menu
Ferramentas. Para obter mais informações, confira Redefinir as configurações.

Controles da caixa de ferramentas


Para adicionar um controle na Caixa de Ferramentas a um formulário ou designer sem
usar o mouse:

1. Na barra de menus, selecione Exibir>Caixa de Ferramentas.

2. Use as teclas Ctrl+Seta para cima ou Ctrl+Seta para baixo para percorrer as
seções na guia Caixa de ferramentas.

3. Use a tecla Seta para cima ou Seta para baixo para percorrer os controles de uma
seção.

4. Depois de selecionar o controle, use a tecla Enter para adicionar o controle ao


formulário ou ao designer.

Opções de caixa de diálogo


Para percorrer as opções em uma caixa de diálogo e alterar as configurações de opção
usando apenas o teclado:
1. Use Tab ou Shift+Tab para mover para cima e para baixo pelos controles na caixa
de diálogo.

2. Para alterar as configurações de opção:

Para botões de opção, use as teclas Seta para cima e Seta para baixo para
alterar a seleção.

Para caixas de seleção, pressione a Barra de espaço para marcar ou


desmarcar a seleção.

Para listas suspensas, use Alt+Seta para baixo para exibir itens e, em seguida,
use as teclas Seta para cima e Seta para baixo para alterar o item
selecionado.

Para os botões, selecione Enter para invocar.

Para as grades, use as teclas de direção para navegar. Para listas suspensas
em grades, use Shift+Alt+Seta para baixo para exibir itens e, em seguida,
use as teclas Seta para cima e Seta para baixo para alterar o item
selecionado.

Navegar entre janelas e arquivos


Para percorrer os arquivos em um editor ou um designer, use o atalho de teclado
Ctrl+Tab para exibir o Navegador de IDE com os Arquivos Ativos selecionados.
Escolha a tecla Enter para navegar até o arquivo realçado.

Para percorrer janelas de ferramentas encaixadas, use o atalho de teclado Alt+F7


para exibir o Navegador de IDE com as Janelas de Ferramentas Ativas
selecionadas. Escolha a tecla Enter para navegar até a janela realçada.

Mover e encaixar janelas de ferramentas


1. Navegue até a janela da ferramenta que você pretende mover e coloque-a em
foco.

2. No menu Janela, selecione a opção Encaixável.

3. Pressione Alt+Barra de espaço e, em seguida, selecione Mover.

O losango guia de encaixe é exibido.

4. Use as teclas de direção para mover a janela para um novo local.


O ponteiro do mouse se move com a janela enquanto você usa as teclas de
direção.

5. Ao acessar o novo local, use as teclas de direção para mover o ponteiro do mouse
sobre a parte correta do losango guia.

Uma estrutura de tópicos da janela de ferramentas aparece no novo local de


encaixe.

6. Pressione Enter.

A janela de ferramentas é encaixada no novo local de encaixe.

Confira também
Identificando e personalizando atalhos de teclado
Dicas e truques de acessibilidade
Atalhos de teclado padrão
Acessibilidade em produtos Microsoft
Visão geral do Designer de Formulários
do Windows
Artigo • 12/01/2024

O Designer de Formulários do Windows no Visual Studio fornece uma solução rápida de


desenvolvimento para criar aplicativos baseados no Windows Forms. O Designer de
Formulários do Windows possibilita adicionar controles facilmente a um formulário,
organizá-los e escrever código para seus eventos. Para saber mais sobre o Windows
Forms, confira Visão geral do Windows Forms.

Funcionalidade
Usando o designer, é possível:

Adicionar componentes, controles de dados ou controles baseados no Windows a


um formulário.

Clicar duas vezes no formulário no designer e escrever o código no evento Load


desse formulário, ou clicar duas vezes em um controle no formulário e escrever o
código para o evento padrão do controle.

Editar a propriedade Text de um controle selecionando-o e digitando um nome.

Ajustar o posicionamento do controle selecionado movendo-o com o mouse ou as


teclas de direção. Da mesma forma, é possível ajustar o posicionamento com mais
precisão usando as teclas Ctrl e de direção. Por fim, é possível ajustar o tamanho
do controle usando as teclas Shift e de direção.

Selecionar vários controles usando as teclas Shift ou Ctrl enquanto clica. Ao usar
Shift+clique, o primeiro controle selecionado é o controle dominante ao alinhar
ou manipular o tamanho. Ao usar Ctrl+clique, o último controle selecionado é
dominante, portanto, o controle dominante é alterado com cada novo controle
adicionado. Como alternativa, você pode selecionar vários controles arrastando um
retângulo de seleção ao redor dos controles que deseja selecionar.

7 Observação

Use o Designer de Formulários do Windows, e não o Editor de Recursos, para fazer


alterações no arquivo de recurso de um formulário (.resx). Se você editar um
arquivo .resx baseado em formulário, verá um aviso de que poderá perder as
alterações feitas no Editor de Recursos. Isso ocorre porque o Designer de
Formulários do Windows gera o arquivo .resx.

Confira também
Visão geral do Windows Forms
Controles do Windows Forms
Entrada do usuário no Windows Forms
Associação de dados no Windows Forms
Aprimorar aplicativos do Windows Forms
System.Windows.Forms Referência de API
Tutorial: introdução ao Designer de
Formulários do Windows
Artigo • 10/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Designer de Formulários do Windows fornece muitas ferramentas para criar


aplicativos do Windows Forms. Este artigo ilustra como criar um aplicativo usando as
várias ferramentas fornecidas pelo designer, incluindo as seguintes tarefas:

Organize os controles usando guias de alinhamento.


Realize tarefas de designer usando marcas inteligentes.
Definir margens e preenchimento para controles.
Organize os controles usando um controle TableLayoutPanel.
Particionar o layout do controle usando um controle SplitContainer.
Navegar até o layout com a janela Estrutura de Tópicos do Documento.
Posicionar os controles com a exibição de informações de tamanho e localização.
Defina os valores da propriedade usando a janela Propriedades.

Quando terminar, você terá um controle personalizado montado usando os vários


recursos de layout disponíveis no Designer de Formulários do Windows. Este controle
implementa a interface do usuário (IU) para uma calculadora simples. A imagem a seguir
mostra o layout geral do controle da calculadora:

 Dica

Se você for um desenvolvedor do C++ e estiver procurando um tutorial para ajudá-


lo a criar um aplicativo do Windows que inclua formulários e controles, consulte
Criar um aplicativo MFC baseado em formulários. Para obter informações mais
generalizadas, consulte Visão geral da programação do Windows no C++.
Criar o projeto de controle personalizado
A primeira etapa é criar o projeto de controle DemoCalculator.

1. Abra o Visual Studio e crie um novo projeto da Biblioteca de Controle do


Windows Forms usando o modelo do .NET Framework para C# ou Visual Basic.
Nomeie o projeto como DemoCalculatorLib.

2. Para renomear o arquivo, no Gerenciador de Soluções, clique com o botão direito


do mouse em UserControl1.vb ou UserControl1.cs, selecione Renomear e altere o
nome do arquivo para DemoCalculator.vb ou DemoCalculator.cs. Selecione Sim
quando for perguntado se deseja renomear todas as referências ao elemento de
código "UserControl1".

O Designer de Formulários do Windows mostra a superfície de designer para o controle


DemoCalculator. Nessa exibição, é possível projetar graficamente a aparência do
controle selecionando controles e componentes da Caixa de Ferramentas e colocando-
os na superfície do designer. Para saber mais sobre controles personalizados, confira
Variedades de controles personalizados.

Criar o layout de controle


O controle DemoCalculator contém vários controles do Windows Forms. Neste
procedimento, você organizará os controles usando o Designer de Formulários do
Windows.
1. No Designer de Formulários do Windows, altere o controle DemoCalculator para
um tamanho maior selecionando a alça de dimensionamento no canto inferior
direito e arrastando-a para baixo e para a direita. No canto inferior direito do
Visual Studio, encontre as informações de tamanho e localização dos controles.
Defina o tamanho do controle para uma largura de 500 e uma altura de 400,
observando as informações de tamanho à medida que você redimensiona o
controle.

2. Na Caixa de Ferramentas, selecione o nó Contêineres para abri-lo. Selecione o


controle SplitContainer e arraste-o para a superfície do designer.

SplitContainer é colocado na superfície do designer do controle DemoCalculator.

 Dica

O controle SplitContainer ajusta-se ao tamanho do controle


DemoCalculator. Observe a janela Propriedades para consultar as
configurações da propriedade para o controle SplitContainer . Encontre a
propriedade Dock. Seu valor é DockStyle.Fill, o que significa que o controle
SplitContainer sempre se dimensionará para os limites do controle

DemoCalculator. Redimensione o controle DemoCalculator para verificar esse


comportamento.

3. Na janela Propriedades, altere o valor da propriedade Dock para None .

O controle SplitContainer reduz para o tamanho padrão e não acompanha mais o


tamanho do controle DemoCalculator.

4. Selecione o glifo de marca inteligente ( ) no canto superior direito do controle


SplitContainer . Selecione Encaixar no Contêiner Pai para definir a propriedade
Dock como Fill .

O controle SplitContainer se encaixa nos limites do controle DemoCalculator.

7 Observação

Vários controles oferecem marcas inteligentes para facilitar o design. Para


obter mais informações, confira Passo a passo: execute tarefas comuns
usando as Marcas Inteligentes nos controles do Windows Forms .
5. Selecione a borda vertical entre os painéis e arraste-a para a direita, de modo que
o painel esquerdo ocupe a maior parte do espaço.

SplitContainer divide o controle DemoCalculator em dois painéis com uma borda

móvel separando-os. O painel à esquerda contém os botões e o visor da


calculadora, enquanto o painel à direita mostra um registro das operações
aritméticas realizadas pelo usuário.

6. Na janela Propriedades, altere o valor da propriedade BorderStyle para Fixed3D .

7. Na Caixa de Ferramentas, selecione o nó Controles Comuns para abri-lo.


Selecione o controle ListView e arraste-o para o painel direito do controle
SplitContainer .

8. Selecione o glifo de marca inteligente do controle ListView . No painel de marcas


inteligentes, altere a configuração View para Details .

9. No painel de marcas inteligentes, selecione Editar Colunas.

A caixa de diálogo Editor de Coleção ColumnHeader abre.

10. Na caixa de diálogo Editor de Coleção ColumnHeader, selecione Adicionar para


adicionar uma coluna ao controle ListView . Altere o valor da propriedade Text da
coluna para Histórico. Selecione OK para criar a coluna.

11. No painel de marcas inteligentes, selecione Encaixar no Contêiner Pai e, em


seguida, selecione o glifo de marca inteligente para fechar o painel de marcas
inteligentes.

12. Na Caixa de Ferramentas do nó Contêineres, arraste um controle


TableLayoutPanel para o painel esquerdo do controle SplitContainer .

O controle TableLayoutPanel aparece na superfície do designer com o painel de


marcas inteligentes aberto. O controle TableLayoutPanel organiza seus controles
filhos em uma grade. O controle TableLayoutPanel contém o visor e os botões do
controle DemoCalculator. Para obter mais informações,confira Passo a passo:
organize os controles usando um TableLayoutPanel.

13. Selecione Editar Linhas e Colunas no painel de marcas inteligentes.

A caixa de diálogo Estilos de Coluna e Linha abre.

14. Selecione o botão Adicionar até que cinco colunas sejam exibidas. Selecione todas
as cinco colunas e, em seguida, selecione Porcentagem na caixa Tipo de Tamanho.
Defina o valor Porcentagem como 20. Essa ação define todas as colunas com a
mesma largura.

15. Em Mostrar, selecione Linhas.

16. Selecione Adicionar até que cinco linhas sejam exibidas. Selecione todas as cinco
linhas e, em seguida, selecione Porcentagem na caixa Tipo de Tamanho. Defina o
valor Porcentagem como 20. Essa ação define cada linha com a mesma altura.

17. SelecioneOK para aceitar as alterações e, em seguida, selecione o glifo de marca


inteligente para fechar o painel de marcas inteligentes.

18. Na janela Propriedades, altere o valor da propriedade Dock para Fill .

Preencher o controle
Agora que o layout do controle está configurado, você pode preencher o controle
DemoCalculator com botões e uma tela.

1. Na Caixa de Ferramentas, selecione o ícone de controle TextBox .

Um controle TextBox é colocado na primeira célula do controle TableLayoutPanel .

2. Na janela Propriedades, altere o valor da propriedade ColumnSpan do controle


TextBox para 5.

O controle TextBox fica centralizado em sua linha.

3. Altere o valor da propriedade Anchor do controle TextBox para Left , Right .

O controle TextBox expande horizontalmente para abranger todas as cinco


colunas.

4. Altere o valor da propriedade TextBox do controle TextAlign para Right .

5. Na janela Propriedades, expanda o nó de propriedade Font . Defina Size como 14


e Bold como true para os controles TextBox .

6. Selecione o controle TableLayoutPanel .

7. Na Caixa de Ferramentas, selecione o ícone Button .

Um controle Button é colocado na próxima célula aberta do controle


TableLayoutPanel .
8. Na Caixa de Ferramentas, selecione o ícone Button mais quatro vezes para
preencher a segunda linha do controle TableLayoutPanel .

9. Selecione todos os cinco controles Button pressionando a tecla Shift durante a


seleção. Pressione Ctrl+C para copiar os controles Button para a área de
transferência.

10. Pressione Ctrl+V três vezes para colar cópias dos controles Button nas linhas
restantes do controle TableLayoutPanel .

11. Selecione todos os 20 controles Button pressionando a tecla Shift durante a


seleção.

12. Na janela Propriedades, altere o valor da propriedade Dock para Fill .

Todos os controles Button são encaixados para preencher suas células.

13. Na janela Propriedades, expanda o nó de propriedade Margin . Defina o valor de


All como 5.

Todos os controles Button são menores para criar uma margem maior entre eles.

14. Selecione button10 e button20, em seguida, pressione Excluir para removê-los do


layout.

15. Selecione button5 e button15, em seguida, altere o valor da propriedade RowSpan


para 2. Esses botões representam os botões Limpar e = para o controle
DemoCalculator.

Usar a janela Estrutura de Tópicos do


Documento
Ao preencher o controle ou formulário com vários controles, talvez seja mais fácil
navegar no layout com a janela Estrutura de Tópicos do Documento.

1. Na barra de menus, escolha Exibir>Outras Janelas>Estrutura de Tópicos do


Documento.

A janela Estrutura de Tópicos do Documento mostra um modo de exibição de


árvore do controle DemoCalculator e seus controles. Controles de contêiner, como
SplitContainer , mostram seus controles filhos como subnós na árvore. Também é
possível renomear controles no local usando a janela Estrutura de Tópicos do
Documento.
2. Na janela Estrutura de Tópicos do Documento, clique com o botão direito do
mouse em button1 e, em seguida, selecione Renomear. Altere seu nome para
sevenButton.

3. Usando a janela Estrutura de Tópicos do Documento, renomeie os controles


Button do nome gerado pelo designer para o nome de produção, de acordo com

a lista a seguir:

button1 para sevenButton

button2 para eightButton

button3 para nineButton

button4 para divisionButton

button5 para clearButton

button6 para fourButton

button7 para fiveButton

button8 para sixButton

button9 para multiplicationButton

button11 para oneButton

button12 para twoButton

button13 para threeButton

button14 para subtractionButton

button15 para equalsButton

button16 para zeroButton

button17 para changeSignButton

button18 para decimalButton

button19 para additionButton

4. Usando as janelas Estrutura de Tópicos do Documento e Propriedades, altere o


valor da propriedade Text para cada nome de controle Button de acordo com a
lista a seguir:
Altere a propriedade de texto do controle sevenButton para 7

Altere a propriedade de texto do controle eightButton para 8

Altere a propriedade de texto do controle nineButton para 9

Altere a propriedade de texto do controle divisionButton para / (barra)

Altere a propriedade de texto do controle clearButton para Limpar

Altere a propriedade de texto do controle fourButton para 4

Altere a propriedade de texto do controle fiveButton para 5

Altere a propriedade de texto do controle sixButton para 6

Altere a propriedade de texto do controle multiplicationButton para *


(asterisco)

Altere a propriedade de texto do controle oneButton para 1

Altere a propriedade de texto do controle twoButton para 2

Altere a propriedade de texto do controle threeButton para 3

Altere a propriedade de texto do controle subtractionButton para - (hífen)

Altere a propriedade de texto do controle equalsButton para = (sinal de


igual)

Altere a propriedade de texto do controle zeroButton para 0

Altere a propriedade de texto do controle changeSignButton para +/-

Altere a propriedade de texto do controle decimalButton para . (ponto final)

Altere a propriedade de texto do controle additionButton para + (sinal de


adição)

5. Na superfície do designer, mantenha pressionada a tecla Shift e clique para


selecionar todos os controles Button .

6. Na janela Propriedades, expanda o nó de propriedade Font . Defina Size como 14


e Bold como true para todos os controles Button .

Este conjunto de instruções completa o design do controle DemoCalculator. Tudo o que


resta é fornecer a lógica da calculadora.
Implementar manipuladores de eventos
Os botões no controle DemoCalculator têm manipuladores de eventos que podem ser
usados ​para implementar grande parte da lógica da calculadora. O Designer de
Formulários do Windows possibilita implementar os stubs de todos os manipuladores
de eventos para todos os botões com uma seleção.

1. Na superfície do designer, mantenha pressionada a tecla Shift e clique para


selecionar todos os controles Button .

2. Selecione um dos controles Button .

O Editor de Códigos abre para os manipuladores de eventos gerados pelo


designer.

Testar o controle
Como o controle DemoCalculator herda da classe UserControl, é possível testar seu
comportamento com o Contêiner de Teste de Classes UserControl. Para obter mais
informações, consulte Como: testar o comportamento em tempo de execução de um
UserControl.

1. Pressione F5 para compilar e executar o controle DemoCalculator no Contêiner de


Teste de Classes UserControl.

2. Selecione a borda entre os painéis SplitContainer e arraste para a esquerda e


para a direita. TableLayoutPanel e todos os seus controles filhos se redimensionam
para caber no espaço disponível.

3. Quando terminar de testar o controle, selecione Fechar.

Usar o controle em um formulário


O controle DemoCalculator pode ser usado em outros controles compostos ou em um
formulário. O procedimento a seguir descreve como usá-lo.

Criar o projeto
A primeira etapa é criar o projeto do aplicativo. Você usará esse projeto para criar o
aplicativo que exibe seu controle personalizado.
1. Crie um novo projeto Aplicativo do Windows Forms e nomeie-o como
DemoCalculatorTest.

2. No Gerenciador de Soluções, clique com o botão direito do mouse no projeto


DemoCalculatorTest e selecione Adicionar>Referência de Projeto para abrir a
caixa de diálogo Gerenciador de Referências.

3. Acesse a guia Projetos e selecione o projeto DemoCalculatorLib para adicionar a


referência ao projeto de teste.

4. No Gerenciador de Soluções, clique com o botão direito do mouse em


DemoCalculatorTest e, em seguida, selecione Definir como Projeto de
Inicialização.

5. No Designer de Formulários do Windows, aumente o tamanho do formulário para


aproximadamente 700 x 500.

Usar o controle no layout do formulário


Para usar o controle DemoCalculator em um aplicativo, é preciso colocá-lo em um
formulário.

1. Na Caixa de Ferramentas, expanda o nó Componentes do DemoCalculatorLib.

2. Arraste o controle DemoCalculator da Caixa de Ferramentas para seu formulário.


Mova o controle para o canto superior esquerdo do formulário. Quando o controle
está próximo das bordas do formulário, as guias de alinhamento aparece. Guias de
alinhamento indicam a distância da propriedade Padding do formulário e da
propriedade Margin do controle. Posicione o controle no local indicado pelas guias
de alinhamento.

Para obter mais informações, confira Passo a passo: organize os controles usando
guias de alinhamento.

3. Arraste um controle Button da Caixa de Ferramentas e solte-o no formulário.

4. Mova o controle Button em volta do controle DemoCalculator e observe onde as


guias de alinhamento aparecem. Você pode alinhar seus controles com precisão e
facilidade usando esse recurso. Exclua o controle Button quando terminar.

5. Clique com o botão direito do mouse no controle DemoCalculator e selecione


Propriedades.

6. Altere o valor da propriedade Dock para Fill .


7. Selecione o formulário e, em seguida, expanda o nó da propriedade Padding .
Altere o valor de Todos para 20.

O tamanho do controle DemoCalculator é reduzido para acomodar o novo valor


de Padding do formulário.

8. Redimensione o formulário arrastando as várias alças de dimensionamento para


diferentes posições. Observe como o controle DemoCalculator muda para se
ajustar.

Próximas etapas
Este artigo demonstrou como construir a interface do usuário para uma calculadora
simples. Para continuar, você pode estender sua funcionalidade pela implementação da
lógica da calculadora e, em seguida, publicar o aplicativo usando o ClickOnce. Ou
continue em um tutorial diferente, no qual você criará um visualizador de imagens
usando o Windows Forms.

Confira também
Controles do Windows Forms
Acessibilidade para controles do Windows Forms
Publique usando o ClickOnce
Como alinhar vários controles nos
Windows Forms
Artigo • 18/10/2023

Para padronizar o layout da interface do usuário (UI) do aplicativo baseado no Windows,


você pode posicionar grupos de controles com um único comando.

Para alinhar vários controles em um formulário


1. No Visual Studio, abra o formulário que contém os controles que você deseja
posicionar no Windows Forms Designer.

2. Selecione os controles que você deseja alinhar. O primeiro controle selecionado é


o controle primário ao qual os outros serão alinhados.

3. No menu Formatar, selecione Alinhar e selecione uma das sete opções


disponíveis.

Confira também
Controles dos Windows Forms
Como Adicionar Controles ao Windows Forms
Controles a serem usados nos Windows Forms
Controles dos Windows Forms por função
Passo a passo: organizando controles nos Windows Forms usando linhas de
alinhamento
Passo a passo: organizando controles nos Windows Forms usando um
TableLayoutPanel
Passo a passo: organizando controles nos Windows Forms utilizando um
FlowLayoutPanel
Como reatribuir controles existentes a um pai diferente

6 Colaborar conosco no Comentários do .NET


GitHub Desktop feedback
A fonte deste conteúdo pode O .NET Desktop feedback é um
ser encontrada no GitHub, onde projeto código aberto. Selecione um
você também pode criar e link para fornecer comentários:
revisar problemas e solicitações  Abrir um problema de
de pull. Para obter mais documentação
informações, confira o nosso
guia para colaboradores.  Fornecer comentários sobre o
produto
Como: Criar um controle de associação
simples em um Windows Form
Artigo • 19/10/2023

Com a associação simples, é possível exibir um elemento de dados simples, como um


valor de coluna de uma tabela de dados em um controle. Você pode associar de
maneira simples qualquer propriedade de um controle a um valor de dados.

Para associar de maneira simples um controle


1. Conecte-se a uma fonte de dados. Para obter mais informações, consulte
Conectando a uma fonte de dados.

2. No Visual Studio, selecione o controle no formulário e exiba a janela Propriedades


.

3. Expanda a propriedade (DataBindings).

As propriedades geralmente mais associadas são exibidas sob a propriedade


(DataBindings). Por exemplo, na maioria dos controles, a propriedade Text é
vinculada com mais frequência.

4. Se a propriedade que você deseja vincular não for uma das propriedades
comumente vinculadas, clique no botão Reticências () na caixa ( Avançado) para
exibir a caixa de diálogo Formatação e Vinculação Avançada com uma lista
completa de propriedades para esse controle.

5. Selecione a propriedade que deseja associar e clique na seta suspensa em


Associação.

Uma lista de fontes de dados disponíveis é exibida.

6. Expanda a fonte de dados a que deseja associar até encontrar o elemento de


dados individual desejado. Por exemplo, se você estiver associando a um valor de
coluna na tabela do conjunto de dados, expanda o nome do conjunto de dados e
o nome da tabela para exibir os nomes das colunas.

7. Clique no nome de um elemento que receberá a associação.

8. Se você estiver trabalhando na caixa de diálogo Formatação e associação


avançada, clique em OK para voltar para a janela Propriedades.
9. Se deseja associar propriedades adicionais do controle, repita as etapas 3 a 7.

7 Observação

Como controles de associação simples mostram apenas um elemento de


dados, é muito comum incluir a lógica de navegação em um Windows Form
com controles de associação simples.

Confira também
Binding
Vinculação de dados dos Windows Forms
Vinculação de dados e os Windows Forms

6 Colaborar conosco no Comentários do .NET


GitHub Desktop feedback
A fonte deste conteúdo pode O .NET Desktop feedback é um
ser encontrada no GitHub, onde projeto código aberto. Selecione um
você também pode criar e link para fornecer comentários:
revisar problemas e solicitações
de pull. Para obter mais  Abrir um problema de
informações, confira o nosso documentação
guia para colaboradores.
 Fornecer comentários sobre o
produto
Desenvolver controles do Windows
Forms em tempo de design
Artigo • 18/10/2023

Para autores de controle, o .NET Framework fornece uma ampla variedade de tecnologia
de criação de controle. Os autores não estão mais limitados a criar controles de
composição que atuam como uma coleção de controles preexistentes. Por meio de
herança, você pode criar seus próprios controles de com base em controles de
composição preexistentes ou controles dos Windows Forms preexistentes. Você
também pode criar seus próprios controles que implementam pintura personalizada.
Essas opções possibilitam muita flexibilidade no design e a funcionalidade da interface
visual. Para aproveitar esses recursos, familiarize-se com os conceitos de programação
baseada em objeto.

7 Observação

Não é necessário ter uma compreensão completa da herança, mas você pode achar
útil consultar Noções básicas de herança (Visual Basic).

Caso queira criar controles personalizados para usar em Web Forms, consulte
Desenvolvendo Controles Personalizados ASP.NET Server.

Nesta seção
Demonstra Passo a passo: Criando um controle composto
Mostra como criar um controle de composição simples em C#.

Demonstra Passo a passo: Herdando de um controle do Windows Forms


Mostra como criar um controle simples dos Windows Forms usando herança em C#.

Demonstra Passo a passo: Executar tarefas comuns usando ações de designer


Mostra como usar o recurso de smart tag em controles dos Windows Forms.

Passo a passo: serializando coleções de tipos padrão com


DesignerSerializationVisibilityAttribute
Mostra como usar o DesignerSerializationVisibilityAttribute.Content atributo para
serializar uma coleção.

Instruções passo a passo: depurando controles personalizados do Windows Forms no


tempo de design
Mostra como depurar o comportamento de tempo de design de um controle dos
Windows Forms.

Passo a passo: criando um controle dos Windows Forms que aproveita os recursos de
tempo de design do Visual Studio
Mostra como integrar fortemente um controle de composição ao ambiente de design.

Como criar controles para Windows Forms


Apresenta uma visão geral de considerações para implementar um controle dos
Windows Forms.

Como criar controles de composição


Mostra como criar um controle herdando de um controle de composição.

Como: Herdar da classe UserControl


Fornece uma visão geral do procedimento para criar um controle de composição.

Como herdar de controles dos Windows Forms existentes


Mostra como criar um controle estendido herdando da Button classe de controle.

Como herdar da classe de controle


Apresenta uma visão geral da criação de um controle estendido.

Como alinhar um controle às bordas de formulários no tempo de design


Mostra como usar a Dock propriedade para alinhar seu controle à borda do formulário
que ele ocupa.

Como exibir um controle na caixa de diálogo Escolher Itens da Caixa de Ferramentas


Mostra o procedimento para instalar seu controle de modo que ele apareça na caixa de
diálogo Personalizar caixa de ferramentas.

Como fornecer um bitmap da caixa de ferramentas para um controle


Mostra como usar o ToolboxBitmapAttribute para exibir um ícone ao lado do controle
personalizado na Caixa de Ferramentas.

Como testar o comportamento de tempo de execução de um UserControl


Mostra como usar o Contêiner de Teste UserControl para testar o comportamento de
um controle de composição.

Erros de tempo de design no Designer de Formulários do Windows


Explica o significado e o uso da lista de erros de tempo de design que aparece no
Microsoft Visual Studio quando o carregamento do Designer de Formulários do
Windows falha.
Solução de problemas de criação de controle e de componente
Mostra como diagnosticar e corrigir problemas comuns que podem ocorrer quando
você criar um controle ou componente personalizado.

Referência
System.Windows.Forms.Control

System.Windows.Forms.UserControl

Seções relacionadas
Desenvolvendo controles dos Windows Forms personalizados com o .NET Framework
Discute como criar seus próprios controles personalizados com o .NET Framework.

Independência da linguagem e componentes independentes da linguagem


Apresenta o Common Language Runtime, que foi projetado para simplificar a criação e
uso de componentes. Um aspecto importante dessa simplificação é melhor
interoperabilidade entre componentes escritos usando diferentes linguagens de
programação. A CLS (Common Language Specification) possibilita criar ferramentas e
componentes que funcionam com várias linguagens de programação.

Instruções passo a passo: preenchendo de forma automática a caixa de ferramentas


com componentes personalizados
Descreve como habilitar seu componente ou controle para ser exibido na caixa de
diálogo Personalizar Caixa de Ferramentas.

6 Colaborar conosco no Comentários do .NET


GitHub Desktop feedback
A fonte deste conteúdo pode O .NET Desktop feedback é um
ser encontrada no GitHub, onde projeto código aberto. Selecione um
você também pode criar e link para fornecer comentários:
revisar problemas e solicitações
de pull. Para obter mais  Abrir um problema de
informações, confira o nosso documentação
guia para colaboradores.
 Fornecer comentários sobre o
produto
Corrigir problemas de
HDPI/dimensionamento com o Designer
de Formulários do Windows no Visual
Studio
Artigo • 29/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá como resolver problemas de renderização devido a


limitações de dimensionamento do Designer de Formulários do Windows em monitores
HDPI executando o Visual Studio como um processo sem reconhecimento de DPI. HDPI
significa pontos altos por polegada, com cada ponto representando um pixel de
dispositivo físico.

A densidade de pixels mais alta cria imagens mais nítidas e exibe os elementos de
tamanhos de dimensionamento de forma adequada. Sem o dimensionamento
adequado, os elementos e o texto da interface do usuário ficam muito pequenos para
serem usados com eficiência e podem se sobrepor. Para corrigir esse problema, o
Windows dimensiona automaticamente o percentil da interface do usuário para
corresponder à configuração de DPI. Por exemplo, uma configuração de DPI igual a
100% representa 96 DPIs, e 125% é 120 DPIs. Os monitores costumavam ser fornecidos
com 96 pixels por polegada, que o Windows usava como linha de base para desenho de
bitmap de 100%. No entanto, com o avanço da tecnologia de exibição, os monitores
agora vêm com painéis de 300 DPI ou superior.

Quando um aplicativo se declara com reconhecimento de DPI, essa é uma instrução que
especifica que ele se comporta bem em configurações de DPI mais altas e, portanto, o
Windows pode aplicar o dimensionamento automático. Por outro lado, aplicativos sem
reconhecimento de DPI são renderizados com um valor de DPI fixo igual a 96 pixels por
polegada ou 100%, e, portanto, o dimensionamento automático não é aplicado.

O Designer de Formulários do Windows não


tem reconhecimento de DPI
O Visual Studio é um aplicativo com reconhecimento de DPI (pontos por polegada), o
que significa que a exibição é dimensionada automaticamente. No entanto, o Designer
de Formulários do Windows é um aplicativo sem reconhecimento de DPI, portanto,
aparece como um bitmap em 96 DPI. Sem o suporte do dimensionamento automático,
surgem problemas e sobreposições ao abrir formulários em monitores HDPI, como
nesta imagem:

Quando você abre um formulário no Designer de Formulários do Windows em um


monitor HDPI, o Visual Studio exibe uma barra de informações que exibe a
porcentagem de dimensionamento atual do monitor (por exemplo, 150%/144 DPI), uma
opção para reiniciar o Visual Studio em dimensionamento de 100% para corresponder
ao Designer de Formulários do Windows e mais informações. Ao reiniciar em
dimensionamento de 100% o Visual Studio não reconhece DPI, permitindo a
renderização adequada sem sobreposição.

 Dica

1. Se você fechou a barra de informações e deseja reiniciar o Visual Studio como


sem reconhecimento de DPI, use a ferramenta DevEnv.exe.
2. Se você não estiver trabalhando no Designer, poderá ignorar a barra de
informações. Você também pode desabilitar as notificações para que a barra
de informações não continue a aparecer.

Reiniciar o Visual Studio como um processo


sem reconhecimento de DPI
A solução recomendada para resolver esses problemas de interface do usuário é
reiniciar o Visual Studio como um processo sem reconhecimento de DPI, o que significa
que ele é reiniciado em escala de 100% (96 DPI). Para fazer isso, selecione a opção
"Reiniciar o Visual Studio com dimensionamento de 100%" na barra de informações
amarela que aparece quando você abre um formulário no Designer de Formulários do
Windows.
Quando o Visual Studio é executado sem reconhecimento de DPI, os problemas de
layout do designer são resolvidos, no entanto, as fontes podem parecer desfocadas e
pode haver problemas em outros designers, como o Designer XAML. O Visual Studio
exibe uma mensagem informativa diferente quando não reconhece DPI, "O Visual
Studio está sendo executado como um processo sem reconhecimento de DPI. Os
designers WPF e XAML podem não ser exibidos corretamente."

7 Observação

Se você desencaixar as janelas de ferramentas depois de selecionar a opção


para reiniciar o Visual Studio como um processo sem reconhecimento de DPI,
a posição das janelas de ferramentas poderá mudar.
O perfil padrão do Visual Basic não reabrirá projetos quando o Visual Studio
for reiniciado como um processo sem reconhecimento de DPI. Em vez disso,
acesse seu projeto em Arquivo>Projetos e Soluções Recentes.

É importante reiniciar o Visual Studio para retorná-lo ao padrão de processo com


reconhecimento de DPI quando você terminar de trabalhar no Designer de Formulários
do Windows. Se você fechar e reabrir o Visual Studio quando ele estiver em execução
no modo sem reconhecimento de DPI, ele passará a ser executado novamente com
reconhecimento de DPI. Você também pode selecionar a opção Reiniciar o Visual
Studio como um processo com reconhecimento de DPI na barra de informações.

Usar o Windows para definir o


dimensionamento da tela como 100%
Para evitar o uso do Visual Studio para alternar a escala da exibição, ajuste a escala nas
configurações do Windows. Por exemplo, no Windows 11, você pode definir a escala
para 100% (96 DPI).

Para fazer isso, digite Configurações de exibição na caixa de pesquisa da barra de


tarefas e, em seguida, selecione Alterar configurações de exibição. Na janela
Configurações, defina Alterar o tamanho do texto, dos aplicativos e de outros itens
para 100%. Lembre-se de que a escala de 100% (96 DPI) pode tornar a interface do
usuário muito pequena para uso prático.

Desabilitar a escala usando a ferramenta de


linha de comando DevEnv
Para gerenciar suas configurações de exibição usando ferramentas de linha de comando
em vez das ferramentas de interface do usuário, use DevEnv.exe. O comando
devenv.exe usa /noscale como um parâmetro de linha de comando para ser executado

no modo de dimensionamento de 100%. Veja como usá-lo:

1. Selecione Ferramentas>Linha de comando>Prompt de Comando do


Desenvolvedor na barra de menus do Visual Studio.
2. Em seguida, digite devenv /noScale .

Outras opções
Além das opções mencionadas acima, você também pode experimentar as seguintes
opções:

Dimensionar automaticamente em Windows Forms

Selecione a opção Otimizar a renderização de telas com diferentes densidades de


pixel (requer reinicialização)

Desabilitar as notificações de dimensionamento no Visual Studio, por exemplo, se


você não estiver trabalhando em um designer. Veja como desabilitar as
notificações:

1. Escolha Ferramentas>Opções para abrir a caixa de diálogo Opções.


2. Na caixa de diálogo Opções, selecione Designer de Formulários do
Windows>Geral e defina Notificações de escala DPI como False.

Solucionar problemas
Se a transição para o reconhecimento de DPI não funcionar no Visual Studio, verifique
se o valor dpiAwareness NÃO está presente na subchave
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image
File Execution Options\devenv.exe do Editor do Registro. Exclua o valor se ele estiver
presente.
O ajuste na exibição principal está
definido como {0}%
Artigo • 04/07/2023

Quando você abre um formulário no Designer de Formulários do Windows em um


monitor HDPI, o Visual Studio exibe uma barra de informação com uma mensagem que
inclui a porcentagem de dimensionamento atual do monitor e uma opção para reiniciar
o Visual Studio em dimensionamento de 100%. Ao reiniciar em dimensionamento de
100%, permitindo a renderização adequada sem sobreposição.

Por que essa mensagem é exibida e o que fazer


sobre ela
É por isso que a mensagem é exibida:

O Windows Forms Designer não tem reconhecimento de DPI, enquanto o Visual


Studio tem reconhecimento de DPI.
Para exibir com precisão os elementos do Forms no Designer, você pode
configurar o dimensionamento do Visual Studio como 100% para que ele também
não tenha conhecimento do DPI.
Quando o Visual Studio está definido com o dimensionamento de 100%, as fontes
podem parecer desfocadas e você poderá ver problemas em outros designers,
como o Designer XAML, que têm reconhecimento de DPI.

Veja o que fazer sobre isso:

Selecione o link Reiniciar o Visual Studio com dimensionamento de 100% na


mensagem na barra de informações para reiniciar o Visual Studio como um
processo sem reconhecimento de DPI, o que significa que ele é reiniciado em
escala de 100% (96 DPI).
Você também pode definir o tamanho de dimensionamento no Windows como
100%, mas ele pode tornar a interface do usuário muito pequena para ser
utilizável.
Quando o Visual Studio é executado sem reconhecimento de DPI, os problemas de
layout do designer são resolvidos. No entanto, as fontes podem parecer
desfocadas e os problemas podem aparecer em outros designers, como no
Designer XAML.
Se você já configurou o Visual Studio com o dimensionamento de 100% e deseja
reabilitar o reconhecimento de DPI, selecione o link Reiniciar o Visual Studio com
dimensionamento automático na barra de informações para reiniciar o Visual
Studio com reconhecimento de DPI.

Próximas etapas
Para obter mais informações sobre problemas de dimensionamento de HDPI e
instruções detalhadas passo a passo sobre como corrigi-los, consulte Problemas de
HDPI/dimensionamento com Windows Forms Designer no Visual Studio.
System.Windows.Forms Namespace
Referência

Contém classes para criar aplicativos baseados no Windows que aproveitam ao máximo
os recursos avançados da interface do usuário disponíveis no sistema operacional
Microsoft Windows.

Classes
ノ Expandir a tabela

AccessibleObject Fornece informações que os aplicativos de acessibilidade usam


para ajustar a interface do usuário de um aplicativo para os
usuários portadores de deficiências.

AmbientProperties Fornece valores de propriedade de ambiente para controles de


nível superior.

Application Fornece propriedades e métodos static para gerenciar um


aplicativo, como métodos para iniciar e interromper um
aplicativo, para processar mensagens do Windows e
propriedades para obter informações sobre um aplicativo. Essa
classe não pode ser herdada.

ApplicationContext Especifica as informações contextuais sobre um thread de


aplicativo.

AutoCompleteString Contém uma coleção de cadeias de caracteres a serem usadas


Collection para o recurso de preenchimento automático em alguns
controles do Windows Forms.

AxHost Encapsula os controles do ActiveX e os expõe como controles do


Windows Forms completos.

AxHost.AxComponentEditor Fornece um editor que usa uma caixa de diálogo modal para
exibir uma página de propriedades para um controle ActiveX.

AxHost.ClsidAttribute Especifica o CLSID de um controle ActiveX hospedado por um


controle AxHost.

AxHost.ConnectionPoint Conecta um controle ActiveX a um cliente que trata os eventos


Cookie do controle.

AxHost.InvalidActiveXState A exceção que é lançada quando o controle ActiveX é


Exception referenciado enquanto está em um estado inválido.
AxHost.State Encapsula o estado persistente de um controle ActiveX.

AxHost.StateConverter Converte objetos AxHost.State de um tipo de dados em outro.

AxHost.TypeLibraryTime Especifica uma data e hora associadas à biblioteca de tipos de


StampAttribute um controle ActiveX hospedado por um controle AxHost.

BaseCollection Fornece a funcionalidade básica para a criação de coleções


relacionadas aos dados no namespace System.Windows.Forms.

BindableComponent Classe base para componentes que fornecem propriedades que


podem ser associadas a dados com o Windows Forms Designer.

Binding Representa a associação simples entre o valor da propriedade de


um objeto e o valor da propriedade de um controle.

BindingCompleteEventArgs Fornece dados para o evento de BindingComplete .

BindingContext Gerencia a coleção de objetos BindingManagerBase para


qualquer objeto que herda da classe Control.

BindingManagerBase Gerencia todos os objetos Binding associados à mesma fonte de


dados e ao mesmo membro de dados. Esta classe é abstrata.

BindingManagerDataError Fornece dados para o evento de DataError .


EventArgs

BindingNavigator Representa interface do usuário de navegação e a manipulação


para controles em um formulário que está associado aos dados.

BindingsCollection Representa uma coleção de objetos Binding de um controle.

BindingSource Encapsula a fonte de dados de um formulário.

Button Representa um controle de botão do Windows.

ButtonBase Implementa a funcionalidade básica comum aos controles de


botão.

ButtonBase.ButtonBase Fornece informações que os aplicativos de acessibilidade usam


AccessibleObject para ajustar a interface do usuário de um aplicativo para os
usuários com deficiências.

ButtonRenderer Fornece os métodos usados para renderizar um controle de


botão com ou sem estilos visuais. Essa classe não pode ser
herdada.

CacheVirtualItemsEventArgs Fornece dados para o evento de CacheVirtualItems .

CheckBox Representa um CheckBox do Windows.

CheckBox.CheckBox Fornece informações sobre o controle CheckBox para aplicativos


AccessibleObject cliente de acessibilidade.

CheckBoxRenderer Fornece os métodos usados para renderizar um controle de caixa


de seleção com ou sem estilos visuais. Essa classe não pode ser
herdada.

CheckedListBox Exibe um ListBox no qual uma caixa de seleção é exibida à


esquerda de cada item.

CheckedListBox.CheckedIndex Encapsula a coleção de índices de itens verificados (incluindo


Collection itens em um estado indeterminado) em um CheckedListBox.

CheckedListBox.CheckedItem Encapsula a coleção de itens verificados, incluindo itens em um


Collection estado indeterminado, em um controle CheckedListBox.

CheckedListBox.Object Representa a coleção de itens em um CheckedListBox.


Collection

Clipboard Fornece métodos para colocar dados e recuperar dados da área


de transferência do sistema. Essa classe não pode ser herdada.

ColorDialog Representa uma caixa de diálogo comum que exibe as cores


disponíveis, em conjunto com os controles que permitem que o
usuário defina cores personalizadas.

ColumnClickEventArgs Fornece dados para o evento de ColumnClick .

ColumnHeader Exibe um cabeçalho de coluna única em um controle ListView.

ColumnHeaderConverter Fornece um conversor de tipo para converter objetos


ColumnHeader de um tipo para outro.

ColumnReorderedEventArgs Fornece dados para o evento de ColumnReordered .

ColumnStyle Representa a aparência de uma coluna em um layout de tabela.

ColumnWidthChangedEvent Fornece dados para o evento de ColumnWidthChanged .


Args

ColumnWidthChangingEvent Fornece dados para o evento de ColumnWidthChanging .


Args

ComboBox Representa um controle de caixa de combinação do Windows.

ComboBox.ChildAccessible Fornece informações sobre o controle ComboBox para


Object aplicativos cliente de acessibilidade.

ComboBox.ObjectCollection Representa a coleção de itens em um ComboBox.

ComboBoxRenderer Fornece os métodos usados para renderizar um controle de caixa


de combinação com estilos visuais. Essa classe não pode ser
herdada.
CommonDialog Especifica a classe base usada para exibir caixas de diálogo na
tela.

ContainerControl Fornece a funcionalidade de gerenciamento de foco para


controles que podem funcionar como um contêiner para outros
controles.

ContentsResizedEventArgs Fornece dados para o evento de ContentsResized .

ContextMenuStrip Representa um menu de atalho.

Control Define a classe base para controles, que são componentes com
representação visual.

Control.ControlAccessible Fornece informações sobre um controle que pode ser usado por
Object um aplicativo de acessibilidade.

Control.ControlCollection Representa uma coleção de objetos Control .

ControlBindingsCollection Representa a coleção de associações de dados para um controle.

ControlEventArgs Fornece dados para os eventos de ControlAdded e de


ControlRemoved .

ControlPaint Fornece métodos usados para pintar controles comuns do


Windows e seus elementos. Essa classe não pode ser herdada.

ConvertEventArgs Fornece dados para os eventos de Format e de Parse .

CreateParams Encapsula as informações necessárias ao criar um controle.

CurrencyManager Gerencia uma lista de objetos Binding.

Cursor Representa a imagem usada para pintar o ponteiro do mouse.

CursorConverter Fornece um conversor de tipo para converter objetos Cursor para


e de diversas outras representações.

Cursors Fornece um conjunto de objetos Cursor para uso por um


aplicativo Windows Forms.

DataFormats Fornece nomes de formato static e Clipboard predefinido. Use-


os para identificar o formato de dados armazenado em um
IDataObject.

DataFormats.Format Representa um tipo de formato de área de transferência.

DataGridView Exibe os dados em uma grade personalizável.

DataGridView.DataGridView Fornece informações sobre o controle DataGridView para


AccessibleObject aplicativos cliente de acessibilidade.
DataGridView.DataGridView Representa uma coleção de controles contidos em um
ControlCollection DataGridView.

DataGridView.DataGridView Fornece informações sobre a linha de objetos


TopRowAccessibleObject DataGridViewColumnHeaderCell para aplicativos cliente de
acessibilidade.

DataGridView.HitTestInfo Contém informações, como índices de linha e coluna, sobre um


par de coordenadas específicas no controle DataGridView. Essa
classe não pode ser herdada.

DataGridViewAdvanced Contém estilos de borda para células em um controle


BorderStyle DataGridView.

DataGridViewAutoSize Fornece dados para o evento de AutoSizeColumnModeChanged


ColumnModeEventArgs .

DataGridViewAutoSize Fornece dados para o evento de AutoSizeColumnsModeChanged


ColumnsModeEventArgs .

DataGridViewAutoSizeMode Fornece dados para os eventos de


EventArgs DataGridViewAutoSizeRowsModeChanged e
RowHeadersWidthSizeModeChanged.

DataGridViewBand Representa uma coleção linear de elementos em um controle


DataGridView.

DataGridViewBinding Fornece dados para o evento de DataBindingComplete .


CompleteEventArgs

DataGridViewButtonCell Exibe uma IU (interface do usuário) parecida com botão para uso
em um controle DataGridView.

DataGridViewButtonCell.Data Fornece informações sobre um DataGridViewButtonCell para


GridViewButtonCellAccessible aplicativos cliente de acessibilidade.
Object

DataGridViewButtonColumn Hospeda uma coleção de objetos DataGridViewButtonCell.

DataGridViewCell Representa uma célula individual em um controle DataGridView.

DataGridViewCell.DataGrid Fornece informações sobre um DataGridViewCell para aplicativos


ViewCellAccessibleObject cliente de acessibilidade.

DataGridViewCellCancelEvent Fornece dados para os eventos CellBeginEdit e RowValidating.


Args

DataGridViewCellCollection Representa uma coleção de células em uma DataGridViewRow.

DataGridViewCellContext Fornece dados para o evento de CellContextMenuStripNeeded .


MenuStripNeededEventArgs
DataGridViewCellErrorText Fornece dados para o evento CellErrorTextNeeded de um
NeededEventArgs controle DataGridView.

DataGridViewCellEventArgs Fornece dados para eventos DataGridView relacionados a


operações de linha e célula.

DataGridViewCellFormatting Fornece dados para o evento CellFormatting de um


EventArgs DataGridView.

DataGridViewCellMouseEvent Fornece dados para eventos de mouse gerados por um


Args DataGridView sempre que o mouse é movido dentro de um
DataGridViewCell.

DataGridViewCellPainting Fornece dados para o evento de CellPainting .


EventArgs

DataGridViewCellParsingEvent Fornece dados para o evento CellParsing de um controle


Args DataGridView.

DataGridViewCellState Fornece dados para o evento de CellStateChanged .


ChangedEventArgs

DataGridViewCellStyle Representa as informações de formatação e estilo aplicadas a


células individuais em um controle DataGridView.

DataGridViewCellStyleContent Fornece dados para o evento de CellStyleContentChanged .


ChangedEventArgs

DataGridViewCellStyle Converte objetos DataGridViewCellStyle de e para outros tipos


Converter de dados.

DataGridViewCellToolTipText Fornece dados para o evento de CellToolTipTextNeeded .


NeededEventArgs

DataGridViewCellValidating Fornece dados para o evento CellValidating de um controle


EventArgs DataGridView.

DataGridViewCellValueEvent Fornece dados para os eventos CellValueNeeded e


Args CellValuePushed do controle DataGridView.

DataGridViewCheckBoxCell Exibe uma UI (interface do usuário) de caixa de seleção a ser


usada em um controle de DataGridView.

DataGridViewCheckBoxCell. Fornece informações sobre um DataGridViewCheckBoxCell para


DataGridViewCheckBoxCell aplicativos cliente de acessibilidade.
AccessibleObject

DataGridViewCheckBox Hospeda uma coleção de objetos DataGridViewCheckBoxCell.


Column

DataGridViewColumn Representa uma coluna em um controle DataGridView.


DataGridViewColumn Representa uma coleção de objetos DataGridViewColumn em um
Collection controle DataGridView.

DataGridViewColumnDesign Especifica se um tipo de coluna está visível no designer


TimeVisibleAttribute DataGridView. Essa classe não pode ser herdada.

DataGridViewColumnDivider Fornece dados para o evento ColumnDividerDoubleClick de um


DoubleClickEventArgs DataGridView.

DataGridViewColumnEvent Fornece dados para eventos relacionados a coluna de um


Args DataGridView.

DataGridViewColumnHeader Representa um cabeçalho de coluna em um controle


Cell DataGridView.

DataGridViewColumnHeader Fornece informações sobre um DataGridViewColumnHeaderCell


Cell.DataGridViewColumn para aplicativos cliente de acessibilidade.
HeaderCellAccessibleObject

DataGridViewColumnState Fornece dados para o evento de ColumnStateChanged .


ChangedEventArgs

DataGridViewComboBoxCell Exibe uma caixa de combinação em um controle DataGridView.

DataGridViewComboBoxCell. Representa o objeto de acessibilidade para o objeto


DataGridViewComboBoxCell DataGridViewComboBoxCell atual.
AccessibleObject

DataGridViewComboBoxCell. Representa a coleção de opções de seleção em um


ObjectCollection DataGridViewComboBoxCell.

DataGridViewComboBox Representa uma coluna de objetos DataGridViewComboBoxCell.


Column

DataGridViewComboBox Representa o controle de caixa de combinação hospedado em


EditingControl um DataGridViewComboBoxCell.

DataGridViewDataErrorEvent Fornece dados para o evento de DataError .


Args

DataGridViewEditingControl Fornece dados para o evento de EditingControlShowing .


ShowingEventArgs

DataGridViewElement Fornece a classe base para elementos de um controle


DataGridView.

DataGridViewHeaderCell Contém funcionalidade comum para células de cabeçalho de


linha e células de cabeçalho de coluna.

DataGridViewImageCell Exibe um gráfico em um controle DataGridView.


DataGridViewImageCell.Data Fornece informações sobre um DataGridViewImageCell para
GridViewImageCellAccessible aplicativos cliente de acessibilidade.
Object

DataGridViewImageColumn Hospeda uma coleção de objetos DataGridViewImageCell.

DataGridViewLinkCell Representa uma célula que contém um link.

DataGridViewLinkCell.Data Fornece informações sobre um controle DataGridViewLinkCell


GridViewLinkCellAccessible para aplicativos cliente de acessibilidade.
Object

DataGridViewLinkColumn Representa uma coluna de células que contêm links em um


controle de DataGridView.

DataGridViewRow Representa uma linha em um controle DataGridView.

DataGridViewRow.DataGrid Fornece informações sobre um DataGridViewRow para


ViewRowAccessibleObject aplicativos cliente de acessibilidade.

DataGridViewRowCancelEvent Fornece dados para o evento UserDeletingRow de um


Args DataGridView.

DataGridViewRowCollection Uma coleção de objetos DataGridViewRow .

DataGridViewRowContext Fornece dados para o evento de RowContextMenuStripNeeded .


MenuStripNeededEventArgs

DataGridViewRowDivider Fornece dados para o evento RowDividerDoubleClick de um


DoubleClickEventArgs DataGridView.

DataGridViewRowErrorText Fornece dados para o evento RowErrorTextNeeded de um


NeededEventArgs controle DataGridView.

DataGridViewRowEventArgs Fornece dados para eventos DataGridView relacionados à linha.

DataGridViewRowHeaderCell Representa um cabeçalho de linha em um controle


DataGridView.

DataGridViewRowHeaderCell. Fornece informações sobre um DataGridViewRowHeaderCell


DataGridViewRowHeaderCell para aplicativos cliente de acessibilidade.
AccessibleObject

DataGridViewRowHeightInfo Fornece dados para o evento RowHeightInfoNeeded de um


NeededEventArgs DataGridView.

DataGridViewRowHeightInfo Fornece dados para o evento RowHeightInfoPushed de um


PushedEventArgs DataGridView.

DataGridViewRowPostPaint Fornece dados para o evento de RowPostPaint .


EventArgs
DataGridViewRowPrePaint Fornece dados para o evento de RowPrePaint .
EventArgs

DataGridViewRowsAdded Fornece dados para o evento de RowsAdded .


EventArgs

DataGridViewRowsRemoved Fornece dados para o evento de RowsRemoved .


EventArgs

DataGridViewRowState Fornece dados para o evento RowStateChanged de um


ChangedEventArgs DataGridView.

DataGridViewSelectedCell Representa uma coleção de células selecionadas em um


Collection DataGridView.

DataGridViewSelectedColumn Representa uma coleção de objetos DataGridViewColumn


Collection selecionados em um DataGridView.

DataGridViewSelectedRow Representa uma coleção de objetos DataGridViewRow


Collection selecionados em um DataGridView.

DataGridViewSortCompare Fornece dados para o evento de SortCompare .


EventArgs

DataGridViewTextBoxCell Exibe informações de texto editável em um controle


DataGridView.

DataGridViewTextBoxCell.Data Representa o objeto de acessibilidade para o objeto


GridViewTextBoxCell DataGridViewTextBoxCell atual.
AccessibleObject

DataGridViewTextBoxColumn Hospeda uma coleção de células DataGridViewTextBoxCell.

DataGridViewTextBoxEditing Representa um controle de caixa de texto que pode ser


Control hospedado em um DataGridViewTextBoxCell.

DataGridViewTopLeftHeader Representa a célula no canto superior esquerdo do DataGridView


Cell que fica acima dos cabeçalhos de linha e à esquerda dos
cabeçalhos de coluna.

DataGridViewTopLeftHeader Fornece informações sobre um DataGridViewTopLeftHeaderCell


Cell.DataGridViewTopLeft para aplicativos cliente de acessibilidade.
HeaderCellAccessibleObject

DataObject Implementa um mecanismo de transferência de dados básicos.

DateBoldEventArgs Fornece dados para os eventos que são internos ao controle


MonthCalendar.

DateRangeEventArgs Fornece dados para os eventos DateChanged ou DateSelected


do controle MonthCalendar.
DateTimePicker Representa um controle do Windows que permite ao usuário
selecionar uma data e uma hora e exibir a data e hora com um
formato especificado.

DateTimePicker.DateTime Fornece informações sobre o controle DateTimePicker para


PickerAccessibleObject aplicativos cliente de acessibilidade.

DockingAttribute Especifica o comportamento de encaixe padrão para um


controle.

DomainUpDown Representa uma caixa de rotação do Windows (também


conhecida como um controle superior/inferior) que exibe valores
da cadeia de caracteres.

DomainUpDown.DomainItem Fornece informações sobre os itens no controle DomainUpDown


AccessibleObject para aplicativos cliente de acessibilidade.

DomainUpDown.Domain Fornece informações sobre o controle DomainUpDown para


UpDownAccessibleObject aplicativos cliente de acessibilidade.

DomainUpDown.Domain Encapsula uma coleção de objetos para uso pela classe


UpDownItemCollection DomainUpDown.

DpiChangedEventArgs Fornece dados para os eventos de DPIChanged de um formulário


ou controle.

DragEventArgs Fornece dados para o evento DragDrop, DragEnter ou DragOver.

DrawItemEventArgs Fornece dados para o evento de DrawItem .

DrawListViewColumnHeader Fornece dados para o evento de DrawColumnHeader .


EventArgs

DrawListViewItemEventArgs Fornece dados para o evento de DrawItem .

DrawListViewSubItemEvent Fornece dados para o evento de DrawSubItem .


Args

DrawToolTipEventArgs Fornece dados para o evento de Draw .

DrawTreeNodeEventArgs Fornece dados para o evento de DrawNode .

ErrorProvider Fornece uma interface do usuário para indicar que há um erro


associado a um controle em um formulário.

FeatureSupport Fornece métodos static para recuperar informações de recurso


do sistema atual.

FileDialog Exibe uma caixa de diálogo na qual o usuário pode selecionar


um arquivo.
FileDialogCustomPlace Representa uma entrada em uma coleção de local personalizado
FileDialog para Windows Vista.

FileDialogCustomPlaces Representa uma coleção de locais personalizados do Windows


Collection Vista para a classe FileDialog.

FlatButtonAppearance Fornece propriedades que especificam a aparência dos controles


Button cujo FlatStyle é Flat.

FlowLayoutPanel Representa um painel que dispõe de forma dinâmica o conteúdo


horizontal ou verticalmente.

FlowLayoutSettings Coleta as características associadas a layouts de fluxo.

FolderBrowserDialog Solicita que o usuário selecione uma pasta. Essa classe não pode
ser herdada.

FontDialog Solicita ao usuário para escolher uma fonte entre as instaladas


no computador local.

Form Representa uma janela ou caixa de diálogo que compõe a


interface do usuário de um aplicativo.

Form.ControlCollection Representa uma coleção de controles no formulário.

FormClosedEventArgs Fornece dados para o evento de FormClosed .

FormClosingEventArgs Fornece dados para o evento de FormClosing .

FormCollection Representa uma coleção de objetos Form .

GiveFeedbackEventArgs Fornece dados para o evento GiveFeedback, que ocorre durante


uma operação de arrastar.

GridItem Implementa uma linha em um PropertyGrid.

GridItemCollection Contém uma coleção de objetos GridItem .

GroupBox Representa um controle de Windows que exibe um quadro em


torno de um grupo de controles com uma legenda opcional.

GroupBoxRenderer Fornece os métodos usados para renderizar um controle de caixa


de grupo com ou sem estilos visuais. Essa classe não pode ser
herdada.

HandledMouseEventArgs Permite que um controle personalizado impeça que o evento


MouseWheel seja enviado ao seu contêiner pai.

Help Encapsula o mecanismo de Ajuda HTML 1.0.

HelpEventArgs Fornece dados para o evento de HelpRequested .


HelpProvider Fornece Ajuda pop-up ou online para os controles.

HScrollBar Representa uma barra de rolagem horizontal padrão do


Windows.

HScrollProperties Fornece propriedades básicas para o HScrollBar.

HtmlDocument Fornece acesso programático de nível superior a um documento


HTML hospedado pelo controle WebBrowser.

HtmlElement Representa um elemento HTML em uma página da Web.

HtmlElementCollection Define uma coleção de objetos HtmlElement.

HtmlElementErrorEventArgs Fornece dados para o evento de Error .

HtmlElementEventArgs Fornece dados para os eventos definidos em HtmlDocument e


HtmlElement.

HtmlHistory Gerencia a lista de documentos e sites da Web que o usuário


visitou na sessão atual.

HtmlWindow Representa a janela lógica que contém uma ou mais instâncias


de HtmlDocument.

HtmlWindowCollection Representa as janelas contidas dentro de outra HtmlWindow.

ImageIndexConverter Fornece um conversor de tipo para converter os dados para um


índice de imagem de e em uma cadeia de caracteres.

ImageKeyConverter Fornece um conversor de tipo para converter os dados para uma


chave de imagem de e em um outro tipo de dados.

ImageList Fornece métodos para gerenciar uma coleção de objetos Image.


Essa classe não pode ser herdada.

ImageList.ImageCollection Encapsula a coleção de objetos Image em um ImageList.

ImageListStreamer Fornece a parte de dados de um ImageList.

ImeContext Contém métodos estáticos que interagem diretamente com a


API do IME.

InputLanguage Fornece métodos e campos para gerenciar o idioma de entrada.


Essa classe não pode ser herdada.

InputLanguageChangedEvent Fornece dados para o evento de InputLanguageChanged .


Args

InputLanguageChanging Fornece dados para o evento de InputLanguageChanging .


EventArgs
InputLanguageCollection Armazena objetos InputLanguage.

InvalidateEventArgs Fornece dados para o evento de Invalidated .

ItemChangedEventArgs Fornece dados para o evento de ItemChanged .

ItemCheckedEventArgs Fornece dados para o evento ItemChecked do controle ListView.

ItemCheckEventArgs Fornece dados para o evento ItemCheck dos controles


CheckedListBox e ListView.

ItemDragEventArgs Fornece dados para o evento ItemDrag dos controles ListView e


TreeView.

KeyEventArgs Fornece dados para o evento KeyDown ou KeyUp.

KeyPressEventArgs Fornece dados para o evento de KeyPress .

KeysConverter Fornece um TypeConverter para converter objetos Keys em e de


outras representações.

Label Representa um rótulo padrão do Windows.

LabelEditEventArgs Fornece dados para os eventos de BeforeLabelEdit e de


AfterLabelEdit .

LayoutEventArgs Fornece dados para o evento de Layout . Essa classe não pode
ser herdada.

LayoutSettings Fornece uma classe base para a coleta de características do


esquema de layout.

LinkArea.LinkAreaConverter Fornece um conversor de tipo para converter objetos


LinkArea.LinkAreaConverter para e de diversas outras
representações.

LinkClickedEventArgs Fornece dados para o evento de LinkClicked .

LinkConverter Fornece um conversor de tipo para objetos LinkLabel.Link.

LinkLabel Representa um controle de rótulo do Windows que pode exibir


hiperlinks.

LinkLabel.Link Representa um link dentro de um controle LinkLabel.

LinkLabel.LinkCollection Representa a coleção de links em um controle LinkLabel.

LinkLabelLinkClickedEvent Fornece dados para o evento de LinkClicked .


Args

ListBindingConverter Fornece um conversor de tipo para converter objetos Binding


para e de diversas outras representações.
ListBindingHelper Fornece funcionalidades para descobrir uma lista vinculável e as
propriedades dos itens contidos na lista quando elas diferem das
propriedades públicas do objeto ao qual elas se associam.

ListBox Representa um controle do Windows para exibir uma lista de


itens.

ListBox.IntegerCollection Representa uma coleção de inteiros em um ListBox.

ListBox.ObjectCollection Representa a coleção de itens em um ListBox.

ListBox.SelectedIndex Representa a coleção que contém os índices para os itens


Collection selecionados em um ListBox.

ListBox.SelectedObject Representa a coleção de itens selecionados no ListBox.


Collection

ListControl Fornece uma implementação comum de membros para as


classes ListBox e ComboBox.

ListControlConvertEventArgs Fornece dados para o evento de Format .

ListView Representa um controle de exibição de lista do Windows, que


exibe uma coleção de itens que podem ser exibidos usando uma
das quatro exibições diferentes.

ListView.CheckedIndex Representa a coleção que contém os índices para os itens


Collection marcados em um controle de exibição de lista.

ListView.CheckedListViewItem Representa a coleção de itens marcados em um controle de


Collection exibição de lista.

ListView.ColumnHeader Representa a coleção de cabeçalhos de coluna em um controle


Collection ListView.

ListView.ListViewItem Representa a coleção de itens em um controle ListView ou


Collection atribuída a um ListViewGroup.

ListView.SelectedIndex Representa a coleção que contém os índices para os itens


Collection selecionados em um controle ListView.

ListView.SelectedListViewItem Representa a coleção de itens selecionados em um controle de


Collection exibição de lista.

ListViewGroup Representa um grupo de itens exibidos em um controle ListView.

ListViewGroupCollection Representa a coleção de grupos em um controle ListView.

ListViewGroupEventArgs Fornece dados para o evento


OnGroupCollapsedStateChanged(ListViewGroupEventArgs) e
OnGroupTaskLinkClick(ListViewGroupEventArgs).
ListViewHitTestInfo Contém informações sobre uma área de um controle ListView ou
um ListViewItem.

ListViewInsertionMark Usado para indicar o local de destino esperado quando um item


é arrastado para uma nova posição em um controle ListView.
Essa funcionalidade está disponível somente no Windows XP e
versões posteriores.

ListViewItem Representa um item em um controle ListView.

ListViewItem.ListViewSubItem Representa um subitem de um ListViewItem.

ListViewItem.ListViewSubItem Representa uma coleção de objetos


Collection ListViewItem.ListViewSubItem armazenados em um ListViewItem.

ListViewItemConverter Fornece um conversor de tipo para converter objetos


ListViewItem para e de diversas outras representações.

ListViewItemMouseHover Fornece dados para o evento de ItemMouseHover .


EventArgs

ListViewItemSelection Fornece dados para o evento de ItemSelectionChanged .


ChangedEventArgs

ListViewItemStateImageIndex Fornece um conversor de tipo para converter valores de índice


Converter de imagem de estado de um tipo de dados para outro.

ListViewVirtualItemsSelection Fornece dados para o evento de


RangeChangedEventArgs VirtualItemsSelectionRangeChanged .

MaskedTextBox Usa uma máscara para distinguir entre entrada de usuário


apropriada e inapropriada.

MaskInputRejectedEventArgs Fornece dados para o evento de MaskInputRejected .

MdiClient Representa o contêiner de formulários filho da interface MDI


(interface de vários documentos). Essa classe não pode ser
herdada.

MdiClient.ControlCollection Contém uma coleção de controles MdiClient.

MeasureItemEventArgs Fornece dados para o evento MeasureItem dos controles ListBox,


ComboBox, CheckedListBox e MenuItem.

MenuStrip Fornece um sistema de menus para um formulário.

MessageBox Exibe uma janela de mensagem, também conhecida como uma


caixa de diálogo que exibe uma mensagem ao usuário. É uma
janela modal, bloqueando outras ações no aplicativo até que o
usuário a feche. Um MessageBox pode conter texto, botões e
símbolos que informam e instruem o usuário.
MonthCalendar Representa um controle de Windows que permite ao usuário
selecionar uma data usando uma exibição de calendário mensal
visual.

MonthCalendar.HitTestInfo Contém informações sobre uma área de um controle


MonthCalendar. Essa classe não pode ser herdada.

MouseEventArgs Fornece dados para os eventos MouseUp, MouseDown e


MouseMove.

NativeWindow Fornece um encapsulamento de nível baixo de um identificador


de janela e um procedimento de janela.

NavigateEventArgs Fornece dados para o evento de Navigate .

NodeLabelEditEventArgs Fornece dados para os eventos de BeforeLabelEdit e de


AfterLabelEdit .

NotifyIcon Especifica um componente que cria um ícone na área de


notificação. Essa classe não pode ser herdada.

NumericUpDown Representa uma caixa de rotação do Windows (também


conhecida como um controle superior/inferior) que exibe valores
numéricos.

NumericUpDownAcceleration Fornece informações que especificam como a aceleração deve


ser executada em uma caixa de rotação (também conhecida
como controle de cima para baixo) quando o botão para cima ou
para baixo é pressionado para o período especificado.

NumericUpDownAcceleration Representa uma coleção classificada de objetos


Collection NumericUpDownAcceleration no controle NumericUpDown.

OpacityConverter Fornece um conversor de tipo para converter valores de


opacidade para e de uma cadeia de caracteres.

OpenFileDialog Exibe uma caixa de diálogo padrão que solicita que o usuário
abra um arquivo. Essa classe não pode ser herdada.

OSFeature Fornece consultas de recurso específico do sistema operacional.

OwnerDrawPropertyBag Contém valores de propriedades de que um componente pode


precisar apenas ocasionalmente.

PaddingConverter Fornece um conversor de tipo para converter valores Padding de


e para diversas outras representações.

PageSetupDialog Permite ao usuário alterar configurações de impressão relativas à


página, como as margens e a orientação do papel. Essa classe
não pode ser herdada.

PaintEventArgs Fornece dados para o evento de Paint .


Panel Usado para agrupar coleções de controles.

PictureBox Representa um controle de caixa de imagem do Windows para


exibir uma imagem.

PopupEventArgs Fornece dados para o evento de Popup .

PowerStatus Indica informações atuais de status de energia do sistema.

PreviewKeyDownEventArgs Fornece dados para o evento de PreviewKeyDown .

PrintControllerWithStatus Controla como um documento é impresso em um aplicativo do


Dialog Windows Forms.

PrintDialog Permite que os usuários selecionem uma impressora e escolham


quais seções do documento imprimir de um aplicativo Windows
Forms.

PrintPreviewControl Representa a parte de visualização bruta de visualização de


impressão de um aplicativo do Windows Forms, sem caixas de
diálogo nem botões. A maioria dos objetos PrintPreviewControl
foi encontrada em objetos PrintPreviewDialog, mas essa não é
uma regra.

PrintPreviewDialog Representa um formulário de caixa de diálogo que contém um


PrintPreviewControl para imprimir usando um aplicativo do
Windows Forms.

ProfessionalColors Fornece estruturas Color que são cores de um elemento de


exibição do Windows. Essa classe não pode ser herdada.

ProfessionalColorTable Fornece cores usadas para elementos de exibição do Microsoft


Office.

ProgressBar Representa um controle de barra de progresso do Windows.

ProgressBarRenderer Fornece métodos usados para renderizar um controle de barra


de progresso com estilos visuais. Essa classe não pode ser
herdada.

PropertyGrid Fornece uma interface de usuário para navegação pelas


propriedades de um objeto.

PropertyGrid.PropertyTab Contém uma coleção de objetos PropertyTab .


Collection

PropertyManager Mantém um Binding entre a propriedade de um objeto e uma


propriedade de controle associado a dados.

PropertyTabChangedEvent Fornece dados para o evento PropertyTabChanged de um


Args PropertyGrid.
PropertyValueChangedEvent Fornece dados para o evento PropertyValueChanged de um
Args PropertyGrid.

QueryAccessibilityHelpEvent Fornece dados para o evento de QueryAccessibilityHelp .


Args

QueryContinueDragEventArgs Fornece dados para o evento de QueryContinueDrag .

QuestionEventArgs Fornece dados para os eventos que precisam de uma resposta


true ou false a uma pergunta.

RadioButton Permite que o usuário selecione uma única opção em um grupo


quando comparado a outros controles RadioButton.

RadioButton.RadioButton Fornece informações sobre o controle RadioButton para


AccessibleObject aplicativos cliente de acessibilidade.

RadioButtonRenderer Fornece métodos usados para renderizar um controle de botão


de opção (também conhecido como um botão de rádio) com ou
sem estilos visuais. Essa classe não pode ser herdada.

RelatedImageListAttribute Indica a qual ImageList uma propriedade está relacionada.

RetrieveVirtualItemEventArgs Fornece dados para o evento de RetrieveVirtualItem .

RichTextBox Representa um controle de caixa RTF do Windows.

RowStyle Representa a aparência de uma linha em um layout de tabela.

SaveFileDialog Solicita ao usuário para selecionar um local para salvar um


arquivo. Essa classe não pode ser herdada.

Screen Representa um ou vários dispositivos de vídeo em um único


sistema.

ScrollableControl Define uma classe base para controles que dão suporte ao
comportamento de rolagem automática.

ScrollableControl.Dock Determina o preenchimento de borda para controles encaixados.


PaddingEdges

ScrollableControl.Dock Um TypeConverter para a classe


PaddingEdgesConverter ScrollableControl.DockPaddingEdges.

ScrollBar Implementa a funcionalidade básica de um controle de barra de


rolagem.

ScrollBarRenderer Fornece os métodos usados para renderizar um controle de


barra de rolagem com estilos visuais. Essa classe não pode ser
herdada.

ScrollEventArgs Fornece dados para o evento de Scroll .


ScrollProperties Encapsula as propriedades relacionadas à rolagem.

SearchForVirtualItemEvent Fornece dados para o evento de SearchForVirtualItem .


Args

SelectedGridItemChanged Fornece dados para o evento SelectedGridItemChanged do


EventArgs controle PropertyGrid.

SelectionRange Representa um intervalo da seleção de datas em um controle de


calendário mensal.

SelectionRangeConverter Fornece um conversor de tipo para converter objetos


SelectionRange em e de diversos outros tipos.

SendKeys Fornece métodos para enviar pressionamentos de teclas para um


aplicativo.

SplitContainer Representa um controle que consiste em uma barra móvel que


divide a área de exibição do contêiner em dois painéis
redimensionáveis.

Splitter Representa um controle de divisor que permite que o usuário


redimensione controles encaixados. Splitter foi substituído pelo
SplitContainer e é fornecida somente para compatibilidade com
versões anteriores.

SplitterCancelEventArgs Fornece dados para eventos do divisor.

SplitterEventArgs Fornece dados para os eventos SplitterMoving e SplitterMoved.

SplitterPanel Cria um painel que está associado a um SplitContainer.

StatusStrip Representa um controle de barra de status do Windows.

SystemInformation Fornece informações sobre o ambiente do sistema atual.

TabControl Gerencia um conjunto relacionado de páginas da guia.

TabControl.ControlCollection Contém uma coleção de objetos Control .

TabControl.TabPageCollection Contém uma coleção de objetos TabPage .

TabControlCancelEventArgs Fornece dados para os eventos Selecting e Deselecting de um


controle TabControl.

TabControlEventArgs Fornece dados para os eventos Selected e Deselected de um


controle TabControl.

TableLayoutCellPaintEvent Fornece dados para o evento de CellPaint .


Args

TableLayoutColumnStyle Uma coleção que armazena objetos ColumnStyle.


Collection

TableLayoutControlCollection Representa uma coleção de controles filho em um contêiner de


layout de tabela.

TableLayoutPanel Representa um painel que dispõe de forma dinâmica o conteúdo


em uma grade composta por linhas e colunas.

TableLayoutRowStyle Uma coleção que armazena objetos RowStyle.


Collection

TableLayoutSettings Coleta as características associadas a layouts de tabela.

TableLayoutStyle Implementa a funcionalidade básica que representa a aparência


e o comportamento de um layout de tabela.

TableLayoutStyleCollection Implementa a funcionalidade básica para uma coleção de estilos


de layout de tabela.

TabPage Representa uma única página da guia em um TabControl.

TabPage.TabPageControl Contém a coleção de controles que o TabPage usa.


Collection

TabRenderer Fornece os métodos usados para renderizar um controle guia


com estilos visuais. Essa classe não pode ser herdada.

TaskDialog Uma caixa de diálogo de tarefa permite exibir informações e


obter uma entrada simples do usuário. Ela é semelhante a uma
MessageBox (que é formatada pelo sistema operacional), mas
fornece muito mais recursos.

TaskDialogButton Representa um controle de botão de uma caixa de diálogo de


tarefa.

TaskDialogButtonCollection Representa uma coleção de objetos TaskDialogButton .

TaskDialogCommandLink Representa um controle de botão de link de comando de uma


Button caixa de diálogo de tarefa.

TaskDialogControl Representa um controle da caixa de diálogo de tarefa.

TaskDialogExpander Representa um botão expansor e a área expandida associada de


uma caixa de diálogo de tarefa.

TaskDialogFootnote Representa a área da nota de rodapé de uma caixa de diálogo de


tarefa.

TaskDialogIcon Representa um ícone que pode ser exibido na área principal


(definindo a propriedade Icon) ou na nota de rodapé (definindo
a propriedade Icon) de uma caixa de diálogo de tarefa.
TaskDialogLinkClickedEvent Fornece dados para o evento de LinkClicked .
Args

TaskDialogPage Representa uma página de conteúdo de uma caixa de diálogo de


tarefa.

TaskDialogProgressBar Representa um controle de barra de progresso de uma caixa de


diálogo de tarefa.

TaskDialogRadioButton Representa um controle de botão de opção de uma caixa de


diálogo de tarefa.

TaskDialogRadioButton Representa uma coleção de objetos TaskDialogRadioButton .


Collection

TaskDialogVerificationCheck Representa um controle de caixa de seleção de verificação de


Box uma caixa de diálogo de tarefa.

TextBox Representa um controle de caixa de texto do Windows.

TextBoxBase Implementa a funcionalidade básica necessária por controles de


texto.

TextBoxRenderer Fornece os métodos usados para renderizar um controle de caixa


de texto com estilos visuais. Essa classe não pode ser herdada.

TextRenderer Fornece os métodos usados para medir e renderizar o texto. Essa


classe não pode ser herdada.

ThreadExceptionDialog Implementa uma caixa de diálogo exibida quando ocorre uma


exceção sem tratamento em um thread.

Timer Implementa um temporizador que aciona um evento em


intervalos definidos pelo usuário. Esse temporizador é otimizado
para uso em aplicativos do Windows Forms e deve ser usado em
uma janela.

ToolStrip Fornece um contêiner para objetos da barra de ferramentas do


Windows.

ToolStrip.ToolStripAccessible Fornece informações que os aplicativos de acessibilidade usam


Object para ajustar a interface do usuário de um ToolStrip para usuários
portadores de deficiências.

ToolStripArrowRenderEvent Fornece dados para o evento de RenderArrow .


Args

ToolStripButton Representa um ToolStripItem selecionável que pode conter texto


e imagens.

ToolStripComboBox Representa um ToolStripComboBox que é renderizado


corretamente em um ToolStrip.
ToolStripContainer Fornece painéis de cada lado do formulário e um painel central
que pode conter um ou mais controles.

ToolStripContentPanel Representa o painel central de um controle ToolStripContainer.

ToolStripContentPanelRender Fornece dados para o evento de RendererChanged .


EventArgs

ToolStripControlHost Hospeda controles personalizados ou controles do Windows


Forms.

ToolStripControlHost.ToolStrip Representa o host de controle de objeto acessível responsável


HostedControlAccessible pela navegação acessível dentro dos itens padrão e controles
Object hospedados do ToolStrip, como TextBox, ComboBox, ProgressBar
etc.

ToolStripDropDown Representa um controle que permite ao usuário selecionar um


único item em uma lista exibida quando o usuário clica em um
ToolStripDropDownButton.

ToolStripDropDown.ToolStrip Fornece informações sobre o controle ToolStripDropDown para


DropDownAccessibleObject aplicativos cliente de acessibilidade.

ToolStripDropDownButton Representa um controle que, quando clicado, exibe um


ToolStripDropDown associado no qual o usuário pode selecionar
um único item.

ToolStripDropDownClosed Fornece dados para o evento de Closed .


EventArgs

ToolStripDropDownClosing Fornece dados para o evento de Closing .


EventArgs

ToolStripDropDownItem Fornece funcionalidades básicas para controles que exibem um


ToolStripDropDown quando um controle de
ToolStripDropDownButton, ToolStripMenuItem ou
ToolStripSplitButton é clicado.

ToolStripDropDownItem Fornece informações que os aplicativos de acessibilidade usam


AccessibleObject para ajustar a interface do usuário de um ToolStripDropDown
para usuários portadores de deficiências.

ToolStripDropDownMenu Fornece a funcionalidade básica para o controle


ContextMenuStrip.

ToolStripGripRenderEventArgs Fornece dados para o evento de RenderGrip .

ToolStripItem Representa a classe base abstrata que gerencia eventos e o


layout para todos os elementos que um ToolStrip ou
ToolStripDropDown pode conter.
ToolStripItem.ToolStripItem Fornece informações que os aplicativos de acessibilidade usam
AccessibleObject para ajustar a interface do usuário de um ToolStripItem para
usuários portadores de deficiências.

ToolStripItemClickedEvent Fornece dados para o evento de ItemClicked .


Args

ToolStripItemCollection Representa uma coleção de objetos ToolStripItem .

ToolStripItemEventArgs Fornece dados para eventos ToolStripItem.

ToolStripItemImageRender Fornece dados para o evento de RenderItemImage .


EventArgs

ToolStripItemRenderEvent Fornece dados para os eventos que renderizam a tela de fundo


Args dos objetos derivados do ToolStripItem na classe
ToolStripRenderer.

ToolStripItemTextRenderEvent Fornece dados para o evento de RenderItemText .


Args

ToolStripLabel Representa um ToolStripItem não selecionável que renderiza


texto e imagens e pode exibir hiperlinks.

ToolStripManager Controla a renderização e o reposicionamento de ToolStrip e a


mesclagem de objetos MenuStrip, ToolStripDropDownMenu e
ToolStripMenuItem. Essa classe não pode ser herdada.

ToolStripMenuItem Representa uma opção selecionável exibida em um MenuStrip ou


ContextMenuStrip.

ToolStripOverflow Gerencia o comportamento de estouro de um ToolStrip.

ToolStripOverflowButton Hospeda um ToolStripDropDown que exibe itens que estouram o


ToolStrip.

ToolStripPanel Cria um contêiner no qual outros controles podem compartilhar


um espaço horizontal ou vertical.

ToolStripPanel.ToolStripPanel Representa todos os objetos ToolStripPanelRow em um


RowCollection ToolStripPanel.

ToolStripPanelRenderEvent Fornece dados para o desenho de ToolStripPanel.


Args

ToolStripPanelRow Representa uma linha de um ToolStripPanel que pode conter


controles.

ToolStripProfessionalRenderer Manipula a funcionalidade de pintura para os objetos ToolStrip,


aplicando uma paleta personalizada e um estilo simplificado.
ToolStripProgressBar Representa um controle de barra de progresso do Windows
contido em um StatusStrip.

ToolStripRenderer Manipula a funcionalidade de pintura para objetos ToolStrip.

ToolStripRenderEventArgs Fornece dados para os métodos


OnRenderImageMargin(ToolStripRenderEventArgs),
OnRenderToolStripBorder(ToolStripRenderEventArgs) e
OnRenderToolStripBackground(ToolStripRenderEventArgs).

ToolStripSeparator Representa uma linha usada para agrupar itens de um ToolStrip


ou os itens de lista suspensa de um MenuStrip ou
ContextMenuStrip ou outro controle ToolStripDropDown.

ToolStripSeparatorRender Fornece dados para o evento de RenderGrip .


EventArgs

ToolStripSplitButton Representa uma combinação de um botão padrão à esquerda e


um botão de lista suspensa à direita ou vice-versa se o valor de
RightToLeft for Yes .

ToolStripSplitButton.ToolStrip Fornece informações que os aplicativos de acessibilidade usam


SplitButtonAccessibleObject para ajustar a interface do usuário de um ToolStripSplitButton
para usuários portadores de deficiências.

ToolStripStatusLabel Representa um painel em um controle StatusStrip.

ToolStripSystemRenderer Manipula a funcionalidade de pintura em objetos ToolStrip,


usando as cores do sistema e um estilo de visual plano.

ToolStripTextBox Representa uma caixa de texto em um ToolStrip que permite que


o usuário insira um texto.

ToolTip Representa uma pequena janela pop-up retangular que exibe


uma breve descrição da finalidade do controle quando o usuário
deixa o ponteiro sobre o controle.

TrackBar Representa uma barra de acompanhamento padrão do Windows.

TrackBarRenderer Fornece os métodos usados para renderizar um controle de


barra de acompanhamento com estilos visuais. Essa classe não
pode ser herdada.

TreeNode Representa um nó de um TreeView.

TreeNodeCollection Representa uma coleção de objetos TreeNode .

TreeNodeConverter Fornece um conversor de tipo para converter objetos TreeNode


para e de diversas outras representações.

TreeNodeMouseClickEvent Fornece dados para os eventos de NodeMouseClick e de


Args NodeMouseDoubleClick .
TreeNodeMouseHoverEvent Fornece dados para o evento de NodeMouseHover .
Args

TreeView Exibe uma coleção hierárquica de itens rotulados, cada um


representado por um TreeNode.

TreeViewCancelEventArgs Fornece dados para os eventos BeforeCheck, BeforeCollapse,


BeforeExpand e BeforeSelect de um controle TreeView.

TreeViewEventArgs Fornece dados para os eventos AfterCheck, AfterCollapse,


AfterExpand ou AfterSelect de um controle TreeView.

TreeViewHitTestInfo Contém informações sobre uma área de um controle TreeView


ou um TreeNode.

TreeViewImageIndex Fornece um conversor de tipo para converter dados de um índice


Converter de imagem de um tipo de dados para outro para uso pelo
controle TreeView.

TreeViewImageKeyConverter Fornece um conversor de tipo para converter os dados para uma


chave de imagem de e em um outro tipo de dados.

TypeValidationEventArgs Fornece dados para o evento de TypeValidationCompleted .

UICuesEventArgs Fornece dados para o evento de ChangeUICues .

UpDownBase Implementa a funcionalidade básica necessária para uma caixa


de rotação (também conhecida como um controle
superior/inferior).

UpDownEventArgs Fornece dados para controles que derivam do controle


UpDownBase.

UserControl Fornece um controle vazio que pode ser usado para criar outros
controles.

VScrollBar Representa uma barra de rolagem vertical padrão do Windows.

VScrollProperties Fornece as propriedades básicas para a classe VScrollBar.

WebBrowser Permite que um usuário navegue pelas páginas da Web dentro


de um formulário.

WebBrowser.WebBrowserSite Representa a janela do host de um controle WebBrowser.

WebBrowserBase Fornece um wrapper para um controle ActiveX genérico para uso


como uma classe base pelo controle WebBrowser.

WebBrowserDocument Fornece dados para o evento de DocumentCompleted .


CompletedEventArgs
WebBrowserNavigatedEvent Fornece dados para o evento de Navigated .
Args

WebBrowserNavigatingEvent Fornece dados para o evento de Navigating .


Args

WebBrowserProgressChanged Fornece dados para o evento de ProgressChanged .


EventArgs

WebBrowserSiteBase Implementa as interfaces de um site do ActiveX para uso como


uma classe base pela classe WebBrowser.WebBrowserSite.

WindowsFormsSection Define uma nova ConfigurationSection para analisar as


configurações do aplicativo. Essa classe não pode ser herdada.

WindowsForms Fornece um contexto de sincronização para o modelo de


SynchronizationContext aplicativo do Windows Forms.

Estruturas
ノ Expandir a tabela

BindingMember Contém informações que permitem que um Binding resolva uma associação
Info de dados para a propriedade de um objeto ou a propriedade do objeto
atual em uma lista de objetos.

ImeMode Classe auxiliar que fornece informações sobre o modo de conversão de IME.
Conversion

LinkArea Representa uma área dentro de um controle LinkLabel que representa um


hiperlink dentro do controle.

Message Implementa uma mensagem do Windows.

Padding Representa informações de preenchimento ou margem associadas a um


elemento de IU (interface do usuário).

TableLayoutPanel Representa uma célula em um TableLayoutPanel.


CellPosition

Interfaces
ノ Expandir a tabela

IBindableComponent Permite que um componente que não é de controle emule o


comportamento de associação de dados de um controle do
Windows Forms.

IButtonControl Permite que um controle aja como um botão em um formulário.

ICommandExecutor Define um método que executa uma determinada ação no tipo


que implementa essa interface.

IComponentEditorPageSite O site para um ComponentEditorPage.

IContainerControl Fornece a funcionalidade a um controle para funcionar como um


pai para outros controles.

ICurrencyManagerProvider Oferece gerenciamento de associação personalizada para


componentes.

IDataGridColumnStyleEditing Fornece uma interface de notificação de edição.


NotificationService

IDataGridViewEditingCell Define a funcionalidade comum para uma célula que permite a


manipulação de seu valor.

IDataGridViewEditingControl Define a funcionalidade comum para os controles hospedadas


nas células de uma DataGridView.

IDataObject Fornece um mecanismo independente de formato para a


transferência de dados.

IDropTarget Define os eventos de mouse.

IFeatureSupport Especifica uma interface padrão para recuperar informações de


recurso do sistema atual.

IFileReaderService Define um método que abre um arquivo do diretório atual.

IMessageFilter Define uma interface de filtro de mensagem.

IWin32Window Fornece uma interface para expor os identificadores do Win32


HWND.

IWindowTarget Define a camada de comunicação entre um controle e a API do


Windows.

Enumerações
ノ Expandir a tabela

AccessibleEvents Especifica os eventos que são relatados por aplicativos acessíveis.

AccessibleNavigation Especifica valores para navegar entre objetos acessíveis.


AccessibleRole Especifica valores que representam funções possíveis para um objeto
acessível.

AccessibleSelection Especifica como um objeto acessível é selecionado ou recebe o foco.

AccessibleStates Especifica valores que representam estados possíveis para um objeto


acessível.

AnchorStyles Especifica como um controle é ancorado às bordas de seu contêiner.

Appearance Especifica a aparência de um controle.

ArrangeDirection Especifica a direção na qual o sistema organiza as janelas


minimizadas.

ArrangeStartingPosition Especifica a posição inicial que o sistema usa para organizar as janelas
minimizadas.

ArrowDirection Especifica a direção para a qual mover ao obter itens com o método
GetNextItem(ToolStripItem, ArrowDirection).

AutoCompleteMode Especifica o modo para o recurso de preenchimento automático


usado nos controles ComboBox e TextBox.

AutoCompleteSource Especifica a origem para a funcionalidade de preenchimento


automático de ComboBox e TextBox.

AutoScaleMode Especifica os diferentes tipos de modo de dimensionamento


automático com suporte do Windows Forms.

AutoSizeMode Especifica como um controle se comportará quando sua propriedade


AutoSize for habilitada.

AutoValidate Determina como um controle valida seus dados quando ele perde o
foco de entrada do usuário.

AxHost.ActiveXInvoke Especifica o tipo de membro que fez referência ao controle ActiveX


Kind enquanto estava em um estado inválido.

BatteryChargeStatus Define os identificadores que fornecem informações sobre o estado


de carregamento ou indicam o nível de carga da bateria atual.

BindingCompleteContext Especifica a direção da operação de associação.

BindingCompleteState Indica o resultado de uma operação de associação concluída.

BootMode Especifica o modo de inicialização no qual o sistema foi iniciado.

Border3DSide Especifica os lados de um retângulo ao qual aplicar uma borda


tridimensional.

Border3DStyle Especifica o estilo de uma borda tridimensional.


BorderStyle Especifica o estilo de borda para um controle.

BoundsSpecified Especifica os limites do controle a serem usados ao definir o tamanho


e a posição do controle.

ButtonBorderStyle Especifica o estilo de borda para um controle de botão.

ButtonState Especifica a aparência de um botão.

CaptionButton Especifica o tipo de botão de título a ser exibido.

CharacterCasing Especifica o caso de caracteres em um controle TextBox.

CheckState Especifica o estado de um controle, como uma caixa de seleção, que


pode ser marcado, desmarcado ou definido como um estado
indeterminado.

CloseReason Especifica o motivo pelo qual um formulário foi fechado.

ColorDepth Especifica o número de cores usadas para exibir uma imagem em um


controle ImageList.

ColumnHeaderAuto Especifica como uma coluna contida em um ListView deve ser


ResizeStyle redimensionada.

ColumnHeaderStyle Especifica os estilos dos cabeçalhos de coluna em um controle


ListView.

ComboBoxStyle Especifica o estilo ComboBox.

ControlStyles Especifica o estilo e comportamento de um controle.

ControlUpdateMode Determina quando as alterações para um valor de fonte de dados são


propagadas para a propriedade de controle associado a dados.

DataGridViewAdvanced Especifica os estilos de borda que podem ser aplicados às células de


CellBorderStyle um controle DataGridView.

DataGridViewAutoSize Define os valores para especificar como a largura de uma coluna é


ColumnMode ajustada.

DataGridViewAutoSize Define os valores para especificar como as larguras de colunas são


ColumnsMode ajustadas.

DataGridViewAutoSize Define os valores para especificar como a altura de uma linha é


RowMode ajustada.

DataGridViewAutoSize Define os valores para especificar como as alturas das linhas são
RowsMode ajustadas.

DataGridViewCellBorder Especifica os estilos de borda que podem ser aplicados às células de


Style um controle DataGridView.
DataGridViewCellStyle Especifica a entidade DataGridView que possui o estilo de célula que
Scopes foi alterado.

DataGridViewClipboard Define constantes que indicam se o conteúdo é copiado de um


CopyMode controle DataGridView para a área de transferência.

DataGridViewColumn Define os valores para especificar como a altura dos cabeçalhos de


HeadersHeightSizeMode coluna é ajustada.

DataGridViewColumn Define como uma coluna DataGridView pode ser classificada pelo
SortMode usuário.

DataGridViewComboBox Define constantes que indicam como um DataGridViewComboBoxCell


DisplayStyle é exibido.

DataGridViewContent Define constantes que indicam o alinhamento de conteúdo dentro de


Alignment uma célula DataGridView.

DataGridViewDataError Representa o estado de um controle DataGridView associado a dados


Contexts quando ocorreu um erro de dados.

DataGridViewEditMode Especifica como um usuário inicia a edição de célula no controle


DataGridView.

DataGridViewElement Especifica o estado da interface do usuário de um elemento em um


States controle DataGridView.

DataGridViewHeader Especifica o estilo de borda que pode ser aplicado às propriedades


BorderStyle ColumnHeadersBorderStyle e RowHeadersBorderStyle de um controle
DataGridView.

DataGridViewHitTestType Especifica um local em um controle DataGridView.

DataGridViewImageCell Especifica o layout de uma imagem contida em um DataGridViewCell.


Layout

DataGridViewPaintParts Define os valores para especificar as partes de um DataGridViewCell


que serão pintadas.

DataGridViewRow Define os valores para especificar como a largura do cabeçalho de


HeadersWidthSizeMode linha é ajustada.

DataGridViewSelection Descreve como as células de um controle DataGridView podem ser


Mode selecionadas.

DataGridViewTriState Define os valores para especificar um dos três estados possíveis.

DataSourceUpdateMode Especifica o momento em que uma fonte de dados é atualizada


quando ocorrem alterações no controle associado.

DateTimePickerFormat Especifica o formato de data e hora exibido pelo controle


DateTimePicker.
Day Especifica o dia da semana.

DialogResult Especifica os identificadores para indicar o valor retornado de uma


caixa de diálogo.

DockingBehavior Especifica como um controle deve ser encaixado por padrão quando
adicionado por meio de um designer.

DockStyle Especifica a posição e a maneira como um controle está encaixado.

DragAction Especifica como e se uma operação do tipo "arrastar e soltar" deve


continuar.

DragDropEffects Especifica os possíveis efeitos de uma operação do tipo "arrastar e


soltar".

DrawItemState Especifica o estado de um item que está sendo desenhado.

DrawMode Especifica como os elementos de um controle são desenhados.

DropImageType Especifica o tipo de imagem drop description.

ErrorBlinkStyle Especifica as constantes que indicam quando o ícone de erro,


fornecido por um ErrorProvider, deve piscar para alertar o usuário que
ocorreu um erro.

ErrorIconAlignment Especifica constantes que indicam os locais em que um ícone de erro


pode aparecer em relação ao controle com um erro.

FixedPanel Especifica que Panel1, Panel2 ou nenhum painel é fixo.

FlatStyle Especifica a aparência de um controle.

FlowDirection Define as constantes que especificam a direção na qual os elementos


consecutivos da interface do usuário são colocados em um contêiner
de layout linear.

FormBorderStyle Especifica os estilos de borda para um formulário.

FormStartPosition Especifica a posição inicial de um formulário.

FormWindowState Especifica como uma janela do formulário é exibida.

FrameStyle Especifica o estilo do quadro do controle selecionado.

GetChildAtPointSkip Especifica quais controles filho ignorar.

GridItemType Especifica os tipos de item de grade válidos para um PropertyGrid.

HelpNavigator Especifica as constantes que indicam quais elementos do arquivo de


ajuda serão exibidos.
HighDpiMode Especifica os diferentes modos de DPI alto que podem ser aplicados a
um aplicativo.

HorizontalAlignment Especifica como um objeto ou texto em um controle é alinhado


horizontalmente em relação a um elemento do controle.

HtmlElementInsertion Define os valores que descrevem em que lugar inserir um novo


Orientation elemento ao usar o
InsertAdjacentElement(HtmlElementInsertionOrientation,
HtmlElement).

ImageLayout Especifica a posição da imagem no controle.

ImeMode Especifica um valor que determina o status do IME de um objeto


quando o objeto está selecionado.

InsertKeyMode Representa o modo de inserção usado por caixas de texto.

ItemActivation Especifica a ação do usuário é necessária para ativar os itens em um


controle de exibição de lista e os comentários que são fornecidos
quando o usuário move o ponteiro do mouse sobre um item.

ItemBoundsPortion Especifica uma parte do item de exibição de lista da qual recuperar o


retângulo delimitador.

Keys Especifica os modificadores e códigos de tecla.

LeftRightAlignment Especifica se um objeto ou texto é alinhado à esquerda ou à direita


de um ponto de referência.

LinkBehavior Especifica os comportamentos de um link em um LinkLabel.

LinkState Especifica as constantes que definem o estado do link.

ListViewAlignment Especifica como os itens são alinhados ao ListView.

ListViewGroupCollapsed Especifica a aparência de um ListViewGroup.


State

ListViewHitTestLocations Define constantes que representam áreas em um ListView ou


ListViewItem.

ListViewItemStates Define constantes que representam os estados possíveis de um


ListViewItem.

MaskFormat Define como formatar o texto dentro de um MaskedTextBox.

MdiLayout Especifica o layout das janelas filho da interface MDI em uma janela
pai da MDI.

MenuGlyph Especifica a imagem a ser desenhada ao desenhar um menu com o


método DrawMenuGlyph(Graphics, Rectangle, MenuGlyph).
MergeAction Especifica o tipo de ação a ser executada se uma correspondência for
encontrada ao combinar itens de menu em um ToolStrip.

MessageBoxButtons Especifica as constantes que definem quais botões devem ser


exibidos em um MessageBox.

MessageBoxDefault Especifica as constantes que definem o botão padrão em um


Button MessageBox.

MessageBoxIcon Especifica constantes que definem quais informações devem ser


exibidas.

MessageBoxOptions Especifica opções em um MessageBox.

MonthCalendar.HitArea Define constantes que representam áreas em um controle


MonthCalendar.

MouseButtons Especifica as constantes que definem qual botão do mouse foi


pressionado.

Orientation Especifica a orientação dos controles ou elementos de controles.

PictureBoxSizeMode Especifica como uma imagem é posicionada dentro de um


PictureBox.

PowerLineStatus Especifica o status de energia do sistema.

PowerState Define os identificadores que indicam um modo de atividade de


energia do sistema suspenso.

PreProcessControlState Fornece opções que especificam a relação entre o controle e as


mensagens de pré-processamento.

ProgressBarStyle Especifica o estilo que um ProgressBar usa para indicar o andamento


de uma operação.

PropertySort Especifica como as propriedades são classificadas no PropertyGrid.

RichTextBoxFinds Especifica como uma pesquisa de texto é realizada em um controle


RichTextBox.

RichTextBoxLanguage Fornece configurações de RichTextBox para o IME (Editor de Método


Options de Entrada) e suporte a idiomas asiáticos.

RichTextBoxScrollBars Especifica o tipo de barras de rolagem a ser exibido em um controle


RichTextBox.

RichTextBoxSelection Especifica se qualquer caractere na seleção atual têm o atributo ou


Attribute estilo.

RichTextBoxSelection Especifica o tipo de seleção em um controle RichTextBox.


Types
RichTextBoxStreamType Especifica os tipos de fluxos de entrada e saída usados para carregar
e salvar dados no controle RichTextBox.

RichTextBoxWord Especifica os tipos de tabelas de pontuação que podem ser usados


Punctuations com os recursos de quebra de palavras e de separação de palavras do
controle RichTextBox.

RightToLeft Especifica um valor que indica se o texto será exibido da direita para a
esquerda, como ao usar fontes hebraicas ou árabes.

ScreenOrientation Especifica o ângulo da tela.

ScrollBars Especifica que as barras de rolagem serão visíveis em um controle.

ScrollButton Especifica o tipo de seta de rolagem a desenhar em uma barra de


rolagem.

ScrollEventType Especifica o tipo de ação usada para gerar o evento Scroll.

ScrollOrientation Especifica a orientação da barra de rolagem para o evento Scroll.

SearchDirectionHint Fornece uma dica direcional na qual pesquisar um ListViewItem.

SecurityIDType Esta enumeração não é usada.

SelectionMode Especifica o comportamento de seleção de uma caixa de listagem.

Shortcut Especifica as teclas de atalho que podem ser usadas por itens de
menu.

SizeGripStyle Especifica o estilo da alça de dimensionamento em um Form.

SizeType Especifica como as linhas ou colunas dos elementos da interface do


usuário devem ser dimensionadas em relação ao seu contêiner.

SortOrder Especifica como os itens em uma lista são classificados.

StructFormat Esta enumeração não é usada.

SystemParameter Especifica o tipo de parâmetro do sistema.

TabAlignment Especifica os locais das guias em um controle guia.

TabAppearance Especifica a aparência das guias em um controle guia.

TabControlAction Define valores que representam eventos TabControl.

TabDrawMode Especifica se as guias em um controle guia são desenhadas pelo


proprietário (desenhadas pela janela pai) ou pelo sistema operacional.

TableLayoutPanelCell Especifica o estilo de borda de uma célula em um controle de layout


BorderStyle de tabela.
TableLayoutPanelGrow Especifica como um TableLayoutPanel obterá linhas ou colunas
Style adicionais depois que suas células existentes estiverem cheias.

TabSizeMode Especifica como as guias em um controle guia são dimensionadas.

TaskDialogExpander Especifica onde a área expandida da caixa de diálogo da tarefa deve


Position ser exibida.

TaskDialogProgressBar Contém constantes que especificam o estado de uma barra de


State progresso da caixa de diálogo da tarefa.

TaskDialogStartup Especifica a posição em que uma caixa de diálogo de tarefa será


Location mostrada quando ela for aberta pela primeira vez.

TextDataFormat Especifica os formatos usados com métodos relacionados a texto das


classes Clipboard e DataObject.

TextFormatFlags Especifica as informações de layout e de exibição para cadeias de


caracteres de texto.

TextImageRelation Especifica a posição do texto e da imagem em relação um ao outro


em um controle.

TickStyle Especifica o local das marcas de escala em um controle TrackBar.

ToolStripDropDownClose Especifica o motivo pelo qual um controle ToolStripDropDown foi


Reason fechado.

ToolStripDropDown Especifica a direção na qual um controle ToolStripDropDown é


Direction exibido em relação a seu controle pai.

ToolStripGripDisplayStyle Especifica a orientação da alça de movimentação ToolStrip.

ToolStripGripStyle Especifica a visibilidade de uma alça de movimentação ToolStrip.

ToolStripItemAlignment Determina o alinhamento de um ToolStripItem em um ToolStrip.

ToolStripItemDisplayStyle Especifica o que renderizar (imagem ou texto) para este ToolStripItem.

ToolStripItemImage Especifica se o tamanho da imagem em um ToolStripItem é


Scaling automaticamente ajustado para se ajustar em um ToolStrip enquanto
retém as proporções originais da imagem.

ToolStripItemOverflow Determina se um ToolStripItem é colocado no ToolStrip de estouro.

ToolStripItemPlacement Especifica o local em que um ToolStripItem deve ser disposto em


camadas.

ToolStripLayoutStyle Especifica os alinhamentos possíveis com a qual os itens de um


ToolStrip podem ser exibidos.

ToolStripManagerRender Especifica o estilo de pintura aplicado a vários objetos ToolStrip


Mode contidos em um formulário.

ToolStripRenderMode Especifica o estilo de pintura aplicado a um contido ToolStrip em um


formulário.

ToolStripStatusLabel Especifica quais lados de um ToolStripStatusLabel têm bordas.


BorderSides

ToolStripTextDirection Especifica a orientação do texto a ser usado com um LayoutStyle


específico.

ToolTipIcon Define um conjunto de ícones padronizados que pode ser associado


uma dica de ferramenta.

TreeNodeStates Define constantes que representam os estados possíveis de um


TreeNode.

TreeViewAction Especifica a ação que gerou um evento TreeViewEventArgs.

TreeViewDrawMode Define constantes que representam as possíveis formas de desenhar


um TreeView.

TreeViewHitTestLocations Define constantes que representam áreas de um TreeView ou


TreeNode.

UICues Especifica o estado da interface do usuário.

UnhandledException Define para onde um aplicativo Windows Forms deve enviar as


Mode exceções sem tratamento.

ValidationConstraints Define constantes que informam o


ValidateChildren(ValidationConstraints) de como ele deve validar os
controles filho de um contêiner.

View Especifica como os itens da lista são exibidos em um controle


ListView.

WebBrowserEncryption Especifica constantes que definem os métodos de criptografia usados


Level pelos documentos exibidos no controle WebBrowser.

WebBrowserReadyState Especifica as constantes que definem o estado do controle


WebBrowser.

WebBrowserRefresh Especifica as constantes que definem como o controle WebBrowser


Option pode atualizar seu conteúdo.

Delegados
ノ Expandir a tabela
Application.MessageLoop Representa um método que verificará se o ambiente de
Callback hospedagem ainda está enviando mensagens.

AxHost.AboutBoxDelegate Representa o método que exibirá uma caixa de diálogo Sobre


do controle ActiveX.

BindingCompleteEventHandler Representa o método que manipulará o evento


BindingComplete em cenários de associação de dados.

BindingManagerDataErrorEvent Representa o método que manipulará o evento de DataError de


Handler BindingManagerBase.

CacheVirtualItemsEventHandler Representa o método que manipulará o evento de


CacheVirtualItems de ListView.

ColumnClickEventHandler Representa o método que manipulará o evento de ColumnClick


de ListView.

ColumnReorderedEvent Representa o método que manipulará o evento


Handler ColumnReordered do controle ListView.

ColumnWidthChangedEvent Representa o método que manipulará o evento de


Handler ColumnWidthChanged de ListView.

ColumnWidthChangingEvent Representa o método que manipulará o evento de


Handler ColumnWidthChanging de ListView.

ContentsResizedEventHandler Representa o método que manipulará o evento de


ContentsResized de RichTextBox.

ControlEventHandler Representa o método que manipulará os eventos ControlAdded


e ControlRemoved da classe Control.

ConvertEventHandler Representa o método que manipulará os eventos Parse e


Format de um Binding.

DataGridViewAutoSizeColumn Representa o método que manipulará o evento


ModeEventHandler AutoSizeColumnModeChanged de um controle DataGridView.

DataGridViewAutoSizeColumns Representa o método que manipulará o evento


ModeEventHandler AutoSizeColumnsModeChanged de um controle DataGridView.

DataGridViewAutoSizeMode Representa o método que manipulará os eventos


EventHandler AutoSizeRowsModeChanged ou
RowHeadersWidthSizeModeChanged de um DataGridView.

DataGridViewBindingComplete Representa o método que manipulará o evento de


EventHandler DataBindingComplete de DataGridView.

DataGridViewCellCancelEvent Representa o método que manipulará os eventos CellBeginEdit


Handler e RowValidating de um DataGridView.
DataGridViewCellContextMenu Representa o método que manipulará um evento
StripNeededEventHandler CellContextMenuStripNeeded de um DataGridView.

DataGridViewCellErrorText Representa o método que manipulará o evento de


NeededEventHandler CellErrorTextNeeded de DataGridView.

DataGridViewCellEventHandler Representa o método que manipulará os eventos DataGridView


relacionados a operações de linha e de célula.

DataGridViewCellFormatting Representa o método que manipulará o evento de


EventHandler CellFormatting de DataGridView.

DataGridViewCellMouseEvent Representa o método que manipulará eventos relacionados ao


Handler mouse disparado por um DataGridView.

DataGridViewCellPaintingEvent Representa o método que manipulará o evento de CellPainting


Handler de DataGridView.

DataGridViewCellParsingEvent Representa o método que manipulará um evento CellParsing de


Handler um DataGridView.

DataGridViewCellStateChanged Representa o método que manipulará o evento de


EventHandler CellStateChanged de DataGridView.

DataGridViewCellStyleContent Representa o método que manipulará o evento de


ChangedEventHandler CellStyleContentChanged de DataGridView.

DataGridViewCellToolTipText Representa o método que manipulará o evento de


NeededEventHandler CellToolTipTextNeeded de DataGridView.

DataGridViewCellValidating Representa o método que manipulará o evento CellValidating


EventHandler de um controle DataGridView.

DataGridViewCellValueEvent Representa o método que manipulará o evento


Handler CellValueNeeded ou CellValuePushed de um DataGridView.

DataGridViewColumnDivider Representa o método que manipulará o evento de


DoubleClickEventHandler ColumnDividerDoubleClick de DataGridView.

DataGridViewColumnEvent Representa o método que manipulará eventos relacionados a


Handler colunas de um DataGridView.

DataGridViewColumnState Representa o método que manipulará o evento de


ChangedEventHandler ColumnStateChanged de DataGridView.

DataGridViewDataErrorEvent Representa o método que manipulará o evento de DataError de


Handler DataGridView.

DataGridViewEditingControl Representa o método que manipulará o evento de


ShowingEventHandler EditingControlShowing de DataGridView.
DataGridViewRowCancelEvent Representa o método que manipulará o evento de
Handler UserDeletingRow de DataGridView.

DataGridViewRowContextMenu Representa o método que manipulará o evento de


StripNeededEventHandler RowContextMenuStripNeeded de DataGridView.

DataGridViewRowDivider Representa o método que manipulará o evento de


DoubleClickEventHandler RowDividerDoubleClick de DataGridView.

DataGridViewRowErrorText Representa o método que manipulará o evento de


NeededEventHandler RowErrorTextNeeded de DataGridView.

DataGridViewRowEventHandler Representa o método que manipulará eventos relacionados a


linhas de um DataGridView.

DataGridViewRowHeightInfo Representa o método que manipulará um evento


NeededEventHandler RowHeightInfoNeeded de um controle DataGridView.

DataGridViewRowHeightInfo Representa o método que manipulará o evento de


PushedEventHandler RowHeightInfoPushed de DataGridView.

DataGridViewRowPostPaint Representa o método que manipulará o evento de


EventHandler RowPostPaint de DataGridView.

DataGridViewRowPrePaint Representa o método que manipulará o evento de RowPrePaint


EventHandler de DataGridView.

DataGridViewRowsAddedEvent Representa o método que manipulará o evento de RowsAdded


Handler de DataGridView.

DataGridViewRowsRemoved Representa o método que manipulará o evento de


EventHandler RowsRemoved de DataGridView.

DataGridViewRowState Representa o método que manipulará o evento de


ChangedEventHandler RowStateChanged de DataGridView.

DataGridViewSortCompare Representa o método que manipulará o evento SortCompare


EventHandler de um controle DataGridView.

DateBoldEventHandler Representa o método que manipulará um evento interno do


controle MonthCalendar.

DateRangeEventHandler Representa o método que manipulará o evento DateChanged


ou DateSelected de um MonthCalendar.

DpiChangedEventHandler Representa o método que manipulará o evento DpiChanged de


um formulário ou controle.

DragEventHandler Representa o método que manipulará o evento DragDrop,


DragEnter ou DragOver de um Control.
DrawItemEventHandler Representa o método que manipulará o evento DrawItem de
um controle ComboBox, ListBox, MenuItem ou TabControl.

DrawListViewColumnHeader Representa o método que manipulará o evento de


EventHandler DrawColumnHeader de ListView.

DrawListViewItemEventHandler Representa o método que manipulará o evento de DrawItem de


ListView.

DrawListViewSubItemEvent Representa o método que manipulará o evento de


Handler DrawSubItem de ListView.

DrawToolTipEventHandler Representa o método que manipulará o evento de Draw de


ToolTip.

DrawTreeNodeEventHandler Representa o método que manipulará o evento de DrawNode


de TreeView.

FormClosedEventHandler Representa o método que manipula um evento FormClosed.

FormClosingEventHandler Representa o método que manipula um evento FormClosing.

GiveFeedbackEventHandler Representa o método que manipula o evento GiveFeedback de


um Control.

HelpEventHandler Representa o método que manipulará o evento de


HelpRequested de Control.

HtmlElementErrorEventHandler Representa o método que manipulará o evento Error de um


HtmlWindow.

HtmlElementEventHandler Representa o método que manipulará Click , MouseDown e os


eventos relacionados em HtmlDocument, HtmlElement e
HtmlWindow.

InputLanguageChangedEvent Representa o método que manipulará o evento de


Handler InputLanguageChanged de Form.

InputLanguageChangingEvent Representa o método que manipulará o evento de


Handler InputLanguageChanging de Form.

InvalidateEventHandler Representa o método que manipulará o evento de Invalidated


de Control.

ItemChangedEventHandler Representa o método que manipulará o evento ItemChanged


da classe CurrencyManager.

ItemCheckedEventHandler Representa o método que manipulará o evento ItemChecked


de um controle ListView.

ItemCheckEventHandler Representa o método que manipulará o evento ItemCheck de


um controle CheckedListBox ou ListView.
ItemDragEventHandler Representa o método que manipulará o evento ItemDrag de
um controle ListView ou TreeView.

KeyEventHandler Representa o método que manipulará o evento KeyUp ou


KeyDown de um Control.

KeyPressEventHandler Representa o método que manipulará o evento de KeyPress de


Control.

LabelEditEventHandler Representa o método que manipula os eventos BeforeLabelEdit


e AfterLabelEdit.

LayoutEventHandler Representa o método que manipulará o evento de Layout de


Control.

LinkClickedEventHandler Representa o método que manipulará o evento de LinkClicked


de RichTextBox.

LinkLabelLinkClickedEvent Representa o método que manipulará o evento de LinkClicked


Handler de LinkLabel.

ListControlConvertEvent Representa o método que manipulará a conversão de um


Handler ListControl.

ListViewItemMouseHoverEvent Representa o método que manipulará o evento de


Handler ItemMouseHover de ListView.

ListViewItemSelectionChanged Representa o método que manipulará o evento de


EventHandler ItemSelectionChanged de ListView.

ListViewVirtualItemsSelection Representa o método que manipulará o evento de


RangeChangedEventHandler VirtualItemsSelectionRangeChanged de ListView.

MaskInputRejectedEvent Representa o método que manipulará o evento


Handler MaskInputRejected de um controle MaskedTextBox.

MeasureItemEventHandler Representa o método que manipulará o evento MeasureItem


dos controles ListBox, ComboBox, CheckedListBox ou
MenuItem.

MethodInvoker Representa um delegado que pode executar qualquer método


no código gerenciado declarado nulo e sem parâmetros.

MouseEventHandler Representa o método que manipulará o evento MouseDown ,


MouseUp ou MouseMove de um formulário, controle ou outro
componente.

NavigateEventHandler Representa o método que manipulará o evento de


NavigateEventArgs de DataGrid.

NodeLabelEditEventHandler Representa o método que manipulará os eventos


BeforeLabelEdit e AfterLabelEdit de um controle TreeView.
PaintEventHandler Representa o método que manipulará o evento de Paint de
Control.

PopupEventHandler Representa o método que manipula o evento Popup da classe


ToolTip.

PreviewKeyDownEventHandler Representa o método que manipulará o evento


PreviewKeyDown para um controle.

PropertyTabChangedEvent Representa o método que manipulará o evento de


Handler PropertyTabChanged de PropertyGrid.

PropertyValueChangedEvent A classe do manipulador de evento que é invocada quando


Handler uma propriedade na grade é modificada pelo usuário.

QueryAccessibilityHelpEvent Representa o método que manipulará o evento


Handler QueryAccessibilityHelp de um controle.

QueryContinueDragEvent Representa o método que manipulará o evento de


Handler QueryContinueDrag de Control.

QuestionEventHandler Representa o método que manipulará o evento CancelRowEdit


ou o evento RowDirtyStateNeeded de um DataGridView.

RetrieveVirtualItemEvent Representa o método que manipulará o evento de


Handler RetrieveVirtualItem de ListView.

ScrollEventHandler Representa o método que manipula o Scroll evento de um


DataGridView ou ScrollBar.

SearchForVirtualItemEvent Representa o método que manipulará o evento de


Handler SearchForVirtualItem de ListView.

SelectedGridItemChanged Representa o método que manipulará o evento de


EventHandler SelectedGridItemChanged de PropertyGrid.

SplitterCancelEventHandler Representa o método que manipulará o evento de


SplitterMoving de Splitter.

SplitterEventHandler Representa o método que manipulará os eventos


SplitterMoving e SplitterMoved de um Splitter.

TabControlCancelEventHandler Representa o método que manipulará o evento Selecting ou


Deselecting de um controle TabControl.

TabControlEventHandler Representa o método que manipulará o evento Selected ou


Deselected de um controle TabControl.

TableLayoutCellPaintEvent Representa o método que manipulará o evento de CellPaint .


Handler
ToolStripArrowRenderEvent Representa o método que manipulará o evento de
Handler RenderArrow de ToolStripRenderer. Essa classe não pode ser
herdada.

ToolStripContentPanelRender Representa o método que manipulará o evento de


EventHandler RendererChanged de ToolStripContentPanel.

ToolStripDropDownClosed Representa o método que manipulará o evento de Closed de


EventHandler ToolStripDropDown.

ToolStripDropDownClosing Representa o método que manipula o evento Closing de um


EventHandler ToolStripDropDown.

ToolStripGripRenderEvent Representa o método que manipulará o evento de RenderGrip


Handler de ToolStripRenderer.

ToolStripItemClickedEvent Representa o método que manipulará o evento de ItemClicked


Handler de ToolStripItem.

ToolStripItemEventHandler Representa o método que manipulará eventos para um


ToolStripItem.

ToolStripItemImageRender Representa o método que manipulará o evento


EventHandler RenderItemImage ou RenderItemCheck de um
ToolStripRenderer.

ToolStripItemRenderEvent Representa o método que manipula os eventos que renderizam


Handler a tela de fundo dos objetos derivados do ToolStripItem na
classe ToolStripRenderer.

ToolStripItemTextRenderEvent Representa o método que manipulará o evento de


Handler RenderItemText de ToolStripRenderer.

ToolStripPanelRenderEvent Representa o método que manipulará eventos ToolStripPanel


Handler de pintura.

ToolStripRenderEventHandler Representa o método que manipulará o evento


RenderToolStripBorder ou o evento RenderToolStripBackground
de um ToolStripRenderer.

ToolStripSeparatorRenderEvent Representa o método que manipulará o evento de


Handler RenderSeparator de uma classe ToolStripRenderer.

TreeNodeMouseClickEvent Representa o método que manipulará os eventos


Handler NodeMouseClick e NodeMouseDoubleClick de um TreeView.

TreeNodeMouseHoverEvent Representa o método que manipulará o evento de


Handler NodeMouseHover de TreeView.

TreeViewCancelEventHandler Representa o método que manipulará o evento BeforeCheck,


BeforeCollapse, BeforeExpand ou BeforeSelect de um TreeView.
TreeViewEventHandler Representa o método que manipulará o evento AfterCheck,
AfterCollapse, AfterExpand ou AfterSelect de um TreeView.

TypeValidationEventHandler Representa o método que manipulará o evento


TypeValidationCompleted do controle MaskedTextBox.

UICuesEventHandler Representa um método que manipulará o evento de


ChangeUICues de um Control.

UpDownEventHandler Representa o método que manipulará um evento para uma


classe interna.

WebBrowserDocument Representa o método que manipulará o evento


CompletedEventHandler DocumentCompleted de um controle WebBrowser.

WebBrowserNavigatedEvent Representa o método que manipulará o evento Navigated de


Handler um controle WebBrowser.

WebBrowserNavigatingEvent Representa o método que manipulará o evento Navigating de


Handler um controle WebBrowser.

WebBrowserProgressChanged Representa o método que manipulará o evento


EventHandler ProgressChanged de um controle WebBrowser.

Comentários
A tabela a seguir mostra as classes no System.Windows.Forms namespace agrupadas
em categorias.

ノ Expandir a tabela

Categoria de Detalhes
classe

- Controle, A maioria das classes dentro do System.Windows.Forms namespace deriva da


Controle de Control classe . A Control classe fornece a funcionalidade base para todos os
Usuário e controles exibidos em um Form. A Form classe representa uma janela dentro de
Formulário um aplicativo. Isso inclui caixas de diálogo, janelas sem janelas e janelas pai e
cliente MDI (Interface de Vários Documentos). Você também pode criar seus
próprios controles derivando da UserControl classe .

– Menus e Windows Forms contém um conjunto avançado de classes para criar suas
barras de próprias barras de ferramentas e menus personalizados com aparência e
ferramentas comportamento modernos (aparência). ToolStrip, MenuStrip,
ContextMenuStripe StatusStrip podem ser usados para criar barras de
ferramentas, barras de menus, menus de contexto e barras de status,
respectivamente.
Categoria de Detalhes
classe

-Controles O System.Windows.Forms namespace fornece uma variedade de classes de


controle que você pode usar para criar interfaces de usuário avançadas. Alguns
controles são projetados para entrada de dados dentro do aplicativo, como
TextBox controles e ComboBox . Outros controles exibem dados do aplicativo,
como Label e ListView. O namespace também fornece controles para invocar
comandos dentro do aplicativo, como Button. O WebBrowser controle e as
classes HTML gerenciadas, como HtmlDocument, permitem exibir e manipular
páginas HTML em seu aplicativo de Windows Forms gerenciado. O
MaskedTextBox controle é um controle de entrada de dados avançado que
permite definir máscaras que aceitam ou rejeitam automaticamente a entrada
do usuário. Além disso, você pode usar o PropertyGrid controle para criar seu
próprio Windows Forms Designer que exibe as propriedades visíveis do
designer dos controles.

-Layout Várias classes importantes no Windows Forms ajudam a controlar o layout dos
controles em uma superfície de exibição, como um formulário ou controle.
FlowLayoutPanel dispõe todos os controles que ele contém de maneira serial e
TableLayoutPanel permite definir células e linhas para definir controles em uma
grade fixa. SplitContainer divide a superfície de exibição em duas ou mais
partes ajustáveis.

- Associação de Windows Forms define uma arquitetura avançada para associação a fontes de
dados e dados dados, como bancos de dados e arquivos XML. O DataGridView controle
fornece uma tabela personalizável para exibir dados e permite personalizar
células, linhas, colunas e bordas. O BindingNavigator controle representa uma
maneira padronizada de navegar e trabalhar com dados em um formulário;
BindingNavigator é frequentemente emparelhado com o BindingSource
controle para percorrer registros de dados em um formulário e interagir com
eles.

-Componentes Além dos controles, o System.Windows.Forms namespace fornece outras


classes que não derivam da Control classe , mas ainda fornecem recursos
visuais para um aplicativo baseado no Windows. Algumas classes, como ToolTip
e ErrorProvider, estendem os recursos ou fornecem informações ao usuário.
Com as Help classes e HelpProvider , você pode exibir informações de Ajuda
para um usuário de seus aplicativos.

– Caixas de O Windows fornece várias caixas de diálogo comuns que você pode usar para
diálogo dar ao aplicativo uma interface do usuário consistente ao executar tarefas como
comuns abrir e salvar arquivos, manipular a fonte ou a cor do texto ou imprimir. As
OpenFileDialog classes e SaveFileDialog fornecem a funcionalidade para exibir
uma caixa de diálogo que permite que o usuário localize e insira o nome de um
arquivo para abrir ou salvar. A FontDialog classe exibe uma caixa de diálogo
para alterar os Font elementos do usado pelo aplicativo. As
PageSetupDialogclasses , PrintPreviewDialoge PrintDialog exibem caixas de
diálogo que permitem ao usuário controlar aspectos da impressão de
documentos. Para obter mais informações sobre impressão de um aplicativo
Categoria de Detalhes
classe

baseado no Windows, consulte o System.Drawing.Printing namespace . Além


das caixas de diálogo comuns, o System.Windows.Forms namespace fornece a
MessageBox classe para exibir uma caixa de mensagem que pode exibir e
recuperar dados do usuário.

Há várias classes no System.Windows.Forms namespace que dão suporte às classes


mencionadas no resumo anterior. Exemplos das classes de suporte são enumerações,
classes de argumento de evento e delegados usados por eventos dentro de controles e
componentes.

U Cuidado

Não há suporte para classes no namespace Windows Forms para uso em um


serviço Windows. Tentar usar essas classes de dentro de um serviço pode produzir
problemas inesperados, como redução do desempenho do serviço e exceções em
tempo de execução.

Se você estiver usando .NET Framework versão 1.1 ou .NET Framework 1.0 e
precisar fazer com que seu aplicativo Windows Forms dê suporte a estilos visuais
do Windows XP, defina a FlatStyle propriedade de seus controles
FlatStyle.System como e inclua um manifesto com o arquivo executável. Um
manifesto é um arquivo XML incluído como um recurso dentro do arquivo
executável do aplicativo ou como um arquivo separado que reside no mesmo
diretório que o arquivo executável. Para obter um exemplo de manifesto, consulte
a seção Exemplo para a FlatStyle enumeração . Por padrão, os estilos visuais são
habilitados para o .NET Framework versões 1.1, 1.2 e 2.0.

Comentários
Esta página foi útil?  Yes  No

Fornecer comentários sobre o produto | Obter ajuda no Microsoft Q&A


Desenvolver com o Visual F# no Visual
Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo inclui informações sobre os recursos do Visual Studio para o


desenvolvimento do F#.

Instalar o suporte do F#
Para desenvolver com o F# no Visual Studio, primeiro instale a carga de trabalho
desenvolvimento para desktop do .NET, caso ainda não tenha feito isso. Instale as
cargas de trabalho do Visual Studio por meio do Instalador do Visual Studio, que pode
ser aberto pela seleção de Ferramentas>Obter Ferramentas e Recursos.

Recursos de projeto do F#
Vários modelos de projeto e de item estão disponíveis para o F# no Visual Studio. A
seguinte imagem mostra alguns dos modelos de projeto do F# para o .NET Core e o
.NET Standard:
A seguinte imagem mostra alguns dos modelos de item do F#:

Para obter mais informações sobre os modelos de item para acesso a dados, confira
Provedores de tipos F#.

A seguinte tabela resume os recursos nas propriedades do projeto para o F#:

Configuração do Compatível Observações


projeto com o F#?

Arquivos de recurso Sim


Configuração do Compatível Observações
projeto com o F#?

Configurações de Yes
build, depuração e
referência

Multiplataforma Sim

Ícone e manifesto Não Disponível por meio das opções da linha de comando do
compilador.

Serviços de Cliente Não


ASP.NET

ClickOnce Não Use um projeto de cliente em outra linguagem .NET, se


aplicável.

Nomenclatura forte Não Disponível por meio das opções da linha de comando do
compilador.

Publicação e controle Não


de versão de assembly

Análise de código Não As ferramentas de análise de código podem ser


executadas manualmente ou como parte de um
comando pós-build.

Segurança (alterar Não


níveis de confiança)

Designer de Projeto
O Designer de Projeto consiste no agrupamento de várias páginas de propriedades do
projeto por funcionalidade relacionada. As páginas disponíveis para projetos do F# são,
principalmente, um subconjunto daquelas disponíveis para outras linguagens e são
descritas na tabela a seguir. Links são fornecidos para a página correspondente do
Designer de Projeto do C#.

Página do Links Descrição


Designer relacionados
de Projeto

Aplicativo Página Permite que você especifique configurações e propriedades no


Aplicativo, nível do aplicativo, como se estivesse criando uma biblioteca ou um
Designer de arquivo executável, qual é a versão de destino do .NET para o
Projeto aplicativo e informações sobre o local de armazenamento dos
arquivos de recurso usados pelo aplicativo.
Página do Links Descrição
Designer relacionados
de Projeto

Build Página de Permite que você controle como o código é compilado.


build,
Designer de
Projeto

Eventos de Página Permite que você especifique os comandos a serem executados


compilação Eventos de antes ou depois de uma compilação.
Build,
Designer de
Projeto

Depurar Página de Permite que você controle como o aplicativo é executado durante a
Depuração, depuração. Isso inclui os comandos a serem usados e o diretório
Designer de inicial do aplicativo, bem como os modos de depuração especiais
Projeto que você deseja habilitar, como o código nativo e o SQL.

Pacote N/D Permite que você defina metadados do Pacote NuGet durante a
(somente publicação como um pacote NuGet.
SDK do
.NET)

Caminhos Gerenciar Permite que você especifique o local em que pesquisar assemblies
de referências dos quais o código depende.
Referência em um
projeto

Recursos N/D Permite que você gere e gerencie um arquivo de recurso padrão.
(somente
SDK do
.NET)

Configurações específicas do F#
A seguinte tabela resume as configurações específicas do F#:

Página Configuração Descrição


do
Designer
de
Projeto
Página Configuração Descrição
do
Designer
de
Projeto

Build Gerar Se ela estiver selecionada, habilitará o uso da instrução MSIL


chamadas da (Microsoft Intermediate Language) da parte final. Isso faz com que o
parte final registro de ativação seja reutilizado para funções recursivas da parte
final. Equivalente à opção do compilador --tailcalls .

Build Outros Permite que você especifique opções adicionais de linha de


sinalizadores comando do compilador.

Recursos do editor de código e texto


Há suporte para os seguintes recursos dos editores de código e de texto do Visual
Studio no F#:

Recurso Descrição Compatível


com o F#?

Comentar Permite que você comente ou remova a marca de Sim


automaticamente comentário das seções de código.

Formatar Reformata o código com recuo e estilo padrão. Não


automaticamente

Indicadores Permite que você salve locais no editor. Sim

Alterar recuo Recua ou desfaz o recuo das linhas selecionadas. Sim

Recuo inteligente Recua e desfaz o recuo do cursor automaticamente, Sim


de acordo com as regras de escopo do F#.

Localizar e substituir texto Permite que você faça pesquisas em um arquivo, um Sim
projeto ou uma solução e, potencialmente, altere o
texto.

Ir para definição da API Quando o cursor estiver posicionado em uma API Não
.NET .NET, essa configuração mostrará o código gerado
com base nos metadados .NET.

Ir para definição de API Quando o cursor estiver em uma entidade de Sim


definida pelo usuário programa definida, essa configuração moverá o
cursor para o local no código em que a entidade foi
definida.
Recurso Descrição Compatível
com o F#?

Ir para a linha Permite que você vá para uma linha específica em um Sim
arquivo, por número de linha.

Barras de navegação na Permite que você vá para locais no código, por Sim
parte superior do arquivo exemplo, por nome da função.

Diretrizes de estrutura de Mostra as diretrizes que indicam os escopos do F#, Sim


bloco que podem ser focalizados para obter uma versão
prévia.

Estrutura de tópicos Permite que você recolha as seções do código para Sim
criar uma exibição mais compacta.

Tabular Converte espaços em tabulações. Sim

Colorização de tipo Mostra os nomes de tipo definidos em uma cor Sim


especial.

Localização Rápida. Permite que você faça pesquisas em um arquivo ou Sim


Confira Localização um projeto.
Rápida, Janela Localizar e
Substituir.

CTRL+clique para Ir para Permite que você mantenha a tecla Ctrl pressionada e Sim
Definição clique em um símbolo do F# para invocar a opção Ir
para Definição.

Ir para definição de Símbolos clicáveis dentro das dicas de ferramenta que Sim
QuickInfo invocam a opção Ir para Definição.

Ir para Todos Permite a navegação global de correspondência Sim


difusa para todos os constructos do F# por meio de
Ctrl+T.

Renomeação embutida Renomeia todas as ocorrências de um símbolo Sim


embutido.

Localizar todas as Localiza todas as ocorrências de um símbolo em uma Sim


Referências base de código.

Simplificar a correção de Remove os qualificadores desnecessários para Sim


código do nome símbolos do F#.

Remover correção de Remove todas as instruções open desnecessárias de Sim


código de instrução open um documento.
não utilizada
Recurso Descrição Compatível
com o F#?

Correção de código do Sugere a renomeação de um identificador não Sim


valor não utilizada utilizado para sublinhado.

Para obter informações gerais sobre como editar o código no Visual Studio, bem como
os recursos do editor de texto, confira Escrever o código no editor.

Recursos do IntelliSense
A seguinte tabela resume os recursos do IntelliSense compatíveis e não compatíveis
com o F#:

Recurso Descrição Compatível


com o F#?

Implementar Gera os stubs de código para os métodos de interface. Sim


interfaces
automaticamente

Snippets de código Injeta o código de uma biblioteca de constructos de Não


codificação comuns em tópicos.

Completar Palavra Economiza tempo de digitação preenchendo palavras e Sim


nomes conforme você digita.

Conclusão Quando essa opção está habilitada, faz com que o Sim
automática preenchimento de palavras selecione a primeira
correspondência conforme você digita, em vez de esperar
que você selecione uma opção ou pressione Ctrl+Espaço.

Oferecer Com o preenchimento automático, um símbolo Sim


preenchimento correspondente que reside em um namespace não aberto é
para símbolos em sugerido, oferecendo o preenchimento com a instrução open
namespaces não correspondente, quando selecionado.
abertos

Gerar elementos Permite que você gere o código de stub para uma variedade Não
de código de constructos.

Listar Membros Quando você digita o operador de acesso de membro (.), Sim
essa opção mostra os membros de um tipo.

Organizar Organiza os namespaces referenciados por instruções using Não


usings/open no C# ou diretivas open no F#.
Recurso Descrição Compatível
com o F#?

Informações de Mostra informações úteis sobre os parâmetros conforme Sim


Parâmetro você digita uma chamada de função.

Informação Rápida Exibe a declaração completa de um identificador no código. Sim

Preenchimento Preenche automaticamente constructos de sintaxe Sim


automático de semelhantes à chave do F# de maneira transacional.
chaves

Para obter informações gerais sobre o IntelliSense, confira Usar o IntelliSense.

Recursos de depuração
A seguinte tabela resume os recursos disponíveis ao depurar o código F#:

Recurso Descrição Compatível com o F#?

Janela Mostra variáveis automáticas ou temporárias. Não


Autos

Pontos de Permite que você pause a execução de código Sim


interrupção em pontos específicos durante a depuração.

Pontos de Permite pontos de interrupção que testam uma Sim


interrupção condição que determina se a execução deve ser
condicionais colocada em pausa.

Editar e Permite que o código seja modificado e Não


continuar compilado durante a depuração de um
programa em execução sem interromper e
reiniciar o depurador.

Avaliador Avalia e executa o código em tempo de Não, mas o avaliador de


de execução. expressão C# pode ser usado,
expressão embora seja necessário usar a
sintaxe C#.

Depuração Permite que você intervenha no código Sim


de histórico executado anteriormente.

Janela Mostra as variáveis e os valores definidos Sim


Locais localmente.

Executar até Permite que você execute o código até que a Sim
o cursor linha que contém o cursor seja atingida.
Recurso Descrição Compatível com o F#?

Depuração Permite que você avance a execução e passe Sim


Completa para qualquer chamada de função.

Depuração Permite que você avance a execução no registro Sim


Parcial de ativação atual e passe por qualquer chamada
de função.

Para obter informações gerais sobre o depurador do Visual Studio, confira Depuração
no Visual Studio.

Ferramentas adicionais
A tabela a seguir resume o suporte para o F# nas ferramentas do Visual Studio.

Ferramenta Descrição Compatível com o F#?

Hierarquia Exibe a estrutura aninhada das Não


de chamadas chamadas de função no código.

Métricas de Coleta informações sobre o código, Não


código como contagens de linha.

Exibição de Fornece uma exibição baseada em Não


Classe tipo do código em um projeto.

Janela Lista Mostra uma lista de erros no Sim


de Erros código.

F# Interativo Permite que você digite (ou copie e Sim


cole) o código F# e execute-o
imediatamente, seja qual for o build
do projeto. A janela do F#
Interativo é um REPL (Loop Ler,
Avaliar, Imprimir).

Pesquisador Permite que você veja os tipos em Os tipos F# exibidos em assemblies


de Objetos um assembly. compilados não são exibidos exatamente
como são criados. Você pode percorrer a
representação compilada de tipos F#, mas
não pode exibir os tipos como são exibidos
no F#.

janela Saída Exibe a saída de build. Sim

Análise de Fornece ferramentas para avaliar o Sim


desempenho desempenho do código.
Ferramenta Descrição Compatível com o F#?

Janela de Exibe e permite a edição das Sim


Propriedades propriedades do objeto no
ambiente de desenvolvimento que
tem o foco.

Gerenciador Fornece maneiras de interagir com Sim


de uma variedade de recursos do
Servidores servidor.

Gerenciador Permite que você veja e gerencie Sim


de Soluções projetos e arquivos.

Lista de Permite que você gerencie itens de Não


Tarefas trabalho pertencentes ao código.

Projetos de Fornece recursos que ajudam você Não


teste a testar o código.

Caixa de Exibe as guias que contêm objetos Sim


Ferramentas arrastáveis como controles e seções
de texto ou de código.

Confira também
Guia do F# (.NET Framework)
Introdução ao F# no Visual Studio
Tutorial: Criar um serviço Web ASP.NET
Core no F#
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O IDE (Ambiente de Desenvolvimento Integrado) do Visual Studio oferece suporte ao F#


para vários tipos de produto. É possível criar facilmente um aplicativo de serviços Web
completo.

Para obter mais informações sobre codificação em F#, consulte O que é F#. Para criar
um aplicativo de console Olá, Mundo, consulte Introdução ao F# no Visual Studio.

Neste tutorial, você aprenderá como:

" Crie um serviço Web ASP.NET Core no F#.


" Adicione conteúdo ao membro HttpGet em F#.
" Crie e execute o programa.

Pré-requisitos
Você precisa do Visual Studio para concluir este tutorial. Visite a página de downloads
do Visual Studio para obter uma versão gratuita.

Verifique se você tem os componentes necessários instalados:

1. Selecione o ícone Iniciar Windows e digite Instalador do Visual Studio.

2. Selecione Modificar para visualizar as cargas de trabalho instaladas.

3. Verifique se ASP.NET e desenvolvimento para a Web está selecionado ou


adicione-o.
4. Se você fez alterações, selecione Modificar para instalar os componentes.

Crie um serviço Web ASP.NET Core


Nesta seção, você cria um projeto de API Web do ASP.NET Core. O tipo de projeto vem
com arquivos de modelo que constituem um serviço Web funcional, mesmo sem
adicionar nada.

1. Inicie o Visual Studio.

2. Na janela Iniciar, selecione Criar um novo projeto.

3. Na página Criar um novo projeto, insira F# web na caixa de pesquisa. Selecione o


modelo do projeto da API Web do ASP.NET Core e, em seguida, Avançar.

4. Na caixa de diálogo Configurar seu novo projeto, em Nome do projeto, insira


FSharpTutorial.

5. Na caixa de diálogo Informações adicionais, aceite a versão padrão do


Framework.

Quando você seleciona Criar, o Visual Studio cria o novo projeto F#. É possível
visualizar os componentes do projeto na janela Gerenciador de Soluções. O Visual
Studio apresenta uma página Visão geral.

6. Na barra de ferramentas Gerenciador de Soluções, expanda a pasta Controladores


e, em seguida, escolha WeatherForecastController.fs para abrir o arquivo de
código no editor.

7. Em seguida, modifique o membro Get() para que tenha o seguinte código:


F#

[<HttpGet>]
member this.Get() =
let values = [|"Hello"; "World"; "First F#/ASP.NET Core web API!"|]
ActionResult<string[]>(values)

Esse código contém uma matriz F# de valores associados ao nome values . Ele
passa os valores para a estrutura ASP.NET Core model-view-controller como um
ActionResult . O ASP.NET Core cuida do resto para você.

8. Selecione a tecla F5 para executar o programa. Uma janela do navegador é aberta


para exibir sua mensagem de Olá, Mundo.

7 Observação

Se você receber uma mensagem perguntando se deseja aceitar um certificado SSL


Express do IIS, escolha Sim para exibir o código em um navegador da Web e
escolha Sim se receber uma mensagem de aviso de segurança de
acompanhamento.

Próximas etapas
Caso ainda não tenha feito, consulte o Tour do F#. Este tour descreve os principais
recursos da linguagem F#. Ele fornece uma visão geral de alguns dos recursos de F# e
códigos de exemplo que podem ser executados.

Tour do F#

Confira também
Referência da linguagem F#
Inferência de tipos
Símbolo e referência do operador
Visual Studio | Documentação do
Python
Tutoriais e artigos conceituais sobre o desenvolvimento de aplicativos em Python com o
Visual Studio.

Introdução ao Python no Visual Studio

e VISÃO GERAL

Trabalhar com Python no Visual Studio no Windows

b COMEÇAR AGORA

Instalar o Python no Visual Studio

Escrever e editar seu código

Depurar seu código

Escrever e executar testes

Usar REPL interativo

Gerenciar ambientes do Python

Escrever extensões C/C++ para o Python

Desenvolvimento Web do Python

g TUTORIAL

Começar a usar o Python no Visual Studio

Criar aplicativos Web com Django

Criar aplicativos Web com Flask


Tutoriais do Visual Studio | JavaScript e
TypeScript
Crie aplicativos JavaScript e TypeScript com o Visual Studio

Introdução

e VISÃO GERAL

JavaScript e TypeScript no Visual Studio

c GUIA DE INSTRUÇÕES

Instalar o Visual Studio

b COMEÇAR AGORA

Iniciar um tour guiado

Criar aplicativos JavaScript e TypeScript

f INÍCIO RÁPIDO

Criar um aplicativo Angular

Criar um aplicativo React

Criar um aplicativo Vue

g TUTORIAL

Criar um aplicativo Web com Angular e ASP.NET Core

Criar um aplicativo Web com React e ASP.NET Core

Criar um aplicativo Web com o Vue e o ASP.NET Core

Criar um aplicativo Web com o Node.js e o Express

Adicionar TypeScript a um aplicativo ASP.NET Core

A d Vi l S di
Aprender a usar o Visual Studio

c GUIA DE INSTRUÇÕES

Escrever e editar o código

Linting JavaScript

Compilar o código TypeScript usando TSC

Compilar o código TypeScript usando NuGet

Gerenciar pacotes npm

Depurar seu código

Desenvolver o código sem projetos nem soluções

Escrever e executar testes de unidade


Desenvolver aplicativos do Azure com o
Visual Studio
Saiba como conectar aplicativos aos serviços do Azure e implantá-los no Azure.

Desenvolver aplicativos do Azure

e VISÃO GERAL

Desenvolvimento do Azure no Visual Studio

c GUIA DE INSTRUÇÕES

Localizar e provisionar recursos do Azure

Conectar-se aos serviços do Azure

e VISÃO GERAL

O que são serviços conectados?

g TUTORIAL

Active Directory

Cache Redis

Cosmos DB

Cofre de Chave do

SignalR

Banco de Dados SQL

Armazenamento

i REFERÊNCIA

SDK do Azure para .NET

I l A
Implantar no Azure

g TUTORIAL

ASP.NET Core para Serviço de Aplicativo

ASP.NET para Serviço de Aplicativo (.NET Framework)

Aplicativo Web do ASP.NET para Aplicativos Web do Azure

Aplicativo Web do ASP.NET para Aplicativos de Contêiner do Azure

Aplicativos Lógicos do Azure

Azure Functions

Integração/entrega contínua (CI/CD)

c GUIA DE INSTRUÇÕES

Com o Visual Studio e o GitHub Actions

Com o Azure Pipelines


Trabalhar com ativos 3D para jogos e
aplicativos
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo descreve as ferramentas do Visual Studio que você pode usar para criar ou
modificar modelos 3D, texturas e sombreadores para aplicativos e jogos do DirectX.

Desenvolvimento de aplicativos em DirectX no


Visual Studio
Normalmente, um aplicativo DirectX combina a lógica de programação, a API do DirectX
e programas HLSL (High Level Shading Language), junto com ativos visuais 3D e de
áudio, para apresentar uma experiência multimídia interativa e sofisticada. O Visual
Studio inclui ferramentas que você pode usar para trabalhar com imagens e texturas,
modelos 3D e sombreadores sem sair do IDE para usar outra ferramenta. As ferramentas
do Visual Studio são especialmente adequadas para a criação de ativos de espaço
reservado, os quais você pode usar para testar o código ou compilar protótipos antes de
comissão de ativos prontos para produção e para inspecionar e modificar ativos prontos
para produção quando você estiver depurando seu aplicativo.

Confira abaixo mais informações sobre os tipos de ativos com os quais você pode
trabalhar no Visual Studio.

Imagens e texturas
Imagens e texturas fornecem cor e detalhes visuais em jogos e aplicativos. Em gráficos
3D, as texturas vêm em diversos formatos, tipos e geometrias para dar suporte a
diferentes usos. Por exemplo, mapas normais fornecem superfície por pixel normal para
uma iluminação mais detalhada dos modelos 3D, e mapas de cubo fornecem textura em
todas as direções para utilizações como conversão boxing do céu, reflexos e
mapeamento da textura esférica. As texturas podem fornecer mipmaps para dar suporte
à renderização eficiente em diferentes níveis de detalhe e podem dar suporte a
diferentes canais e ordenações de cores. As texturas podem ser armazenadas em vários
formatos compactados que ocupam menos memória gráfica dedicada e ajudam os
GPUs a acessar texturas com mais eficiência.
Use o Editor de Imagens do Visual Studio para trabalhar com imagens e texturas em
muitos tipos e formatos comuns.

Modelos 3D
Os modelos 3D criam espaço e forma em jogos e aplicativos. No mínimo, os modelos
codificam a posição de pontos no espaço 3D, que são conhecidos como vértices, junto
com os dados de indexação para definir linhas ou triângulos que representam a forma
do modelo. É possível associar dados adicionais a esses vértices — por exemplo,
informações de cores, vetores normais ou atributos específicos ao aplicativo. Cada
modelo também pode definir atributos de todo o objeto — por exemplo, qual
sombreador é usado para calcular a aparência da superfície do objeto ou qual textura é
aplicada a ele.

Use o Editor de Modelo do Visual Studio para trabalhar com modelos 3D em vários
formatos comuns.

Sombreadores
Sombreadores são programas pequenos específicos ao domínio executados em uma
GPU (unidade de processamento gráfico). Os sombreadores determinam como os
modelos 3D são transformados em formas na tela e como cada pixel nessas formas é
colorido. Ao criar um sombreador e aplicá-lo a um objeto em seu jogo ou aplicativo,
você pode dar ao objeto uma aparência exclusiva.

Use o Designer de Sombreador do Visual Studio, que é uma ferramenta de design de


sombreador baseada em grafo, para criar efeitos visuais personalizados sem conhecer
programação em HLSL.

7 Observação

Para saber mais sobre como iniciar a programação em DirectX, consulte DirectX.
Para obter mais informações sobre como depurar um aplicativo baseado no
DirectX, confira Diagnóstico de elementos gráficos (depurando elementos
gráficos do DirectX).

Compatibilidade de versão do DirectX


O Visual Studio usa o DirectX para renderizar ativos 2D e 3D. Selecione o renderizador
do DirectX 11, ou o renderizador de software WARP (Windows Advanced Rasterization
Platform). O renderizador do DirectX 11 fornece renderização acelerada por hardware
de alto desempenho em GPUs do DirectX 11 e do DirectX 10. O renderizador WARP
ajuda a garantir que seus ativos funcionem muitos computadores — incluindo
computadores que não possuem hardware de gráfico moderno e computadores com
hardware de gráfico integrado. Para obter mais informações sobre o WARP, confira Guia
do WARP (Windows Advanced Rasterization Platform).

Tópicos relacionados
Título Descrição

Trabalhando com Descreve como usar o Visual Studio para trabalhar com imagens e texturas.
texturas e imagens

Trabalhando com Descreve como usar o Visual Studio para trabalhar com modelos 3D.
modelos 3D

Trabalhando com Descreve como usar o Designer de Sombrador do Visual Studio para criar e
sombreadores modificar efeitos de sombreamento personalizado.

Usando ativos 3D Descreve como usar ativos, que você criou usando o Editor de Imagens, o
em jogos ou Editor de Modelo ou o Designer de Sombreador, em seu jogo ou aplicativo.
aplicativos
Como: Usar ativos 3D em seu jogo ou
aplicativo
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo descreve como é possível usar o Visual Studio para processar ativos 3D e
incluí-los nos builds.

Depois de usar as ferramentas no Visual Studio para criar ativos 3D, a próxima etapa é
usá-las no aplicativo. Mas antes de usá-las, os ativos precisam ser transformados em um
formato que possa ser reconhecido pelo DirectX. Para ajudá-lo a transformar seus
ativos, o Visual Studio fornece personalizações de build para cada tipo de ativo que
pode ser produzido. Para incluir os ativos na sua compilação, tudo o que você precisa
fazer é configurar o projeto para usar as personalizações de compilação, adicionar os
ativos ao seu projeto e configurar os ativos para usar a personalização de compilação
correta. Depois disso, você pode carregar os ativos no aplicativo e usá-los criando e
preenchendo recursos do DirectX, assim como faria em qualquer outro aplicativo
DirectX.

Configurar seu projeto


Antes que seja possível implantar os ativos 3D como parte da criação, o Visual Studio
precisa conhecer os tipos de ativos que você deseja implantar. O Visual Studio já
conhece muitos tipos de arquivo comuns, mas como apenas certos tipos de aplicativos
usam ativos 3D, o Visual Studio não presume que um projeto crie esses tipos de
arquivos. Você pode dizer ao Visual Studio que seu aplicativo usa esses tipos de ativos
usando as personalizações de build (arquivos que dizem ao Visual Studio como
processar tipos diferentes de arquivos de maneira útil), que são fornecidas para cada
tipo de ativo. Como essas personalizações são aplicadas por projeto, tudo o que você
precisa fazer é adicionar as personalizações adequadas ao seu projeto.

Para adicionar as personalizações de compilação ao seu


projeto
1. No Gerenciador de Soluções, abra o menu de atalho do projeto e, em seguida,
escolha Dependências de Build>Personalizações de Build.
A caixa de diálogo Arquivos de Personalizações de Build do Visual C++ será
exibida.

2. Em Arquivos de Personalização de Build Disponíveis, marque as caixas de seleção


que correspondem aos tipos de ativo que você deseja usar no projeto, conforme
descrito na seguinte tabela:

Tipo de ativo Nome da personalização de compilação

Texturas e imagens ImageContentTask(.targets, .props)

Modelos 3D MeshContentTask(.targets, .props)

Sombreadores ShaderGraphContentTask(.targets, .props)

3. Clique no botão OK.

Incluir ativos na criação


Agora que seu projeto conhece os diferentes tipos de ativos 3D que você deseja usar, a
próxima etapa será dizer quais arquivos são ativos 3D e quais tipos de ativos eles são.

Para adicionar um ativo à sua compilação


1. No Gerenciador de Soluções, no seu projeto, abra o menu de atalho do ativo e
selecione Propriedades.

A caixa de diálogo Página de Propriedades do ativo é exibida.

2. Verifique se as propriedades Configuração e Plataforma estão definidas com os


valores aos quais você deseja aplicar as alterações.

3. Em Propriedades da Configuração, escolha Geral e, na grade de propriedades, em


Geral, defina a propriedade Tipo de Item para o tipo de item do pipeline de
conteúdo adequado. Por exemplo, no caso um arquivo de imagem ou de textura,
escolha Pipeline de Conteúdo da Imagem.

) Importante

Por padrão, o Visual Studio presume que muitos tipos de arquivos de imagem
devem ser classificados usando o tipo de item Imagem, integrado ao Visual
Studio. Portanto, você precisa alterar a propriedade Tipo de Item de cada
imagem que deseja que seja processada pelo pipeline de conteúdo da
imagem. Outros tipos de arquivos de origem de pipeline de conteúdo para
modelos 3D e gráficos de sombreador visual assumem como padrão o Tipo
de Item correto.

4. Clique no botão OK.

Veja a seguir os três tipos de item de pipeline de conteúdo e seus tipos de arquivo de
origem e de saída associados.

Tipo de item Tipos de arquivo de origem Formato do arquivo de


saída

Pipeline de conteúdo da Formato PNG (.png) DirectDraw Surface (.dds)


imagem
JPEG (.jpg, .jpeg, .jpe, .jfif)

Direct Draw Surface (.dds)

Graphics Interchange Format


(.gif)

Bitmap (.bmp, .dib)

Formato TIFF (.tif, .tiff)

Formato TGA (.tga)

Pipeline de conteúdo da Arquivo de Intercâmbio Arquivo de malha 3D (.cmo)


malha AutoDesk FBX (.fbx)

Arquivo Collada DAE (.dae)

Arquivo Wavefront OBJ (.obj)

Pipeline de conteúdo do Visual Shader Graph (.dgsl) Saída do Sombreador


sombreador Compilado (.cso)

Configurar ativos do pipeline de conteúdo do


ativo
É possível definir as propriedades do pipeline de cada arquivo de ativo de modo que
eles sejam compilados de maneira específica.

Para configurar as propriedades de pipeline de conteúdo


1. No Gerenciador de Soluções, no seu projeto, abra o menu de atalho para o
arquivo do ativo e selecione Propriedades.

A caixa de diálogo Página de Propriedades do ativo é exibida.

2. Verifique se as propriedades Configuração e Plataforma estão definidas para os


valores aos quais você deseja aplicar as suas alterações.

3. Em Propriedades de configuração, escolha o nó do pipeline de conteúdo (por


exemplo, Pipeline de conteúdo de imagem para ativos de textura e imagens) e,
em seguida, na grade de propriedades, defina as propriedades para os valores
apropriados. Por exemplo, para gerar mipmaps para um ativo de textura no tempo
de build, defina a propriedade Gerar Mips como Sim.

4. Clique no botão OK.

Configuração do pipeline de conteúdo da imagem


Ao usar a ferramenta de pipeline de conteúdo da imagem para compilar um ativo de
textura, é possível compactar a textura de várias maneiras, indicar se os níveis de MIP
devem ser gerados no tempo de compilação e alterar o nome do arquivo de saída.

Propriedade Descrição

Compress Especifica o tipo de compactação usado para o arquivo de saída.

As opções disponíveis são:

- Sem Compactação
- Compactação BC1_UNORM
- Compactação BC1_UNORM_SRGB
- Compactação BC2_UNORM
- Compactação BC2_UNORM_SRGB
- Compactação BC3_UNORM
- Compactação BC3_UNORM_SRGB
- Compactação BC4_UNORM
- Compactação BC4_SNORM
- Compactação BC5_UNORM
- Compactação BC5_SNORM
- Compactação BC6H_UF16
- Compactação BC6H_SF16
- Compactação BC7_UNORM
- Compactação BC7_UNORM_SRGB

Para obter informações sobre quais formatos de compactação têm suporte em


diferentes versões do DirectX, consulte Guia de programação para DXGI.
Propriedade Descrição

Converter Sim para converter a imagem para um formato alfa pré-multiplicado no arquivo
para formato de saída; caso contrário, Não. Apenas o arquivo de saída é alterado, a imagem de
alfa pré- origem permanece inalterada.
multiplicado

Gerar Mips Sim para gerar uma cadeia de MIP completa no tempo de build no arquivo de
saída; caso contrário, Não. Se Não e o arquivo de origem já contiver uma cadeia
de mipmap, o arquivo de saída terá uma cadeia MIP; caso contrário, o arquivo de
saída não terá uma cadeia MIP.

Saída de Especifica o nome do arquivo de saída. Importante: alterar a extensão de nome


conteúdo de arquivo de saída não tem efeito sobre o formato do arquivo.

Configuração do pipeline de conteúdo da malha


Quando você usar a ferramenta de pipeline de conteúdo da malha para criar um ativo
de malha, é possível alterar o nome do arquivo de saída.

Propriedade Descrição

Saída de Especifica o nome do arquivo de saída. Importante: alterar a extensão de nome


conteúdo de arquivo de saída não tem efeito sobre o formato do arquivo.

Configuração do pipeline de conteúdo do sombreador


Quando você usar a ferramenta de pipeline de conteúdo do sombreador para criar um
ativo de sombreador, é possível alterar o nome do arquivo de saída.

Propriedade Descrição

Saída de Especifica o nome do arquivo de saída. Importante: alterar a extensão de nome


conteúdo de arquivo de saída não tem efeito sobre o formato do arquivo.

Carregar e usar ativos 3D em tempo de


execução

Usar texturas e imagens


Direct3D fornece funções para criar recursos de textura. No Direct3D 11, a biblioteca do
utilitário D3DX11 fornece funções adicionais para criar recursos de textura e
visualizações de recursos diretamente de arquivos de imagem. Para obter mais
informações sobre como criar um recurso de textura em Direct3D 11, consulte Texturas.
Para obter mais informações sobre como usar a biblioteca D3DX11 para criar um
recurso de textura ou um modo de exibição de recursos com base em um arquivo de
imagem, confira Como inicializar uma textura de um arquivo.

Usar modelos 3D
O Direct3D 11 não fornece funções para criar recursos de modelos 3D. Em vez disso,
você precisa gravar código que leia o arquivo de modelo 3D e crie buffers de índice e
vértice que representem o modelo 3D e quaisquer recursos que o modelo exija, como
texturas ou sombreadores.

Usar sombreadores
O Direct3D fornece funções para criar recursos do sombreador e associá-los ao pipeline
gráfico programável. Para obter mais informações sobre como criar um recurso de
sombreador no Direct3D e associá-lo ao pipeline, confira Guia de programação para
HLSL.

No pipeline gráfico programável, cada estágio do pipeline deve dar ao próximo estágio
do pipeline um resultado que esteja formatado de modo que possa ser entendido.
Como o Designer do Sombreador só pode criar sombreadores de pixel, significa que é
responsabilidade do aplicativo garantir que os dados recebidos estejam no formato
esperado. Vários estágios do sombreador programável ocorrem antes do sombreador
de pixel, e eles realizam transformações geométricas (o sombreador de vértice, o
sombreador Hull, o sombreador de domínio e o sombreador de geometria). O estágio
de mosaico não programável também ocorre antes do sombreador de pixel. Não
importa qual desses estágios precedem diretamente o sombreador de pixel, ele deve
apresentar seu resultado neste formato:

hlsl

struct PixelShaderInput
{
float4 pos : SV_POSITION;
float4 diffuse : COLOR;
float2 uv : TEXCOORD0;
float3 worldNorm : TEXCOORD1;
float3 worldPos : TEXCOORD2;
float3 toEye : TEXCOORD3;
float4 tangent : TEXCOORD4;
float3 normal : TEXCOORD5;
};
Dependendo dos nós do Designer do Sombreador usados no seu sombreador, também
pode ser necessário fornecer dados adicionais em um formato de acordo com estas
definições:

hlsl

Texture2D Texture1 : register( t0 );


Texture2D Texture2 : register( t1 );
Texture2D Texture3 : register( t2 );
Texture2D Texture4 : register( t3 );
Texture2D Texture5 : register( t4 );
Texture2D Texture6 : register( t5 );
Texture2D Texture7 : register( t6 );
Texture2D Texture8 : register( t7 );

TextureCube CubeTexture1 : register( t8 );


TextureCube CubeTexture2 : register( t9 );
TextureCube CubeTexture3 : register( t10 );
TextureCube CubeTexture4 : register( t11 );
TextureCube CubeTexture5 : register( t12 );
TextureCube CubeTexture6 : register( t13 );
TextureCube CubeTexture7 : register( t14 );
TextureCube CubeTexture8 : register( t15 );

SamplerState TexSampler : register( s0 );

cbuffer MaterialVars : register (b0)


{
float4 MaterialAmbient;
float4 MaterialDiffuse;
float4 MaterialSpecular;
float4 MaterialEmissive;
float MaterialSpecularPower;
};

cbuffer LightVars : register (b1)


{
float4 AmbientLight;
float4 LightColor[4];
float4 LightAttenuation[4];
float3 LightDirection[4];
float LightSpecularIntensity[4];
uint IsPointLight[4];
uint ActiveLights;
}

cbuffer ObjectVars : register(b2)


{
float4x4 LocalToWorld4x4;
float4x4 LocalToProjected4x4;
float4x4 WorldToLocal4x4;
float4x4 WorldToView4x4;
float4x4 UVTransform4x4;
float3 EyePosition;
};

cbuffer MiscVars : register(b3)


{
float ViewportWidth;
float ViewportHeight;
float Time;
};

Tópicos relacionados
Título Descrição

Como exportar uma textura Descreve como usar o Pipeline de Conteúdo da Imagem para
que contenha mipmaps exportar uma textura contendo mipmaps pré-calculados.

Como exportar uma textura Descreve como usar o Pipeline de Conteúdo da Imagem para
que tenha Alfa pré- exportar uma textura contendo valores alfa pré-multiplicados.
multiplicado

Como exportar uma textura Descreve como usar o Pipeline de Conteúdo da Imagem para
para uso com aplicativos exportar uma textura que possa ser usada em um aplicativo
Direct2D ou JavaScript Direct2D ou JavaScript.

Trabalhando com ativos 3D Descreve as ferramentas de edição que o Visual Studio fornece
para jogos e aplicativos para criar e manipular ativos 3D, incluindo texturas e imagens,
modelos 3D e sombreadores.

Como exportar um Descreve como exportar o sombreador do Designer do


sombreador Sombreador.
O que são texturas e imagens?
Artigo • 12/01/2024

Texturas e imagens são, em um nível básico, apenas tabelas de dados que são usadas
para fornecer detalhes visuais em aplicativos de gráficos. O tipo de detalhe que uma
imagem ou textura fornece depende de como ela é usada, mas amostras de cores,
valores de alfa (transparência), normais da superfície e valores de altura são exemplos
comuns. A principal diferença entre uma textura e uma imagem é que uma textura deve
ser usada em conjunto com uma representação de forma — normalmente, um modelo
3D — para expressar uma cena ou objeto completo, mas uma imagem normalmente é
uma representação independente do objeto ou cena.

Qualquer textura pode ser codificada e compactada de muitas maneiras ortogonais para
o tipo de dados que contém uma textura ou para a dimensionalidade ou "forma" da
textura. No entanto, os diferentes métodos de compactação e codificação produzem
resultados melhores para diferentes tipos de dados.

Você pode usar o editor de imagens para criar e modificar texturas e imagens de
maneiras semelhantes a outros editores de imagem. O Editor de Imagens também
fornece mapeamento MIP e outros recursos para uso com elementos gráficos 3D e é
compatível com muitos dos formatos de textura altamente compactados e acelerados
por hardware compatíveis com o DirectX.

7 Observação

O Editor de Imagens não dá suporte a imagens com poucas cores como ícones ou
cursores. Para criar ou modificar esses tipos de imagens, use o Editor de Imagens
para ícones (C++).

Os tipos típicos de texturas incluem os seguintes formatos:

Mapas de textura
Os mapas de textura contêm valores de cor que são organizados como matrizes uni, bi
e tridimensionais. Eles são usados para fornecer detalhes de cor no objeto afetado.
Cores normalmente são codificadas usando os canais de cor RGB (vermelho, verde, azul)
e podem incluir um quarto canal, alfa, que representa a transparência. As cores podem
ser codificadas em outro esquema de cores, o que é menos comum ou o quarto canal
pode conter dados que não são alfa — por exemplo, a altura.
Mapas normais
Os mapas normais contêm normais da superfície. Eles são usados para fornecer detalhes
de iluminação no objeto afetado. Os normais são usualmente codificados usando os
componentes de cor vermelho, verde e azul para armazenar as dimensões x, y e z do
vetor. No entanto, existem outras codificações — por exemplo, codificações baseadas
em coordenadas polares.

Mapas de altura
Os mapas de altura contêm dados de campo de altura. Eles são usados para fornecer
um formulário de detalhe geométrico no objeto afetado — usando o código do
sombreador para calcular o efeito desejado — ou para fornecer pontos de dados para
fins como geração de terreno. Os valores de altura normalmente são codificados
usando um canal em uma textura.

Mapas de cubo
Os mapas de cubo podem conter diferentes tipos de dados — por exemplo, cores ou
normais — mas são organizados como seis texturas nas faces de um cubo. Por causa
disso, os mapas de cubo não são amostrados fornecendo as coordenadas de textura,
mas fornecendo um vetor cuja origem é o centro do cubo. O exemplo é capturado no
ponto em que o vetor cruza o cubo. Os mapas de cubo são usados para fornecer uma
aproximação do ambiente que pode ser usado para calcular os reflexos — isso é
conhecido como mapeamento de ambiente — ou para fornecer textura a objetos
esféricos com menos distorção do que as texturas básicas e bidimensionais podem
fornecer.

Próximas etapas
Aprenda a usar o Editor de imagens no Visual Studio para criar e modificar imagens e
texturas. O Editor de Imagens dá suporte aos formatos avançados de textura e imagens
como aqueles que são usados no desenvolvimento de aplicativos do DirectX.
O que é o Editor de Imagens no Visual
Studio?
Artigo • 30/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Editor de Imagens no Visual Studio é uma ferramenta que você pode usar para exibir
e modificar recursos de textura e imagem. Especificamente, você pode usar o Editor de
Imagens para trabalhar com os tipos de formatos avançados de textura e imagens que
são usados no desenvolvimento de aplicativos DirectX. O Editor de Imagens inclui o
suporte para formatos de arquivo de imagem populares e codificações de cor, recursos
como canais alfa e mapeamento MIP e muitos dos formatos de textura altamente
compactados e acelerados por hardware, que são compatíveis com o DirectX.

Formatos com suporte


O Editor de Imagens dá suporte aos seguintes formatos de imagem:

Nome do formato Extensão de nome de arquivo

Formato PNG (Portable Network Graphics) .png

JPEG .jpg, .jpeg, .jpe, .jfif

Direct Draw Surface .dds

Formato GIF (Graphics Interchange Format) .gif

Bitmap .bmp, .dib

Formato TIFF .tif, .tiff

Formato TGA (Targa) .tga

Introdução
Esta seção descreve como adicionar uma imagem ao seu projeto do Visual Studio e
configurá-lo para os seus requisitos.

Adicionar uma imagem ao seu projeto


1. No Gerenciador de Soluções, abra o menu de atalho do projeto ao qual você
deseja adicionar a imagem e selecione Adicionar>Novo Item.

2. Na caixa de diálogo Adicionar Novo Item, em Instalado, selecione Gráficos e


escolha um formato de arquivo apropriado para a imagem.

7 Observação

Se você não vir a categoria Elementos Gráficos na caixa de diálogo Adicionar


Novo Item, talvez seja necessário instalar o componente Editores de imagens
e modelos 3D. Feche a caixa de diálogo e, em seguida, selecione
Ferramentas>Obter Ferramentas e Recursos na barra de menus para abrir o
Instalador do Visual Studio. Selecione a guia Componentes individuais e, em
seguida, selecione o componente Editores de imagens e modelos 3D na
categoria Jogos e Elementos Gráficos. Selecione Modificar.

Para obter informações sobre como escolher um formato de arquivo com base em
seus requisitos, confira Escolher o formato de imagem.

3. Especifique o Nome do arquivo de imagem e a Localização na qual você deseja


que ele seja criado.

4. Clique no botão Adicionar.

Escolher o formato da imagem


Dependendo de como você planeja usar a imagem, determinados formatos de arquivo
podem ser mais apropriados do que outros. Por exemplo, alguns formatos podem não
dar suporte a um recurso que você precisa, por exemplo, a transparência ou um formato
de cor específico. Alguns formatos podem não fornecer uma compactação adequada
para o tipo de conteúdo de imagem que você planejou.

As informações a seguir podem ajudá-lo a escolher um formato de imagem que atenda


às suas necessidades:

Imagem de bitmap (.bmp)

O formato de imagem de bitmap. Um formato de imagem não compactado que dá


suporte a cores de 24 bits. O formato de bitmap não dá suporte a transparências.

Imagem GIF (.gif)

O formato de imagem GIF (Graphics Interchange Format). Um formato de imagem


compactados em LZW sem perdas que dá suporte a até 256 cores. Inadequado para
fotografias e imagens com uma quantidade significativa de detalhes de cores, porém
fornece boas taxas de compactação para imagens com poucas cores que têm um alto
grau de coerência de cor.

Imagem JPG (.jpg)

O formato de imagem JPEG (Joint Photographic Experts Group). Um formato de imagem


altamente compactado e com perdas que dá suporte a cores de 24 bits e é adequado
para a compactação de imagens de uso geral com um alto grau de coerência de cor.

Imagem PNG (.png)

O formato de imagem PNG (Portable Network Graphics). Um formato de imagem


moderadamente compactado e sem perdas, que dá suporte a cores de 24 bits e
transparência alfa. É adequado para imagens naturais e artificiais, mas não oferece taxas
de compactação tão boas quanto formatos com perda como JPG ou GIF.

Imagem TIFF (.tif)

O formato de imagem TIFF (ou TIF). Um formato de imagem flexível que dá suporte a
vários esquemas de compactação.

Textura DDS (.dds)

O formato de textura DDS (DirectDraw Surface). Um formato de textura altamente


compactado e com perdas, que dá suporte a cores de 24 bits e transparência alfa. Suas
taxas de compactação chegam a até 8:1. Ele se baseia na compactação de Textura S3,
que pode ser descompactada no hardware gráfico.

Imagem TGA (.tga)


O formato de imagem TGA (Truevision Graphics Adapter, também conhecido como
Targa). Um formato de imagem compactado em RLE e sem perda que dá suporte a
imagens com cores mapeadas (paleta de cores) e diretas de cores de até 24 bits e
transparência alfa. Inadequado para fotografias e imagens com uma quantidade
significativa de detalhes de cores, porém fornece boas taxas de compactação para
imagens com longas extensões de cores idênticas.

Configurar a imagem
Antes de começar a trabalhar com a imagem criada, você pode alterar sua configuração
padrão. Por exemplo, você pode alterar suas dimensões ou o formato de cores que ela
usa. Para obter informações sobre como configurar essas e outras propriedades da
imagem, consulte Propriedades da imagem.

7 Observação

Antes de salvar seu trabalho, verifique se a propriedade Formato de Cor foi


definida se você quiser usar um formato de cor específico. Se o formato de arquivo
der suporte à compactação, você poderá ajustar as configurações de compactação
quando salvar o arquivo pela primeira vez ou ao escolher Salvar como.

Trabalhar com o Editor de imagens para


modificar texturas e imagens
Os comandos que afetam o estado do Editor de Imagens estão localizados na barra de
ferramentas Modo do Editor de Imagens junto com os comandos avançados. A barra
de ferramentas está localizada na borda superior da área de design do Editor de
Imagens. As ferramentas de desenho encontram-se na barra de ferramentas do Editor
de Imagens na borda esquerda da área de design do Editor de Imagens.

Barra de ferramentas Modo do Editor de Imagens

A tabela a seguir descreve os itens na barra de ferramentas Modo do Editor de


Imagens, que são listados na ordem em que são exibidos, da esquerda para a direita:
Item da Descrição
barra de
ferramentas

Selecionar Habilita a seleção de uma região retangular de uma imagem. Depois de


selecionar uma região, você poderá recortar, copiar, mover, ajustar escala, girar,
inverter ou excluir. Quando há uma seleção ativa, as ferramentas de desenho só
afetam a região selecionada.

Seleção Habilita a seleção de uma região irregular de uma imagem. Depois de selecionar
Irregular uma região, você poderá recortar, copiar, mover, ajustar escala, girar, inverter ou
excluir. Quando há uma seleção ativa, as ferramentas de desenho só afetam a
região selecionada.

Seleção de Habilita a seleção de uma região de cor semelhante de uma imagem. A


Varinha tolerância, ou seja, a diferença máxima entre cores adjacentes dentro das quais
são consideradas semelhantes, pode ser configurada para incluir um intervalo
maior ou menor de cores semelhantes. Depois de selecionar uma região, você
poderá recortar, copiar, mover, ajustar escala, girar, inverter ou excluir. Quando há
uma seleção ativa, as ferramentas de desenho só afetam a região selecionada.

Panorâmica Habilita a movimentação da imagem em relação ao quadro de janela. No modo


Panorâmica, selecione um ponto na imagem e mova-o.

Ative temporariamente o modo Panorâmico mantendo a tecla Ctrl pressionada.

Zoom Habilita a exibição de mais ou menos detalhes da imagem em relação ao quadro


de janela. No modo Aplicar Zoom, selecione um ponto na imagem e mova-o
para a direita ou para baixo para ampliar ou para a esquerda ou para cima para
reduzir.

Amplie ou reduza mantendo a tecla Ctrl pressionada enquanto usa o botão de


rolagem do mouse ou pressiona o sinal de mais (+) ou de menos (-).

Aplicar Exibe a imagem usando uma relacionamento 1:1 entre os pixels da imagem e os
Zoom para o pixels da tela.
Tamanho
Real

Aplicar zoom Exibe a imagem completa no quadro de janela.


para ajustar

Zoom para a Exibe a largura completa da imagem no quadro de janela.


largura

Grid Habilita ou desabilita a grade que mostra os limites de pixel. A grade pode não
aparecer até você ampliar a imagem.

Exibição do Ativa o próximo nível maior de MIP em uma cadeia de mapas MIP. O nível de MIP
Próximo ativo é exibido na área de design. Este item só está disponível para texturas que
Nível de MIP têm níveis de MIP.
Item da Descrição
barra de
ferramentas

Exibir um Ativa o próximo nível menor de MIP em uma cadeia de mapas MIP. O nível de
Nível de MIP MIP ativo é exibido na área de design. Este item só está disponível para texturas
Anterior que têm níveis de MIP.

Canal Habilita ou desabilita o canal da cor específica. Observação: habilitando ou


vermelho desabilitando sistematicamente os canais de cor, você pode isolar problemas
relacionados a um ou mais deles. Por exemplo, você poderia identificar a
Canal verde transparência alfa incorreta.

Canal azul

Canal alfa

Tela de Habilita ou desabilita a exibição da tela de fundo através das partes transparentes
fundo da imagem. Você pode configurar como a tela de fundo é exibida escolhendo
entre estas opções:

Quadriculado
Usa uma cor verde junto com a cor da tela de fundo especificada para exibir a
tela de fundo como um padrão quadriculado. Você pode usar essa opção para
ajudar a tornar as partes transparentes da imagem mais visíveis.

Tela de fundo branco


Usa a cor branca para exibir a tela de fundo.

Tela de fundo preto


Usa a cor preta para exibir a tela de fundo.

Animar a tela de fundo


Movimenta o padrão quadriculado lentamente em panorâmica. Você pode usar
essa opção para ajudar a tornar as partes transparentes da imagem mais visíveis.

Propriedades Alterna entre abrir e fechar a janela Propriedades.


Item da Descrição
barra de
ferramentas

Avançado Contém comandos e opções adicionais.

Filtros

Fornece vários filtros de imagem comuns: Preto e branco, Desfoque, Iluminar,


Escurecer, Detecção de borda, Colocar em alto-relevo, Inverter cores, Ripple,
Tom sépia e Ajustar nitidez.

Mecanismos Gráficos

Renderizar com o D3D11


Usa o Direct3D 11 para renderizar a área de design do Editor de Imagens.

Renderizar com o D3D11WARP


Usa o 11 WARP (Windows Advanced Rasterization Platform) do Direct3D para
renderizar a área de design do Editor de Imagens.

Ferramentas

Inverter Horizontalmente
Transpõe a imagem ao redor do seu eixo horizontal, também chamado x.

Inverter Verticalmente
Transpõe a imagem ao redor do seu eixo vertical, também chamado y.

Gerar Mips
Gera os níveis de MIP para uma imagem. Se os níveis de MIP já existirem, eles
serão recriados do maior nível de MIP. Quaisquer alterações feitas aos níveis de
MIP menores serão perdidas. Para salvar os níveis de MIP gerados, use o formato
.dds para salvar a imagem.

Exibir

Taxa de Quadros
Quando habilitado exibe a taxa de quadros no canto superior direito da área de
design. A taxa de quadros é o número de quadros desenhados por segundo.
Dica: escolha o botão Avançado para executar o último comando novamente.

Barra de ferramentas do editor de imagens


A tabela a seguir descreve os itens da barra de ferramentas Editor de Imagens, que são
listados na ordem em que aparecem, de cima para baixo:

Item da barra Descrição


de
ferramentas

Pencil Usa a seleção de cor ativa para desenhar um traço com alias. Você pode definir
a cor e a espessura do traço na janela Propriedades.

Pincel Usa a seleção de cor ativa para desenhar um traço suavizado. Você pode definir
a cor e a espessura do traço na janela Propriedades.

Spray Usa a seleção de cor ativa para desenhar um traço suavizado que se mescla à
imagem e se torna mais saturado com o decorrer do tempo. Você pode definir
a cor e a espessura do traço na janela Propriedades.

Eyedropper Define a seleção de cor ativa para a cor do pixel selecionado.

Preenchimento Usa a seleção de cor ativa para preencher uma região da imagem. A região
afetada é definida como o pixel em que o preenchimento é aplicado, junto com
cada pixel conectado a ele por pixels da mesma cor e que são a mesma cor em
si. Se o preenchimento for aplicado em uma seleção ativa, a região afetada
ficará restringida pela seleção.

Por padrão, a seleção de cor ativa é mesclada com a região afetada da imagem
de acordo com seu componente alfa. Para usar a seleção de cores ativa para
substituir a região afetada, pressione e segure a tecla Shift ao usar a ferramenta
de preenchimento.

Borracha Define pixels para a cor totalmente transparente se a imagem der suporte a um
canal alfa. Caso contrário, Borracha define os pixels para a cor da tela de fundo
ativa.
Item da barra Descrição
de
ferramentas

Linha, Desenha uma forma na imagem. Você pode definir a cor e a espessura da
Retângulo, estrutura de tópicos na janela Propriedades.
Retângulo
Arredondado, Para desenhar um primitivo com altura e largura iguais, pressione e segure a
Elipse tecla Shift enquanto desenha.

Texto Usa a seleção de cor de primeiro plano para desenhar o texto. A cor da tela de
fundo é determinada pela seleção de cor da tela de fundo. Para uma tela de
fundo transparente, o valor alfa da seleção da cor da tela de fundo deve ser 0.
Quando a região de texto estiver ativa, você pode definir se o texto é
desenhado com um traço suavizado ou pode definir o Valor, Fonte, Tamanho e
o estilo — Negrito, Itálico ou Sublinhado — do texto na janela Propriedades.
O conteúdo e a aparência do texto é finalizada quando a região de texto não
está mais ativa.

Girar Gira a imagem 90 graus no sentido horário.

Trim Corta a imagem para a seleção ativa.

Trabalhar com níveis de MIP


Alguns formatos de imagem, por exemplo, o DirectDraw Surface (.dds) dão suporte a
níveis de MIP para LOD (Nível de Detalhe) do espaço de textura.

Trabalhar com transparência


Alguns formatos de imagem, por exemplo, DirectDraw Surface (.dds), dão suporte a
transparência. Há várias maneiras de usar a transparência, dependendo da ferramenta
que está sendo usada. Para especificar o nível de transparência de uma seleção de cor,
na janela Propriedades, defina o componente A (alfa) da seleção de cores.

A tabela a seguir descreve como os diferentes tipos ferramentas controlam como a


transparência é aplicada:

Ferramenta Descrição
Ferramenta Descrição

Lápis, Pincel, Spray, Para mesclar a seleção de cor ativa com a imagem na janela
Linha, Retângulo, Propriedades, expanda o grupo de propriedades Canais, marque a
Retângulo Arredondado, caixa de seleção Desenhar no canal Alfa e desenhe normalmente.
Elipse, Texto
Para desenhar usando a seleção de cor ativa e deixar o valor alfa da
imagem em vigor, desmarque a caixa de seleção Desenhar do canal
Alfa e, em seguida, desenhe normalmente.

Preenchimento Para mesclar a seleção de cor ativa junto com a imagem, escolha a
área a ser preenchida.

Para usar a seleção de cores ativa – incluindo o valor do canal alfa –


para substituir a imagem, pressione e segure a tecla Shift e, em
seguida, escolha a área a ser preenchida.

Propriedades da imagem
Você pode usar a janela Propriedades para especificar várias propriedades da imagem.
Por exemplo, você pode definir as propriedades de largura e altura para redimensionar
a imagem.

A tabela a seguir descreve as propriedades da imagem:

Propriedade Descrição

Largura A largura da imagem.

Altura A altura da imagem.

Bits por Pixel O número de bits que representa cada pixel. O valor desta propriedade depende
do Formato de Cor da imagem.

Seleção True para mesclar a camada de seleção com a imagem principal, com base no
Transparente valor alfa da camada de seleção; caso contrário, False. Este item só está disponível
para imagens que dão suporte a alfa.

Formatar O formato de cor da imagem. É possível especificar vários de formatos de cor,


dependendo do formato da imagem. O formato de cor define o número e o tipo
de canais de cor que estão incluídos na imagem e o tamanho e a codificação de
vários canais.

Nível de MIP O nível de MIP ativo. Este item só está disponível para texturas que têm níveis de
MIP.

Contagem de O número total de níveis de MIP na imagem. Este item só está disponível para
Nível de Mip texturas que têm níveis de MIP.
Propriedade Descrição

Contagem de O número total de quadros na imagem. Este item só está disponível para imagens
Quadros que dão suporte a matrizes de textura.

Quadro O quadro atual. Somente o primeiro quadro pode ser exibido; todos os outros
quadros são perdidos quando a imagem é salva.

Contagem de O número total de fatias de profundidade na imagem. Este item só está


Fatia de disponível para imagens que dão suporte a texturas de volume.
Profundidade

Fatia de A fatia de profundidade atual. Somente a primeira fatia pode ser exibida; todas as
Profundidade outras fatias são perdidas quando a imagem é salva.

7 Observação

Como a propriedade Girar por se aplica a todas as ferramentas e regiões


selecionadas, ela sempre aparece na parte inferior da janela Propriedades junto
com outras propriedades de ferramenta. Girar por sempre é exibido, pois a
imagem inteira é implicitamente selecionada quando não há nenhuma outra
seleção ou ferramenta ativa. Para obter mais informações sobre a propriedade
Girar por, confira Propriedades da ferramenta.

Redimensionar imagens
Há duas maneiras de redimensionar uma imagem. Em ambos os casos, o Editor de
imagens usa a interpolação bilinear para criar uma nova amostra da imagem.

Na janela Propriedades, especifique os novos valores para as propriedades


Largura e Altura.

Selecione toda a imagem e use os marcadores de borda para redimensionar a


imagem.

Regiões selecionadas
As seleções no Editor de Imagens definem as regiões da imagem que estão ativas. As
regiões ativas são afetadas pelas ferramentas e transformações. Quando há uma seleção
ativa, as áreas fora da região selecionada não são afetadas pela maioria das ferramentas
e transformações. Se não há uma seleção ativa, toda a imagem está ativa.
A maioria das ferramentas (Lápis, Pincel, Spray, Preenchimento, Borracha e primitivas
2D) e transformações (Girar, Cortar, Inverter Cores, Inverter Horizontalmente e
Inverter Verticalmente) são restritas ou definidas pela seleção ativa. No entanto,
algumas ferramentas (Conta-gotas e Texto) e transformações (Gerar Mips) não são
afetadas por nenhuma seleção ativa. Essas ferramentas sempre se comportam como se
a imagem inteira fosse a seleção ativa.

Enquanto seleciona uma região, você pode pressionar e segurar a tecla Shift para fazer
uma seleção proporcional (quadrada). Caso contrário, a seleção não é restrita.

Redimensionar seleções
Depois de selecionar uma região, você poderá redimensioná-la ou ao seu conteúdo de
imagem alterando o tamanho do marcador de seleção. Enquanto redimensiona a região
selecionada, você pode usar as seguintes teclas modificadoras para alterar o
comportamento da região selecionada ao redimensioná-la:

Ctrl – copia o conteúdo da região selecionada antes que ela seja redimensionada. Isso
deixa a imagem original intacta enquanto a cópia é redimensionada.

Shift – redimensiona a região selecionada proporcionalmente ao tamanho original.

Alt – altera o tamanho da região da seleção. Isso deixa a imagem sem modificações.

A tabela a seguir descreve as combinações de teclas modificadoras válidas:

Ctrl Shift Alt Descrição

Redimensiona o conteúdo da região selecionada.

Shift Redimensiona proporcionalmente o conteúdo da região selecionada.

Alt Redimensiona a região selecionada. Isso define uma nova região de seleção.

Shift Alt Redimensiona proporcionalmente a região selecionada. Isso define uma nova
região de seleção.

Ctrl Copia e redimensiona o conteúdo da região selecionada.

Ctrl Shift Copia e redimensiona proporcionalmente o conteúdo da região selecionada.

Propriedades da ferramenta
Embora uma ferramenta esteja selecionada, você pode usar a janela Propriedades para
especificar os detalhes sobre como isso afeta a imagem. Por exemplo, você pode definir
a espessura da ferramenta Lápis ou a cor da ferramenta Pincel.

Você pode definir uma cor de primeiro plano e uma cor da tela de fundo. Ambos dão
suporte a um canal alfa para fornecer opacidade definida pelo usuário. As configurações
se aplicam a todas as ferramentas. Se você usar um mouse, o botão esquerdo do mouse
corresponderá à cor de primeiro plano e o botão direito do mouse corresponde à cor
da tela de fundo.

A tabela a seguir descreve as propriedades da ferramenta:

Ferramenta Propriedades

Todas as Girar por


ferramentas e Define a quantidade, em graus, que o efeito da seleção ou ferramenta é girado
seleções no sentido horário.

Lápis, Pincel, Espessura


Spray, Define o tamanho da área afetada pela ferramenta.
Borracha

Text Antialias
Desenha o texto com bordas suavizadas. Isso fornece ao texto uma aparência
mais suave.

Valor
O texto a ser desenhado.

Fonte
A fonte usada para desenhar o texto.

Tamanho
O tamanho do texto.

Negrito
Transforma a fonte em negrito.

Itálico
Transforma a fonte em itálico.

Sublinhado
Transforma a fonte em sublinhado.
Ferramenta Propriedades

Primitivo 2D Antialias
Desenha primitivos com bordas suavizadas. Isso concede ao texto uma
aparência mais suave.

Espessura
Define a espessura da linha de que forma o limite do primitivo.

Raio X
(Somente retângulo arredondado) Define o raio de arredondamento para as
bordas superior e inferior do primitivo.

Raio Y
(Somente retângulo arredondado) Define o raio de arredondamento para as
bordas esquerda e direita do primitivo.

Lápis, Pincel, Canais


Spray, Habilita ou desabilita os canais de cor específicos para exibição e desenho. Se a
Primitivo 2D Exibição é definida como um canal de cor específico, esse canal estará visível
na imagem; caso contrário, ele não é visível. Se Desenhar estiver definido para
um canal de cor específico, tal canal é afetado por operações de desenho; caso
contrário, ele não é.

Seleção de Tolerância
Varinha, Define a diferença máxima entre cores adjacentes dentro da qual elas são
Preenchimento consideradas semelhantes, para que cores menos ou mais semelhantes façam
parte da região afetada ou selecionada. Por padrão, o valor é 32, o que significa
que pixels adjacentes em 32 tons (mais claros ou mais escuros) da cor original
são considerados como parte da região.

Atalhos do teclado
Comando Atalhos do teclado

Mudar para o modo Selecionar S

Mudar para o modo Zoom Z

Mudar para o modo Panorâmico K

Selecionar tudo Ctrl+A

Excluir a seleção atual Excluir

Cancelar a seleção atual Esc (Escape)


Comando Atalhos do teclado

Ampliar Ctrl+Botão de rolagem do mouse para


frente

Ctrl+PageUp

Sinal de adição (+)

Reduzir Ctrl-Botão de rolagem do mouse para trás

Ctrl-PageDown

Sinal de subtração (-)

Movimentar a imagem para cima em panorama Botão de rolagem do mouse para trás

PageDown

Movimentar a imagem para baixo em panorama Botão de rolagem do mouse para frente

PageUp

Movimentar a imagem para a esquerda em Shift+Botão de rolagem do mouse para


panorama trás

Botão de rolagem do mouse para a


esquerda

Shift+PageDown

Movimentar a imagem para a direita em panorama Shift+Botão de rolagem do mouse para


frente

Botão de rolagem do mouse para a direita

Shift+PageUp

Aplicar zoom para o tamanho real Ctrl+0 (zero)

Ajustar a imagem à janela Ctrl+G, Ctrl+F

Ajustar a imagem à largura da janela Ctrl+G, Ctrl+I

Ativar/desativar grade Ctrl+G, Ctrl+G

Recortar imagem para a seleção atual Ctrl+G, Ctrl+C

Exibir próximo nível de MIP (mais detalhes) Ctrl+G, Ctrl+6

Exibir nível anterior de MIP (menos detalhes) Ctrl+G, Ctrl+7


Comando Atalhos do teclado

Ativar/desativar canal de cor vermelha Ctrl+G, Ctrl+1

Ativar/desativar canal de cor verde Ctrl+G, Ctrl+2

Ativar/desativar canal de cor azul Ctrl+G, Ctrl+3

Ativar/desativar o canal alfa (transparência) Ctrl+G, Ctrl+4

Ativar/desativar o padrão quadriculado alfa Ctrl+G, Ctrl+B

Mudar para a ferramenta Seleção Irregular L

Mudar para a ferramenta Seleção de Varinha M

Mudar para a ferramenta Lápis P

Mudar para a ferramenta Pincel B

Mudar para a ferramenta Preenchimento F

Mudar para a ferramenta Borracha E

Mudar para a ferramenta Texto T

Mudar para a ferramenta Seleção de Cor (conta- I


gotas)

Move a seleção ativa e seu conteúdo. Teclas de direção.

Redimensiona a seleção ativa e seu conteúdo. Ctrl+teclas de direção

Move a seleção ativa, mas não seu conteúdo. Shift+teclas de direção

Redimensiona a seleção ativa, mas não seu Shift+Ctrl+teclas de direção


conteúdo.

Confirmar a camada atual Return

Diminuir a espessura da ferramenta [

Aumentar a espessura da ferramenta ]

Exemplos do Editor de Imagens


Os exemplos nesta seção mostram como usar o Editor de Imagens para criar uma
textura básica e como gerar e modificar níveis de MIP.

Criar uma textura básica


Você pode usar o Editor de Imagens para criar e modificar imagens e texturas para o
seu jogo ou aplicativo. Por exemplo, você pode definir o tamanho da textura, definir as
cores de primeiro plano e plano de fundo, usar o canal alfa (transparência), usar as
ferramentas Preenchimento e Elipse e definir propriedades da ferramenta.

Neste exemplo, as etapas a seguir mostram como criar uma textura que representa um
"alvo". Quando você terminar, a textura deve ser semelhante à da imagem a seguir. Para
demonstrar melhor a transparência na textura, o Editor de Imagens foi configurado para
usar um padrão quadriculado verde para exibi-la.

Antes de começar, verifique se a janela Propriedades está sendo exibida. A janela


Propriedades é usada para definir o tamanho da imagem, alterar as propriedades da
ferramenta e especificar cores enquanto você trabalha.

Criar uma textura de destino de "alvo"

1. Crie uma textura com o qual você trabalhará. Saiba mais sobre como adicionar
uma textura ao seu projeto em Editor de Imagens.

2. Defina o tamanho da imagem como 512x512 pixels. Na janela Propriedades,


defina os valores das propriedades Largura e Altura como 512 .

3. Na barra de ferramentas do Editor de Imagens, escolha a ferramenta


Preenchimento. A janela Propriedades agora exibe as propriedades da ferramenta
Preenchimento junto com as propriedades da imagem.

4. Defina a cor de primeiro plano como preto totalmente transparente. Na janela


Propriedades, no grupo de propriedades Cores, selecione Primeiro Plano. Defina
os valores das propriedades R, G, B e A ao lado do seletor de cor como 0 .
5. Na barra de ferramentas do Editor de Imagens, escolha a ferramenta
Preenchimento, em seguida, pressione e segure a tecla Shift e escolha qualquer
ponto na imagem. Se você usar a tecla Shift, o valor alfa da cor de preenchimento
substituirá a cor na imagem. Caso contrário, o valor alfa será usado para misturar a
cor de preenchimento com a cor da imagem.

) Importante

Essa etapa, junto com a seleção de cor na etapa anterior, garante que a
imagem base seja preparada para a textura de destino de "alvo" que você
desenhará. Quando a imagem é preenchida com preto transparente e como a
borda do destino é preta, não haverá nenhum artefato de serrilhado em torno
de destino.

6. Na barra de ferramentas do Editor de Imagens, escolha a ferramenta Elipse.

7. Defina a cor de primeiro plano como preto totalmente opaco. Defina os valores
das propriedades R, G e B como 0 e o valor da propriedade A como 255 .

8. Defina a cor da tela de fundo como branco totalmente opaco. Na janela


Propriedades, no grupo de propriedades Cores, selecione Tela de Fundo. Defina
os valores das propriedades R, G, B e A como 255 .

9. Defina a largura do contorno da elipse. Na janela Propriedades, no grupo de


propriedades Aparência, defina o valor da propriedade Largura como 8 .

10. Verifique se a suavização está habilitada. Na janela Propriedades, no grupo de


propriedades Aparência, verifique se a propriedade Suavização está definida.

11. Usando a ferramenta Elipse, desenhe um círculo da coordenada de pixel (3, 3)


até a coordenada de pixel (508, 508) . Para desenhar o círculo com mais
facilidade, você pode pressionar e segurar a tecla Shift enquanto desenha.

7 Observação

As coordenadas de pixel do local atual do ponteiro são exibidas na barra de


status do Visual Studio.

12. Altere a cor da tela de fundo. Defina R como 44 , G como 165 , B como 211 e A
como 255 .
13. Desenhe outro círculo da coordenada de pixel (64, 64) até a coordenada de pixel
(448, 448) .

14. Altere a cor da tela de fundo de volta para branco totalmente opaco. Defina R, G, B
e A como 255 .

15. Desenhe outro círculo da coordenada de pixel (128, 128) até a coordenada de
pixel (384, 384) .

16. Altere a cor da tela de fundo. Defina R como 255 , G e B como 64 e A como 255 .

17. Desenhe outro círculo da coordenada de pixel (192, 192) até a coordenada de
pixel (320, 320) .

A textura de destino de "alvo" foi concluída. Aqui está a imagem final, mostrada com
transparência.

Para acompanhar, você pode gerar níveis de MIP para essa textura. Para obter
informações sobre como fazer isso, confira a próxima seção.

Criar e modificar os níveis de MIP


Este documento demonstra como usar o Editor de Imagens para gerar e modificar
níveis de MIP para um nível de detalhe (LoD) de espaço de textura.

Gerando níveis MIP


Mipmapping é uma técnica usada para aumentar a velocidade de processamento e
reduzir artefatos de suavização em objetos texturizados pré-calculando e armazenando
várias cópias de uma textura em tamanhos diferentes. Cada cópia, que é conhecida
como um nível de MIP, é metade da largura e altura da cópia anterior. Quando uma
textura é processada na superfície de um objeto, o nível de MIP que melhor
corresponde à área de espaço de tela da superfície texturizada é escolhido
automaticamente. Isso significa que o hardware gráfico não precisa filtrar texturas muito
grandes para manter a qualidade visual consistente. Embora o custo de memória de
armazenar os níveis de MIP seja 33% maior do que aquele de armazenar a textura
original sozinha, os ganhos de desempenho e qualidade de imagem justificam isso.

Para gerar os níveis de MIP

1. Comece com uma textura básica. Para obter melhores resultados, especifique uma
textura com largura e altura que sejam uma potência de dois em tamanho, por
exemplo, 256, 512, 1024 e assim por diante.

2. Gere os níveis de MIP. Na barra de ferramentas Modo do Editor de Imagens,


escolha Avançado>Ferramentas>Gerar Mips.

Observe que os botões Ir Para o Próximo Nível de Mip e Ir Para o Nível de Mip
Anterior aparecem agora na barra de ferramentas Modo do Editor de Imagens. Se
a janela Propriedades for exibida, observe também que as propriedades somente
leitura Nível de Mip e Contagem de Nível de Mip agora aparecem nas
propriedades da imagem.

Modificando níveis MIP


Para obter efeitos especiais ou aumentar a qualidade da imagem em níveis específicos
de detalhe, você pode modificar cada nível de MIP individualmente. Por exemplo, você
pode dar a um objeto de textura uma aparência diferente em uma distância (uma
distância maior corresponde a níveis de MIP menores) ou você pode garantir que
texturas que contenham texto ou símbolos permaneçam legíveis mesmo com níveis de
MIP menores.

Para modificar um nível de MIP individual

1. Selecione o nível de MIP que você deseja modificar. Na barra de ferramentas


Modo do Editor de Imagens, use os botões Ir Para o Próximo Nível de MIP e Ir
Para o Nível de MIP Anterior para mover-se entre os níveis de MIP.

2. Depois de selecionar o nível de MIP que você deseja modificar, você pode usar as
ferramentas de desenho para modificá-la sem alterar o conteúdo de outros níveis
de MIP. As ferramentas de desenho estão disponíveis na barra de ferramentas
Editor de Imagens. Depois de selecionar uma ferramenta, você pode alterar suas
propriedades na janela Propriedades.

7 Observação

Se você não precisar modificar o conteúdo dos níveis de MIP individuais – como
você poderia fazer para obter certos efeitos – é recomendável que você gere
mipmaps com base na textura de origem no momento do build. Isso ajuda a
assegurar que os níveis de MIP fiquem em sincronia com a textura de origem
porque modificações em um nível de MIP não são propagadas automaticamente
para outros níveis.

Próximas etapas
Acesse a página Exportar texturas para saber como usar o Pipeline de Conteúdo de
Imagem para exportar texturas que contêm mipmaps, pré-multiplica alfa e muito mais.
Exportar formatos de textura avançada
usando o Pipeline de Conteúdo de
Imagem no Visual Studio
Artigo • 30/06/2023

Este artigo descreve como usar o Pipeline de Conteúdo de Imagem para exportar
texturas, como as que contêm mipmaps ou alfa pré-multiplicado, ou mesmo as que
podem ser usadas com aplicativos Direct2D ou JavaScript.

Exportar uma textura que contém mipmaps


O Pipeline de conteúdo de imagem pode gerar mipmaps de uma imagem de origem
como parte da fase de build do projeto. Para obter certos efeitos, às vezes, você precisa
especificar o conteúdo da imagem de cada nível de MIP manualmente. Quando você
não precisa especificar o conteúdo da imagem de cada nível MIP manualmente, gerar
mipmaps em tempo de build garante que o conteúdo de mipmap nunca fique fora de
sincronia. Isso também elimina o custo de desempenho de gerar mipmaps no tempo de
execução.

Este artigo cobre:

Configurando a imagem de origem a ser processada pelo Pipeline de conteúdo da


imagem.

Configurando o Pipeline de conteúdo de imagem para gerar mipmaps.

Exportar mipmaps
O mapeamento mip fornece o nível de detalhe do espaço de tela automático para
superfícies com textura em um aplicativo ou jogo 3D. Ele aumenta o desempenho de
renderização de um jogo ou aplicativo computando previamente versões com amostra
reduzida de uma textura. Pré-computar versões reduzidas significa que a textura inteira
não ter sua amostra reduzida cada vez que é amostrada.

Para exportar uma textura que contenha mipmaps

1. Comece com uma textura básica. Carregue um arquivo de imagem existente ou


crie um. Para oferecer suporte a mipmaps, especifique uma textura que tenha uma
largura e altura que sejam as mesmas, por exemplo, 64x64, 256x256 ou 512x512.
2. Configure o arquivo de textura que você acabou de criar para que ele seja
processado pelo Pipeline de conteúdo de imagem. No Gerenciador de Soluções,
abra o menu de atalho do arquivo de textura que você criou e selecione
Propriedades. Na página Propriedades de Configuração>Geral, defina a
propriedade Tipo de Item como Pipeline de Conteúdo de Imagem. Verifique se a
propriedade Conteúdo está definida como Sim e se Excluir do Build está definido
como Não. Escolha Aplicar.

A página de propriedades de configuração Pipeline de Conteúdo de Imagem é


exibida.

3. Configure o Pipeline de conteúdo de imagem para gerar mipmaps. Na página


Propriedades de Configuração>Pipeline de Conteúdo de Imagem>Geral, defina
a propriedade Gerar mips como Sim (/generatemips).

4. Selecione OK.

Quando você cria o projeto, o Pipeline de conteúdo de imagem converte a imagem de


origem do formato de trabalho para o formato de saída que você especificou, incluindo
níveis de MIP. O resultado é copiado para o diretório de saída do projeto.

Exportar uma textura que tenha o alfa pré-


multiplicado
O Pipeline de conteúdo de imagem pode gerar texturas alfa pré-multiplicadas de uma
imagem de origem. Eles podem ser mais simples de usar e mais robustos do que
texturas que não contêm alfa pré-multiplicado.

Este documento demonstra essas atividades:

Configurando a imagem de origem a ser processada pelo Pipeline de conteúdo da


imagem.

Configurando o Pipeline de conteúdo de imagem para gerar alfa pré-multiplicado.

Alfa pré-multiplicado
O alfa pré-multiplicado oferece diversas vantagens em relação ao alfa convencional, não
multiplicado, porque ele representa melhor a interação real da luz com materiais físicos,
separando a contribuição de cor do texel (a cor que ele adiciona à cena) de sua
transparência (a quantidade de cor subjacente permitida). Algumas das vantagens de
usar alfa pré-multiplicado são:
A combinação com alfa pré-multiplicado é uma operação de associação; o
resultado da combinação de várias texturas translúcidas é o mesmo,
independentemente da ordem na qual as texturas são mescladas.

Devido à natureza associativa de combinação com alfa pré-multiplicado, a


renderização multipassagem de objetos translúcidos é simplificada.

Ao usar alfa pré-multiplicado, tanto a combinação aditiva pura (pela configuração


de alfa para zero) quanto a combinação interpoladas linearmente podem ser
obtidas simultaneamente. Por exemplo, em um sistema de partículas, uma
partícula de fogo combinada de forma aditiva pode se tornar uma partícula de
fumaça translúcida combinada por meio do uso da interpolação linear. Sem alfa
pré-multiplicado, você precisa extrair as partículas de fogo separadamente das
partículas de fumaça e modificar o estado de renderização entre chamadas de
retirada.

As texturas que usam alfa pré-multiplicado são compactadas com qualidade mais
alta do que aquelas que não usam e elas não exibem as bordas descoloridas (ou
"efeito de halo") que podem ocorrer ao combinar texturas que não usam alfa pré-
multiplicado.

Como criar uma textura que usa alfa pré-multiplicado

1. Comece com uma textura básica. Carregue um arquivo de imagem existente ou


crie um.

2. Configure o arquivo de textura para que ele seja processado pelo Pipeline de
conteúdo de imagem. No Gerenciador de Soluções, abra o menu de atalho do
arquivo de textura e escolha Propriedades. Na página Propriedades de
Configuração>Geral, defina a propriedade Tipo de Item como Pipeline de
Conteúdo de Imagem. Verifique se a propriedade Conteúdo está definida como
Sim e se Excluir do Build está definido como Não e, em seguida, escolha o botão
Aplicar. A página de propriedades de configuração Pipeline de Conteúdo de
Imagem é exibida.

3. Configure o Pipeline de conteúdo de imagem para gerar alfa pré-multiplicado. Na


página Propriedades de Configuração>Pipeline de Conteúdo de Imagem>Geral,
defina a propriedade Converter para formato alfa pré-multiplicado como Sim
(/generatepremultipliedalpha).

4. Clique no botão OK.

Quando você cria o projeto, o Pipeline de conteúdo de imagem converte a


imagem de origem do formato de trabalho para o formato de saída que você
especificou, incluindo a conversão da imagem para o formato alfa pré-multiplicado
e o resultado é copiado para o diretório de saída do projeto.

exportar uma textura para uso com aplicativos


Direct2D ou JavaScript
O Pipeline de conteúdo de imagem pode gerar texturas que são compatíveis com as
convenções de renderização internas do Direct2D. Texturas desse tipo são adequadas
para serem usadas em aplicativos que usam Direct2D e em aplicativos UWP criados
usando JavaScript.

Este documento demonstra essas atividades:

Configurando a imagem de origem a ser processada pelo Pipeline de conteúdo da


imagem.

Configurando o Pipeline de conteúdo de imagem para gerar uma textura que


possa ser usada em um aplicativo Direct2D ou JavaScript.

Gerar um arquivo .dds compactado em bloco.

Gerar alfa pré-multiplicado.

Desabilite a geração de mipmap.

Convenções de renderização do Direct2D


Texturas que são usadas no contexto do Direct2D devem estar em conformidade com as
seguintes convenções de renderização internas do Direct2D:

O Direct2D implementa a transparência e a translucência usando alfa pré-


multiplicado. Texturas usadas com Direct2D devem conter alfa pré-multiplicado,
mesmo se a textura não usar transparência ou translucência.

A textura precisa ser fornecida no formato .dds, usando um desses formatos de


compactação em bloco:

Compactação BC1_UNORM

Compactação BC2_UNORM

Compactação BC3_UNORM

Não há suporte a mipmaps.


Para criar uma textura compatível com as convenções de renderização do Direct2D

1. Comece com uma textura básica. Carregue uma imagem existente ou crie uma.
Para dar suporte à compactação em bloco no formato .dds, especifique uma
textura que tenha uma largura e altura que sejam múltiplos de quatro em
tamanho, por exemplo, 100 x 100, 128 x 128 ou 256 x 192. Como não há suporte
para mipmap, a textura não precisa ser quadrada nem ser uma potência de
tamanho dois.

2. Configure o arquivo de textura para que ele seja processado pelo Pipeline de
conteúdo de imagem. No Gerenciador de Soluções, abra o menu de atalho do
arquivo de textura que você criou e selecione Propriedades. Na página
Propriedades de Configuração>Geral, defina a propriedade Tipo de Item como
Pipeline de Conteúdo de Imagem. Verifique se a propriedade Conteúdo está
definida como Sim e se Excluir do Build está definido como Não e, em seguida,
escolha o botão Aplicar. A página de propriedades de configuração Pipeline de
Conteúdo de Imagem é exibida.

3. Defina o formato de saída para um dos formatos de compactação em bloco. Na


página Propriedades de Configuração>Pipeline de Conteúdo de Imagem>Geral,
defina a propriedade Compactar como Compactação BC3_UNORM
(/compress:BC3_UNORM). Você pode escolher qualquer um dos outros formatos
BC1, BC2 ou BC3, dependendo dos seus requisitos. O Direct2D não dá suporte a
texturas BC4, BC5, BC6 ou BC7 no momento. Para obter mais informações sobre os
diferentes formatos BC, confira Compactação em bloco (Direct3D 10).

7 Observação

O formato de compactação especificado determina o formato do arquivo que


é produzido pelo Pipeline de conteúdo de imagem. Isso é diferente da
propriedade Format da imagem de origem no Editor de imagens, que
determina o formato do arquivo de imagens de origem quando armazenados
em disco, ou seja, o formato de trabalho. Normalmente, um formato de
trabalho compactado não é o desejado.

4. Configure o Pipeline de conteúdo de imagem para gerar uma saída que usa alfa
pré-multiplicado. Na página Propriedades de Configuração>Pipeline de
Conteúdo de Imagem>Geral, defina a propriedade Converter para formato alfa
pré-multiplicado como Sim (/generatepremultipliedalpha).

5. Configure o pipeline de conteúdo de imagem para não gerar mipmaps. Na página


Propriedades de Configuração>Pipeline de Conteúdo de Imagem>Geral, defina
a propriedade Gerar Mips como Não.

6. Clique no botão OK.

Quando você cria o projeto, o Pipeline de conteúdo de imagem converte a


imagem de origem do formato do trabalho para o formato de saída especificado
(a conversão inclui a geração de alfa pré-multiplicado) e o resultado é copiado
para o diretório de saída do projeto.

Conteúdo relacionado
Visite Trabalhar com texturas e imagens para saber mais sobre como usar o Editor de
Imagens no Visual Studio para criar ou modificar texturas e imagens usadas no
desenvolvimento de aplicativos DirectX.
Trabalhar com modelos 3D
Artigo • 12/01/2024

Você pode usar o Editor de Modelos no Visual Studio para criar modelos 3D. Você pode
usar os modelos no seu jogo ou aplicativo baseado no DirectX.

Modelos 3D
Modelos 3D definem a forma de objetos que existem em uma cena 3D. Modelos podem
ser objetos solitário básicos, objetos complexos que são formados de hierarquias de
objetos básicos ou até mesmo cenas inteiras em 3D. Um objeto 3D é composto de
pontos no espaço 3D (conhecido como vértices), índices que definem os triângulos,
linhas ou outros primitivos são constituídos por esses pontos e atributos que podem ser
aplicadas por vértice ou por primitivo, por exemplo, normais da superfície. Além disso,
algumas informações podem se aplicar em uma base por objeto, por exemplo, o
sombreador e texturas fornecerão ao objeto sua aparência exclusiva.

O Editor de Modelos é a única ferramenta que você precisa para criar modelos 3D,
completo com propriedades de material, texturas e sombreadores de pixel, que você
pode usar em seu jogo ou aplicativo. Se preferir, crie modelos de espaço reservado para
usar na criação de protótipos e em testes antes de envolver artistas para finalizá-los.

Você também pode usar o Editor de Modelos para exibir modelos 3D existentes que
foram criados usando as ferramentas completo e modificá-los se você observar
problemas em ativos de arte.

Tópicos relacionados
ノ Expandir a tabela

Título Descrição

Editor de modelo Descreve como usar o Editor de Modelos para trabalhar com modelos 3D.

Exemplos do Editor Fornece links para tópicos que demonstram como usar o Editor de
de Modelo Modelos para executar tarefas comuns de modelagem 3D.
Editor de modelos
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este documento descreve como trabalhar com o Editor de Modelos do Visual Studio
para exibir, criar e modificar modelos 3D.

Você pode usar o Editor de Modelos para criar modelos 3D do zero ou exibir e
modificar modelos 3D mais complexos que foram criados usando as ferramentas de
modelagem 3D com recursos completos.

Formatos com suporte


O Editor de Modelos é compatível com vários formatos de modelo 3D que são usados
no desenvolvimento de aplicativos DirectX:

Nome do formato Extensão do Operações com suporte (Exibir, Editar, Criar)


arquivo

Arquivo de Intercâmbio .fbx Exibir, Editar, Criar


AutoDesk FBX

Arquivo Collada DAE .dae Exibir, Editar (Modificações em arquivos Collada DAE
são salvas usando o formato FBX.)

OBJ .obj Exibir, Editar (Modificações em arquivos OBJ são salvos


usando o formato FBX.)

Introdução
Esta seção descreve como adicionar um modelo 3D ao seu projeto do Visual Studio C++
e fornece as informações básicas que o ajudarão a começar.

7 Observação

A integração de compilação automática de itens gráficos como cenas 3D (arquivos


.fbx) tem suporte apenas para projetos em C++.

Para adicionar um modelo 3D ao projeto


1. Verifique se você tem o componente necessário do Visual Studio instalado para
trabalhar com gráficos. O componente é chamado de Editores de imagens e
modelos 3D.

Para instalá-lo, abra o Instalador do Visual Studio selecionando


Ferramentas>Obter Ferramentas e Recursos na barra de menus e selecione a guia
Componentes individuais. Selecione o componente Editores de imagem e
modelo 3D na categoria Jogos e Gráficos e selecione Modificar.

O componente inicia a instalação.

2. No Gerenciador de Soluções, abra o menu de atalho do projeto C++ ao qual você


deseja adicionar a imagem e selecione Adicionar>Novo Item.

3. Na caixa de diálogo Adicionar Novo Item, na categoria Elementos Gráficos,


selecione Cena 3D (.fbx).
7 Observação

Se a categoria Elementos Gráficos não aparece na caixa de diálogo Adicionar


Novo Item e você tem o componente Editores de imagens e modelos 3D
instalado, não há suporte para os itens de gráficos desse tipo de projeto.

4. Insira o Nome do arquivo de modelo e, em seguida, selecione Adicionar.

Orientação do eixo
O Visual Studio é compatível com todas as orientações do eixo 3D e carrega as
informações da orientação do eixo dos formatos do arquivo de modelo compatíveis
com ele. Se nenhuma orientação de eixo for especificada, o Visual Studio usará o
sistema de coordenadas da direita por padrão. O indicador de eixo mostra a orientação
atual do eixo no canto inferior direito da superfície de design. No indicador de eixo,
vermelho representa o eixo x, verde representa o eixo y e azul representa o eixo z.

Começar seu modelo 3D


No Editor de Modelos, cada novo objeto sempre começa como uma das formas 3D
básicas (ou primitivas) que são criadas no Editor de Modelos. Para criar objetos novos e
exclusivos, você adiciona um primitivo à cena e altera sua forma modificando seus
vértices. Para formas complexas, você inclui vértices adicionais usando extrusão ou
subdivisão e as modifica. Para obter informações sobre como adicionar um objeto
primitivo à cena, confira Criar e importar objetos 3D. Para obter informações sobre
como adicionar mais vértices a um objeto, confira Modificar objetos.

Trabalhar com o Editor de Modelos


As seções a seguir descrevem como usar o Editor de Modelos para trabalhar com
modelos 3D.

Barras de ferramentas do Editor de Modelos


As barras de ferramentas do Editor de Modelos contêm comandos que ajudam a
trabalhar com modelos 3D.

Os comandos que afetam o estado do Editor de Modelos estão localizados na barra de


ferramentas Modo do Editor de Modelos na janela principal do Visual Studio. As
ferramentas de modelagem e os comandos em script estão localizados na barra de
ferramentas Editor de Modelos na superfície de design do Editor de Modelos.

Esta é a barra de ferramentas Modo do Editor de Modelos:

Esta tabela descreve os itens na barra de ferramentas Modo do Editor de Modelos, que
são listados na ordem em que aparecem, da esquerda para a direita.

Item da barra Descrição


de ferramentas

Selecionar Permite a seleção de pontos, bordas, faces ou objetos na cena, dependendo


do modo de seleção ativo.

Panorâmica Habilita a movimentação de uma cena 3D em relação ao quadro da janela.


Para obter uma panorâmica, selecione um ponto na cena e movimente-o ao
redor.

No modo Selecionar, pressione e segure a tecla Ctrl para ativar o modo


Panorâmica temporariamente.

Zoom Permite a exibição de mais ou menos detalhes da cena em relação ao quadro


da janela. No modo Zoom, selecione um ponto na cena e mova-o para a
direita ou para baixo para ampliar ou para a esquerda ou para cima para
reduzir.

No modo Selecionar, amplie ou reduza a cena usando a botão de rolagem do


mouse enquanto pressiona e segura a tecla Ctrl.
Item da barra Descrição
de ferramentas

Órbita Posiciona a exibição em um caminho circular em volta do objeto selecionado.


Se nenhum objeto for selecionado, o caminho será centralizado na origem da
cena. Observação: esse modo não terá efeito quando a projeção Ortográfica
estiver habilitada.

Local do Quando esse item é habilitado, as transformações no objeto selecionado


mundo ocorrem no espaço do mundo. Caso contrário, as transformações no objeto
selecionado ocorrem no espaço local.

Modo Quando esse item está habilitado, as transformações afetam a localização e a


Dinâmico orientação do ponto dinâmico do objeto selecionado (o ponto dinâmico define
o centro de operações de tradução, dimensionamento e rotação).) Caso
contrário, as transformações afetam o local e a orientação da geometria do
objeto, em relação ao ponto dinâmico.

Bloquear eixo X Restringe a manipulação de objetos ao eixo x. Aplica-se apenas quando você
usa a parte central do widget do manipulador.

Bloquear eixo Y Restringe a manipulação de objetos ao eixo y. Aplica-se apenas quando você
usa a parte central do widget do manipulador.

Bloquear eixo Z Restringe a manipulação de objetos ao eixo z. Aplica-se apenas quando você
usa a parte central do widget do manipulador.

Objeto de Enquadra o objeto selecionado para que ele se localize no centro da exibição.
Quadro

Exibir Define a orientação da exibição. Veja as orientações disponíveis:

Front
Posiciona a exibição na frente da cena.

Voltar
Posiciona a exibição atrás da cena.

Left
Posiciona a exibição à esquerda da cena.

Right
Posiciona a exibição à direita da cena.

Top
Posiciona a exibição acima da cena.

Menor
Posiciona a exibição abaixo da cena. Observação: essa é a única maneira de
alterar a direção da exibição quando a projeção Ortográfica estiver habilitada.
Item da barra Descrição
de ferramentas

Projeção Define o tipo de projeção que é usado para desenhar a cena. Veja as projeções
disponíveis:

Perspectiva
Na projeção de perspectiva, os objetos que estão mais longe do ponto de vista
parecem menores em tamanho e, por fim, convergem para um ponto distante.

Ortográfica
Na projeção Ortográfica, os objetos parecem ser do mesmo tamanho,
independentemente da sua distância do ponto de vista. Nenhuma
convergência é exibida. Quando a projeção Ortográfica estiver habilitada, não
é possível usar o modo Órbita para posicionar a exibição.

Estilo de Define como os objetos da cena são renderizados. Veja os estilos disponíveis:
Desenho
Esboço
Quando habilitado, os objetos são renderizados como delineados.

Exceder
Quando habilitado, os objetos são renderizados usando combinação aditiva.
Você pode usar esse item para visualizar o excedente que existe no cenário.

Sombra Simples
Quando habilitado, os objetos são renderizados usando um modelo de
iluminação básico de sombra simples. Você pode usar esse item para ver as
faces de um objeto com mais facilidade.

Se nenhuma dessas opções for habilitada, cada objeto será renderizado


usando o material que é aplicado a ele.

Modo de Quando a renderização em tempo real for habilitada, o Visual Studio


Renderização redesenhará a superfície de design, mesmo quando nenhuma ação de usuário
em Tempo Real for executada. Esse modo é útil quando você trabalha com sombreadores que
se alteram ao longo do tempo.

Ativar/Desativar Quando esse item é habilitado, uma grade é exibida. Caso contrário, a grade
Grade não é exibida.

Caixa de De modo alternado, mostra ou oculta a Caixa de Ferramentas.


Ferramentas

Estrutura de De modo alternado, mostra ou oculta a janela Estrutura de Tópicos de


Tópicos do Documentos.
Documento

Propriedades De modo alternado, mostra ou oculta a janela Propriedades.

Avançado Contém comandos e opções avançados.


Item da barra Descrição
de ferramentas

Mecanismos Gráficos

Renderizar com o D3D11


Usa o Direct3D 11 para renderizar a superfície de design do Editor de Modelos.

Renderizar com o D3D11WARP


Usa o Direct3D 11 Windows Advanced Rasterization Platform (WARP) para
renderizar a superfície de design do Editor de Modelos.

Gerenciamento de Cena

Importaçãoação
Importa objetos de outro arquivo de modelo 3D para a cena atual.

Anexar ao Pai
Estabelece o primeiro de vários objetos selecionados como o pai dos objetos
selecionados restantes.

Desanexar do Pai
Desanexa o objeto selecionado de seu pai. O objeto selecionado torna-se um
objeto raiz na cena. Um objeto raiz não tem um objeto pai.

Criar Grupo
Agrupa os objetos selecionados como objetos irmãos.

Mesclar Objetos
Combina os objetos selecionados em um objeto.

Criar Novo Objeto da Seleção de Polígono


Remove as faces selecionadas do objeto atual e adiciona à cena um novo
objeto que contenha essas faces.

Ferramentas

Inverter Enrolamento do Polígono


Inverte os polígonos selecionados para que a ordem de rolagem e a superfície
normal sejam invertidas.

Remover Toda Animação


Remove os dados de animação dos objetos.

Triangular
Converte o objeto selecionado em triângulos.

Exibir
Item da barra Descrição
de ferramentas

Seleção de Face Traseira


Habilita ou desabilita a seleção de face traseira.

Taxa de Quadros
Exibe a taxa de quadros no canto superior direito da superfície de design. A
taxa de quadros é o número de quadros desenhados por segundo.

Essa opção é útil quando você habilita a opção Modo de Renderização em


Tempo Real.

Mostrar Tudo
Mostra todos os objetos na cena. Isso redefine a propriedade Oculto de cada
objeto para Falso.

Mostrar Normais da Face


Mostra o normal de cada face.

Mostrar Materiais Ausentes


Exibe uma textura especial em objetos que não têm um material atribuído a
eles.

Mostrar Ponto Dinâmico


Habilita ou desabilita a exibição de um marcador de eixo 3D no ponto de
dinâmico da seleção ativa.

Mostrar Nós de Espaço Reservado


Mostra nós de espaço reservado. Um nó de espaço reservado é criado quando
você agrupa objetos.

Mostrar Normais de Vértice


Mostra o normal de cada vértice. Dica: você pode escolher o botão Scripts
para executar novamente o último script.

Veja a barra de ferramentas Editor de Modelos:


A tabela a seguir descreve os itens da barra de ferramentas Editor de Modelos, que são
listados na ordem em que aparecem, de cima para baixo.

Item da Descrição
barra de
ferramentas

Translate Move a seleção.

Escala Altera o tamanho da seleção.

Girar Gira a seleção.

Selecionar Define o Modo de seleção para selecionar pontos individuais em um objeto.


Ponto

Selecionar Define o Modo de seleção para selecionar uma borda (uma linha entre dois
Borda vértices) em um objeto.

Selecionar Define o Modo de seleção para selecionar uma face em um objeto.


Face

Selecionar Define o Modo de seleção para selecionar um objeto inteiro.


Objeto

Extrusão Cria uma face adicional e a conecta à face selecionada.

Subdividir Divide cada face selecionada em várias faces. Para criar novas faces, novos vértices
são adicionados – um no centro da face original e um entre cada borda – e unidos
aos vértices originais. O número de faces adicionadas é igual ao número de
bordas na face original.

Controlar o modo de exibição


A cena 3D é renderizada de acordo com o modo de exibição, que pode ser considerada
como uma câmera virtual com uma posição e orientação. Para alterar a posição e
orientação, use os controles de exibição na barra de ferramentas Modo do Editor de
Modelos.

A tabela a seguir descreve os principais controles de exibição.

Controle Descrição
de exibição
Controle Descrição
de exibição

Panorâmica Habilita a movimentação de uma cena 3D em relação ao quadro da janela. Para


obter uma panorâmica, selecione um ponto na cena e movimente-o ao redor.

No modo Selecionar, pressione e segure a tecla Ctrl para ativar o modo


Panorâmica temporariamente.

Zoom Permite a exibição de mais ou menos detalhes da cena em relação ao quadro da


janela. No modo Zoom, selecione um ponto na cena e mova-o para a direita ou
para baixo para ampliar ou para a esquerda ou para cima para reduzir.

No modo Selecionar, amplie ou reduza a cena usando a botão de rolagem do


mouse enquanto pressiona e segura a tecla Ctrl.

Órbita Posiciona a exibição em um caminho circular em volta do objeto selecionado. Se


nenhum objeto for selecionado, o caminho será centralizado na origem da cena.
Observação: esse modo não terá efeito quando a projeção Ortográfica estiver
habilitada.

Objeto de Enquadra o objeto selecionado para que ele se localize no centro da exibição.
Quadro

A exibição é estabelecida pela câmera virtual, mas também é definida por uma projeção.
A projeção define como as formas e os objetos, no modo de exibição, são convertidos
em pixels na superfície de design. Na barra de ferramentas Editor de Modelos, escolha
a projeção Perspectiva ou Ortográfica.

Projeção Descrição

Perspectiva Na projeção de perspectiva, os objetos que estão mais longe do ponto de vista
parecem menores em tamanho e, por fim, convergem para um ponto distante.

Ortográfica Na projeção Ortográfica, os objetos parecem ser do mesmo tamanho,


independentemente da sua distância do ponto de vista. Nenhuma convergência é
exibida. Quando a projeção Ortográfica é habilitada, não é possível usar o modo
Órbita para posicionar arbitrariamente a exibição.

Talvez seja útil exibir uma cena 3D de uma posição e um ângulo conhecidos, por
exemplo, quando você desejar comparar duas cenas semelhantes. Para esse cenário, o
Editor de Modelos fornece várias exibições predefinidas. Para usar um modo de exibição
predefinido, na barra de ferramentas Modo do Editor de Modelos, escolha Exibir e
escolha a exibição predefinida que deseja: frontal, posterior, esquerda, direita, superior
ou inferior. Nesses modos de exibição, a câmera virtual foca diretamente a origem da
cena. Por exemplo, se você optar pela Parte Superior do Modo de Exibição, a câmera
virtual foca a origem da cena diretamente da parte de cima.
Exibir detalhes adicionais de geometria
Para entender melhor um objeto ou cena 3D, você pode exibir detalhes adicionais de
geometria, como normais por vértice, normais por face, os pontos dinâmico da seleção
ativa e outros detalhes. Para habilitá-los ou desabilitá-los, na barra de ferramentas do
Editor de Modelo, escolha Scripts>Exibir e, em seguida, escolha o modo desejado.

Criar e importar objetos 3D


Para adicionar uma forma 3D predefinida à cena, na Caixa de Ferramentas, selecione a
forma desejada e mova-a para a superfície de design. As novas formas são posicionadas
na origem da cena. O Editor de Modelos fornece sete formas: Cone, Cubo, Cilindro,
Disco, Plano, Esfera e Bule.

Para importar um objeto 3D de um arquivo, na barra de ferramentas do Editor de


Modelo, escolha Avançado>Gerenciamento de Cena>Importar> > e, em seguida,
especifique o arquivo que deseja importar.

Objetos Transform
Você pode transformar um objeto alterando suas propriedades de Rotação, Escala e
Translação. Rotação orienta um objeto aplicando rotações sucessivas ao redor dos eixos
x, y e z definidos pelo seu ponto dinâmico. Cada especificação de rotação tem três
componentes (x, y e z, nessa ordem) e os componentes são especificados em graus.
Dimensionamento redimensiona um objeto expandindo-a por um fator especificado ao
longo de um ou mais eixos centrados no seu ponto dinâmico. Translação localiza um
objeto no espaço tridimensional em relação a seu pai e não ao ponto dinâmico.

Você pode transformar um objeto usando ferramentas de modelagem ou definindo


propriedades.

Transformar um objeto usando ferramentas de modelagem


1. No modo Selecionar, selecione o objeto que deseja transformar. Uma
sobreposição delineada indica que o objeto está selecionado.

2. Na barra de ferramentas Editor de Modelos, escolha a ferramenta Mover,


Dimensionar ou Girar. Uma manipulador de translação, dimensionamento ou
rotação é exibido para o objeto selecionado.

3. Use o manipulador para executar a transformação. Para transformações de


translação e dimensionamento, o manipulador é um indicador de eixo. Você pode
alterar um eixo por vez ou alterar todos os eixos ao mesmo tempo usando o cubo
branco no centro do indicador. Para rotação, o manipulador é uma esfera feita de
círculos codificados por cores que correspondem ao eixo x (vermelho), eixo y
(verde) e o eixo z (azul). Você precisa alterar cada eixo individualmente para criar a
rotação desejada.

Transformar um objeto definindo suas propriedades


1. No modo Selecionar, selecione o objeto que deseja transformar. Uma
sobreposição delineada indica que o objeto está selecionado.

2. Na janela Propriedades, especifique os valores para as propriedades Rotação,


Escala e Translação.

) Importante

Para a propriedade Rotação, especifique o grau de rotação ao redor de cada


um dos três eixos. As rotações são aplicadas em ordem, portanto, planeje
uma rotação, primeiro em termos de rotação do eixo x, depois do eixo y e, em
seguida, do eixo z.

Usando as ferramentas de modelagem, você pode criar transformações rapidamente,


mas não com precisão. Ao definir as propriedades do objeto, você pode especificar
transformações de forma precisa, mas não rápida. É recomendável usar as ferramentas
de modelagem para ficar "próximo o suficiente" das transformações que deseja e, em
seguida, ajustar os valores de propriedade.

Se não desejar usar manipuladores, você poderá habilitar o modo de forma livre. Na
barra de ferramentas do Editor de Modelo, escolha Scripts>Ferramentas>Manipulação
de forma livre para habilitar (ou desabilitar) o modo de forma livre. No modo de forma
livre, é possível iniciar uma manipulação em qualquer ponto na superfície de design, em
vez de em um ponto no manipulador. No modo de forma livre, você pode restringir as
alterações a determinados eixos, bloqueando aqueles que não deseja alterar. Na barra
de ferramentas Modo do Editor de Modelos, escolha qualquer combinação dos botões
Bloquear X, Bloquear Y e Bloquear Z.

Você pode achar útil trabalhar com objetos usando o recurso ajustar à grade. Na barra
de ferramentas Modo do Editor de Modelos, escolha Encaixar para habilitar (ou
desabilitar) o recurso de ajustar à grade. Quando esse recurso é habilitado, as
transformações de translação, rotação e dimensionamento são restringidas a
incrementos predefinidos.
Trabalhar com o ponto dinâmico
O ponto dinâmico de um objeto define seu centro de rotação e dimensionamento. É
possível alterar o ponto dinâmico de um objeto par alterar como ele é afetado pelas
transformações de rotação e dimensionamento. Na barra de ferramentas Modo do
Editor de Modelos, escolha Modo Dinâmico para habilitar (ou desabilitar) o modo
dinâmico. Quando o modo dinâmico é habilitado, um pequeno indicador de eixo
aparece no ponto dinâmico do objeto selecionado. Você pode usar as ferramentas
Translação e Rotação para manipular o ponto dinâmico.

Para obter uma demonstração que apresenta o uso do ponto dinâmico, confira Como
modificar o ponto dinâmico de um modelo 3D.

Modos local e mundial


A translação e a rotação podem ocorrer no sistema de coordenada local (ou quadro de
referência local) do objeto ou no sistema de coordenada mundial (ou quatro de
referência mundial). O quadro de referência mundial é independente da rotação do
objeto. O modo local é o padrão. Para habilitar (ou desabilitar) o modo mundial, na
barra de ferramentas Modo do Editor de Modelos, escolha o botão WorldLocal.

Modificar objetos
É possível alterar a forma de um objeto 3D movendo ou excluindo seus vértices, bordas
e faces. Por padrão, o Editor de modelos está no modo de objeto, para que você possa
selecionar e transformar objetos inteiros. Para selecionar os pontos, as bordas ou as
faces, escolha o modo de seleção adequado. Na barra de ferramentas Modo do Editor
de Modelos, escolha Modos de seleção e, em seguida, escolha o modo desejado.

É possível criar vértices adicionais por extrusão ou por subdivisão. A extrusão duplica os
vértices de uma face (um conjunto coplanar de vértices), que permanece conectada
pelos vértices duplicados. A subdivisão adiciona vértices para criar várias faces onde
anteriormente havia uma. Para criar novas faces, novos vértices são adicionados – um no
centro da face original e um entre cada borda – e unidos aos vértices originais. O
número de faces adicionadas é igual ao número de bordas na face original. Em ambos
os casos, você pode transladar, girar e dimensionar os novos vértices para alterar a
geometria do objeto.

Para extrudar uma face de um objeto


1. No modo de seleção de face, selecione aquela que deseja extrudar.
2. Na barra de ferramentas do Editor de Modelo, escolha
Scripts>Ferramentas>Extrudar.

Para subdividir faces

1. No modo de seleção de face, selecione aquelas que deseja subdividir. Como a


subdivisão cria novos dados de borda, subdividir todas as faces de uma vez
proporciona resultados mais consistentes quando as faces são adjacentes.

2. Na barra de ferramentas do Editor de Modelo, escolha


Scripts>Ferramentas>Subdividir.

Você também pode triangular faces, mesclar objetos e converter as seleções de


polígonos em novos objetos. A triangulação cria bordas adicionais para que uma face
não triangular seja convertida em um número ideal de triângulos; no entanto, ela não
fornece detalhes adicionais geométricos. A mescla combina objetos selecionados em
um único objeto. Novos objetos podem ser criados de uma seleção de polígono.

Triangular uma face


1. No modo de seleção de face, selecione a face que deseja triangular.

2. Na barra de ferramentas do Editor de Modelo, escolha


Scripts>Ferramentas>Triangular.

Mesclar objetos
1. No modo de seleção de objeto, selecione os objetos que deseja mesclar.

2. Na barra de ferramentas do Editor de Modelo, escolha


Scripts>Ferramentas>Mesclar Objetos.

Criar um objeto a partir de uma seleção de polígono

1. No modo de seleção de face, selecione as faces das quais deseja criar um novo
objeto.

2. Na barra de ferramentas do Editor de Modelo, escolha Scripts>Ferramentas>Criar


Objeto com Base na Seleção de Polígono.

Trabalhar com materiais e sombreadores


A aparência de um objeto é determinada pela interação da iluminação na cena e do
material do objeto. Os materiais são definidos pelas propriedades que descrevem como
a superfície reage a diferentes tipos de luz e por um programa sombreador que calcula
a cor final de cada pixel na superfície do objeto com base na informação de iluminação,
mapas de textura, mapas normais e outros dados.

O Editor de Modelos fornece os seguintes materiais padrão:

Material Descrição

Apagado Renderiza uma superfície sem nenhuma iluminação simulada.

Lambert Renderiza uma superfície com luz ambiente simulada e iluminação difusa.

Phong Renderiza uma superfície com luz ambiente simulada, iluminação difusa e realces
especulares.

Cada um desses materiais aplica uma textura na superfície de um objeto. Você pode
definir uma textura diferente para cada objeto que usa o material.

Para modificar como um objeto específico reage a diferentes fontes de luz na cena, você
pode alterar as propriedades de iluminação do material independentemente dos outros
objetos que usam o material. Esta tabela descreve as propriedades comuns de
iluminação:

Propriedade de Descrição
iluminação

Ambiente Descreve como a superfície é afetada pela iluminação ambiente.

Difusa Descreve como a superfície é afetada por luzes direcionais e pontuais.

Emissiva Descreve como a superfície emite luz, independentemente de outra


iluminação.

Especular Descreve como a superfície reflete as luzes direcionais e pontuais.

Energia Especular Descreve a largura e a intensidade de realces especulares.

Dependendo do que um material suporte, você pode alterar as respectivas


propriedades de iluminação, as texturas e outros dados. No modo Selecionar, selecione
o objeto cujo material você deseja alterar e, na janela Propriedades, altere
MaterialAmbient, MaterialDiffuse, MaterialEmissive, MaterialSpecular,
MaterialSpecularPower ou outra propriedade disponível. Um material pode expor até
oito texturas, cujas propriedades são chamadas sequencialmente de Texture1 a
Texture8.
Para remover todos os materiais de um objeto, na barra de ferramentas do Editor de
Modelo, escolha Scripts>Materiais>Remover Materiais.

Você pode usar o Designer de Sombreador para criar materiais sombreadores


personalizados que possam ser aplicados a objetos na cena 3D. Para obter informações
sobre como criar materiais sombreadores personalizados, consulte Designer de
Sombreador. Para obter informações sobre como aplicar um material sombreador
personalizado a um objeto, confira Como aplicar um sombreador a um modelo 3D.

Gerenciamento de cena
Você pode gerenciar cenas como uma hierarquia de objetos. Quando vários objetos são
organizados em uma hierarquia, qualquer translação, dimensionamento ou rotação de
um nó pai também afeta seus filhos. Isso é útil quando você deseja construir cenas ou
objetos complexos de objetos mais básicos.

Você pode usar a janela Estrutura de Tópicos de Documentos para exibir a hierarquia
da cena e selecionar os nós da cena. Ao selecionar um nó na estrutura de tópicos, você
pode usar a janela Propriedades para alterar suas propriedades.

Você pode construir uma hierarquia de objetos tornando um deles o pai dos outros ou
agrupando-os como irmãos em um nó de espaço reservado que atua como o pai.

Criar uma hierarquia que tem um objeto pai

1. No modo Selecionar, selecione dois ou mais objetos. O primeiro que você


selecionar será o objeto pai.

2. Na barra de ferramentas do Editor de Modelo, escolha Scripts>Gerenciamento de


Cena>Anexar ao Pai.

Criar uma hierarquia de objetos irmãos

1. No modo Selecionar, selecione dois ou mais objetos. Um objeto de espaço


reservado é criado e se torna seu objeto pai.

2. Na barra de ferramentas do Editor de Modelo, escolha Scripts>Gerenciamento de


Cena>Criar Grupo.

O Editor de Modelos usa um delineado branco para identificar o primeiro objeto


selecionado, que se torna o pai. Outros objetos na seleção têm um delineado azul. Por
padrão, os nós de espaço reservado não são exibidos. Para exibir os nós de espaço
reservado, na barra de ferramentas do Editor de Modelo, escolha
Scripts>Gerenciamento de Cena>Mostrar Nós de Espaço Reservado. Você pode
trabalhar com nós de espaço reservado da mesma forma que trabalha com objetos que
não são de espaço reservado.

Para remover a associação pai/filho entre dois objetos, selecione o objeto filho e, em
seguida, na barra de ferramentas do Editor de Modelo, escolha Scripts>Gerenciamento
da Cena>Desanexar do Pai. Quando você desanexa o pai de um objeto filho, o objeto
filho se torna um objeto raiz na cena.

Atalhos do teclado
Comando Atalhos do teclado

Mudar para o modo Selecionar Ctrl+G, Ctrl+Q

Mudar para o modo Zoom Ctrl+G, Ctrl+Z

Mudar para o modo Panorâmico Ctrl+G, Ctrl+P

Selecionar tudo Ctrl+A

Excluir a seleção atual Excluir

Cancelar a seleção atual Escape (Esc)

Ampliar Botão de rolagem do mouse para frente

Ctrl+Botão de rolagem do mouse para


frente

Shift+Botão de rolagem do mouse para


frente

Ctrl+PageUp

Sinal de adição (+)


Comando Atalhos do teclado

Reduzir Botão de rolagem do mouse para trás

Ctrl+Botão de rolagem do mouse para


trás

Shift+Botão de rolagem do mouse para


trás

Ctrl+PageDown

Sinal de subtração (-)

Panorâmica da câmera para cima PageDown

Panorâmica da câmera para baixo PageUp

Panorâmica da câmera para a esquerda Botão de rolagem do mouse para a


esquerda

Ctrl+PageDown

Panorâmica da câmera para a direita Botão de rolagem do mouse para a


direita

Ctrl+PageDown

Exibir parte superior de modelo Ctrl+L, Ctrl+T

Exibir parte inferior do modelo Ctrl+L, Ctrl+U

Exibir lado esquerdo do modelo Ctrl+L, Ctrl+L

Exibir lado direito do modelo Ctrl+L, Ctrl+R

Exibir a parte da frente do modelo Ctrl+L, Ctrl+F

Exibir a parte de trás do modelo Ctrl+L, Ctrl+B

Enquadrar objeto na janela F

Ativar/desativar modo delineado Ctrl+L, Ctrl+W

Ativar/desativar Ajustar à grade Ctrl+G, Ctrl+N

Ativar/desativar modo dinâmico Ctrl+G, Ctrl+V

Ativar/desativar restrição do eixo x Ctrl+L, Ctrl+X


Comando Atalhos do teclado

Ativar/desativar restrição do eixo y Ctrl+L, Ctrl+Y

Ativar/desativar restrição do eixo z Ctrl+L, Ctrl+Z

Alternar para modo de translação Ctrl+G, Ctrl+W

Alternar para modo de dimensionamento Ctrl+G, Ctrl+E

Alternar para modo de rotação Ctrl+G, Ctrl+R

Alterar para modo de seleção de ponto Ctrl+L, Ctrl+1

Alternar para modo de seleção de borda Ctrl+L, Ctrl+2

Alternar para modo de seleção de face Ctrl+L, Ctrl+3

Alternar para modo de seleção de objeto Ctrl+L, Ctrl+4

Alternar para modo de órbita (câmera) Ctrl+G, Ctrl+O

Selecionar próximo objeto na cena Guia

Selecionar objeto anterior na cena Shift+Tab

Manipular o objeto selecionado com base na As teclas de direção


ferramenta atual.

Desativar o manipulador atual Q

Girar câmera Alt+Arrastar com o botão esquerdo do


mouse

Tópicos relacionados
Título Descrição

Trabalhando com Fornece uma visão geral das ferramentas do Visual Studio que você pode
ativos 3D para usar para trabalhar com recursos gráficos, como texturas e imagens,
jogos e aplicativos modelos 3D e efeitos de sombreamento.

Editor de Imagens Descreve como usar o Editor de Imagens do Visual Studio para trabalhar
com texturas e imagens.
Título Descrição

Designer de Descreve como usar o Designer de Sombreador do Visual Studio para


Sombreador trabalhar com sombreadores.
Criar um modelo 3D básico
Artigo • 12/01/2024

Este artigo demonstra como usar o Editor de Modelo para criar um modelo 3D básico.
As seguintes atividades são abordadas:

Adicionar objetos a uma cena

Selecionar faces e bordas

Converter seleções

Uso das ferramentas Subdivide a face e Extrudar face

Uso do comando Triangular

Criar um modelo 3D básico


Você pode usar o Editor de Modelo para criar e modificar modelos e cenas 3D para seu
jogo ou aplicativo. As etapas a seguir mostram como usar o Editor de Modelos para
criar um modelo 3D simplificado de uma casa. Um modelo simplificado pode ser usado
como um substituto para ativos de arte final que ainda estão sendo criados, como uma
malha para detecção de colisão ou como um modelo de nível baixo de detalhes a ser
usado quando o objeto que ele representa está muito longe tirar proveito de uma
renderização mais detalhada.

Ao terminar, o modelo deve ter esta aparência:


Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão
sendo exibidas.

Para criar um modelo 3D simplificado de uma casa


1. Crie um modelo 3D com o qual trabalhar. Para obter informações sobre como
adicionar um modelo ao seu projeto, consulte a seção de Introdução em Editor de
Modelo.

2. Adicione um cubo para a cena. Na janela Caixa de Ferramentas, em Formas,


selecione Cubo e mova-o para a superfície de design.

3. Mude para seleção de face. Na barra de ferramentas do Editor de Modelo, escolha


Selecionar Face.

4. Subdivida a parte superior do cubo. No modo de seleção de face, escolha o cubo


uma vez para ativá-lo para a seleção e, em seguida, escolha a parte superior do
cubo para selecionar a face superior. Na barra de ferramentas do Editor de
Modelo, escolha Subdivide a face. Isso adiciona novos vértices na parte superior
do cubo que o dividem em quatro partições de tamanhos iguais.
5. Faça a extrusão de dois lados adjacentes do cubo, por exemplo, a frente e o lado
direito do cubo. No modo de seleção de face, escolha uma vez o cubo para ativá-
lo para a seleção e, em seguida, escolha um lado do cubo. Pressione e segure a
tecla Ctrl, escolha outro lado do cubo que seja adjacente ao lado que foi
selecionado primeiro e na barra de ferramentas do Editor de Modelo, clique em
Extrudar face.

6. Estenda uma das extrusões. Escolha uma as faces que você acabou de extrudar e,
na barra de ferramentas do Editor de Modelo, escolha a ferramenta Mover e mova
o manipulador de movimento na mesma direção da extrusão.
7. Triangular o modelo. Na barra de ferramentas do Editor de Modelo, escolha
Avançado>Ferramentas>Triangular.

8. Crie o teto da casa. Mude para o modo de seleção de borda escolhendo


Selecionar Borda na barra de ferramentas do Editor de Modelo e, em seguida,
escolha o cubo para ativá-lo. Pressione e segure a tecla Ctrl enquanto você
seleciona as bordas que são mostradas aqui:

Com as bordas selecionadas, na barra de ferramentas do Editor de Modelo,


escolha a ferramenta Mover e, em seguida, mova o manipulador de movimento
para cima a fim de criar o telhado da casa.
O modelo de casa simplificada está concluído. Aqui está o modelo final
novamente, com sombreamento simples aplicado:

Como uma próxima etapa, você pode aplicar um sombreador a esse modelo 3D.
Para obter informações, confira Como aplicar um sombreador a um modelo 3D.

Conteúdo relacionado
Como modelar um terreno 3D
Editor de modelos
Designer de sombreador
Modificar o ponto dinâmico de um
modelo 3D
Artigo • 12/01/2024

Este artigo demonstra como usar o Editor de Modelo para modificar o ponto dinâmico
de um modelo 3D. O ponto dinâmico é o ponto no espaço que define o centro
matemático do objeto para rotação e colocação em escala.

Modificar o ponto dinâmico de um modelo 3D


Você pode redefinir a origem de um modelo 3D ao modificar seu ponto dinâmico.

Verifique se a janela Propriedades e a Caixa de Ferramentas estão sendo exibidas.

1. Comece com um modelo 3D existente, como aquele descrito em Como criar um


modelo 3D básico.

2. Entre no modo dinâmico. Na barra de ferramentas do Modo do Editor de Modelo,


escolha o Modo Dinâmico para ativar o modo dinâmico. Será exibida uma caixa ao
redor do botão Modo Dinâmico para indicar que o Editor de Modelo agora está
em modo dinâmico. No modo dinâmico, operações como a movimentação afetam
o ponto dinâmico do objeto em vez da estrutura do objeto no espaço de mundo.

3. Modificar o ponto dinâmico do objeto. No modo de Seleção, selecione o objeto e,


em seguida, na barra de ferramentas do Visualizador de Modelo, escolha a
ferramenta Mover. Uma caixa, que representa o ponto dinâmico, aparece na
superfície de design. Mova a caixa para modificar o ponto dinâmico do objeto.

Ao mover a caixa, você pode mover o ponto dinâmico em todas as três dimensões.
Para mover o ponto dinâmico em um eixo, mova a seta que corresponde ao eixo.
A caixa e as setas alteram para uma cor amarela para indicar o eixo que é afetado
pela translação.

Você também pode especificar o ponto dinâmico usando a propriedade


Translação do Pivô na janela Propriedades.

 Dica

Você pode exibir o efeito do novo ponto dinâmico, girando o objeto. Para
girá-lo, use a ferramenta Girar ou modifique a propriedade Rotação.
Aqui está um modelo que tem um ponto dinâmico modificado:

Conteúdo relacionado
Como criar um modelo 3D básico
Editor de modelos
Modelar um terreno 3D
Artigo • 12/01/2024

Este artigo demonstra como usar o Editor de Modelo para criar um modelo de terreno
3D.

Criar um modelo de terreno 3D


Você pode criar um terreno 3D subdividindo um plano para fazer faces adicionais e, em
seguida, manipular seus vértices para criar características de terreno interessantes.

Ao terminar, o modelo deve ter esta aparência:

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um modelo 3D com o qual trabalhar. Para obter informações sobre como
adicionar um modelo ao projeto, confira a seção Introdução em Editor de modelo.

2. Adicione um plano para a cena. Na Caixa de Ferramentas, em Formas, selecione


Plano e mova-o para a superfície de design.

 Dica

Para facilitar o trabalho com o objeto de plano, você pode enquadrá-lo na


superfície de design. No modo de Seleção, selecione o objeto de plano e, em
seguida, na barra de ferramentas do Editor de Modelo, escolha o botão
Enquadrar Objeto.

3. Entre no modo de seleção de face. Na barra de ferramentas do Editor de Modelo,


escolha Selecionar Face.

4. Subdivida o plano. No modo de seleção de face, escolha o plano uma vez para
ativá-lo para a seleção e, em seguida, escolha-o novamente para selecionar a sua
única face. Na barra de ferramentas do Editor de Modelo, escolha Subdivide a
face. Isso adiciona novos vértices ao plano dividindo-o em quatro partições de
tamanhos iguais.

5. Crie mais subdivisões. Com as novas faces ainda selecionadas, escolha Subdivide a
face mais duas vezes. Isso cria um total de 64 faces. Ao criar mais subdivisões, você
pode dar mais detalhes ao terreno.

6. Entre no modo de seleção de ponto. Na barra de ferramentas do Editor de


Modelo, escolha Selecionar Ponto.

7. Modifique um ponto para criar um recurso de terreno. No modo de seleção de


ponto, selecione um dos pontos e, em seguida, na barra de ferramentas do Editor
de Modelo, escolha a ferramenta Mover. Uma caixa que representa o ponto
aparece na superfície de design. Use a seta verde para mover a caixa e, assim,
modificar a altura do ponto. Repita essa etapa para diferentes pontos a fim de criar
características interessantes de terreno.

 Dica

Você pode selecionar vários pontos de uma vez para modificá-los de maneira
uniforme.

O modelo de terreno está concluído. Aqui está o modelo final novamente, com
sombreamento Phong aplicado:
Use esse modelo de terreno para demonstrar o efeito do sombreador de gradiente
descrito em Como criar um sombreador de gradiente baseado em geometria.

Conteúdo relacionado
Editor de modelos
Aplicar um sombreador a um modelo
3D
Artigo • 12/01/2024

Este artigo demonstra como usar o Editor de Modelos para aplicar um sombreador
DGSL (Directed Graph Shader Language) a um modelo 3D.

Aplicar um sombreador a um modelo 3D


Você pode aplicar um efeito de sombreador a um modelo 3D para dar a ele uma
aparência interessante.

Antes de começar, verifique se a janela Propriedades está sendo exibida.

1. Comece com uma cena 3D que contém um ou mais modelos. Se você não tiver
uma cena 3D adequada, crie uma conforme a descrição em Como criar um modelo
3D básico. Você também precisa ter um sombreador DGSL que possa ser aplicado
ao modelo. Se você não tiver um sombreador adequado, crie um conforme a
descrição em Como criar um sombreador de cor básico e salve-o em um arquivo
antes de continuar.

2. No modo Selecionar, selecione o modelo ao qual deseja aplicar o sombreador e,


na janela Propriedades, na propriedade Nome do Arquivo do grupo de
propriedades Efeito, especifique o sombreador DGSL que deseja aplicar ao
modelo.

Este é um modelo ao qual o efeito de cor básico foi aplicado:


Depois de aplicar um sombreador a um modelo, você pode abri-lo no Designer de
Sombreador selecionando o modelo e, em seguida, na janela Propriedades, na
propriedade (Avançado) do grupo de propriedades Efeito, escolha o botão de
reticências (... ).

Conteúdo relacionado
Como criar um modelo 3D básico
Como criar um sombreador de cor básico
Editor de modelos
Designer de sombreador
Trabalhar com sombreadores
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar o Designer de Sombreadores baseado em gráfico no Visual Studio para
criar efeitos de sombreamento personalizados. Você pode usar esses sombreadores em
seu jogo ou aplicativo baseado no DirectX.

Sombreadores
A sombreador é um programa de computador que executa cálculos de gráficos — por
exemplo, transformações de vértice ou cor do pixel — e normalmente é executado em
uma unidade de processamento gráfico (GPU) em vez da CPU. Porque a maioria dos
estágios de pipeline gráfica tradicional, função fixa agora são executados por programas
de sombreador, você pode usá-los para criar um pipeline é específico para as
necessidades de seu aplicativo.

Os tipos mais comuns de sombreadores são sombreadores de vértices, que executam


cálculos por vértice e substituir a transformação de função fixa e circuitos de iluminação
no hardware de gráficos não programável, e sombreadores de pixel, que executam
cálculos por pixel que determinam a cor de um pixel e substitua os circuitos de
combinador de cores de função fixa em hardware de gráficos não programáveis. O
hardware de gráficos moderno tornou ainda mais tipos de sombreadores possíveis —
sombreadores convexos, sombreadores de domínio e sombreadores de geometria para
cálculos de gráficos e sombreadores de computação para cálculos não gráficos. Nenhum
desses estágios está disponível no hardware de gráficos não programável.
Sombreadores foram criados usando uma linguagem semelhante ao assembly fornecido
paralela de dados (SIMD) e instruções centrados em gráficos (produto de ponto). Agora,
sombreadores normalmente são criados usando linguagens de alto nível, como C como
HLSL (linguagem de sombreador de alto nível).

Você pode usar o Designer de Sombreadores criar sombreadores de pixel


interativamente em vez de inserir e compilar o código. No Designer de Sombreadores,
um sombreador é definido por um número de nós que representam conexões entre nós
que representam o fluxo de valores de dados e os resultados intermediários por meio
do sombreador e operações e dados. Usando essa abordagem e a visualização em
tempo real no Designer de Sombreadores, você pode visualizar a execução do
sombreador mais facilmente e variações de sombreador interessante por meio de
experimentação "descobrir".
Documentos DGSL
O Designer de Sombreadores salva sombreadores no formato de linguagem de
sombreador gráfico direcionado (DGSL), que é um formato XML que se baseia em
direcionadas gráfico Markup Language (DGML). Você pode aplicar os sombreadores
DGSL diretamente a modelos 3D no Editor de Modelos. No entanto, antes de usar um
sombreador DGSL em seu aplicativo, você deve exportá-lo em um formato que
compreende DirectX — por exemplo, HLSL.

Como DGSL é compatível com DGML, você pode usar ferramentas projetadas para
analisar documentos DGML para analisar seus sombreadores DGSL. Para saber mais
sobre DGML, veja Noções básicas sobre DGML (Directed Graph Markup Language).

Tópicos relacionados
Título Descrição

Designer de Descreve como usar o Designer de Sombreador do Visual Studio para


Sombreador trabalhar com sombreadores.

Nós do Designer de Discute os tipos de nós de Designer de Sombreadores que você pode
Sombreador usar para obter efeitos gráficos.

Exemplos do Designer Fornece links para tópicos que demonstram como usar o Designer do
de Sombreador sombreador para atingir efeitos gráficos comuns.
Designer de Sombreador
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este documento descreve como trabalhar com o Designer de Sombreador do Visual


Studio para criar, modificar e exportar efeitos visuais personalizados conhecidos como
sombreadores.

Você poderá usar o Designer de Sombreador para criar efeitos visuais personalizados
para seu jogo ou aplicativo, mesmo se não souber programação HLSL ou linguagem de
sombreador de alto nível. Para criar um sombreador em Designer de sombreador, você
organiza o layout como um gráfico. Ou seja, você adiciona nós que representam dados
e operações à superfície de design e, em seguida, faz conexões entre eles para definir
como as operações processam os dados. Em cada nó de operação, uma visualização do
efeito até esse ponto é fornecida para que você possa visualizar seu resultado. Os dados
fluem através de nós para um nó final que representa a saída do sombreador.

Formatos com suporte


O Designer de Sombreador dá suporte a esses formatos de sombreador:

Nome do formato Extensão do Operações com suporte (Exibir,


arquivo Editar, Exportar)

Idioma do Sombreador de Gráfico .dgsl Exibir, Editar


Direcionado

Sombreador HLSL (código-fonte) .hlsl Exportação

Sombreador HLSL (código de bytes) .cso Exportação

Cabeçalho C++ (matriz de código de .h Exportação


bytes HLSL)

Introdução
Esta seção descreve como adicionar um sombreador DGSL ao seu projeto do Visual
Studio C++ e fornece informações básicas para ajudá-lo a começar.

7 Observação
A integração de compilação automática de itens gráficos, como gráficos do
sombreador (arquivos .dgsl) tem suporte apenas para projetos em C++.

Para adicionar um sombreador DGSL ao seu projeto


1. Verifique se você tem o componente necessário do Visual Studio instalado para
trabalhar com gráficos. O componente é chamado de Editores de imagens e
modelos 3D.

Para instalá-lo, abra o Instalador do Visual Studio selecionando


Ferramentas>Obter Ferramentas e Recursos na barra de menus e selecione a guia
Componentes individuais. Selecione o componente Editores de imagem e
modelo 3D na categoria Jogos e Gráficos e selecione Modificar.

2. No Gerenciador de Soluções, abra o menu de atalho do projeto do C++ ao qual


deseja adicionar o sombreador e escolha Adicionar>Novo Item.

3. Na caixa de diálogo Adicionar Novo Item, em Instalado, selecione Gráficos e


Visual Shader Graph (.dgsl).

7 Observação

Se a categoria Elementos Gráficos não aparece na caixa de diálogo Adicionar


Novo Item e você tem o componente Editores de imagens e modelos 3D
instalado, não há suporte para os itens de gráficos desse tipo de projeto.
4. Especifique o Nome do arquivo de modelo e a Localização em que deseja que ele
seja criado.

5. Clique no botão Adicionar.

O sombreador padrão
Cada vez que você criar um sombreador DGSL, ele começará como um sombreador
mínimo com apenas um nó de Cor de Ponto conectado ao nó Cor Final. Embora esse
sombreador seja completo e funcional, ele não faz muita coisa. Portanto, a primeira
etapa na criação de um sombreador de trabalho geralmente é excluir o nó Cor de Ponto
ou desconectá-lo do nó Cor Final para liberar espaço para outros nós.

Trabalhar com o Designer de Sombreador


As seções a seguir descrevem como usar o Designer de Sombreador para trabalhar com
sombreadores personalizados.

Barras de ferramentas do Designer de sombreador


As barras de ferramentas do Designer de Sombreador contêm comandos que ajudam a
trabalhar com grafos de sombreador DGSL.

Os comandos que afetam o estado do Designer de Sombreador estão localizados na


barra de ferramentas Modo do Designer de Sombreador na janela principal do Visual
Studio. Ferramentas de design e comandos estão localizados na barra de ferramentas
Designer de Sombreador na superfície de design do Designer de Sombreador.

Aqui está a barra de ferramentas Modo de Designer de Sombreador:

Esta tabela descreve os itens na barra de ferramentas Modo do Designer de


Sombreador, que são listados na ordem em que aparecem, da esquerda para a direita:

Item da Descrição
barra de
ferramentas

Selecionar Habilita a interação com nós e bordas no grafo. Nesse modo você pode
selecionar nós e movê-los ou excluí-los, além de poder estabelecer bordas ou
dividi-las.
Item da Descrição
barra de
ferramentas

Panorâmica Habilita a movimentação de um grafo de sombreador em relação ao quadro de


janela. Para deslocar, selecione um ponto na superfície de design e movimente-o
ao redor.

No modo Selecionar, pressione e segure a tecla Ctrl para ativar o modo


Panorâmica temporariamente.

Zoom Habilita a exibição de mais ou menos detalhes do grafo de sombreador em


relação ao quadro de janela. No modo Zoom, selecione um ponto na superfície
de design e mova-o para a direita ou para baixo para ampliar ou então para a
esquerda ou para cima para reduzir.

No modo Selecionar, pressione e segure a tecla Ctrl para ampliar ou reduzir


usando o botão de rolagem do mouse.

Aplicar Exibe o grafo de sombreador completo no quadro de janela.


Zoom para
Ajustar

Modo de Quando a renderização em tempo real for habilitada, o Visual Studio redesenhará
Renderização a superfície de design, mesmo quando nenhuma ação de usuário for executada.
em Tempo Esse modo é útil quando você trabalha com sombreadores que se alteram ao
Real longo do tempo.

Visualizar Quando habilitado, um modelo de uma esfera é usado para visualizar o


com esfera sombreador. Só é possível habilitar uma forma de visualização por vez.

Visualizar Quando habilitado, um modelo de um cubo é usado para visualizar o


com cubo sombreador. Só é possível habilitar uma forma de visualização por vez.

Visualizar Quando habilitado, um modelo de um cilindro é usado para visualizar o


com cilindro sombreador. Só é possível habilitar uma forma de visualização por vez.

Visualizar Quando habilitado, um modelo de um cone é usado para visualizar o


com cone sombreador. Só é possível habilitar uma forma de visualização por vez.

Visualizar Quando habilitado, um modelo de um bule é usado para visualizar o


com bule sombreador. Só é possível habilitar uma forma de visualização por vez.

Visualizar Quando habilitado, um modelo de um plano é usado para visualizar o


com plano sombreador. Só é possível habilitar uma forma de visualização por vez.

Caixa de De modo alternado, mostra ou oculta a Caixa de Ferramentas.


Ferramentas

Propriedades De modo alternado, mostra ou oculta a janela Propriedades.


Item da Descrição
barra de
ferramentas

Avançado Contém comandos e opções avançados.

Exportar: permite a exportação de um sombreador em vários formatos.

Exportar Como: exporta o sombreador como o código-fonte HLSL ou código de


bytes do sombreador compilado. Para obter mais informações sobre como
exportar sombreadores, confira Como exportar um sombreador.

Mecanismos Gráficos: permite a seleção do renderizador que é usado para exibir


a superfície de design.

Renderizar com D3D11: usa o Direct3D 11 para renderizar a superfície de design


do Designer de Sombreador.

Renderizar com D3D11WARP: usa a WARP (Direct3D 11 Windows Advanced


Rasterization Platform) para renderizar a superfície de design do Designer de
Sombreador.

Exibir: permite a seleção de informações adicionais sobre o Designer de


Sombreador.

Taxa de Quadros: quando habilitada, exibe a taxa de quadros no canto superior


direito da superfície de design. A taxa de quadros é o número de quadros
desenhados por segundo. Essa opção é útil quando você habilita a opção Modo
de Renderização em Tempo Real.

 Dica

Você pode escolher o botão Avançado para executar novamente o último


comando.

Trabalhar com nós e conexões


Use o modo Selecionar para adicionar, remover, reposicionar, conectar e configurar nós.
Eis como executar essas operações básicas:

Para executar operações básicas no modo Selecionar


Este é o procedimento:
Para adicionar um nó ao grafo, selecione-o na Caixa de Ferramentas e mova-o
para a superfície de design.

Para remover um nó do grafo, selecione-o e, em seguida, pressione Delete.

Para reposicionar um nó, selecione-o e, em seguida, mova-o para um novo


local.

Para conectar dois nós, mova um terminal de saída de um nó para um terminal


de entrada do outro nó. Somente terminais de tipos compatíveis podem ser
conectados. Uma linha entre os terminais mostra a conexão.

Para remover uma conexão, no menu de atalho para qualquer um dos terminais
conectados, escolha Quebrar Links.

Para configurar as propriedades de um nó, selecione o nó e, em seguida, na


janela Propriedades, especifique novos valores para as propriedades.

Visualizar sombreadores
Para ajudá-lo a entender como um sombreador aparecerá em seu aplicativo, você pode
configurar como seu efeito é visualizado. Para aproximar o seu aplicativo, você pode
escolher uma das várias formas para renderizar, configurar texturas e outros parâmetros
de material, habilitar animação dos efeitos com base em tempo e examinar a
visualização de ângulos diferentes.

Formas
O Designer de Sombreador inclui seis formas – uma esfera, um cubo, um cilindro, um
cone, um bule e um plano – que você pode usar para visualizar o sombreador.
Dependendo do sombreador, determinadas formas podem fornecer uma melhor
visualização.

Para escolher uma forma de visualização, na barra de ferramentas Modos do Designer


de Sombreador, escolha a forma que você deseja.

Parâmetros de materiais e texturas


Muitos sombreadores contam com texturas e propriedades de material para produzir
uma aparência exclusiva para cada tipo de objeto em seu aplicativo. Para ver a aparência
que seu sombreador terá em seu aplicativo, você pode definir as texturas e
propriedades de material que são usadas para renderizar a visualização para
corresponder às texturas e parâmetros que você deseja usar em seu aplicativo.
Para associar uma textura diferente a um registro de textura ou modificar outros
parâmetros de material:

1. No modo Selecionar, selecione uma área vazia da superfície de design. Isso faz
com que a janela Propriedades exiba as propriedades globais do sombreador.

2. Na janela Propriedades, especifique novos valores para as propriedades de textura


e de parâmetro que você deseja alterar.

A tabela a seguir mostra os parâmetros de sombreador que você pode modificar:

Parâmetro Propriedades

Textura 1 - Access: Public para permitir que esta propriedade possa ser configurada pelo
Textura 8 Editor de Modelo; caso contrário, Private.

Filename: o caminho completo do arquivo de textura que está associado com


o registro de textura.

Material Access: Public para permitir que esta propriedade possa ser configurada pelo
Ambiente Editor de Modelo; caso contrário, Private.

Valor: a cor difusa do pixel atual devido à luz indireta, ou seja, a luz ambiente.

Material Difuso Access: Public para permitir que esta propriedade possa ser configurada pelo
Editor de Modelo; caso contrário, Private.

Valor: uma cor que descreve como o pixel atual difunde a iluminação direta.

Material Access: Public para permitir que esta propriedade possa ser configurada pelo
Emissivo Editor de Modelo; caso contrário, Private.

Valor: a contribuição de cor do pixel atual é devido à iluminação própria.

Material Access: Public para permitir que esta propriedade possa ser configurada pelo
Especular Editor de Modelo; caso contrário, Private.

Valor: uma cor que descreve como o pixel atual reflete a iluminação direta.

Material Energia Access: Public para permitir que esta propriedade possa ser configurada pelo
Especular Editor de Modelo; caso contrário, Private.

Valor: o expoente que define a intensidade dos realces especulares no pixel


atual.

Efeitos de tempo
Alguns sombreadores têm um componente baseado em tempo que anima o efeito. Para
mostrar qual a aparência do efeito em ação, a visualização tem que ser atualizada várias
vezes por segundo. Por padrão, a visualização só é atualizada quando o sombreador é
alterado; para alterar esse comportamento para que você possa exibir efeitos baseados
em tempo, você precisa habilitar a renderização em tempo real.

Para habilitar a renderização em tempo real, na barra de ferramentas do Designer de


Sombreador, escolha Renderização em Tempo Real.

Examinar o efeito

Muitos sombreadores são afetados por variáveis como ângulo de exibição ou luz
direcional. Para examinar como o efeito responde às alterações nessas variáveis, você
pode girar a forma de visualização livremente e observar como o sombreador se
comporta.

Para girar a forma, pressione e mantenha pressionada a tecla Alt e, em seguida,


selecione qualquer ponto na superfície de design e mova-o.

Exportar sombreadores
Antes de usar um sombreador em seu aplicativo, você precisa exportá-lo em um
formato compatível com o DirectX.

Você pode exportar sombreadores como código-fonte HLSL ou código de bytes do


sombreador compilado. O código-fonte HLSL é exportado para um arquivo de texto
que tem uma extensão de nome de arquivo .hlsl. O código de bytes do sombreador
pode ser exportado para um arquivo binário bruto que tenha uma extensão de nome de
arquivo .cso ou para um arquivo de cabeçalho (.h) C++ que codifique o código de bytes
do sombreador em uma matriz.

Para obter mais informações sobre como exportar sombreadores, confira Como
exportar um sombreador.

Atalhos do teclado
Comando Atalhos do teclado

Mudar para o modo Selecionar Ctrl+G, Ctrl+Q

S
Comando Atalhos do teclado

Mudar para o modo Zoom Ctrl+G, Ctrl+Z

Mudar para o modo Panorâmico Ctrl+G, Ctrl+P

Selecionar tudo Ctrl+A

Excluir a seleção atual Excluir

Cancelar a seleção atual Escape (Esc)

Ampliar Ctrl+Botão de rolagem do


mouse para frente

Sinal de adição (+)

Reduzir Ctrl+Botão de rolagem do


mouse para trás

Sinal de subtração (-)

Deslocar para cima na superfície de design Botão de rolagem do


mouse para trás

PageDown

Deslocar para baixo na superfície de design Botão de rolagem do


mouse para frente

PageUp

Deslocar para a esquerda na superfície de design Shift+Botão de rolagem do


mouse para trás

Botão de rolagem do
mouse para a esquerda

Shift+PageDown

Deslocar para a direita na superfície de design Shift+Botão de rolagem do


mouse para frente

Botão de rolagem do
mouse para a direita

Shift+PageUp
Comando Atalhos do teclado

Mover o foco do teclado para outro nó As teclas de direção

Selecione o nó que tem o foco do teclado (adiciona o nó para o Shift+Barra de espaços


grupo de seleção)

Ativar/desativar a seleção do nó que tem o foco do teclado Ctrl+Barra de espaços

Ativar/desativar a seleção atual (se nenhum nó estiver selecionado, Barra de espaços


selecione o nó que tem o foco do teclado)

Mover a seleção atual para cima Shift+Seta para cima

Mover a seleção atual para baixo Shift+Seta para baixo

Mover a seleção atual para a esquerda Shift+Seta para a esquerda

Mover a seleção atual para a direita Shift+Seta para a direita.

Tópicos relacionados
Título Descrição

Trabalhando com Fornece uma visão geral das ferramentas do Visual Studio que você
ativos 3D para jogos e pode usar para trabalhar com texturas e imagens, modelos 3D e efeitos
aplicativos de sombreamento.

Editor de Imagens Descreve como usar o Editor de Imagens do Visual Studio para trabalhar
com texturas e imagens.

Editor de modelo Descreve como usar o Editor de Modelos do Visual Studio para trabalhar
com modelos 3D.
O que são nós Designer de
Sombreador?
Artigo • 04/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Designer de Sombreador no Visual Studio representa os efeitos visuais, como um


grafo. Esses grafos são criados com base em nós escolhidos e conectados de formas
precisas, a fim de obter o efeito desejado. Cada nó representa uma parte das
informações ou de uma função matemática e as conexões entre eles representam como
as informações fluem através do grafo para produzir o resultado. Os tipos de nó
incluem filtros, texturas, parâmetros, constantes, nós de utilitário e nós matemáticos .

Estrutura de nó
Todos os nós são compostos de uma combinação de elementos comuns. Cada nó tem
pelo menos um terminal de saída no seu lado direito (exceto o nó de cor final, que
representa a saída do sombreador). Nós que representam cálculos ou amostras de
textura têm terminais de entrada do lado esquerdo, mas nós que representam
informações não têm terminais de entrada. Terminais de saída estão conectados a
terminais de entrada para mover informações de um nó para outro.

Promoção de entradas
Como o Designer de Sombreador, em última análise, deve gerar código-fonte HLSL para
que o efeito possa ser usado em um jogo ou aplicativo, os nós do Designer de
Sombreador são sujeito às regras da promoção de tipos que o HLSL usa. Como o
hardware gráfico opera principalmente em valores de ponto flutuante, a promoção de
tipos entre tipos diferentes — por exemplo, de int para float ou de float para
double — é incomum. Em vez disso, como o hardware gráfico usa a mesma operação
em várias partes de informações ao mesmo tempo, um tipo diferente de promoção
pode ocorrer, no qual o mais curto de muitas entradas é aumentado para corresponder
ao tamanho da entrada maior. A forma como o aumento é feito depende do tipo de
entrada e também da própria operação:

Se o menor tipo for um valor escalar, então:

O valor escalar será replicado em um vetor que é igual à entrada maior. Por
exemplo, a entrada escalar 5.0 se torna o vetor (5.0, 5.0, 5.0) quando a entrada
maior da operação for um vetor de três elementos, independentemente de qual é
a operação.

Se o menor tipo for um vetor e a operação for de multiplicação (*, /, % e assim


por diante), então:

O valor do vetor será copiado nos elementos à esquerda de um vetor que é igual à
entrada maior e os elementos à direita serão definidos como 1.0. Por exemplo, a
entrada de vetor (5.0, 5.0) se torna o vetor (5.0, 5.0, 1.0, 1.0) quando ele é
multiplicado por um vetor de quatro elementos. Isso preserva o terceiro e o quarto
elemento da saída usando a identidade de multiplicação, 1.0.

Se o menor tipo for um vetor e a operação for aditiva (+,- e assim por diante),
então:

O valor do vetor será copiado nos elementos à esquerda de um vetor que é igual à
entrada maior e os elementos à direita serão definidos como 0.0. Por exemplo, a
entrada de vetor (5.0, 5.0) se torna o vetor (5.0, 5.0, 0.0, 0.0) quando ele é
adicionado a um vetor de quatro elementos. Isso preserva o terceiro e o quarto
elemento da saída usando a identidade de adição, 0.0.

Nós e tipos de nó
O Designer de Sombreador fornece seis tipos de nós diferentes — filtros, nós de textura,
parâmetros, constantes, nós de utilitário e nós de matemática — e vários nós individuais
pertencem a cada tipo.

Nós de constante
No Designer do Sombreador, nós constantes representam valores literais e atributos de
vértice interpolados em cálculos do sombreador de pixel. Como os atributos de vértice
são interpolados — e, portanto, são diferentes para cada pixel — cada instância de
sombreador de pixel recebe uma versão diferente da constante. Isso dá a cada pixel
uma aparência única.

Interpolação de atributo de vértice


A imagem de uma cena 3D em um jogo ou aplicativo é feita por meio da transformação
matemática de muitos objetos — definido pelos vértices, atributos de vértice e
definições de primitivas — em pixels na tela. Todas as informações necessárias para dar
uma aparência exclusiva a um pixel são fornecidas por meio de atributos de vértice,
combinados de acordo com a proximidade do pixel para os diferentes vértices que
compõem seu primitivo. Um primitivo é um elemento básico de renderização; ou seja,
uma forma simples como um ponto, uma linha ou um triângulo. Um pixel muito
semelhante a um dos vértices recebe constantes quase idênticas a esse vértice, mas um
pixel com espaçamento uniforme entre todos os vértices de um primitivo recebe
constantes que são a média desses vértices. Na programação de gráficos, as constantes
que os pixels recebem são consideradas interpoladas. Fornecer dados constantes a
pixels dessa maneira produz qualidade visual boa e, ao mesmo tempo, reduz a
superfície de memória e os requisitos de largura de banda.

Embora cada instância de sombreador de pixel receba apenas um conjunto de valores


constantes e não possa alterar esses valores, instâncias diferentes de sombreador de
pixel recebem diferentes conjuntos de dados constantes. Esse design permite que um
programa sombreador produza uma saída de cor diferente para cada pixel no primitivo.

Referência de nó constante

Nó Detalhes Propriedades

Vetor de O vetor que se estende do pixel atual para a câmera no espaço Nenhum
Câmera de mundo.

É possível usar isso para calcular reflexões no espaço de mundo.

Saída

Output : float3
O vetor do pixel atual da câmera.

Constante de Um valor de cor constante. Saída


Cor O valor da
Saída cor.

Output : float4
O valor da cor.

Constante Um valor escalar constante. Saída


O valor
Saída escalar.

Output : float
O valor escalar.
Nó Detalhes Propriedades

Constante 2D Uma constante de vetor de dois componentes. Saída


O valor do
Saída vetor.

Output : float2
O valor do vetor.

Constante 3D Uma constante de vetor de três componentes. Saída


O valor do
Saída vetor.

Output : float3
O valor do vetor.

Constante 4D Uma constante de vetor de quatro componentes. Saída


O valor do
Saída vetor.

Output : float4
O valor da cor.

Posição A posição do pixel atual, expressa em coordenadas de Nenhum


Normalizada dispositivo normalizadas.

A coordenada X e Y têm valores no intervalo de [-1, 1], a


coordenada Z tem um valor no intervalo de [0, 1] e o
componente w contém o valor de profundidade de ponto no
espaço de modo de exibição; w não é normalizado.

Saída

Output : float4
A posição do pixel atual.

Ponto de cor A cor difusa do pixel atual, que é uma combinação da cor difusa Nenhum
do material e dos atributos de cor do vértice.

Saída

Output : float4
A cor difusa do pixel atual.
Nó Detalhes Propriedades

Profundidade A profundidade do pixel atual no espaço de exibição. Nenhum


do Ponto
Saída

Output : float
A profundidade do pixel atual.

Profundidade A profundidade do pixel atual, expresso em coordenadas do Nenhum


do Ponto dispositivo normalizado.
Normalizado
O resultado tem um valor no intervalo [0, 1].

Saída

Output : float
A profundidade do pixel atual.

Posição da A posição do pixel atual, expresso em coordenadas de tela. Nenhum


Tela
As coordenadas de tela se baseiam no visor atual. Os
componentes X e Y contêm as coordenadas de tela, o
componente Z contém a profundidade normalizada a um
intervalo de [0, 1] e o componente w contém o valor de
profundidade no espaço de exibição.

Saída

Output : float4
A posição do pixel atual.

Vetor O vetor perpendicular à superfície do pixel atual no espaço de Nenhum


Perpendicular objeto.
à Superfície
É possível usar isso para calcular as contribuições de iluminação
e os reflexos no espaço de objeto.

Saída

Output : float3
A superfície normal do pixel atual.
Nó Detalhes Propriedades

Vetor de O vetor que se estende de pixel atual para a câmera no espaço Nenhum
Câmera do tangente.
Espaço
Tangente É possível usar isso para calcular reflexões no espaço tangente.

Saída

Output : float3
O vetor do pixel atual da câmera.

Direção da O vetor que define a direção na qual a luz é lançada de uma Nenhum
Luz do fonte de luz no espaço tangente do pixel atual.
Espaço
Tangente É possível usar isso para calcular as contribuições de iluminação
e especulares no espaço tangente.

Saída:

Output : float3
O vetor do pixel atual para uma fonte de luz.

Vetor O vetor perpendicular à superfície do pixel atual no espaço de Nenhum


Perpendicular mundo.
ao Mundo
É possível usar isso para calcular as contribuições de iluminação
e os reflexos no espaço de mundo.

Saída

Output : float3
A superfície normal do pixel atual.

Posição do A posição do pixel atual no espaço de mundo. Nenhum


Mundo
Saída

Output : float4
A posição do pixel atual.

Nós de parâmetro
No Designer de Sombreador, os nós de parâmetro representam entradas no
sombreador que estão sob o controle do aplicativo em uma base por draw, por
exemplo, propriedades de material, luzes direcionais, posição da câmera e tempo. Como
você pode alterar esses parâmetros a cada chamada draw, é possível usar o mesmo
sombreador para conceder aparências diferentes a um objeto.

Referência do nó de parâmetro

Nó Detalhes Propriedades

Posição A posição da câmera no espaço de mundo. Nenhum


mundial da
câmera Saída:

Output : float4
A posição da câmera.

Direção da O vetor que define a direção na qual a luz é emitida de Nenhum


Luz uma fonte de luz no espaço do mundo.

Você pode usar isso para calcular as contribuições de


iluminação e especulares no espaço do mundo.

Saída:

Output : float3
O vetor do pixel atual para uma fonte de luz.

Material A contribuição de cor difusa do pixel atual que é Acesso


Ambiente atribuída à iluminação indireta. Public para permitir
que esta propriedade
A cor de um pixel difusa simula como a iluminação possa ser configurada
interage com superfícies ásperas. Você pode usar o pelo Editor de Modelo;
parâmetro Material Ambiente para calcular caso contrário, Private.
aproximadamente como a iluminação indireta contribui
para a aparência de um objeto no mundo real. Valor
A cor difusa do pixel
Saída: atual é devido à luz
indireta, ou seja,
Output : float4 ambiente.
A cor difusa do pixel atual é devido à luz indireta, ou
seja, ambiente.
Nó Detalhes Propriedades

Material Uma cor que descreve como o pixel atual difunde a Acesso
Difuso iluminação direta. Public para permitir
que esta propriedade
A cor de um pixel difusa simula como a iluminação possa ser configurada
interage com superfícies ásperas. Você pode usar o pelo Editor de Modelo;
parâmetro Material Difuso para alterar como o pixel caso contrário, Private.
atual difunde a iluminação direta, ou seja, bidirecional,
ponto e spot lights. Valor
Uma cor que descreve
Saída: como o pixel atual
difunde a iluminação
Output : float4 direta.
Uma cor que descreve como o pixel atual difunde a
iluminação direta.

Material A contribuição da cor difusa do pixel atual que é Acesso


Emissivo atribuída à iluminação fornecido a si mesmo. Public para permitir
que esta propriedade
Você pode usar isso para simular um objeto brilhante, possa ser configurada
isto é, um objeto que fornece sua própria luz. Essa luz pelo Editor de Modelo;
não afeta os outros objetos. caso contrário, Private.

Saída: Valor
A contribuição de cor
Output : float4 do pixel atual é devido
A contribuição de cor do pixel atual é devido à à iluminação própria.
iluminação própria.

Material Uma cor que descreve como o pixel atual reflete a Acesso
Especular iluminação direta. Public para permitir
que esta propriedade
A cor especular de um pixel simula como a iluminação possa ser configurada
interage com superfícies lisas e espelhadas. Você pode pelo Editor de Modelo;
usar o parâmetro Material Especular para alterar como caso contrário, Private.
o pixel atual reflete a iluminação direta, ou seja,
direcional, ponto e spot lights. Valor
Uma cor que descreve
Saída: como o pixel atual
reflete a iluminação
Output : float4 direta.
Uma cor que descreve como o pixel atual reflete a
iluminação direta.
Nó Detalhes Propriedades

Material Um valor escalar que descreve a intensidade dos Acesso


Energia realces especulares. Public para permitir
Especular que esta propriedade
Quanto maior a energia especular, mais intensa e possa ser configurada
abrangente se tornam os realces especulares. pelo Editor de Modelo;
caso contrário, Private.
Saída:
Valor
Output : float O expoente que define
O termo exponencial que define a intensidade dos a intensidade dos
realces especulares no do pixel atual. realces especulares no
pixel atual.

Tempo O tempo, em segundos, normalizado no intervalo [0, 1], Nenhum


Normalizado de modo que quando tempo atinge 1, ele é redefinido
como 0.

Você pode usar isso como um parâmetro em cálculos


de sombreamento, por exemplo, para animar
coordenadas de textura, valores de cor ou outros
atributos.

Saída:

Output : float
O tempo normalizado, em segundos.

Hora O tempo em segundos. Nenhum

Você pode usar isso como um parâmetro em cálculos


de sombreamento, por exemplo, para animar
coordenadas de textura, valores de cor ou outros
atributos.

Saída:

Output : float
O tempo em segundos.

Nós de textura
No Designer de Sombreador, os nós de textura coletam amostram de vários tipos de
textura e geometrias e produzem ou transformam as coordenadas de textura. As
texturas fornecem detalhes de cor e iluminação dos objetos.
Referência do nó de textura

Nó Detalhes Propriedades

Amostra de Usa uma amostra de cor de um cubemap nas Textura


Cubemap coordenadas especificadas. O registro de textura
associado à amostra.
É possível usar um cubemap para fornecer detalhes
de cor para efeitos de reflexão ou para aplicar a um
objeto esférico uma textura que tem menos
distorção do que uma textura 2D.

Entrada:

UVW : float3
Um vetor que especifica o local no cubo de textura
em que a amostra é coletada. A amostra é coletada
no ponto em que esse vetor intersecciona o cubo.

Saída:

Output : float4
A amostra de cor.

Amostra de Usa uma amostra normal de um mapa normal 2D nas Ajuste de eixo
mapa coordenadas especificadas O fator usado para ajustar
normal a direção da amostra do
É possível usar um mapa normal para simular a mapa normal.
aparência de detalhes geométricos adicionais na
superfície de um objeto. Mapas normais contêm Textura
dados compactados que representam um vetor de O registro de textura
unidade em vez de dados de cor associado à amostra.

Entrada:

UV : float2
As coordenadas nas quais a amostra é coletada.

Saída:

Output : float3
A amostra normal.
Nó Detalhes Propriedades

Pan UV Aplica a panorâmica às coordenadas de textura Velocidade X


especificadas como uma função de tempo. O número de texels
estendidos ao longo do
É possível usar essa opção para mover uma textura eixo x, por segundo.
ou um mapa normal na superfície de um objeto.
Velocidade Y
Entrada: O número de texels
estendido ao longo do
UV : float2 eixo y, por segundo.
As coordenadas às quais aplicar a panorâmica.

Time : float
O tempo durante o qual será aplicada uma
panorâmica, em segundos.

Saída:

Output : float2
As coordenadas com panorâmica aplicada.

Parallax UV Desloca as coordenadas de textura especificadas Plano de profundidade


como uma função de altura e um ângulo de visão. A profundidade de
referência do efeito
O efeito que isso cria é conhecido como parallax. Por padrão, o
mapeamento parallax ou mapeamento de valor é 0,5. Valores
deslocamento virtual. É possível usá-lo para criar a menores elevam a textura;
ilusão de profundidade em uma superfície plana. valores maiores a afundam
na superfície.
Entrada:
Escala de profundidade
UV : float2 A escala do efeito parallax.
As coordenadas a serem deslocadas. Isso torna a profundidade
aparente mais ou menos
Height : float acentuada. Os valores
O valor de heightmap associado às coordenadas UV . típicos variam de 0,02 a
0,1.
Saída:

Output : float2
As coordenadas deslocadas.
Nó Detalhes Propriedades

Girar UV Gira as coordenadas de textura especificadas em X central


torno de um ponto central como uma função de A coordenada x que
tempo. define o centro de
rotação.
É possível usar essa opção para girar uma textura ou
um mapa normal na superfície de um objeto. Y central
A coordenada y que
Entrada: define o centro de
rotação.
UV : float2
As coordenadas a serem giradas. Velocidade
O ângulo em radianos,
Time : float pelo qual a textura gira
O tempo durante o qual será aplicada uma por segundo.
panorâmica, em segundos.

Saída:

Output : float2
As coordenadas giradas.

Coordenada As coordenadas de textura do pixel atual. Nenhum


de textura
As coordenadas de textura são determinadas pela
interpolação entre os atributos de coordenadas de
textura de vértices próximos. É possível considerar
isso como a posição do pixel atual no espaço de
textura.

Saída:

Output : float2
As coordenadas de textura.

Dimensões Gera a largura e a altura de um mapa de textura 2D. Textura


de textura O registro de textura
É possível usar as dimensões de textura para associado às dimensões
considerar a largura e a altura da textura em um de textura.
sombreador.

Saída:

Output : float2
A largura e a altura da textura, expressas como um
vetor. A largura é armazenada no primeiro elemento
do vetor. A altura é armazenada no segundo
elemento.
Nó Detalhes Propriedades

Texel Delta Gera o delta (distância) entre os texels de um mapa Textura


de textura 2D. O registro de textura
associado ao textel delta.
É possível usar o texel delta para coletar amostras de
valores de texel vizinhos em um sombreador.

Saída:

Output : float2
O delta (distância) de um texel até o próximo texel
(movendo diagonalmente na direção positiva),
expresso como um vetor no espaço de textura
normalizado. É possível derivar as posições de todos
os texels vizinhos ignorando ou negando
seletivamente as coordenadas U ou V do delta.

Amostra de Usa uma amostra de cor de um mapa de textura 2D Textura


textura nas coordenadas especificadas. O registro de textura
associado à amostra.
É possível usar um mapa de textura para fornecer
detalhes de cor na superfície de um objeto.

Entrada:

UV : float2
As coordenadas nas quais a amostra é coletada.

Saída:

Output : float4
A amostra de cor.

Nós de matemática
No Designer de Sombreador, os nós de matemática realizam álgebra, lógica,
trigonometria e outras operações matemáticas.

7 Observação

Quando você trabalha com nós de matemática no Designer de Sombreador, a


promoção de tipos é especialmente evidente. Para mais informações sobre como a
promoção de tipos afeta os parâmetros de entrada, confira a seção Promoção de
entradas.
Referência do nó de matemática

Nó Detalhes Propriedades

Abs Calcula o valor absoluto da entrada especificada por componente. Nenhum

Para cada componente da entrada X , os valores negativos são


transformados em positivos para que cada componente do
resultado tenha um valor positivo.

Entrada:

X : float , float2 , float3 ou float4


Os valores para os quais determinar o valor absoluto.

Output:

Output : igual à entrada X


O valor absoluto, por componente.

Adicionar Calcula a soma do componente inteiro das entradas especificadas Nenhum


por componente.

Para cada componente do resultado, os componentes


correspondentes das entradas X e Y são adicionados juntos.

Entrada:

X : float , float2 , float3 ou float4


Um dos valores a ser somado.

Y : igual à entrada X
Um dos valores a ser somado.

Saída:

Output : igual à entrada X


A soma, por componente.
Nó Detalhes Propriedades

Ceil Calcula o limite máximo da entrada especificada por componente. Nenhum

O limite máximo de um valor é o menor inteiro, que é maior ou


igual ao valor.

Entrada:

X : float , float2 , float3 ou float4


Os valores para os quais calcular o limite máximo.

Saída:

Output : igual à entrada X


O limite, por componente.

Clamp Prende cada componente da entrada especificada a um intervalo Max


predefinido. O maior valor
possível no
Para cada componente do resultado, os valores que estão abaixo intervalo.
do intervalo definido são igualados ao valor mínimo do intervalo,
os valores que estão acima do intervalo definido são igualados ao Min
valor máximo do intervalo e os valores que estão no intervalo não O menor
são alterados. valor possível
no intervalo.
Entrada:

X : float , float2 , float3 ou float4


Os valores a serem fixados.

Saída:

Output : igual à entrada X


O valor fixado, por componente.
Nó Detalhes Propriedades

Cos Calcula o cosseno da entrada especificada, em radianos, por Nenhum


componente.

Para cada componente do resultado, o cosseno do componente


correspondente, que é fornecido em radianos, é calculado. O
resultado tem componentes cujos valores estão no intervalo de
[-1, 1].

Entrada:

X : float , float2 , float3 ou float4


Os valores cujo cosseno será calculado, em radianos.

Saída:

Output : igual à entrada X


O cosseno, por componente.

Cross Calcula o produto cruzado dos vetores especificados de três Nenhum


componentes.

Você pode usar o produto cruzado para calcular o normal de uma


superfície, que é definido por dois vetores.

Entrada:

X : float3
O vetor à esquerda do produto cruzado.

Y : float3
O vetor à direita do produto cruzado.

Saída:

Output : float3
O produto cruzado.
Nó Detalhes Propriedades

Distância Calcula a distância entre pontos especificados. Nenhum

O resultado é um valor escalar positivo.

Entrada:

X : float , float2 , float3 ou float4


Um dos pontos entre os quais a distância será determinada.

Y : igual à entrada X
Um dos pontos entre os quais a distância será determinada.

Saída:

Output : igual à entrada X


A distância.

Divide Calcula o quociente do componente inteiro das entradas Nenhum


especificadas.

Para cada componente do resultado, o componente


correspondente da entrada X é dividido pelo componente
correspondente da entrada Y .

Entrada:

X : float , float2 , float3 ou float4


Os valores do dividendo.

Y : igual à entrada X
Os valores do divisor.

Saída:

Output : igual à entrada X


O quociente, por componente.
Nó Detalhes Propriedades

Ponto Calcula o produto de ponto dos vetores especificados. Nenhum

O resultado é um valor escalar. Você pode usar o produto de


ponto para determinar o ângulo entre dois vetores.

Entrada:

X : float , float2 , float3 ou float4


Um dos termos.

Y : igual à entrada X
Um dos termos.

Saída:

Output : float
O produto escalar.

Floor Calcula a base da entrada especificada por componente. Nenhum

Para cada componente do resultado, seu valor é o maior valor de


inteiro, que é menor ou igual ao componente correspondente da
entrada. Cada componente do resultado é um inteiro.

Entrada:

X : float , float2 , float3 ou float4


Os valores para os quais calcular a base.

Saída:

Output : igual à entrada X


A base, por componente.
Nó Detalhes Propriedades

Fmod Calcula o módulo do componente inteiro (sobra) das entradas Nenhum


especificadas.

Para cada componente do resultado, alguns múltiplos integrais


(número inteiro), m, do componente correspondente da entrada
Y são subtraídos do componente correspondente da entrada X ,
deixando uma sobra. O múltiplo, m, é escolhido, de modo que a
sobra seja menor que o componente correspondente da entrada
Y e tenha o mesmo sinal que o componente correspondente da
entrada X . Por exemplo, fmod(-3,14, 1,5) é -0,14.

Entrada:

X : float , float2 , float3 ou float4


Os valores do dividendo.

Y : igual à entrada X
Os valores do divisor.

Saída:

Output : igual à entrada X


O módulo, por componente.

Frac Remove a parte integral de (número inteiro) da entrada Nenhum


especificada por componente.

Para cada componente do resultado, a parte integral do


componente correspondente da entrada é removida, mas a parte
fracionária e o sinal são mantidos. Esse valor fracionário cai no
intervalo [0, 1). Por exemplo, o valor -3,14 se torna o valor -0,14.

Entrada:

X : float , float2 , float3 ou float4


Os valores para os quais calcular a parte fracionária.

Saída:

Output : igual à entrada X


A parte fracionária, por componente.
Nó Detalhes Propriedades

Lerp Interpolação linear. Calcula a média ponderada do componente Nenhum


inteiro das entradas especificadas.

Para cada componente do resultado, a média ponderada dos


componentes correspondentes das entradas X e Y . O peso é
fornecido por Percent , um escalar e é aplicado de modo
uniforme a todos os componentes. Você pode usá-lo para fazer a
interpolação entre pontos, cores, atributos e outros valores.

Entrada:

X : float , float2 , float3 ou float4


O valor de origem. Quando Percent for zero, o resultado será
igual a essa entrada.

Y : igual à entrada X
O valor do terminal. Quando Percent for um, o resultado será
igual a essa entrada.

Percent : float
Um peso escalar que é expresso como um percentual da distância
da entrada X em direção à entrada Y .

Saída:

Output : igual à entrada X


Um valor que é colinear com as entradas especificadas.
Nó Detalhes Propriedades

Multiplicar Calcula a operação multiply-add do componente inteiro das Nenhum


Adição entradas especificadas.

Para cada componente do resultado, o produto dos componentes


correspondentes das entradas M e A é adicionado ao
componente correspondente da entrada B . Essa sequência de
operação é encontrada em fórmulas comuns — por exemplo, na
fórmula do ponto inclinação de uma linha e na fórmula para
dimensionar e, então, desviar uma entrada.

Entrada:

M : float , float2 , float3 ou float4


Um dos valores a serem multiplicados juntos.

A : igual à entrada M
Um dos valores a serem multiplicados juntos.

B : igual à entrada M
Os valores para adicionar o produto das duas entradas.

Saída:

Output : igual à entrada M


O resultado da operação multiply-add, por componente.

Max Calcula o máximo do componente inteiro das entradas Nenhum


especificadas.

Para cada componente do resultado, o maior dos componentes


correspondentes das entradas é escolhido.

Entrada:

X : float , float2 , float3 ou float4


Um dos valores para o qual calcular o máximo.

Y : igual à entrada X
Um dos valores para o qual calcular o máximo.

Saída:

Output : igual à entrada X


O valor máximo, por componente.
Nó Detalhes Propriedades

Min Calcula o mínimo do componente inteiro das entradas Nenhum


especificadas.

Para cada componente do resultado, o menor dos componentes


correspondentes das entradas é escolhido.

Entrada:

X : float , float2 , float3 ou float4


Um dos valores para o qual calcular o mínimo.

Y : igual à entrada X
Um dos valores para o qual calcular o mínimo.

Saída:

Output : igual à entrada X


O valor mínimo, por componente.

Multiply Calcula o produto do componente inteiro das entradas Nenhum


especificadas.

Para cada componente do resultado, os componentes


correspondentes das entradas X e Y são multiplicados juntos.

Entrada:

X : float , float2 , float3 ou float4


Um dos valores a serem multiplicados juntos.

Y : igual à entrada X
Um dos valores a serem multiplicados juntos.

Saída:

Output : igual à entrada X


O produto, por componente.
Nó Detalhes Propriedades

Normalizar Normaliza o vetor especificado. Nenhum

Um vetor normalizado retém a direção do vetor original, mas não


sua magnitude. Você pode usar vetores normalizados para
simplificar cálculos, nos quais a magnitude de um vetor não é
importante.

Entrada:

X : float2 , float3 ou float4


O vetor a ser normalizado.

Saída:

Output : igual à entrada X


O vetor normalizado.

Um Menos Calcula a diferença entre 1 e a entrada especificada por Nenhum


componente.

Para cada componente do resultado, o componente


correspondente da entrada é subtraído de 1.

Entrada:

X : float , float2 , float3 ou float4


Os valores a serem subtraídos de 1.

Saída:

Output : igual à entrada X


A diferença entre 1 e a entrada especificada, por componente.
Nó Detalhes Propriedades

Energia Calcula a exponenciação do componente inteiro (potência) das Nenhum


entradas especificadas.

Para cada componente do resultado, o componente


correspondente da entrada X é elevado à potência do
componente correspondente da entrada Y .

Entrada:

X : float , float2 , float3 ou float4


Os valores de base

Y : igual à entrada X
Os valores do expoente.

Saída:

Output : igual à entrada X


A exponenciação, por componente.

Saturar Prende cada componente da entrada especificada ao intervalo [0, Nenhum


1].

Você pode usar esse intervalo para representar os percentuais e


outras medições relativas em cálculos. Para cada componente do
resultado, os valores correspondentes do componente de entrada
menores que 0 são igualados a 0, os valores maiores que 1 são
igualados a 1 e os valores que estão no intervalo não são
alterados.

Entrada:

X : float , float2 , float3 ou float4


Os valores a serem saturados.

Saída:

Output : igual à entrada X


O valor saturado, por componente.
Nó Detalhes Propriedades

Sin Calcula o seno da entrada especificada, em radianos, por Nenhum


componente.

Para cada componente do resultado, o seno do componente


correspondente, que é fornecido em radianos, é calculado. O
resultado tem componentes cujos valores estão no intervalo [-1,
1].

Entrada:

X : float , float2 , float3 ou float4


Os valores para calcular o seno, em radianos.

Saída:

Output : igual à entrada X


O seno, por componente.

Sqrt Calcula a raiz quadrada da entrada especificada, por componente. Nenhum

Para cada componente do resultado, a raiz quadrada do


componente correspondente é calculada.

Entrada:

X : float , float2 , float3 ou float4


Os valores para os quais calcular a raiz quadrada.

Saída:

Output : igual à entrada X


A raiz quadrada, por componente.
Nó Detalhes Propriedades

Subtract Calcula a diferença do componente inteiro das entradas Nenhum


especificadas.

Para cada componente do resultado, o componente


correspondente da entrada Y é subtraído do componente
correspondente da entrada X . Você pode usá-lo para calcular o
vetor que se estende da primeira entrada para a segunda.

Entrada:

X : float , float2 , float3 ou float4


Os valores a serem subtraídos.

Y : igual à entrada X
Os valores a serem subtraídos da entrada X .

Saída:

Output : igual à entrada X


A diferença, por componente.

Transformar Transforma o vetor 3D especificado em um espaço diferente. Do Sistema


Vetor 3D O espaço
Você pode usar essa opção para colocar pontos ou vetores em nativo do
um espaço comum para que você possa usá-los para executar vetor.
cálculos significativos.
Para o
Entrada: Sistema
O espaço no
Vector : float3 qual
O vetor a ser transformado. transformar o
vetor.
Saída:

Output : float3
O vetor transformado.

Nós de utilitário
No Designer de Sombreador, nós de utilitário representam cálculos comuns e úteis de
sombreador que não se enquadram em outras categorias. Alguns nós de utilitário
realizam operações simples como acrescentar vetores ou escolher resultados
condicionalmente; outros executam operações complexas, como calcular contribuições
de iluminação de acordo com modelos populares de iluminação.
Referência do nó de utilitário

Nó Detalhes Propriedades

Vetor de Cria um vetor acrescentando as entradas especificadas. Nenhum


Acréscimo
Entrada:

Vector : float , float2 ou float3


Os valores a se acrescentar.

Value to Append : float


O valor a ser acrescentado.

Saída:

Output : float2 , float3 ou float4 dependendo do tipo de entrada


Vector
O novo vetor.

Fresnel Calcula a queda de Fresnel com base no vetor perpendicular à Expoente


superfície especificado. O expoente
usado para
O valor da queda de Fresnel expressa a proximidade do vetor calcular a
perpendicular à superfície do pixel atual ao vetor de exibição. queda do
Quando os vetores estão alinhados, o resultado da função é 0; o Fresnel.
resultado aumenta à medida que os vetores se tornam menos
semelhantes e atingem o máximo quando os vetores são
ortogonais. Você pode usar esses vetores para tornar um efeito
mais ou menos aparente com base na relação entre a orientação do
pixel atual e da câmera.

Entrada:

Surface Normal : float3


O vetor perpendicular à superfície do pixel atual, definido no
espaço tangente do pixel atual. É possível usar isso para perturbar
vetor perpendicular à superfície aparente, como no mapeamento
normal.

Saída:

Output : float
A reflexibilidade do pixel atual.
Nó Detalhes Propriedades

If De forma condicional, escolhe um dos três resultados possíveis por Nenhum


componente. A condição é definida pela relação entre duas outras
entradas especificadas.

Para cada componente do resultado, o componente


correspondente de um dos três resultados possível é escolhido,
com base na relação entre os componentes correspondentes das
duas primeiras entradas.

Entrada:

X : float , float2 , float3 ou float4


O valor do lado esquerdo a se comparar.

Y : mesmo tipo como entrada X


O valor do lado direito a se comparar.

X > Y : mesmo tipo como entrada X


Os valores escolhidos quando X é maior do que Y .

X = Y : mesmo tipo como entrada X


Os valores escolhidos quando X é igual a Y .

X < Y : mesmo tipo como entrada X


Os valores escolhidos quando X é menor que Y .

Saída:

Output : float3
O resultado escolhido, por componente.
Nó Detalhes Propriedades

Lambert Calcula a cor do pixel atual de acordo com o modelo de iluminação Nenhum
de Lambert, usando o vetor perpendicular à superfície especificado.

Essa cor é a soma da cor ambiente e contribuições de iluminação


difusa em luminosidade direta. A cor ambiente aproxima a
contribuição total da luminosidade indireta, mas parece simples e
fosca sem a ajuda de iluminação adicional. A iluminação difusa
ajuda a adicionar forma e a profundidade a um objeto.

Entrada:

Surface Normal : float3


O vetor perpendicular à superfície do pixel atual, definido no
espaço tangente do pixel atual. É possível usar isso para perturbar
vetor perpendicular à superfície aparente, como no mapeamento
normal.

Diffuse Color : float3


A cor difusa do pixel atual, normalmente o Ponto de Cor. Se
nenhuma entrada for fornecida, o valor padrão será branco.

Saída:

Output : float3
A cor difusa do pixel atual.
Nó Detalhes Propriedades

Vetor de Componentes de máscaras de vetor especificado. Vermelho / X


Máscara False para
É possível usá-lo para remover canais de cores específicos de um mascarar o
valor de cor ou para impedir que componentes específicos tenham componente
um efeito em cálculos subsequentes. vermelho (x);
caso
Entrada: contrário,
True.
Vector : float4
O vetor a ser mascarado. Verde / Y
False para
Saída: mascarar o
componente
Output : float4 verde (y);
O vetor mascarado. caso
contrário,
True.

Azul / Z
False para
mascarar o
componente
azul (z); caso
contrário,
True.

Alfa / W
False para
mascarar o
componente
alfa (w); caso
contrário,
True.
Nó Detalhes Propriedades

Vetor de Calcula o vetor de reflexão do pixel atual no espaço tangente, com Nenhum
Reflexão base na posição da câmera.

Pode ser usado para calcular reflexões, coordenadas de cubemap e


contribuições de iluminação especular

Entrada:

Tangent Space Surface Normal : float3


O vetor perpendicular à superfície do pixel atual, definido no
espaço tangente do pixel atual. É possível usar isso para perturbar
vetor perpendicular à superfície aparente, como no mapeamento
normal.

Saída:

Output : float3
O vetor de reflexão.

Especular Calcula a contribuição de iluminação especular acordo com o Nenhum


modelo de iluminação de Phong, usando o vetor perpendicular à
superfície especificado.

A iluminação especular dá uma aparência brilhante e refletora a um


objeto, por exemplo, água, plástico ou metais.

Entrada:

Surface Normal : float3


O vetor perpendicular à superfície do pixel atual, definido no
espaço tangente do pixel atual. É possível usar isso para perturbar
vetor perpendicular à superfície aparente, como no mapeamento
normal.

Saída:

Output : float3
A contribuição de cor de realces especulares.

Nós de filtro
No Designer de Sombreador, nós de filtro transformam uma entrada — por exemplo,
uma amostra de cor ou textura — em um valor de cor figurativo. Esses valores de cor
figurativos normalmente são usados na renderização não fotorrealista ou como
componentes de outros efeitos visuais.
Referência do nó de filtro

Nó Detalhes Propriedades

Desfoque Desfoca os pixels em uma textura usando uma função Textura


gaussiana. O registro de textura
associado à amostra
É possível usá-lo para reduzir o ruído ou os detalhes de usada durante o
cor em uma textura. desfoque.

Entrada:

UV : float2
As coordenadas o texel a ser testado.

Saída:

Output : float4
O valor da cor desfocada.

Remover Reduz a quantidade de cor na cor especificada. Luminância


Saturação Os pesos dados aos
Conforme a cor é removida, o valor da cor se aproxima componentes de cor
de seu equivalente na escala de cinza. vermelho, verde e azul.

Entrada:

RGB : float3
A cor cuja saturação será removida.

Percent : float
A porcentagem de cor a ser removida, expressa como
um valor normalizado no intervalo [0, 1].

Saída:

Output : float3
A cor cuja saturação foi removida.
Nó Detalhes Propriedades

Detecção Detecta bordas em uma textura usando um detector de Textura


de Borda bordas de Canny. Os pixels da borda são transformados O registro de textura que
em branco e os pixels que não são da borda são está associado à amostra
transformados em preto. usada durante a detecção
de borda.
É possível usá-lo para identificar bordas em uma textura
para que você possa usar efeitos adicionais para tratar
os pixels da borda.

Entrada:

UV : float2
As coordenadas o texel a ser testado.

Saída:

Output : float4
Branco se o texel estiver em uma borda; caso contrário,
preto.

Ajustar Ajusta a nitidez de uma textura. Textura


Nitidez O registro de textura
É possível usá-lo para destacar os detalhes de uma associado à amostra
textura. usada durante o ajuste
de nitidez.
Entrada:

UV : float2
As coordenadas o texel a ser testado.

Saída:

Output : float4
O valor da cor desfocada.

Próximas etapas
Para saber mais, confira, Criar sombreadores com o Designer do Sombreador no Visual
Studio.
Criar sombreadores com o Designer do
Sombreador no Visual Studio
Artigo • 04/07/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá a usar o Designer do Sombreador para criar diferentes
tipos de sombreadores.

Criar sombreadores básicos de cores planas


Você pode usar o Designer do Sombreador e a DGSL (Directed Graph Shader Language)
para criar um sombreador de cor simples. Esse sombreador define a cor final em um
valor de cor RGB constante. Você pode implementar um sombreador de cor simples
gravando o valor de cor de uma constante de cor RGB na cor de saída final.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um sombreador DGSL com o qual trabalhar. Para obter informações sobre
como adicionar um sombreador DGSL ao seu projeto, consulte a seção de
Introdução em Designer de Sombreador.

2. Exclua o nó Ponto de Cor. Use a ferramenta Selecionar para selecionar o nó Cor


do Ponto e, em seguida, na barra de menus, escolha Editar>Excluir.

3. Adicione um nó Constante de Cor ao grafo. Na Caixa de Ferramentas, em


Constantes, selecione Constante de Cor e mova para a superfície de design.

4. Especifique um valor de cor para o nó Constante de Cor. Use a ferramenta


Selecionar para selecionar o nó Constante de Cor e, em seguida, na janela
Propriedades, na propriedade Saída, especifique um valor de cor. Para laranja,
especifique um valor de (1,0, 0,5, 0,2, 1,0).

5. Conecte a constante de cor à cor final. Para criar as conexões, mova o terminal
RGB do nó Constante de Cor para o terminal RGB do nó Cor Final e, em seguida,
mova o terminal Alfa do nó Constante de Cor para o terminal Alfa do nó Cor
Final. Essas conexões definem a cor final para a constante de cor definida na etapa
anterior.
A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização do
sombreador aplicado a um cubo.

7 Observação

Na ilustração foi especificada uma cor laranja para demonstrar melhor o efeito do
sombreador.

Determinadas formas podem fornecer melhores visualizações para alguns


sombreadores. Para obter mais informações sobre como visualizar sombreadores no
Designer de Sombreador, consulte Designer de Sombreador.

Criar um sombreador Lambert básico


Você também pode usar o Designer do Sombreador e o DGSL (Directed Graph Shader
Language) para criar um sombreador de iluminação que implementa o modelo de
iluminação de Lambert clássico.

O modelo de iluminação de Lambert incorpora iluminação ambiente e direcional para


sombrear objetos em uma cena 3D. Os componentes do ambiente fornecem um nível
básico de iluminação na cena 3D. Os componentes direcionais fornecem iluminação
adicional de fontes de luz direcionais (distantes). A iluminação ambiente afeta todas as
superfícies da cena igualmente, independentemente da orientação. Para uma
determinada superfície, é um produto da cor ambiente da superfície e a cor e a
intensidade da luz ambiente na cena. A iluminação direcional afeta cada superfície na
cena de maneira diferente, com base na orientação da superfície em relação a direção
da fonte de luz. É um produto da cor difusa e a orientação da superfície e a cor,
intensidade e direção das fontes de luz. As superfícies que estão voltadas diretamente
para a fonte de luz recebem a contribuição máxima e superfícies que estão diretamente
voltadas para o lado oposto, não recebem nenhuma contribuição. No modelo de
iluminação de Lambert, o componente ambiente e um ou mais componentes direcionais
são combinados para determinar a contribuição de cor difusa total para cada ponto no
objeto.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um sombreador DGSL com o qual trabalhar. Para obter informações sobre
como adicionar um sombreador DGSL ao seu projeto, consulte a seção de
Introdução em Designer de Sombreador.

2. Desconectar o nó Ponto de Cor do nó Cor Final. Escolha o terminal RGB do nó


Ponto de Cor e, em seguida, escolha Quebrar Links. Deixe o terminal Alfa
conectado.

3. Adicione um nó Lambert ao grafo. Na Caixa de Ferramentas, em Utilitário,


selecione Lambert e mova-o para a superfície de design. O nó Lambert calcula a
contribuição de cor difusa total do pixel, com base em parâmetros de iluminação
difusa e ambiente.

4. Conecte o nó Ponto de Cor ao nó Lambert. No modo de Seleção, mova o terminal


RGB do nó Ponto de Cor para o terminal Cor Difusa do nó Lambert. Essa conexão
fornece o nó Lambert com a cor difusa interpolada do pixel.

5. Conecte o valor de cor calculado à cor final. Mova o terminal de Saída do nó


Lambert para o terminal RGB do nó Cor Final.

A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização


do sombreador aplicado a um modelo de bule.

7 Observação

Para demonstrar melhor o efeito do sombreador nesta ilustração, foi especificada


uma cor laranja usando o parâmetro MaterialDiffuse do sombreador. Um jogo ou
um aplicativo pode usar esse parâmetro para fornecer um valor de cor exclusivo
para cada objeto. Para mais informações sobre os parâmetros materiais, veja
Designer do Sombreador.
A ilustração a seguir mostra o sombreador que é descrito neste documento, aplicado a
um modelo 3D.

Criar sombreadores Phong básicos


Você também pode usar o Designer do Sombreador e o DGSL (Directed Graph Shader
Language) para criar um sombreador de iluminação que implementa o modelo de
iluminação Phong clássico.

O modelo de iluminação de Phong amplia o modelo de iluminação de Lambert para


incluir o realce especular, que simula as propriedades de reflexão de uma superfície. O
componente especular fornece iluminação adicional das mesmas fontes de luz
direcionais que são usadas no modelo de iluminação Lambert, mas sua contribuição
para a cor final é processada de forma diferente. O realce especular afeta cada superfície
na cena de forma diferente, com base na relação entre a direção da exibição, a direção
das fontes de luz e a orientação da superfície. É um produto da cor especular, do
potencial de reflexão e da orientação da superfície e a cor, intensidade e direção das
fontes de luz. As superfícies que refletem a fonte de luz diretamente no visualizador
recebem a contribuição especular máxima e as superfícies que refletem a fonte de luz
distante do visualizador não recebem nenhuma contribuição. No modelo de iluminação
de Phong, um ou mais componentes especulares são combinados para determinar a cor
e a intensidade do realce especular para cada ponto no objeto e, em seguida, são
adicionados ao resultado do modelo de iluminação de Lambert para produzir a cor final
do pixel.

Para obter mais informações sobre o modelo de iluminação de Lambert, confira Como
criar um sombreador Lambert básico.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Criar um sombreador Lambert, conforme descrito em Como criar um sombreador


Lambert básico.

2. Desconecte o nó Lambert do nó Cor Final. Escolha o terminal RGB do nó Lambert


e, em seguida, escolha Quebrar Links. Isso abre o espaço para o nó que será
adicionado na próxima etapa.

3. Adicione um nó Adicionar ao grafo. Na Caixa de Ferramentas, em Matemática,


selecione Adicionar e mova-a para a superfície de design.

4. Adicione um nó Especular ao gráfico. Na Caixa de Ferramentas, em Utilitário,


selecione Especular e mova-o para a superfície de design.

5. Adicione a contribuição especular. Mova o terminal de Saída do nó Especular para


o terminal X do nó Adicionar e, em seguida, mova o terminal de Saída do nó
Lambert para o terminal Y do nó Adicionar. Essas conexões combinam as
contribuições de cor difusa e especular totais para o pixel.

6. Conecte o valor de cor calculado à cor final. Mova o terminal de Saída do nó


Adicionar para o terminal RGB do nó Cor Final.
A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização
do sombreador aplicado a um modelo de bule.

7 Observação

Para demonstrar melhor o efeito do sombreador nesta ilustração, foi especificada


uma cor laranja usando o parâmetro MaterialDiffuse do sombreador e foi
especificado um acabamento de aparência metálica usando os parâmetros
MaterialSpecular e MaterialSpecularPower. Para mais informações sobre os
parâmetros materiais, veja Designer do Sombreador.

Determinadas formas podem fornecer melhores visualizações para alguns


sombreadores. Para saber mais sobre a visualização de sombreadores, consulte
Designer do Sombreador.

A ilustração a seguir mostra o sombreador que é descrito neste documento, aplicado a


um modelo 3D. A propriedade MaterialSpecular foi definida como (1,00, 0,50, 0,20,
0,00) e sua propriedade MaterialSpecularPower foi definida como 16.

7 Observação

A propriedade MaterialSpecular determina o acabamento aparente do material da


superfície. Uma superfície brilhante como vidro ou plástico tende a apresentar uma
cor especular com uma tonalidade clara de branco. Uma superfície metálica tende
a apresentar uma cor especular próxima de sua cor difusa. Uma superfície de
acabamento acetinado tende a apresentar uma cor especular com um tom de cinza
escuro.

A propriedade MaterialSpecularPower determina a intensidade dos realces


especulares. Alta potência especular simula realces mais opacos e localizados. A
potência especular muito baixa simula realces intensos e abrangentes que podem
saturar e ocultar a cor da superfície inteira.

Criar um sombreador de textura básica


Use o Designer do Sombreador e a DGSL (Directed Graph Shader Language) para criar
um sombreador de textura única. Esse sombreador define a cor final diretamente para
os valores RGB e alfa, cujas amostras são obtidas da textura.

Você pode implementar um sombreador de textura única básico ao gravar os valores de


cor e valores alfa de uma amostra de textura diretamente na cor de saída final.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um sombreador DGSL com o qual trabalhar. Para obter informações sobre
como adicionar um sombreador DGSL ao seu projeto, consulte a seção de
Introdução em Designer de Sombreador.
2. Exclua o nó Ponto de Cor. No modo de Seleção, selecione o nó Cor do Ponto e,
em seguida, na barra de menus, escolha Editar>Excluir. Isso abre o espaço para o
nó que será adicionado na próxima etapa.

3. Adicione um nó Amostra de Textura ao grafo. Na Caixa de Ferramentas, em


Textura, selecione Amostra de Textura e mova-a para a superfície de design.

4. Adicione um nó Coordenada de Textura ao grafo. Na Caixa de Ferramentas, em


Textura, selecione Coordenada de Textura e mova-a para a superfície de design.

5. Escolha uma textura para aplicar. No modo de Seleção, selecione o nó Amostra de


Textura e, em seguida, na janela Propriedades, especifique a textura que você
deseja usar através da propriedade Filename.

6. Torne a textura publicamente acessível. Selecione o nó Amostra de Textura e, em


seguida, na janela Propriedades, defina a propriedade Acesso como Público.
Agora é possível definir a textura de outra ferramenta, como o Editor de Modelo.

7. Conecte as coordenadas de textura à amostra de textura. No modo de Seleção,


mova o terminal de Saída do nó Coordenada de Textura para o terminal UV do nó
Amostra de Textura. Essa conexão retira uma amostra de textura nas coordenadas
especificadas.

8. Conecte a amostra de textura à cor final. Mova o terminal RGB do nó Amostra de


Textura para o terminal RGB do nó Cor Final e, em seguida, mova o terminal Alfa
do nó Amostra de Textura para o terminal Alfa do nó Cor Final.

A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização do


sombreador aplicado a um cubo.

7 Observação

Nesta ilustração foi usado um plano como a forma de visualização e foi


especificada uma textura para demonstrar melhor o efeito do sombreador.
Determinadas formas podem fornecer melhores visualizações para alguns
sombreadores. Para obter mais informações sobre como visualizar sombreadores no
Designer de Sombreador, consulte Designer de Sombreador

Criar um sombreador de textura em escala de


cinza
Use o Designer do Sombreador e a DGSL (Directed Graph Shader Language) para criar
um sombreador de textura em escala de cinza. Esse sombreador modifica o valor de cor
RGB da amostra de textura e, em seguida, usa-o junto com o valor alfa inalterado para
definir a cor final.

Você pode implementar um sombreador de textura em escala de cinza, modificando o


valor de cor de uma amostra de textura antes de gravá-lo na cor de saída final.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um sombreador de textura básico, conforme a descrição em Como criar um


sombreador de textura básico.

2. Desconecte o terminal RGB do nó Amostra de Textura do terminal RGB do nó Cor


Final. No modo de Seleção, escolha o terminal RGB do nó Amostra de Textura e,
em seguida, escolha Quebrar Links. Isso abre o espaço para o nó que será
adicionado na próxima etapa.
3. Adicione um nó Remover Saturação ao grafo. Na Caixa de Ferramentas, em
Filtros, selecione Remover Saturação e mova-o para a superfície de design.

4. Calcule o valor de escala de cinza usando o nó Remover Saturação. No modo de


Seleção, mova o terminal RGB do nó Amostra de Textura para o terminal RGB do
nó Remover Saturação.

7 Observação

Por padrão, o nó Remover Saturação remove totalmente a saturação da cor


de entrada e usa os pesos de luminância padrão para a conversão em escala
de cinza. Você pode alterar como o nó Remover Saturação se comporta,
alterando o valor da propriedade Luminância ou removendo apenas
parcialmente a saturação da cor de entrada. Para remover parcialmente a
saturação da cor de entrada, forneça um valor escalar no intervalo [0,1) para o
terminal Porcentagem do nó Remover Saturação.

5. Conecte o valor de cor em escala de cinza à cor final. Mova o terminal de Saída do
nó Remover Saturação para o terminal RGB do nó Cor Final.

A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização do


sombreador aplicado a um cubo.

Nesta ilustração foi usado um plano como a forma de visualização e foi especificada
uma textura para demonstrar melhor o efeito do sombreador. Determinadas formas
podem fornecer melhores visualizações para alguns sombreadores. Para saber mais
sobre a visualização de sombreadores, consulte Designer do Sombreador.
Criar um sombreador de gradiente com base
na geometria
Use o Designer do Sombreador e a Directed Graph Shader Language para criar um
sombreador de gradiente com base na geometria. Esse sombreador ajusta a escala de
um valor de cor RGB constante pela altura de cada ponto de um objeto no espaço de
mundo.

Você pode implementar um sombreador com base na geometria, incorporando a


posição do pixel ao sombreador. Em linguagens de sombreamento, um pixel contém
mais informações do que apenas a cor e o local em uma tela 2D. Um pixel, conhecido
como um fragmento em alguns sistemas, é uma coleção de valores que descrevem a
superfície que corresponde a um pixel. O sombreador descrito neste documento utiliza
a altura de cada pixel de um objeto 3D no espaço de mundo para afetar a cor de saída
final do fragmento.

Antes de começar, verifique se a janela Propriedades e a Caixa de Ferramentas estão


sendo exibidas.

1. Crie um sombreador DGSL com o qual trabalhar. Para obter informações sobre
como adicionar um sombreador DGSL ao seu projeto, consulte a seção de
Introdução em Sobre o Designer de Sombreador.
2. Desconectar o nó Ponto de Cor do nó Cor Final. Escolha o terminal RGB do nó
Ponto de Cor e, em seguida, escolha Quebrar Links. Isso abre o espaço para o nó
que será adicionado na próxima etapa.

3. Adicione um nó Multiplicar ao grafo. Na Caixa de Ferramentas, em Matemática,


selecione Multiplicar e mova-a para a superfície de design.

4. Adicionar um nó Vetor de Máscara ao grafo. Na Caixa de Ferramentas, em


Utilitário, selecione Vetor de Máscara e mova-o para a superfície de design.

5. Especifique os valores de máscara para o nó Vetor de Máscara. No modo de


Seleção, selecione o nó Vetor de Máscara e, em seguida, na janela Propriedades,
defina a propriedade Verde / Y como Verdadeiro e, em seguida, defina as
propriedades Vermelho / X, Azul / Z e Alfa / W como Falso. Neste exemplo, as
propriedades Vermelho / X, Verde / Y e Azul / Z correspondem aos componentes
x, y e z do nó Posição do Mundo e Alfa / W não é usada. Como somente Verde /
Y está definido como Verdadeiro, apenas o componente y do vetor de entrada
permanecerá depois que ele for mascarado.

6. Adicione um nó Posição do Mundo ao grafo. Na Caixa de Ferramentas, em


Constantes, selecione Posição do Mundo e mova para a superfície de design.

7. Mascarar a posição do espaço de mundo do fragmento. No modo de Seleção,


mova o terminal de Saída do nó Posição do Mundo para o terminal Vetor do nó
Vetor de Máscara. Essa conexão mascara a posição do fragmento para ignorar os
componentes x e z.

8. Multiplique a constante de cor RGB pela posição de espaço de mundo mascarada.


Mova o terminal RGB do nó Ponto de Cor para o terminal Y do nó Multiplicar e,
em seguida, mova o terminal de Saída do nó Vetor de Máscara para o terminal X
do nó Multiplicar. Essa conexão ajusta a escala do valor de cor pela altura do pixel
no espaço de mundo.

9. Conecte o valor de cor ajustado à cor final. Mova o terminal de Saída do nó


Multiplicar para o terminal RGB do nó Cor Final.

A ilustração a seguir mostra o grafo de sombreador concluído e uma visualização do


sombreador aplicado a uma esfera.

7 Observação

Nesta ilustração é especificada uma cor laranja para demonstrar melhor o efeito do
sombreador, mas como a forma de visualização não tem posição no espaço de
mundo, o sombreador não pode ser visualizado totalmente no Designer de
Sombreador. O sombreador deve ser visualizado em uma cena real para
demonstrar o efeito completo.

Determinadas formas podem fornecer melhores visualizações para alguns


sombreadores. Para saber mais sobre a visualização de sombreadores, consulte
Designer do Sombreador.

A ilustração a seguir mostra o sombreador que é descrito neste documento, aplicado a


uma cena 3D que é demonstrada em Como modelar um terreno 3D. A intensidade da
cor aumenta com a altura do ponto no mundo.
Para obter mais informações de como aplicar um sombreador a um modelo 3D, confira
Como aplicar um sombreador a um modelo 3D.

Próximas etapas
Como aplicar um sombreador a um modelo 3D
Como exportar um sombreador
Nós do Designer de Sombreador
Editor de Imagens
Exportar um sombreador
Artigo • 12/01/2024

Este artigo demonstra como usar o Designer de Sombreador para exportar um


sombreador da DGSL (Directed Graph Shader Language) para poder usá-lo em seu
aplicativo.

Exportar um sombreador
Depois de criar um sombreador usando o Designer de Sombreador é necessário
exportá-lo em um formato que seja compreendido pela API de gráficos antes de usá-lo
em seu aplicativo. Você pode exportar um sombreador de maneiras diferentes para
atender a necessidades diferentes.

1. No Visual Studio, abra um arquivo do Visual Shader Graph (.dgsl).

Se você não tiver um arquivo Visual Shader Graph (.dgsl) para abrir, crie um
conforme a descrição em Como criar um sombreador de cor básico.

2. Na barra de ferramentas Designer de Sombreador, escolha


Avançado>Exportar>Exportar Como. A caixa de diálogo Exportar Sombreador é
exibida.

3. Na lista suspensa Salvar como tipo, escolha o formato que você deseja exportar.

Aqui estão os formatos que você pode escolher:

Sombreador de Pixel HLSL (*.hlsl) Exporta o sombreador como código-fonte HLSL


(High Level Shader Language). Essa opção possibilita modificar o sombreador
posteriormente, mesmo depois que ele for implantado em um aplicativo. Isso
pode tornar mais fácil depurar e corrigir o código com base em problemas de
usuários finais, mas também torna mais fácil para um usuário modificar o
sombreador de formas indesejáveis, por exemplo, para obter uma vantagem
injusta em um jogo de competição. Isso também pode aumentar o tempo de
carregamento do sombreador.

Sombreador de Pixel Compilado (*.cso) Exporta o sombreador como um código


de bytes HLSL. Essa opção possibilita modificar o sombreador posteriormente,
mesmo depois que ele for implantado em um aplicativo. Isso pode tornar mais
fácil depurar e corrigir o código com base em problemas de usuários finais, mas
como o sombreador é pré-compilado, ele não incorre em sobrecarga adicional de
runtime quando o sombreador é carregado pelo aplicativo. Usuários
suficientemente habilidosos ainda podem modificar o sombreador de formas
indesejáveis, mas a compilação do sombreador torna isso muito mais difícil.

Cabeçalho C++ (*.h) Exporta o sombreador como um cabeçalho de estilo C que


define uma matriz de bytes que contém o código de bytes HLSL. Essa opção pode
fazer com que a depuração e correção do código com base em problemas do
usuário final se tornem mais demoradas porque o aplicativo tem que ser
recompilado para testar a correção. No entanto, como esta opção torna difícil, mas
não impossível, a modificação do sombreador depois de ser implantado em um
aplicativo, ela apresenta maior dificuldade para um usuário que deseja modificar o
sombreador de formas indesejáveis.

4. Na caixa de combinação Nome de arquivo, especifique um nome para o


sombreador exportado e, em seguida, escolha o botão Salvar.

Conteúdo relacionado
Como criar um sombreador de cor básico
Designer de Sombreador
Documentação das ferramentas XAML
O Visual Studio oferece várias ferramentas para você criar aplicativos baseados em
XAML. Isso inclui o editor e designer de XAML, além de recursos de depuração.

Saiba mais sobre XAML

e VISÃO GERAL

Visão geral do XAML

Usar o Designer XAML

e VISÃO GERAL

Projetar XAML no Visual Studio e no Blend

Sobre o Designer XAML

Dados do tempo de design XAML

Dados de exemplo do tempo de design XAML

Depurar XAML

e VISÃO GERAL

Escrever e depurar executando código XAML com Recarga Dinâmica

Detectar e resolver erros de vinculação de dados em projetos XAML

Capturar e editar a interface do usuário do aplicativo em tempo real com o Live Preview

Inspecionar propriedades XAML

Depurar aplicativos WPF

Depurar aplicativos UWP

Depurar XAML no Blend

Desenvolver aplicativos do WPF


e VISÃO GERAL

Visão geral do WPF

b COMEÇAR AGORA

Introdução ao WPF no Visual Studio

Desenvolver aplicativos UWP

e VISÃO GERAL

Visão Geral da UWP

b COMEÇAR AGORA

Introdução à UWP no Visual Studio


Visão geral das ferramentas XML no
Visual Studio
Artigo • 13/01/2024

Extensible Markup Language (XML) é uma linguagem de marcação que fornece um


formato para a descrição de dados. O XML separa os dados e sua apresentação usando
folhas de estilo associadas, como XSL (Extensible Stylesheet Language) e CSS (folhas de
estilo em cascata). O Visual Studio inclui ferramentas e recursos que facilitam trabalhar
com os esquemas XML, XSLT e XML.

Editor de XML
O editor de XML é usado para editar documentos XML. Ele fornece verificação completa
de sintaxe do XML, validação de esquema quando você digita, codificação por cores e
IntelliSense. Se um esquema ou um definição de tipo de documento forem fornecidos,
ele é usado pelo IntelliSense para listar os elementos e atributos permitidos.

Recursos adicionais incluem:

Suporte de snippet de XML, incluindo snippets gerados por esquema

Estrutura de tópicos de documento de modo que os elementos possam ser


expandidos e recolhidos

A capacidade de executar transformações XSLT e exibir os resultados como texto,


XML ou HTML

A capacidade de gerar esquemas da linguagem XSD do documento de instância


XML

Suporte para editar folhas de estilos XSLT, incluindo suporte a IntelliSense

XML Schema Explorer

Designer de Esquema XML


O XML Schema Designer está integrado com o Microsoft Visual Studio e o Editor de
XML para permitir que você trabalhe com esquemas da linguagem XSD.

Depuração de XSLT
O Visual Studio dá suporte a depuração de folhas de estilos XSLT. Usando o depurador,
você pode definir pontos de quebra em uma folha de estilos XSLT, entrar em uma folha
de estilos XSLT a partir do código, e assim por diante.

7 Observação

O depurador XSLT está disponível somente na edição Enterprise do Visual Studio.

Confira também
System.Xml
Transformações XSLT
Processar dados XML usando o modelo de dados XPath
XML Document Object Model (DOM)
SOM (Schema Object Model) XML
Ferramentas de contêiner no Visual
Studio

Ferramentas de Contêiner

e VISÃO GERAL

Ferramentas de contêiner no Visual Studio

Introdução

f INÍCIO RÁPIDO

Docker no Visual Studio

Executar ferramentas de compilação em um contêiner

Desenvolver aplicativos em contêiner

g TUTORIAL

Aplicativo de vários contêineres com o Docker Compose

Aplicativo do React.js em um contêiner

Depuração de aplicativos do Docker

Implantar contêineres do Docker

c GUIA DE INSTRUÇÕES

Implantar no Registro de Contêiner do Azure

Implantar no Serviço de Aplicativo do Azure

Implantar no Docker Hub


Implantar sem um Dockerfile

Tarefas de desenvolvimento de contêiner

c GUIA DE INSTRUÇÕES

Usar a janela Contêineres

Iniciar um subconjunto de serviços do Compose

Configurar o ambiente de compilação e depuração

Solucionar problemas de ferramentas de desenvolvimento de contêiner

Configurações de ferramentas de contêiner

i REFERÊNCIA

Configurações de inicialização de contêiner

Propriedades de contêiner no MSBuild

Propriedades do Docker Compose no MSBuild

Configurar ferramentas de contêiner

Desenvolvimento de Kubernetes

f INÍCIO RÁPIDO

Usar a Ponte para Kubernetes com o Visual Studio

e VISÃO GERAL

Como funciona a Ponte para Kubernetes


Desenvolver aplicativos com o Designer
de Fluxo de Trabalho
Artigo • 13/01/2024

O Designer de Fluxo de Trabalho é um designer visual e depurador para a construção


gráfica e depuração de aplicativos do WF (Windows Workflow Foundation) no Visual
Studio. Ele permite compor um aplicativo de fluxo de trabalho composto, uma
biblioteca de atividades ou um serviço WCF (Windows Communication Foundation) por
meio do uso de modelos e designers de atividades.

Instalar o Windows Workflow Foundation.


Para usar modelos de projeto de fluxo de trabalho no Visual Studio, primeiro instale o
componente Windows Workflow Foundation.

1. Abrir o Instalador do Visual Studio. Uma maneira rápida de abri-lo é selecionando


Ferramentas>Obter Ferramentas e Recursos no Visual Studio.

2. No Instalador do Visual Studio, selecione a guia Componentes individuais.

3. Role a tela até encontrar a categoria Atividades de desenvolvimento e selecione o


componente Windows Workflow Foundation.

4. Selecione Modificar.

O Visual Studio instala o componente Windows Workflow Foundation.


Conteúdo relacionado
Windows Workflow Foundation (.NET Framework)
Desenvolvimento móvel
multiplataforma no Visual Studio
Artigo • 10/01/2024

É possível criar aplicativos para dispositivos Android, iOS e Windows usando o Visual
Studio. Ao projetar seu aplicativo, use as ferramentas do Visual Studio para adicionar
serviços conectados com facilidade, como Microsoft 365, Serviço de Aplicativo do Azure
e Application Insights.

Compile seus aplicativos usando o C# e o .NET Framework, HTML e JavaScript ou o C++.


Compartilhe código, cadeias de caracteres, imagens e, em alguns casos, até mesmo a
interface do usuário.

Se você desejar criar um jogo ou aplicativo gráfico imersivo, instale as ferramentas do


Visual Studio para Unity e aproveite todos os recursos de produtividade avançados do
Visual Studio com o Unity, o mecanismo popular de jogos/elementos gráficos
multiplataforma e o ambiente de desenvolvimento para aplicativos executados no iOS,
Android, Windows e em outras plataformas.

Compilar um aplicativo para Android, iOS e


Windows (.NET Framework)

Com as Ferramentas do Visual Studio para Xamarin, é possível ter o Android, o iOS e o
Windows como destino na mesma solução, compartilhando o código e, até mesmo, a
interface do usuário.

ノ Expandir a tabela

Saiba mais

Instalar o Visual Studio (VisualStudio.com)

Saiba mais sobre o Xamarin no Visual Studio (VisualStudio.com)

Documentação de desenvolvimento de aplicativos móveis do Xamarin

DevOps com aplicativos Xamarin

Saiba mais sobre aplicativos universais do Windows no Visual Studio (VisualStudio.com)


Saiba mais

Saiba mais sobre as semelhanças entre o Swift e o C# (download.microsoft.com)

Ter o Android, iOS e Windows como destino por meio de


uma única base de código
É possível criar aplicativos nativos para Android, iOS e Windows usando o C# ou o F#
(no momento, não há suporte para o Visual Basic). Para começar, instale o Visual Studio
e selecione a opção Desenvolvimento móvel com .NET no instalador.

Caso já tenha o Visual Studio instalado, execute novamente o Instalador do Visual


Studio e selecione a mesma opção Desenvolvimento móvel com .NET para o Xamarin
(conforme mostrado anteriormente).

Quando terminar, os modelos de projeto serão exibidos na caixa de diálogo Novo


Projeto. A maneira mais fácil de encontrar modelos do Xamarin é simplesmente
pesquisar em “Xamarin”.

O Xamarin expõe a funcionalidade nativa do Android, do iOS e do Windows como


classes e métodos do .NET. Os aplicativos têm acesso completo a APIs nativas e
controles nativos e são tão responsivos quanto os aplicativos escritos nas linguagens da
plataforma nativa.

Depois de criar um projeto, você usará todos os recursos de produtividade do Visual


Studio. Por exemplo, você usará um designer para criar suas páginas e usará o
IntelliSense para explorar as APIs nativas das plataformas móveis. Quando estiver pronto
para executar o aplicativo e ver a aparência dele, use o emulador do SDK do Android e
execute aplicativos do Windows nativamente. Também é possível usar dispositivos
Android e Windows vinculados diretamente. Para projetos do iOS, conecte-se a um Mac
em rede e inicie o emulador do iOS no Visual Studio ou conecte-se a um dispositivo
vinculado.

Criar um conjunto de páginas que são renderizadas em todos os


dispositivos usando o Xamarin.Forms
Dependendo da complexidade do design dos aplicativos, você pode considerar criá-lo
usando os modelos do Xamarin.Forms no grupo Aplicativos Móveis dos modelos do
projeto. O Xamarin.Forms é um kit de ferramentas de interface do usuário que permite
criar uma única interface que pode ser compartilhada entre o Android, iOS e Windows.
Ao compilar uma solução do Xamarin.Forms, você terá um aplicativo Android, um
aplicativo iOS e um aplicativo Windows. Para obter mais informações, confira Saiba mais
sobre o desenvolvimento móvel com o Xamarin e Documentação do Xamarin.Forms.

Compartilhar código entre aplicativos Android, iOS e Windows

Se você não estiver usando o Xamarin.Forms e optar por criar para cada plataforma
individualmente, compartilhe a maior parte do código que não é da interface do usuário
entre os projetos de plataforma (Android, iOS e Windows). Isso inclui qualquer lógica de
negócios, integração de nuvem, acesso a banco de dados ou qualquer outro código
destinado ao .NET Framework. O único código que não pode ser compartilhado é
aquele que é destinado a uma plataforma específica.

Você pode compartilhar o código usando um projeto compartilhado, um projeto de


Biblioteca de Classes Portátil ou ambos. Você pode achar que alguns códigos ficam
melhores em um projeto compartilhado e outros em um projeto de Biblioteca de
Classes Portátil.

ノ Expandir a tabela

Saiba mais

Opções de compartilhamento de código (Xamarin)

Opções de compartilhamento de código com o .NET

Ter dispositivos Windows 10 como destino


Se você desejar criar um único aplicativo que se destina a toda a amplitude de
dispositivos Windows 10, crie um aplicativo universal do Windows. Você criará o
aplicativo usando um único projeto e as páginas serão renderizadas corretamente,
independentemente de qual dispositivo seja usado para exibi-las.

Comece com um modelo de projeto de aplicativo UWP (Plataforma Universal do


Windows). Crie as páginas visualmente e, em seguida, abra-as em uma janela de
visualização para ver como são exibidas em vários tipos de dispositivos. Se você não
gostar de como uma página é exibida em um dispositivo, poderá otimizá-la para que
ela se ajuste melhor ao tamanho da tela, à resolução ou a várias orientações, como
modo paisagem ou retrato. Você pode fazer tudo isso usando as janelas de ferramentas
intuitivas e as opções de menu facilmente acessíveis no Visual Studio. Quando estiver
pronto para executar o aplicativo e executar o código em etapas, você encontrará todos
os emuladores e simuladores de dispositivo para diferentes tipos de dispositivos juntos
em uma lista suspensa localizada na barra de ferramentas Padrão.

ノ Expandir a tabela

Saiba mais

Introdução à Plataforma Universal do Windows

Crie seu primeiro aplicativo

Desenvolver aplicativos para a UWP (Plataforma Universal do Windows)

Compilar um aplicativo para o Android, o iOS e


o Windows (C++)
Primeiro, instale o Visual Studio e a carga de trabalho Desenvolvimento móvel com
C++. Em seguida, é possível criar um aplicativo de atividade nativa para o Android ou
um aplicativo que se destina ao Windows ou ao iOS. É possível direcionar a mesma
solução ao Android, ao iOS e ao Windows se você desejar e, em seguida, compartilhar o
código entre eles usando uma biblioteca compartilhada multiplataforma estática ou
dinâmica.

Se você precisar criar um aplicativo para o Android que precisa de algum tipo de
manipulação avançada de elementos gráficos, como um jogo, poderá usar o C++ para
fazer isso. Comece com o projeto Aplicativo de atividade nativa (Android). Este projeto
tem suporte completo na cadeia de ferramentas Clang.

Quando estiver pronto para executar o aplicativo e ver a aparência dele, use o Android
Emulator. É rápido, confiável e fácil de instalar e configurar.
É possível ainda compilar um aplicativo direcionado a toda a amplitude de dispositivos
Windows 10 usando o C++ e um modelo de projeto de aplicativo da Plataforma
Universal do Windows (UWP). Leia mais sobre isso na seção Direcionar a dispositivos
Windows 10 mostrada anteriormente neste artigo.

É possível compartilhar o código C++ entre o Android, o iOS e o Windows criando uma
biblioteca compartilhada estática ou dinâmica.

É possível consumir essa biblioteca em um projeto do Windows, do iOS ou do Android,


como aqueles descritos anteriormente neste artigo. Você pode também consumi-la em
um aplicativo compilado usando o Xamarin, Java ou qualquer linguagem que permite
invocar funções em uma DLL não gerenciada.

Ao escrever o código nessas bibliotecas, é possível usar o IntelliSense para explorar as


APIs nativas das plataformas Android e Windows. Esses projetos de biblioteca são
totalmente integrados ao depurador do Visual Studio para que você possa definir
pontos de interrupção. Percorra o código, localize e corrija problemas usando todos os
recursos avançados do depurador.

ノ Expandir a tabela

Saiba mais

Baixar o Visual Studio (VisualStudio.com)


Saiba mais

Instalar desenvolvimento de tecnologia móvel multiplataforma com C++

Saiba mais sobre como usar o C++ para direcionar a várias plataformas (VisualStudio.com)

Instalar o que você precisa e, em seguida, criar um aplicativo de atividade nativa C++ para
Android

Saiba mais sobre o compartilhamento de código C++ com aplicativos Android e Windows
(VisualStudio.com)

Exemplos de desenvolvimento móvel multiplataforma para C++

Compilar um jogo multiplataforma para o


Android, o iOS e o Windows usando as
ferramentas do Visual Studio para Unity
As Ferramentas do Visual Studio para Unity são uma extensão gratuita do Visual Studio
que integram as ferramentas avançadas de edição de código, produtividade e
depuração do Visual Studio ao Unity, o mecanismo popular de jogos/elementos gráficos
de plataforma cruzada e o ambiente de desenvolvimento para aplicativos imersivos
destinados a Windows, iOS, Android e outras plataformas, incluindo a Web.

Com o VSTU (Ferramentas do Visual Studio para Unity), é possível usar o Visual Studio
para escrever scripts de jogo e editor em C# e, em seguida, usar seu depurador
avançado para encontrar e corrigir erros. A última versão do VSTU traz suporte para o
Unity 2019.4 e inclui a coloração de sintaxe da linguagem de sombreador ShaderLab do
Unity, uma melhor sincronização com o Unity, uma depuração mais avançada e uma
geração de código aprimorada para o assistente MonoBehavior. O VSTU também leva
seus arquivos de projeto do Unity, mensagens do console e a capacidade de iniciar seu
jogo para o Visual Studio, para que você possa gastar menos tempo mudando do e para
o Editor do Unity durante a escrita do código.
ノ Expandir a tabela

Saiba mais

Saiba mais sobre como criar jogos do Unity com o Visual Studio

Leia mais sobre as Ferramentas do Visual Studio para Unity

Começar a usar as Ferramentas do Visual Studio para Unity

Leia mais sobre as últimas melhorias à Visualização das Ferramentas do Visual Studio para Unity
2.0 (blog do Visual Studio)

Assista a um vídeo de introdução à Visualização das Ferramentas do Visual Studio para Unity
2.0 (Vídeo)

Saiba mais sobre o Unity (site do Unity)

Conteúdo relacionado
Adicionar APIs do Microsoft 365 a um projeto do Visual Studio
Serviços de Aplicativos do Azure – Aplicativos Móveis
Visual Studio App Center
Desenvolvimento do Office e do
SharePoint no Visual Studio
Artigo • 10/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode estender o Microsoft Office e o SharePoint criando um aplicativo ou


suplemento leve que os usuários baixam da Office Store ou de um catálogo
organizacional ou criando uma solução baseada no .NET Framework que os usuários
instalam em um computador.

Neste tópico:

Criar suplementos para o Office e o SharePoint

Criar um suplemento VSTO

Criar uma solução do SharePoint

Criar suplementos para o Office e o SharePoint


O Office 2013 e o SharePoint 2013 apresentam um novo modelo de suplemento que
ajuda você a criar, distribuir e monetizar suplementos que estendem o Office e o
SharePoint. Esses suplementos podem ser executados no Office ou no SharePoint
Online, e os usuários podem interagir com eles a partir de vários dispositivos.

Saiba como usar o novo modelo de Suplemento do Office para estender a experiência
do Office para seus usuários.

Esses suplementos têm dimensões pequenas em comparação com suplementos e


soluções VSTO, e você pode criá-los usando praticamente qualquer tecnologia de
programação da Web, como HTML5, JavaScript, CSS3 e XML. Para começar, use as
Ferramentas de Desenvolvedor do Office no Visual Studio, que permitem criar projetos,
escrever código e executar seus suplementos em um navegador.
Criar um suplemento do Office
Para estender a funcionalidade do Office, crie um suplemento do Office. É basicamente
uma página da Web hospedada em um aplicativo do Office, como Excel, Word, Outlook
e PowerPoint. Seu aplicativo pode adicionar funcionalidade a documentos, planilhas,
mensagens de email, compromissos, apresentações e projetos.

Você pode vender seu aplicativo na Office Store. A Office Store facilita a monetização
de seus suplementos, o gerenciamento de atualizações e o controle da telemetria. Você
também pode publicar seu aplicativo para usuários por meio de um aplicativo de
aplicativos no SharePoint ou no Exchange Server.

O seguinte aplicativo do Office mostra os dados da planilha em um mapa do Bing.


Saiba mais

Para Consulte

Saiba mais sobre os suplementos do Office e, em seguida, crie um. Suplementos do Office

Compare as diferentes maneiras pelas quais você pode estender o Mapa para Suplementos do
Office e decida se deve usar um aplicativo ou um suplemento do Office, VSTO e VBA
Office.

Criar um suplemento do SharePoint


Para estender o SharePoint para seus usuários, crie um suplemento do SharePoint. É
basicamente um aplicativo pequeno, fácil de usar e autônomo que resolve uma
necessidade para seus usuários ou negócios.

Você pode vender seu aplicativo para SharePoint na Office Store . Você também pode
publicar seu suplemento para usuários por meio de um catálogo de suplementos no
SharePoint. Os proprietários de sites podem instalar, atualizar e desinstalar seu
suplemento em seus sites do SharePoint sem a ajuda de um servidor de farm ou
administrador de conjunto de sites.

Aqui está um exemplo de um aplicativo para SharePoint que ajuda os usuários a


gerenciar contatos comerciais.

Saiba mais
Para Consulte

Saiba mais sobre os suplementos do SharePoint e, Suplementos do SharePoint


em seguida, crie um.

Compare suplementos para SharePoint com Suplementos do SharePoint em comparação


soluções tradicionais do SharePoint. com soluções do SharePoint

Escolha se deseja criar um suplemento do Decidir entre Suplementos do SharePoint e


SharePoint ou uma solução do SharePoint. soluções do SharePoint

Criar um suplemento VSTO


Crie um suplemento VSTO para direcionar o Office 2007 ou o Office 2010 ou para
estender o Office 2013 e o Office 2016 além do que é possível com os suplementos do
Office. Os suplementos VSTO são executados somente na área de trabalho. Os usuários
precisam instalar suplementos do VSTO, portanto, normalmente são mais difíceis de
implantar e suportar. No entanto, seu suplemento VSTO pode ser integrado mais
estreitamente com o Office. Por exemplo, ele pode adicionar controles à Faixa de
Opções do Office e executar tarefas de automação avançadas como mesclar
documentos ou modificar gráficos. Você pode aproveitar o .NET Framework e usar o C#
e o Visual Basic para interagir com objetos do Office.

Aqui está um exemplo do que um suplemento VSTO pode fazer. Este suplemento VSTO
adiciona controles da Faixa de Opções, um painel de tarefas personalizado e uma caixa
de diálogo ao PowerPoint.
Saiba mais

To Ler

Compare as diferentes maneiras pelas quais você pode estender Mapa para Suplementos do
o Office e decida se deve usar um suplemento VSTO ou um Office, VSTO e VBA
suplemento do Office.

Crie um suplemento VSTO. Compilação de suplementos


VSTO com o Visual Studio

Criar uma solução do SharePoint


Crie uma solução do SharePoint para direcionar o SharePoint Foundation 2010 e o
SharePoint Server 2010 ou para estender o SharePoint 2013 e o SharePoint 2016 de
maneiras além do que é possível com um suplemento do SharePoint.

Soluções do SharePoint exigem servidores de farm do SharePoint no local. Os


administradores devem instalá-los e, como soluções são executada no SharePoint,
podem afetar o desempenho do servidor. No entanto, soluções fornecem maior acesso
a objetos do SharePoint. Além disso, quando você cria uma solução do SharePoint, pode
utilizar o .NET Framework e usar C# e Visual Basic para interagir com objetos do
SharePoint.

Saiba mais

Para Consulte

Compare soluções do SharePoint com Suplementos do SharePoint em comparação com


suplementos do SharePoint. soluções do SharePoint

Criar uma solução do SharePoint. Criar soluções do SharePoint


Trabalhar com dados no Visual Studio
Artigo • 14/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

No Visual Studio, crie aplicativos que se conectam aos dados em praticamente qualquer
serviço ou produto de banco de dados, em qualquer formato, em qualquer lugar em um
computador local, em uma rede local ou em uma nuvem pública, privada ou híbrida.

Para aplicativos em JavaScript, Python, PHP, Ruby ou C++, conecte-se a dados como se
fizesse qualquer outra coisa, obtendo bibliotecas e escrevendo código. Para aplicativos
.NET, o Visual Studio fornece ferramentas que você pode usar para explorar fontes de
dados, criar modelos de objeto para armazenar e manipular dados na memória e
associar dados à interface do usuário. O Microsoft Azure fornece SDKs para .NET, Java,
Node.js, PHP, Python, Ruby e aplicativos móveis e ferramentas no Visual Studio para se
conectar ao Armazenamento do Azure.

Usando os Serviços conectados do Visual Studio, é possível simplificar o processo de


adição de suporte de banco de dados aos seus projetos.

Para cenários de SQL Server, oferecemos suporte por meio dos Serviços Conectados:

SQL Server local. Nesse cenário, você instala o SQL Server em algum lugar da rede
local e se conecta a ele.
SQL Server no seu computador local. Nesse cenário, você instala o SQL Server no
computador local e se conecta a ele.
LocalDB do SQL Server Express. Não instale nada além do Visual Studio. Apenas se
conecte a ele.
SQL Server Express LocalDB no Contêiner. LocalDB como na opção anterior, mas
dentro de um contêiner local.
Azure SQL Server DB. Conecte-se ao serviço em execução no Azure.

Para outras tecnologias relacionadas a dados, o Visual Studio 2022 oferece suporte a:

Armazenamento do Azure (local e remoto)


Azure Cosmos DB (local e remoto)
SQLite (opção somente local)
PostgreSQL no contêiner (opção somente local)
MongoDB no contêiner (opção somente local)

Diferente dos Serviços Conectados, as listas a seguir mostram apenas alguns dos muitos
sistemas de armazenamento e banco de dados que podem ser usados no Visual Studio.
As ofertas do Microsoft Azure são serviços de dados que incluem todo o
provisionamento e a administração do armazenamento de dados subjacente. A carga de
trabalho de desenvolvimento do Azure no Visual Studio permite que você trabalhe
com armazenamentos de dados do Azure diretamente do Visual Studio.

A maioria dos outros produtos de banco de dados SQL e NoSQL listados aqui pode ser
hospedada em um computador local, em uma rede local ou no Microsoft Azure em uma
máquina virtual. Se hospedar o banco de dados em uma máquina virtual do Microsoft
Azure, você será responsável por gerenciar o próprio banco de dados.

Microsoft Azure

SQL Data Warehouse


SQL Server Stretch Database
StorSimple
E muito mais…

SQL

Firebird
MariaDB
MySQL
Oracle
E muito mais…

NoSQL

Apache Cassandra
CouchDB
MongoDB
NDatabase
OrientDB|
RavenDB
VelocityDB
E muito mais…

7 Observação
O suporte estendido para o SQL Server 2005 terminou em 12 de abril de 2016. Não
há garantia de que as ferramentas de dados no Visual Studio 2015 e posterior
continuarão a funcionar com SQL Server 2005. Para obter mais informações,
consulte o comunicado de fim do suporte para SQL Server 2005 .

Linguagens .NET
A tecnologia de acesso a dados descrita na documentação do Visual Studio usa
ADO.NET. ADO.NET é uma estrutura de acesso a dados herdada que não é
recomendada para aplicativos de dados modernos. Recomenda-se utilizar o .NET Core
ou o .NET 5 e versões mais recentes, além do Entity Framework Core, para o
desenvolvimento de acesso a dados.

O ADO.NET é um conjunto de classes que define uma interface para acessar qualquer
tipo de fonte de dados, seja relacional ou não relacional. O Visual Studio tem várias
ferramentas e designers que trabalham com ADO.NET para ajudá-lo a se conectar a
bancos de dados, manipular os dados e apresentar os dados ao usuário. A
documentação nesta seção descreve como usar essas ferramentas. Você também pode
programar diretamente nos objetos de comando ADO.NET. Para obter mais informações
sobre como chamar as APIs do ADO.NET diretamente, consulte ADO.NET.

Para obter a documentação de acesso a dados relacionada a ASP.NET, consulte


Trabalhando com dados no site do ASP.NET. Para obter um tutorial sobre como usar o
Entity Framework com MVC do ASP.NET, consulte Introdução ao Entity Framework 6
Code First usando o MVC 5.

Os aplicativos da Plataforma Universal do Windows (UWP) em C# ou Visual Basic podem


usar o SDK do Microsoft Azure para .NET para acessar o Armazenamento do Azure e
outros serviços do Azure. A classe Windows.Web.HttpClient permite a comunicação com
qualquer serviço RESTful. Para obter mais informações, consulte Como se conectar a um
servidor HTTP usando Windows.Web.Http.

Para o armazenamento de dados no computador local, a abordagem recomendada é


usar o SQLite, que é executado no mesmo processo que o aplicativo. Se uma camada
ORM (mapeamento relacional de objeto) for necessária, é possível usar o Entity
Framework. Para obter mais informações, consulte Acesso a dados na Central de
Desenvolvedores do Windows.

Se você estiver se conectando aos serviços do Azure, baixe as ferramentas mais recentes
do SDK do Azure .
Provedores de dados
Para que um banco de dados seja consumível em ADO.NET, deve ter um provedor de
dados de ADO.NET personalizado ou então deve expor uma interface ODBC ou OLE DB.
A Microsoft fornece uma lista de provedores de dados ADO.NET para produtos SQL
Server, bem como provedores ODBC e OLE DB.

7 Observação

Se estiver usando o Visual Studio para se conectar a bancos de dados dos


provedores de dados OLEDB ou ODBC, é preciso estar ciente de que as versões do
Visual Studio anteriores ao Visual Studio 2022 são todos processos de 32 bits.
Dessa forma, algumas das ferramentas de dados do Visual Studio somente poderão
se conectar a bancos de dados OLEDB ou ODBC usando provedores de dados de
32 bits. Assim, inclui o provedor de dados OLEDB de 32 bits do Microsoft Access,
bem como outros provedores terceiros de 32 bits.

Se você estiver usando o Visual Studio 2022 para se conectar a bancos de dados,
precisará estar ciente de que o Visual Studio 2022 é um processo de 64 bits. Assim,
algumas das ferramentas de dados do Visual Studio não poderão se conectar a
bancos de dados OLEDB ou ODBC usando provedores de dados de 32 bits.

Se você precisar manter aplicativos de 32 bits que se conectam aos bancos de


dados OLEDB ou ao ODBC, ainda é possível criar e executar o aplicativo com o
Visual Studio 2022. No entanto, se você precisar usar qualquer uma das
Ferramentas de Dados do Visual Studio, como o Gerenciador de Servidores, o
Assistente de Fonte de Dados ou o Designer de Conjunto de Dados, precisará usar
uma versão anterior do Visual Studio que ainda seja um processo de 32 bits. A
última versão do Visual Studio que é um processo de 32 bits é o Visual Studio 2019.

Se você planeja converter o projeto para um processo de 64 bits, é recomendável


usar o Mecanismo de Banco de Dados do Microsoft Access de 64 bits, também
chamado de ACE (Mecanismo de Conectividade do Access). Confira Provedor OLE
DB para Jet e Driver ODBC são versões exclusivas de 32 bits para obter mais
informações.

Modelagem de dados
No .NET, você tem três opções para modelar e manipular dados na memória depois de
recuperá-los de uma fonte de dados:
Entity Framework: a tecnologia ORM preferencial da Microsoft. É possível usar para
programar dados relacionais como objetos .NET de primeira classe. Para novos
aplicativos, deve ser a primeira opção padrão quando um modelo é necessário. Requer
suporte personalizado do provedor de ADO.NET subjacente.

LINQ to SQL: um mapeador relacional de objeto de geração anterior. Ele funciona bem
para cenários menos complexos, mas não está mais em desenvolvimento ativo.

Conjunto de dados: a mais antiga das três tecnologias de modelo. Foi criado
principalmente para o desenvolvimento rápido de aplicativos "formulários sobre dados",
nos quais você não processa grandes quantidades de dados ou executa consultas ou
transformações complexas. Um objeto DataSet consiste em objetos DataTable e
DataRow que logicamente se assemelham a objetos de banco de dados SQL muito mais
do que objetos .NET. Para aplicativos relativamente simples com base em fontes de
dados SQL, os conjuntos de dados ainda podem ser uma boa opção.

Não há nenhum requisito para usar nenhuma dessas tecnologias. Em alguns cenários,
especialmente quando o desempenho é crítico, você pode simplesmente usar um
objeto DataReader para ler do banco de dados e copiar os valores necessários para um
objeto de coleção, como List<T>.

C++ nativo
Os aplicativos C++ que se conectam a SQL Server devem usar o Microsoft® ODBC
Driver 13.1 para SQL Server na maioria dos casos. Se os servidores estiverem
vinculados, o OLE DB será necessário e, para isso, você usará o SQL Server Native Client.
É possível acessar outros bancos de dados usando drivers ODBC ou OLE DB
diretamente. O ODBC é a interface de banco de dados padrão atual, mas a maioria dos
sistemas de banco de dados oferece uma funcionalidade personalizada que não pode
ser acessada por meio da interface ODBC. O OLE DB é uma tecnologia herdada de
acesso a dados COM que ainda tem suporte, mas não é recomendada para novos
aplicativos. Para obter mais informações, confira Acesso a dados no Visual C++.

Os programas C++ que consomem serviços REST podem usar o SDK REST do C++ .

Programas C++ que funcionam com Armazenamento do Microsoft Azure podem usar o
Cliente Armazenamento do Microsoft Azure .

Modelagem de dados – o Visual Studio não oferece uma camada ORM para C++.
ODB é um ORM de código aberto popular para C++.

Para saber mais sobre como se conectar a bancos de dados de aplicativos C++, consulte
Ferramentas de dados do Visual Studio para C++. Para obter mais informações sobre
tecnologias herdadas de acesso a dados do Visual C++, consulte Acesso a dados.

JavaScript
O JavaScript no Visual Studio é uma linguagem de primeira linha para a criação de
aplicativos multiplataforma, aplicativos UWP, serviços de nuvem, sites e aplicativos Web.
Você pode usar Bower, Grunt, Gulp, npm e NuGet de dentro do Visual Studio para
instalar suas bibliotecas JavaScript favoritas e produtos de banco de dados. Conecte-se
ao armazenamento e aos serviços do Azure baixando SDKs do site do Azure . Edge.js é
uma biblioteca que conecta o JavaScript (Node.js) do lado do servidor a fontes de dados
ADO.NET.

Python
Instale o suporte do Python no Visual Studio para criar aplicativos Python. A
documentação do Azure tem vários tutoriais sobre como se conectar a dados, incluindo
o seguinte:

Django e SQL Database no Azure


Django e MySQL no Azure
Trabalhe com blobs, arquivos, filas e tabelas (Cosmo DB).

Tópicos relacionados
Plataforma de IA da Microsoft – Fornece uma introdução à nuvem inteligente da
Microsoft, incluindo o Cortana Analytics Suite e o suporte para Internet das Coisas.

Armazenamento do Microsoft Azure - descreve o armazenamento do Azure e como


criar aplicativos que usam blobs, tabelas, filas e arquivos do Azure.

Banco de Dados SQL do Azure – descreve como se conectar ao banco de dados SQL do
Azure, um banco de dados relacional como serviço.

SQL Server Data Tools – descreve as ferramentas que simplificam o design, a exploração,
o teste e a implantação de aplicativos e bancos de dados conectados a dados.

ADO.NET - descreve a arquitetura do ADO.NET e como usar as classes do ADO.NET para


gerenciar dados de aplicativo e interagir com fontes de dados.

ADO.NET Entity Framework – descreve como criar aplicativos de dados que permitem
aos desenvolvedores programar em um modelo conceitual em vez de diretamente em
um banco de dados relacional.
WCF Data Services 4.5 - descreve como usar o WCF Data Services para implantar
serviços de dados na Web ou em uma intranet que implementa o Open Data Protocol
(OData) .

Dados em Soluções do Office – contém links para tópicos que explicam como os dados
funcionam nas soluções do Office. Inclui informações sobre programação orientada a
esquema, cache de dados e acesso a dados do lado do servidor.

LINQ (Consulta Integrada à Linguagem) — descreve os recursos de consulta integrados


ao C# e ao Visual Basic e o modelo comum para consultar bancos de dados relacionais,
documentos XML, conjuntos de dados e coleções na memória.

Ferramentas XML no Visual Studio – discute o trabalho com dados XML, a depuração de
XSLT, os recursos do XML do .NET e a arquitetura da consulta XML.

Dados e documentos XML - fornece uma visão geral sobre um conjunto abrangente e
integrado de classes que funcionam com documentos e dados XML no .NET.
Recursos para criar aplicativos acessíveis
Artigo • 13/01/2024

Saiba mais sobre as tecnologias compatíveis com o design acessível. Também incluímos
dicas e links para tutoriais que podem ajudar você a desenvolver aplicativos e sites
acessíveis para o Windows.

7 Observação

Saiba mais sobre como desenvolvemos produtos que capacitam a todos em


Acessibilidade da Microsoft .

Tecnologias
Microsoft Active Accessibility Uma tecnologia baseada em COM que melhora a
acessibilidade auxilia no trabalho com aplicativos em execução no Microsoft
Windows. Ela fornece bibliotecas de vínculo dinâmico que são incorporadas ao
sistema operacional e a uma interface COM. Ela também tem elementos de
programação de aplicativo que fornecem métodos para expor informações sobre
os elementos de interface do usuário. Para obter mais informações, confira
Acessibilidade ativa da Microsoft.

Tecnologias de fala do Microsoft .NET O SDK de Fala do Microsoft .NET oferece


um conjunto de controles Microsoft ASP.NET, um suplemento de Fala do Microsoft
Internet Explorer, aplicativos de exemplo e documentação. Os desenvolvedores da
Web podem usar essas ferramentas para criar, depurar e implantar aplicativos
ASP.NET habilitados para fala. As ferramentas são integradas diretamente ao
Microsoft Visual Studio, permitindo que os desenvolvedores trabalhem no
ambiente de desenvolvimento familiar. Para obter mais informações, confira
Speech server (Servidor de fala).

Noções básicas sobre SAMI 1.0 A tecnologia SAMI (Intercâmbio de Mídia Acessível
Sincronizado) da Microsoft oferece uma maneira para os desenvolvedores criar
legenda de conteúdo de áudio para multimídia de PC. Para saber mais, consulte
Noções básicas sobre SAMI 1.0.

Aplicativos do Windows
Passo a passo: criando um aplicativo acessível baseado em Windows Este artigo
fornece instruções passo a passo para incluir os cinco requisitos de acessibilidade
para o logotipo "Certified for Windows" em um aplicativo do Windows de
exemplo.

Diretrizes para design da interface do usuário do teclado Este artigo técnico


descreve como criar um aplicativo do Windows para o qual os usuários possam
navegar do teclado. Para obter mais informações, confira Guidelines for keyboard
user interface design (Diretrizes para o design da interface do usuário do teclado).

Acessibilidade do console Esse artigo técnico descreve as APIs e os eventos


usados para expor o console no Windows XP para auxílios de acessibilidade. Para
obter mais informações, confira Acessibilidade do console.

Sites
Passo a passo: diretrizes de acessibilidade para usar Controles de Imagem,
Controles Menu e AutoPostBack Este artigo apresenta instruções passo a passo
para incluir controles acessíveis em uma página da Web de exemplo. Ele também
fornece algumas dicas de design de acessibilidade para a Web.

Como criar páginas da Web acessíveis com DHTML Esse artigo técnico lista os
elementos HTML 4.0 acessíveis, bem como dicas de Web design acessíveis. Para
obter mais informações, confira Create accessible web pages with DHTML (Criar
páginas da Web acessíveis com DHTML).

Recursos de terceiros
Iniciativa de Acessibilidade na Web do W3C (World Wide Web Consortium) Esse
site apresenta diretrizes e técnicas para o desenvolvimento de site acessível. Para
obter mais informações, consulte https://www.w3.org/WAI/GL/ .

Conteúdo relacionado
Recursos de acessibilidade do Visual Studio
Acessibilidade para Visual Studio para Mac
Desenvolver aplicativos localizados e
globalizados
Artigo • 16/01/2024

O Visual Studio facilita o desenvolvimento para um público-alvo internacional,


aproveitando os serviços internos do .NET.

Por exemplo, o sistema do projeto dos aplicativos Windows Forms pode gerar arquivos
de recurso para a cultura de interface do usuário de fallback e para cada cultura de
interface do usuário adicional. Ao compilar um projeto no Visual Studio, os arquivos de
recursos são compilados do formato XML do Visual Studio (.resx) para um formato
binário intermediário (.resources), que são então inseridos em assemblies satélites. Para
obter mais informações, consulte Arquivos de recurso no Visual Studio e Criar
assemblies satélite para aplicativos da área de trabalho.

Linguagens bidirecionais
É possível usar o Visual Studio para criar aplicativos que exibem o texto corretamente
em idiomas escritos da direita para a esquerda, incluindo árabe e hebraico. Para alguns
recursos, é possível apenas definir as propriedades. Em outros casos, é necessário
implementar recursos no código.

7 Observação

Para inserir e exibir idiomas bidirecionais, você precisa trabalhar com uma versão
do Windows que está configurada com o idioma apropriado. Essa pode ser uma
versão em inglês do Windows com o pacote de idioma apropriado instalado, ou a
versão localizada do Windows.

Aplicativos que dão suporte a idiomas bidirecionais


Aplicativos do Windows

É possível criar aplicativos totalmente bidirecionais que incluem suporte para texto
bidirecional, sentido de leitura da direita para a esquerda e espelhamento
(reversão do layout de janelas, menus, caixas de diálogo e assim por diante). Com
exceção do espelhamento, esses recursos estão disponíveis por padrão ou como
configurações de propriedades. Há suporte inerente para o espelhamento em
alguns recursos, como caixas de mensagem. No entanto, em outros casos, é
necessário implementar o espelhamento no código. Para obter mais informações,
confira Suporte bidirecional para aplicativos do Windows Forms.

Aplicativos Web

Os serviços Web dão suporte ao recebimento e ao envio de textos UTF-8 e


Unicode, tornando-os adequados para aplicativos que envolvem idiomas
bidirecionais. Os aplicativos cliente Web dependem de navegadores para sua
interface do usuário e, portanto, o grau de suporte bidirecional em um aplicativo
Web depende do nível de suporte do navegador do usuário a essas
funcionalidades bidirecionais. No Visual Studio, é possível criar aplicativos com
suporte para texto em árabe ou hebraico, sentido de leitura da direita para a
esquerda, codificação de arquivos e configurações da cultura local. Para saber
mais, confira Suporte bidirecional para aplicativos Web ASP.NET.

7 Observação

Os aplicativos de console não incluem o suporte de texto para idiomas


bidirecionais. Esta é uma consequência de como o Windows funciona com
aplicativos de console.

Confira também
Suporte para idiomas bidirecionais no Visual Studio
Globalizar e localizar aplicativos .NET
Recursos em aplicativos .NET
Compilar e criar no Visual Studio
Artigo • 18/01/2024

Para obter uma introdução à compilação com o IDE, veja Passo a passo: Criação de um
aplicativo.

Você pode usar qualquer um dos métodos a seguir para compilar um aplicativo: o IDE
do Visual Studio, as ferramentas de linha de comando do MSBuild, e o Azure Pipelines:

ノ Expandir a tabela

Método de build Benefícios

IDE – Criar compilações imediatamente e testá-las em um depurador.


– Executar builds em multiprocessador para projetos C++ e C#.
– Personalizar diferentes aspectos do sistema de build.

CMake – Criar projetos C++ usando a ferramenta CMake


– Usar o mesmo sistema de build em plataformas Linux e Windows.

Linha de comando – Criar projetos sem instalar o Visual Studio.


do MSBuild – Executar builds em multiprocessador para todos os tipos de projeto.
– Personalizar a maioria das áreas do sistema de build.

Azure Pipelines – Automatizar o processo de build como parte de um pipeline de integração


contínua/entrega contínua.
– Aplicar testes automatizados com cada compilação.
– Empregar recursos baseados em nuvem praticamente ilimitados para
processos de build.
– Modificar o fluxo de trabalho de compilação e, conforme necessário, criar
atividades de compilação para realizar tarefas profundamente
personalizadas.

A documentação nesta seção detalha mais o processo de compilação baseado no IDE.


Para obter mais informações sobre os outros métodos, confira CMake, MSBuild e Azure
Pipelines, respectivamente.

Compilando no IDE
Quando você cria um projeto, o Visual Studio cria configurações de compilação padrão
para o projeto e para a solução que contém o projeto. Essas configurações definem a
maneira como as soluções e os projetos são criados e implantados. Configurações de
projeto, em particular, são exclusivas a uma plataforma de destino (por exemplo, o
Windows ou Linux) e tipo de build (por exemplo, depuração ou lançamento). Você pode
editar essas configurações como quiser e também pode criar suas próprias
configurações, conforme necessário.

Para obter uma introdução à compilação com o IDE, veja Passo a passo: Criação de um
aplicativo.

Em seguida, consulte Compilando e limpando projetos e soluções no Visual Studio para


saber mais sobre as diferentes personalizações que você pode fazer no processo. As
personalizações incluem alterar diretórios de saída, especificar eventos de build
personalizados, gerenciar dependências do projeto, gerenciar arquivos de log de build e
suprimir avisos do compilador.

A partir daí, você pode explorar uma variedade de outras tarefas:

Noções sobre configurações de build


Configurar projetos para plataformas de destino
Gerenciar propriedades de solução e de projeto.
Especificar eventos de build em C# e Visual Basic.
Definir opções de build
Compilar vários projetos paralelamente.

Conteúdo relacionado
Criar (compilar) projetos de site
Compilar e criar (Visual Studio para Mac)
Projetos do CMake no Visual Studio
Tutorial: Compilar um aplicativo
Artigo • 02/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, familiarize-se com várias opções que você pode configurar ao compilar
aplicativos com o Visual Studio. Você criará uma configuração de build personalizada,
ocultará determinadas mensagens de aviso e aumentará as informações de saída de
build de um aplicativo de exemplo.

Instalar o aplicativo de exemplo


O código de exemplo usado no tutorial está em exemplos do WPF . Para clonar o
repositório, use o botão Clonar verde do GitHub e escolha Clonar no Visual Studio.
Você pode escolher o local no disco rígido local para criar uma cópia do conteúdo do
repositório. O repositório contém muitas soluções. Se o Visual Studio abrir uma delas,
feche a solução, escolha Abrir projeto ou solução, navegue até o local onde você
clonou o repositório e, nele, procure por
GettingStarted/WalkthroughFirstWPFApp/csharp/ExpenseItIntro.sln para trabalhar em C#
ou por GettingStarted/WalkthroughFirstWPFApp/vb/ExpenseItIntro2.sln para trabalhar no
Visual Basic.

Criar uma configuração de build personalizada


Quando você cria uma solução, as configurações de Depuração e Versão de build, bem
como seus destinos de plataforma padrão, são definidas para a solução
automaticamente. Depois, é possível personalizar essas configurações ou criar suas
próprias. As configurações de build especificam o tipo de build. As plataformas de build
especificam o sistema operacional que um aplicativo tem como destino para a
configuração. Para obter mais informações, confira Noções básicas sobre configurações
de build, Configurar projetos para plataformas de destino e Como definir as
configurações de depuração e versão.

É possível alterar ou criar configurações e configurações de plataforma por meio da


caixa de diálogo Configuration Manager. Neste procedimento, você criará uma
configuração de build para testes.

Criar uma configuração de build


1. Abra a caixa de diálogo Configuration Manager.

2. Na lista Configuração da solução ativa, escolha <Nova....>.

3. Na caixa de diálogo Nova Configuração da Solução, dê à nova configuração o


nome Test , copie as configurações da configuração Depuração existente e, em
seguida, escolha o botão OK.
4. Na coluna Plataforma, expanda a lista suspensa e escolha <Nova...> para criar
uma nova plataforma de projeto.

5. Na caixa de diálogo Nova Plataforma de Projeto, escolha x64 e não copie as


configurações da plataforma x86.
Se a plataforma de solução x64 já existir, desmarque a caixa Criar plataforma de
solução ativa.

6. Clique no botão OK.

A configuração da solução ativa foi alterada para Teste com a plataforma da


solução ativa definida como x64.

7. Escolha Fechar.

É possível verificar ou alterar de forma rápida a configuração da solução ativa usando a


lista Configurações da Solução na barra de ferramentas Padrão.
7 Observação

Se você não vir a configuração da solução ativa ou a plataforma ativa mostrada na


barra de ferramentas, selecione o pequeno ícone em forma de seta na extremidade
direita da barra de ferramentas e, em seguida, selecione Adicionar ou Remover
botões. Certifique-se de que as Configurações da Solução e Plataformas de
Soluções estejam habilitadas.

Compilar o aplicativo
Em seguida, você compilará a solução com a configuração de build personalizada.

Compilar a solução
Na barra de menus, escolha Compilar>Compilar Solução ou pressione
Ctrl+Shift+B.

A Janela de Saída exibe os resultados do build. O build foi bem-sucedido.

Ocultar avisos do compilador


Em seguida, apresentaremos alguns códigos que fazem com que um aviso seja gerado
pelo compilador.

1. No projeto de C#, abra o arquivo ExpenseReportPage.xaml.cs. No método


ExpenseReportPage, adicione o seguinte código: int i; .

OU

No projeto do Visual Basic, abra o arquivo ExpenseReportPage.xaml.vb. No


construtor personalizado Public Sub New..., adicione o seguinte código: Dim i .

2. Compile a solução.
A Janela de Saída exibe os resultados do build. O build foi bem-sucedido, mas foram
gerados avisos:

Temporariamente, é possível ocultar determinadas mensagens de aviso durante um


build, em vez de deixá-las acumular a saída do build.

Ocultar um aviso específico do C#


1. No Gerenciador de Soluções, escolha o nó do projeto de nível superior.

2. Na barra de menus, escolha Exibir>Páginas de Propriedade.

O Designer de Projeto é aberto.

3. Escolha a guia ou a seção Compilar e, em seguida, na caixa Suprimir avisos,


especifique o número de aviso 0168. Se outros avisos já estiverem listados, use um
ponto e vírgula como separador.
Para obter mais informações, consulte Página Build, Designer de Projeto (C#).

4. Compile a solução usando Compilar > Recompilar Solução.

A janela Saída exibe apenas informações de resumo da compilação (sem avisos).

Suprimir todos os avisos de build do Visual Basic


1. No Gerenciador de Soluções, escolha o nó do projeto de nível superior.

2. Na barra de menus, escolha Exibir>Páginas de Propriedade.

O Designer de Projeto é aberto.

3. Na página Compilar, marque a caixa de seleção Desabilitar todos os avisos.


Para obter mais informações, consulte Configurar avisos no Visual Basic.

4. Compile a solução. Se ela não for recompilada, compile a solução usando


Compilar > Recompilar Solução.

A janela Saída exibe apenas informações de resumo da compilação (sem avisos).

Para obter mais informações, consulte Como suprimir avisos do compilador.

Exibir detalhes de build adicionais na janela


Saída
É possível alterar a quantidade de informações sobre o processo de build exibidas na
Janela de Saída. Geralmente, os detalhes de build são definidos como Mínimos, o que
significa que a janela Saída exibe apenas um resumo do processo de build, junto com
os avisos de prioridade alta ou erros. Exiba mais informações sobre o build usando a
caixa de diálogo Opções, Projetos e Soluções, Compilar e Executar.

) Importante

Se você exibir mais informações, o build levará mais tempo para ser concluído.
Alterar a quantidade de informações na janela Saída
1. Abra a caixa de diálogo Opções.

2. Escolha a categoria Projetos e Soluções e, em seguida, a página Compilar e


Executar.

3. Na lista Detalhes da saída de build do projeto do MSBuild, escolha Normal e, em


seguida, o botão OK.

4. Na barra de menus, escolha Build>Limpar Solução.

5. Compile a solução e, em seguida, examine as informações na Janela de Saída.

As informações do build incluem a hora de início do build (localizada no início) e


ordem em que os arquivos foram processados. Essas informações também incluem
a sintaxe real do compilador que o Visual Studio executa durante o build.

Por exemplo, no build de C#, a opção /nowarn lista o código de aviso 0168, que foi
especificado anteriormente neste tópico, juntamente com três outros avisos.

No build do Visual Basic, /nowarn não inclui avisos específicos a serem excluídos e,
portanto, nenhum aviso é exibido.

 Dica

Pesquise o conteúdo da janela Saída se você exibir a caixa de diálogo


Localizar escolhendo as teclas Ctrl+F.

Para obter mais informações, consulte Como exibir, salvar e configurar arquivos de log
de build.
Criar um build da versão
É possível compilar uma versão do aplicativo de exemplo que é otimizada para enviá-lo.
Para o build de versão, você especificará que o arquivo executável é copiado para um
compartilhamento de rede antes do início do build.

Para obter mais informações, consulte Como alterar o diretório de saída do build e
Compilar e limpar projetos e soluções no Visual Studio.

Especificar um build de versão para o Visual Basic


1. Para abrir o Designer de Projeto, selecione o nó do projeto no Gerenciador de
Soluções clicando com o botão direito do mouse e escolha Propriedades (ou
pressione Alt+Enter) ou, no menu Exibir, escolha Páginas de Propriedades:

2. Escolha a página Compilar.

3. Na lista Configuração, escolha Versão.

4. Na lista Plataforma, escolha x86.

5. Na caixa Caminho de saída do build, especifique um caminho de rede.

Por exemplo, você pode especificar \\myserver\builds .

) Importante
Uma caixa de mensagem poderá ser exibida, avisando que o
compartilhamento de rede especificado pode não ser um local confiável. Se
você confiar no local especificado, escolha o botão OK na caixa de
mensagem.

6. Construa o aplicativo.

Especificar um build de versão para o C#


1. Abra o Designer de Projeto.

2. Escolha a página Build.

3. Na lista Configuração, escolha Versão.


4. Na lista Plataforma, escolha x86.

5. Na caixa Caminho de saída, especifique um caminho de rede.

Por exemplo, você pode especificar \\myserver\builds .

) Importante

Uma caixa de mensagem poderá ser exibida, avisando que o


compartilhamento de rede especificado pode não ser um local confiável. Se
você confiar no local especificado, escolha o botão OK na caixa de
mensagem.

6. Na barra de ferramentas Padrão, defina as Configurações da solução como


Versão e as Plataformas da solução como x86.

7. Construa o aplicativo.

O arquivo executável é copiado para o caminho de rede especificado. Seu caminho


será \\myserver\builds\\FileName.exe .

Parabéns! Você concluiu este tutorial com êxito.

Confira também
Passo a passo: Criar um projeto (C++)
Visão geral da pré-compilação de projeto de aplicativo Web ASP.NET
Passo a passo: Usar o MSBuild
Criar e limpar projetos e soluções no
Visual Studio
Artigo • 17/10/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Usando os procedimentos neste tópico, é possível criar, recriar ou limpar todos ou


alguns projetos ou itens de projeto em uma solução. Para ver um tutorial passo a passo,
veja Instruções passo a passo: criação de um aplicativo.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Criar e limpar projetos e soluções no Visual Studio para Mac.

7 Observação

A interface do usuário na sua edição do Visual Studio pode ser diferente do que
este tópico descreve, dependendo das suas configurações ativas. Para alterar as
configurações, por exemplo, para configurações Gerais ou do Visual C++, escolha
Ferramentas>Importar e Exportar Configurações e, em seguida, escolha Redefinir
todas as configurações.

Para criar, recriar ou limpar uma solução inteira


1. No Gerenciador de Soluções, escolha ou abra a solução.

2. Na barra de menus, escolha Compilar e, em seguida, escolha um dos comandos a


seguir:

Escolha Compilar ou Compilar Solução, ou pressione Ctrl+Shift+B para


compilar somente esses arquivos de projeto e componentes que foram
alterados desde o build mais recente.

7 Observação

O comando Compilar torna-se Compilar Solução quando uma solução


inclui mais de um projeto.
Escolha Recompilar Solução para "limpar" a solução e, em seguida, crie
todos os arquivos de projeto e componentes.

Escolha Limpar Solução para excluir arquivos de saída e intermediários. Com


apenas os arquivos de projeto e de componente restantes, novas instâncias
dos arquivos de saída e intermediários podem ser criadas.

Para compilar ou recompilar um único projeto


1. No Gerenciador de Soluções, escolha ou abra o projeto.

2. Na barra de menus, escolha Compilar e, em seguida, escolha


CompilarProjectName ou RecompilarProjectName.

Escolha CompilarProjectName para compilar somente esses componentes de


projeto que foram alterados desde o build mais recente.

Escolha RecompilarProjectName para "limpar" o projeto e, em seguida,


compile os arquivos de projeto e todos os componentes do projeto.

Para compilar apenas o projeto de inicialização


e suas dependências
1. Na barra de menus, escolha Ferramentas>Opções.

2. Na caixa de diálogo Opções, expanda o nó Projetos e Soluções e, em seguida,


escolha a página Compilar e Executar.

A caixa de diálogo Compilar e Executar>Projetos e Soluções>Opções é aberta.

3. Marque a caixa de seleção Compilar apenas projetos de inicialização e


dependências ao Executar.

Quando essa caixa de seleção é selecionada, somente o projeto de inicialização


atual e as respectivas dependências são criados quando você escolhe
Depurar>Iniciar (F5) ou Depurar>Iniciar Sem Depuração (Ctrl+F5).

Quando você escolhe Compilar>Compilar Solução (Ctrl+Shift+B), a solução


inteira é criada.

Quando essa caixa de seleção estiver desmarcada, todos os projetos, as respectivas


dependências e os arquivos de solução serão compilados quando você executar
um dos comandos anteriores.
Para compilar somente o projeto Visual C++
selecionado
Escolha um projeto C++ e, em seguida, na barra de menus, escolha Compilar>Somente
Projeto e um dos seguintes comandos:

Somente buildProjectName

Somente RecompilaçãoProjectName

Somente LimpezaProjectName

Somente VinculaçãoProjectName

Esses comandos são aplicáveis somente ao projeto C++ escolhido, sem compilar,
recompilar, limpar ou vincular as dependências do projeto ou os arquivos de solução.
Dependendo da sua versão do Visual Studio, o submenu Somente Projeto pode conter
mais comandos.

Para compilar vários itens de projeto C++


Em Gerenciador de Soluções, escolha vários arquivos que possam ser compilados, abra
o menu de atalho para um desses arquivos e, em seguida, escolha Compilar ou
pressione Ctrl+F7.

Se os arquivos tiverem dependências, os arquivos serão compilados em ordem de


dependência. A operação de compilação falhará se os arquivos exigirem um cabeçalho
pré-compilado que não está disponível quando você compila. A operação de
compilação usa a configuração de solução ativa atual.

Para interromper um build


Execute uma das seguintes etapas:

Na barra de menus, selecione Compilar>Cancelar.

Pressione Ctrl+Interromper.

Confira também
Como exibir, salvar e configurar arquivos de log de build
Obtendo logs de build
Compilar e criar
Noções sobre configurações de build
Como definir configurações de depuração e versão
Referência de compilação C/C++
Opções de linha de comando do Devenv
Soluções e projetos
Criar e limpar projetos e soluções (Visual Studio para Mac)
Como alterar o diretório de saída do
build
Artigo • 14/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode especificar o local de saída gerado pelo seu projeto por configuração (para
depuração, versão ou ambas).

Alterar o diretório de saída do build


No Visual Studio 2022, há diferentes interfaces do usuário do Designer de Projeto,
dependendo do tipo de projeto. O .NET Framework do C# e todos os projetos do Visual
Basic usam o Designer de Projeto do .NET herdado, mas os projetos .NET Core do C# (e
.NET 5 e posteriores) usam o Designer de Projeto do .NET atual. Os projetos de C++
usam a própria interface do usuário de páginas de propriedades. As etapas nesta seção
dependem do Designer de Projeto que você está usando.

Para alterar o diretório de saída de build usando as


páginas de propriedades herdadas do Designer de
Projeto do .NET ou do C++
1. Clique com o botão direito do mouse no nó do projeto no Gerenciador de
Soluções e selecione Propriedades.

2. Selecione a guia apropriada com base no tipo de projeto:

Para C#, selecione a guia Compilar.


Para o Visual Basic, selecione a guia Compilar.
Para C++ ou JavaScript, selecione a guia Geral.

3. Na lista suspensa de configuração na parte superior, escolha a configuração cujo


local do arquivo de saída você deseja alterar (Depuração, Versão ou Todas as
Configurações).

4. Localize a entrada do caminho de saída na página. Ela é diferente, dependendo do


tipo de projeto:

Caminho de saída para projetos C# e JavaScript


Caminho de saída de build para projetos Visual Basic
Diretório de saída para projetos Visual C++

Digite o caminho para o qual gerar a saída (absoluto ou relativo para o diretório
raiz do projeto), ou escolha Procurar para, em vez disso, navegar até essa pasta.

7 Observação

Alguns projetos incluirão, por padrão, estrutura e runtime no caminho do


build. Para alterar isso, clique com o botão direito do mouse no nó do projeto
no Gerenciador de Soluções, selecione Editar Arquivo de Projeto e adicione
o seguinte:

XML

<PropertyGroup>

<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOu
tputPath>

<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifier
ToOutputPath>
</PropertyGroup>
Para alterar o diretório de saída de build usando o
Designer de Projeto do .NET atual
1. Clique com o botão direito do mouse no nó do projeto no Gerenciador de
Soluções e selecione Propriedades.

2. Expanda a seção Compilar e selecione a subseção Saída.

3. Encontre o Caminho de saída de base do C# e digite o caminho para o qual gerar


a saída (absoluto ou relativo ao diretório raiz do projeto), ou escolha Procurar para
navegar até essa pasta. Observe que o nome da configuração é acrescentado ao
caminho de saída de base para gerar o caminho de saída real.

7 Observação

Alguns projetos incluirão, por padrão, estrutura e runtime no caminho do


build. Para alterar isso, clique com o botão direito do mouse no nó do projeto
no Gerenciador de Soluções, selecione Editar Arquivo de Projeto e adicione
o seguinte:

XML

<PropertyGroup>

<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOu
tputPath>

<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifier
ToOutputPath>
</PropertyGroup>

 Dica

Se a saída não está sendo gerada para o local que especificou, verifique se você
está compilando a configuração correspondente (por exemplo, Depuração ou
Versão), selecionando-a na barra de menus do Visual Studio.

Compilar para um diretório de saída em


comum
Por padrão, o Visual Studio compila cada projeto de uma solução em sua própria pasta
dentro da solução. É possível alterar os caminhos de saída do build dos seus projetos
para forçar todas as saídas a serem colocadas na mesma pasta.

Para colocar todas as saídas de solução em um diretório


comum
1. Clique em um projeto na solução.

2. No menu Projeto , clique em Propriedades.

3. Em cada projeto, dependendo do tipo, selecione Compilar ou Build e defina o


Caminho de saída ou o Caminho de saída de base como a pasta a ser usada para
todos os projetos na solução.

4. Abra o arquivo de projeto do projeto e adicione a seguinte declaração de


propriedade ao primeiro grupo de propriedades.

XML

<PropertyGroup>
<!-- existing property declarations are here -->
<UseCommonOutputDirectory>true</UseCommonOutputDirectory>
</PropertyGroup>

A configuração de UseCommonOutputDirectory como true informa ao Visual Studio


e ao mecanismo de build subjacente (MSBuild) que você está colocando várias
saídas de projeto na mesma pasta e, portanto, o MSBuild omitirá a etapa de cópia
que normalmente acontece quando os projetos dependem de outros projetos.

5. Repita as etapas 1 a 4 para todos os projetos na solução. Você poderá ignorar


alguns projetos se tiver alguns projetos excepcionais que não devam usar o
diretório de saída comum.

Para definir o diretório de saída intermediário em um


projeto (projetos .NET)
1. Abra o arquivo de projeto.

2. Adicione a declaração de propriedade a seguir ao primeiro grupo de propriedades.

XML

<PropertyGroup>
<!-- existing property declarations are here -->
<IntermediateOutputPath>path</IntermediateOutputPath>
</PropertyGroup>

O caminho é relativo ao arquivo de projeto ou você pode usar um caminho


absoluto. Se você quiser colocar o nome do projeto no caminho, poderá
referenciá-lo usando as propriedades do MSBuild $(MSBuildProjectName) e
$(MSBuildProjectDirectory) . Para ver mais propriedades que você pode usar,

consulte Propriedades reservadas e conhecidas do MSBuild.

3. O Visual Studio continua criando a pasta obj na pasta do projeto quando você
compila, mas ela fica vazia. Você pode excluí-la como parte do processo de build.
Uma forma de fazer isso é adicionar um evento pós-build para executar o seguinte
comando:

Prompt de comando do Windows

rd "$(ProjectDir)obj" /s /q

Consulte Especificar eventos de build personalizados.


Confira também
Página de build, Designer de Projeto (C#)
Página de propriedades gerais (projeto)
Compilar e criar
Especificar eventos de build
personalizados no Visual Studio
Artigo • 13/01/2024

Ao especificar um evento de build personalizado, é possível executar comandos


automaticamente antes do início de um build ou após sua conclusão. Por exemplo, é
possível executar um arquivo .bat antes do início de um build ou copiar novos arquivos
para uma pasta após sua conclusão. Eventos de build serão executados somente se o
build atingir com êxito esses pontos no processo de build.

Para obter informações específicas sobre a linguagem de programação que está sendo
usada, consulte os seguintes tópicos:

Visual Basic – Como especificar eventos de build (Visual Basic).

C# e F # – Como especificar eventos de build (C#).

Visual C++ – Especificar eventos de build.

Sintaxe
Os eventos de build seguem a mesma sintaxe dos comandos do DOS, mas é possível
usar macros para criar eventos de build com mais facilidade. Para obter uma lista das
macros disponíveis, confira Caixa de diálogo da linha de comando do evento de pré-
build/evento de pós-build.

Para obter melhores resultados, siga estas dicas de formatação:

Adicione uma instrução call antes de todos os eventos de build que executam
arquivos .bat.

Exemplo: call C:\MyFile.bat

Exemplo: call C:\MyFile.bat call C:\MyFile2.bat

Coloque os caminhos de arquivo entre aspas.

Exemplo (para Windows 8): "%ProgramFiles(x86)%\Microsoft


SDKs\Windows\v8.0A\Bin\NETFX 4.0 Tools\gacutil.exe" - se "$(TargetPath)"

Separe vários comandos usando quebras de linha.

Inclua curingas, conforme necessário.


Exemplo: for %I in (*.txt *.doc *.html) do copy %I c:\ mydirectory \

7 Observação

%I no código acima deve ser %%I em scripts em lote.

Conteúdo relacionado
Compilar e criar
Caixa de diálogo da linha de comando do evento de pré-build/evento de pós-
build
Caracteres especiais do MSBuild
Passo a passo: Criar um aplicativo
Definir vários projetos de inicialização
Artigo • 13/01/2024

O Visual Studio permite especificar como mais de um projeto é executado quando você
pressiona F5 (Iniciar com Depuração) ou Ctrl+F5 (Iniciar sem depuração) ou usa o botão
da barra de ferramentas para iniciar seu aplicativo. Dessa forma, você pode iniciar vários
sites, aplicativos ou serviços que dependem uns dos outros para funcionar corretamente
durante uma sessão de depuração ou apenas executar e testar localmente.

Alguns modelos de projeto incluem vários projetos que já estão configurados para que
tudo seja iniciado junto com a inicialização; por exemplo, o tipo de projeto React e
ASP.NET Core inclui um projeto JavaScript do lado do cliente e um projeto ASP.NET
Core do lado do servidor que são iniciados na inicialização.

Para definir vários projetos de inicialização


1. No Gerenciador de Soluções, selecione a solução (o nó superior).

2. Selecione o menu de contexto do nó da solução (clique com o botão direito do


mouse) e escolha Propriedades. A caixa de diálogo Páginas de Propriedades da
Solução é exibida.

3. Expanda o nó Propriedades Comuns e escolha Projeto de Inicialização.


4. Escolha a opção Vários Projetos de Inicialização e defina as ações apropriadas.

Com o Docker Compose


Ao usar o Docker Compose para iniciar projetos em contêineres em um computador
local, você usa um método diferente (perfis de inicialização) para iniciar vários projetos.

O exemplo a seguir mostra uma solução WebFrontEndA com três projetos, um site de
front-end, um projeto de API Web e um projeto do Docker Compose. A seguinte
captura de tela mostra como iniciar dois dos três projetos, um com depuração e outro
sem:

Neste exemplo e em qualquer outro cenário do Docker Compose, você escolhe docker-
compose como o único projeto de inicialização, mas usará uma maneira diferente de

especificar quais projetos ou serviços iniciar. Você usará um perfil de inicialização do


Docker Compose para determinar quais serviços iniciar e se deve ou não anexar o
depurador e há uma caixa de diálogo diferente no Visual Studio para configurá-lo.
Confira Iniciar um subconjunto de serviços. A caixa de diálogo Páginas de Propriedades
da Solução só é usada para soluções não conteinerizadas ou quando você não está
usando o Docker Compose para gerenciar a inicialização.

Conteúdo relacionado
Compilar e criar
Trabalhar com soluções e projetos
Gerenciar propriedades do projeto e da solução
Criar e remover dependências de
projeto
Artigo • 13/01/2024

Ao compilar uma solução que contém vários projetos, pode ser necessário compilar
determinados projetos primeiro, para gerar os binários compilados usados por outros
projetos. Quando um projeto consome a saída gerado por outro projeto, o projeto que
gera a saída é chamado de uma dependência de projeto do projeto que consome a
saída. Esses relacionamentos de dependência podem ser definidos na caixa de diálogo
Dependências do Projeto.

 Dica

Uma dependência de projeto é criada automaticamente quando você adiciona uma


referência projeto a projeto de um projeto para outro projeto. Antes de executar
essas etapas, considere se você deve, em vez disso, criar uma referência projeto a
projeto, que além de criar uma relação de dependência entre os projetos, também
cria uma referência que você pode usar para criar código e que usa classes,
interfaces e outras entidades de código do outro projeto. Confira Gerenciando
referências em um projeto.

Para atribuir dependências a projetos


1. No Gerenciador de Soluções, selecione um projeto.

2. No menu Projeto, escolha Dependências do Projeto.

A caixa de diálogo Dependências do Projeto é aberta.


3. Na guia Dependências, selecione um projeto no menu suspenso Projeto.

4. No campo Depende de, marque a caixa de seleção de qualquer outro projeto que
deve ser compilado antes desse projeto.

A solução deve consistir em mais de um projeto antes que seja possível criar
dependências de projeto.

Para remover dependências de projetos


1. No Gerenciador de Soluções, selecione um projeto.

2. No menu Projeto, escolha Dependências do Projeto.

A caixa de diálogo Dependências do Projeto é aberta.


3. Na guia Dependências, selecione um projeto no menu suspenso Projeto.

4. No campo Depende de, desmarque as caixas de seleção ao lado de outros


projetos que não são mais dependências desse projeto.

Para exibir a ordem de build


Na caixa de diálogo Dependências do Projeto, você pode alternar para a guia Ordem
de compilação para exibir a ordem de build da solução.

Para exibir a ordem de build em uma solução a qualquer hora, clique com o botão
direito do mouse no nó da solução e escolha Ordem de build do projeto.

Você pode usar a guia Ordem de build de para exibir a ordem em que os projetos serão
criados, mas não é possível alterar diretamente a ordem nessa guia.

A ordem que você vê listada é a ordem de build lógica desejada, mas, na prática, o
Visual Studio otimiza ainda mais o processo de build criando vários projetos em
paralelo. No entanto, desde que você tenha especificado as dependências do projeto,
nenhum projeto dependente começará a ser criado até que suas dependências tenham
sido concluídas.
Conteúdo relacionado
Criar e limpar projetos e soluções no Visual Studio
Compilar e criar
Noções sobre configurações de build
Gerenciar propriedades do projeto e da solução
Como exibir, salvar e configurar
arquivos de log de build
Artigo • 13/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Depois de compilar um projeto no Visual Studio IDE, é possível exibir informações sobre
sse build na Janela de Saída. Usando essas informações, você pode solucionar uma falha
de build, exibir as linhas de comando exatas usadas em todas as ferramentas de build
ou obter informações completas de diagnóstico sobre todo o processo de build.

Para projetos C++, você também pode exibir as mesmas informações em um


arquivo de log criado e salvo durante a criação de um projeto.

Para projetos .NET, clique na janela de saída de build e pressione Ctrl+S. O Visual
Studio solicitará um local para salvar as informações da janela de Saída em um
arquivo de log.

Também é possível usar o IDE para especificar que tipos de informações você deseja
exibir sobre cada build.

Se você compilar qualquer tipo de projeto usando o MSBuild, é possível criar um


arquivo de log para salvar informações sobre o build. Para obter mais informações,
consulte Obtendo logs de build.

Para exibir o arquivo de log de build para um


projeto C++
1. No Gerenciador de Arquivos ou no Explorador de Arquivos do Windows, abra o
seguinte arquivo (em relação à pasta raiz do projeto): Release\{NomeDoProjeto}.Log
ou Debug\{NomedoProjeto}.log

Para criar um arquivo de log de build para um


projeto de código gerenciado
1. Na barra de menus, escolha Compilar>Compilar Solução.

2. Na janela de Saída, clique em algum lugar no texto.

3. Pressione Ctrl+S.
O Visual Studio solicitará um local para salvar a saída de build.

Você também pode gerar logs executando o MSBuild diretamente na linha de comando,
usando a opção de linha de comando -fileLogger ( -fl ). Confira Obter logs de build
com o MSBuild.

Para alterar a quantidade de informações


incluídas no log de build
1. Na barra de menus, escolha Ferramentas>Opções.

2. Na página Projetos e Soluções, escolha a página Compilar e Executar.

3. Na lista Detalhamento da saída de build do projeto no MSBuild, escolha um dos


valores e, em seguida, escolha o botão OK.

A tabela a seguir mostra como os detalhes do log (valores de coluna) afetam quais tipos
de mensagem (valores de linha) são registrados em log.

Tipo de mensagem/Detalhamento Quiet Minimal Normal Detalhado Diagnostic

Errors ✅ ✅ ✅ ✅ ✅

Warnings ✅ ✅ ✅ ✅ ✅

Mensagens de alta prioridade ✅ ✅ ✅ ✅

Mensagens de prioridade normal ✅ ✅ ✅

Mensagens de baixa prioridade ✅ ✅

Informações adicionais do mecanismo ✅


MSBuild

Se você quiser ver as linhas de comando usadas no compilador e em outras


ferramentas, escolha pelo menos o nível de detalhamento Detalhado.

Para obter mais informações, confira Caixa de diálogo Opções, Projetos e Soluções, Criar
e Executar e LoggerVerbosity.

) Importante

É necessário recompilar o projeto para que suas alterações entrem em vigor na


Janela de Saída (todos os projetos) e no arquivo <NomeDoProjeto>.txt (apenas
projetos C++).
Usar logs binários para facilitar a navegação
em arquivos de log grandes
Logs binários são um recurso opcional para projetos do .NET que proporcionam uma
experiência de navegação de log mais rica que pode facilitar a localização de
informações em logs grandes. Para usar logs binários, instale as Ferramentas do Sistema
para Projetos 2022 . Saiba mais em https://msbuildlog.com e Log binário .

Confira também
Criar e limpar projetos e soluções no Visual Studio
Compilar e criar
Obter logs de build com o MSBuild
Excluir projetos de um build
Artigo • 13/01/2024

É possível compilar uma solução sem compilar todos os projetos que ela contém. Por
exemplo, é possível excluir um projeto que interrompe o build. É possível compilar o
projeto depois de investigar e resolver os problemas.

É possível excluir um projeto adotando as seguintes abordagens:

Removê-lo temporariamente da configuração da solução ativa.

Criando uma configuração de solução que não inclui o projeto.

Para obter mais informações, consulte Compreender configurações de build.

Para remover temporariamente um projeto da


configuração da solução ativa
1. Na barra de menus, escolha Build>Gerenciador de Configurações.

2. Na tabela Contextos do projeto, localize o projeto que você deseja excluir do


build.

3. Na coluna Build do projeto, desmarque a caixa de seleção.

4. Escolha o botão Fechar e, em seguida, recompile a solução.

Para criar uma configuração da solução que


exclui um projeto
1. Na barra de menus, escolha Build>Gerenciador de Configurações.

2. Na lista Configuração da solução ativa, escolha <Novo>.

3. Na caixa Nome, insira um nome para a configuração da solução.

4. Na lista Copiar configurações de, escolha a configuração da solução na qual você


deseja basear a nova configuração (por exemplo, Depurar) e, em seguida, escolha
o botão OK.

5. Na caixa de diálogo Configuration Manager, desmarque a caixa de seleção na


coluna Build do projeto que você deseja excluir e, em seguida, escolha o botão
Fechar.

6. Na barra de ferramentas Padrão, verifique se a nova configuração da solução é a


configuração ativa na caixa Configurações da Solução.

7. Na barra de menus, escolha Compilar>Recompilar Solução.

Projetos ignorados
Projetos podem ser ignorados durante o build porque estão atualizados ou porque
foram excluídos da configuração. O Visual Studio usa o MSBuild para compilar seus
projetos. O MSBuild compilará um destino apenas se a saída for mais antiga que a
entrada, conforme determinado pelos carimbos de data/hora do arquivo. Para forçar
uma recompilação, use o comando Compilar>Recompilar Solução.

No painel Build da janela Saída, o Visual Studio relata o número de projetos que
estavam atualizados, o número que foi compilado com êxito, o número que falhou e o
número que foi ignorado. A contagem dos ignorados não inclui projetos que não foram
compilados porque estavam atualizados. Quando projetos são excluídos da
configuração ativa, eles são ignorados durante o build. Na saída do build, você verá uma
mensagem indicando que o projeto foi ignorado:

Saída

2>------ Skipped Build: Project: ConsoleApp2, Configuration: Debug x86 -----


-
2>Project not selected to build for this solution configuration

Para descobrir por que um projeto foi ignorado, observe a configuração ativa ( Debug
x86 no exemplo anterior) e escolha Compilar>Configuration Manager. Você pode

exibir ou alterar quais projetos são ignorados para cada configuração, conforme
discutido neste artigo.

Conteúdo relacionado
Noções sobre configurações de build
Como criar e editar configurações
Como criar várias configurações simultaneamente
Suprimir avisos do compilador
Artigo • 11/01/2024

Com o Visual Studio, você pode especificar quais avisos deseja suprimir especificando
os códigos de aviso no Designer de Projeto (páginas de propriedades do projeto). Você
também pode suprimir avisos definindo determinadas propriedades diretamente no
arquivo de projeto, por meio da linha de comando ou no código quando quiser suprimir
um aviso somente em um local.

Alguns compiladores e ferramentas de build também têm opções para especificar o


nível de aviso. Isso permite controlar categorias de avisos com uma configuração. Para
essas opções, consulte a documentação do idioma e do compilador específicos que
você está usando:

Níveis de aviso em C#
Níveis de aviso em C++

Se sua meta for ver uma saída mais concisa e focada no log de build, talvez você queira
alterar o detalhamento do log de build. As configurações disponíveis são Normal,
Detalhada, ou Diagnóstico. Para saber mais sobre detalhamento, consulte Como exibir,
salvar e configurar arquivos de log de build.

U Cuidado

Observe que os avisos devem ser uma indicação de um possível problema com seu
código, portanto, você deve entender os riscos de desabilitar qualquer aviso
específico. As configurações do Visual Studio desabilitam avisos no nível do
projeto. Talvez você queira usar uma abordagem mais direcionada para desabilitar
avisos do que o Visual Studio fornece. A maioria dos compiladores fornece
maneiras de desabilitar avisos apenas para determinadas linhas de código, para
que você ainda possa examinar os avisos se eles ocorrerem em outro lugar no
mesmo projeto.

Suprimir avisos específicos para o Visual C# ou


F#
Use as propriedades de Compilar para suprimir avisos específicos para todo um projeto
em C# e F#. Se você quiser suprimir um aviso somente em uma parte específica do
código em C#, use #aviso pragma. Para F#, use #nowarn diretiva de pré-processador
para desabilitar um aviso para um arquivo de origem inteiro.

1. No Gerenciador de Soluções, escolha o projeto no qual você deseja suprimir


avisos.

2. Clique com o botão direito do mouse no nó do projeto e escolha Propriedades no


menu de contexto. Ou selecione o nó do projeto e pressione Alt+Enter.

3. Selecione Compilar e vá para a subseção Erros e avisos.

4. Na caixa Suprimir avisos ou Suprimir avisos específicos, especifique os códigos de


erro dos avisos que você quer suprimir, separados por ponto e vírgula. Para obter
uma lista e descrições de códigos de aviso, consulte Mensagens do compilador C#.

5. Recriar a solução.

7 Observação

Alguns avisos não podem ser suprimidos. Para obter uma lista deles, consulte
opção do compilador NoWarn.

Suprimir avisos específicos para C++


Você pode suprimir avisos em um projeto C++ usando as propriedades do projeto; você
usa a página de propriedades Propriedades de configuração para suprimir avisos
específicos para um projeto C++ inteiro. Você também pode suprimir avisos em
arquivos específicos usando #pragma warning . Este artigo aborda o controle no nível do
projeto, mas se sua intenção é desabilitar um aviso em um arquivo específico ou apenas
em torno de algumas linhas de código, mas você deseja continuar a ver outras
ocorrências do mesmo aviso, considere usar #pragma warning . Consulte #aviso de
pragma.

1. No Gerenciador de Soluções, escolha o projeto ou arquivo de origem no qual


deseja suprimir avisos.

2. Na barra de menus, escolha Exibir>Páginas de Propriedade.

3. Escolha a categoria Propriedades de Configuração, escolha a categoria C++ e


escolha a página Avançado.

4. Execute uma das seguintes etapas:


Na caixa Desabilita Avisos Específicos, especifique os códigos de erro dos
avisos que deseja suprimir, separados por ponto e vírgula.

Na caixa Desabilita Avisos Específicos, escolha Editar para exibir mais


opções.

5. Escolha o botão OK e recompile a solução.

Se o aviso for de outra ferramenta, consulte a documentação da ferramenta específica


para descobrir como você pode suprimir avisos para essa ferramenta. Por exemplo, o
vinculador C++ tem alguns avisos que você pode desabilitar usando a opção de
vinculador /IGNORE . Consulte /IGNORE (Ignorar avisos específicos) e, para definir essa
opção, consulte /link (Opções de passagem para vinculador).

Suprimir avisos para o Visual Basic


Você pode ocultar avisos de compilador específicos para Visual Basic editando o arquivo
.vbproj para o projeto. Para suprimir avisos por categoria, use a página de propriedades
de compilação. Se você quiser desabilitar um aviso em uma parte específica de um
arquivo de código, use as diretivas #Disable e #Enable. Para obter mais informações,
consulte Configurar avisos no Visual Basic.

Para suprimir avisos específicos para todo um projeto do


Visual Basic
Este exemplo mostra como editar o arquivo .vbproj para suprimir avisos específicos ao
compilador.

1. No Gerenciador de Soluções, escolha o projeto no qual você deseja suprimir


avisos.

2. Na barra de menus, escolha Projeto>Descarregar Projeto.

3. No Gerenciador de Soluções, abra o menu de atalho do projeto ou clique com o


botão direito do mouse nele e selecione Editar <ProjectName>.vbproj.

O arquivo XML do projeto é aberto no editor de códigos.

4. Localize o elemento <NoWarn> para a configuração de build com a qual você está
compilando e adicione um ou mais números de aviso como o valor do elemento
<NoWarn> . Se você especificar vários números de aviso, separe-os com uma vírgula.
A exemplo a seguir mostra o elemento <NoWarn> para a configuração de build
Depuração em uma plataforma x86, com dois avisos do compilador suprimidos:

XML

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==


'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<ErrorReport>prompt</ErrorReport>
<NoWarn>40059,42024</NoWarn>
<WarningLevel>1</WarningLevel>
</PropertyGroup>

7 Observação

Projetos em .NET Core não contêm grupos de propriedades de configuração


de build por padrão. Para suprimir avisos em um projeto em .NET Core,
adicione a seção de configuração de build ao arquivo manualmente. Por
exemplo:

XML

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<RootNamespace>VBDotNetCore_1</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==
'Debug|AnyCPU' ">
<NoWarn>42016,41999,42017</NoWarn>
</PropertyGroup>
</Project>

5. Salve as alterações no arquivo .vbproj.

6. Na barra de menus, escolha Projeto>Recarregar Projeto.

7. Na barra de menus, escolha Compilar>Recompilar Solução.

A janela Saída não mostra mais os avisos especificados.


Para saber mais, consulte a opção de compilador /nowarn para o compilador de linha
de comando do Visual Basic.

Suprimir um aviso editando o arquivo de


projeto
Usar o designer de propriedades do Visual Studio para suprimir avisos resulta em uma
alteração no arquivo de projeto. Às vezes, pode ser mais conveniente editar
manualmente o arquivo de projeto para realizar a tarefa de desabilitar um aviso. O
arquivo de projeto é processado pelo MSBuild, o mecanismo de build da Microsoft.
Consulte MSBuild.

Além disso, no Visual Studio 2019 versão 16.7 e anterior, alguns avisos de ferramentas
diferentes do compilador não podem ser suprimidos de outra forma.

1. Para abrir o arquivo de projeto no editor do Visual Studio, clique com o botão
direito do mouse no nó do projeto e escolha Editar arquivo de projeto. Alguns
tipos de projeto exigem que você descarregue o projeto antes de editar o arquivo
de projeto. Se você precisar descarregar o projeto, clique com o botão direito do
mouse no nó do projeto e escolha Descarregar projeto.

2. Em uma nova seção PropertyGroup , use a propriedade NoWarn . Liste os erros que
você deseja suprimir, separados por vírgulas ou ponto-e-vírgula. Para avisos do
compilador, você pode omitir o código do idioma e inserir apenas o número, mas
para maior clareza, recomendamos usar o código completo. Para avisos de outras
ferramentas no build, especifique o código completo, incluindo o prefixo (como
MSB para avisos emitidos pelo próprio MSBuild).

O código a seguir adiciona avisos CS0028 e CS0618 à lista de avisos suprimidos:

XML

<PropertyGroup>
// Other properties
<NoWarn>$(NoWarn);CS0028;CS0618</NoWarn>
</PropertyGroup>

Referenciar o valor anterior de $(NoWarn) , conforme mostrado no exemplo


anterior, adiciona esses números a qualquer valor definido anteriormente para
NoWarn , em vez de substituí-lo.

Consulte NoWarn.
Suprimir um aviso da linha de comando de
build
Se você estiver criando um projeto a partir da linha de comando, também poderá
suprimir avisos usando -warnAsMessage na linha de comando do MSBuild. Use aspas em
torno de listas de vários códigos de aviso.

MSBuild.exe -warnAsMessage="CS0028;CS0618" MyProject.csproj

Confira Referência de linha de comando do MSBuild.

Suprimir avisos de ferramenta


Como você suprime avisos de ferramentas diferentes do compilador, como o MSBuild,
depende do tipo de projeto que você tem e de qual versão do MSBuild você está
usando.

Com o MSBuild 16.8 e posterior, em projetos que usam um SDK ou as importações


padrão, você pode suprimir avisos de ferramenta usando os mesmos métodos descritos
anteriormente. Você deve especificar o código de erro completo (incluindo o prefixo,
como MSB para MSBuild), não apenas um número como você pode com um aviso do
compilador. Além disso, a mensagem não é eliminada; ela ainda é mostrada como uma
mensagem informativa, mas foi rebaixada de um aviso.

Com o MSBuild 16.7 e anterior e em qualquer projeto que não use um SDK ou as
importações padrão, esses avisos não são suprimidos usando NoWarn . Nesses casos, a
propriedade que você pode usar para suprimir avisos de ferramenta é
MSBuildWarningsAsMessages . Você pode suprimir avisos de build editando o arquivo de

projeto ou especificando a opção MSBuildWarningsAsMessages na linha de comando do


MSBuild. Ao usar MSBuildWarningsAsMessages , use o código de erro completo do
MSBuild, incluindo o prefixo MSB .

XML

<PropertyGroup>

<MSBuildWarningsAsMessages>$(MSBuildWarningsAsMessages);MSB3270</MSBuildWarn
ingsAsMessages>
</PropertyGroup>

Observe que alguns avisos do MSBuild não podem ser suprimidos definindo
MSBuildWarningsAsMessages . Para desabilitá-los, use a opção de linha de comando
warnAsMessage .

Além disso, alguns avisos têm propriedades específicas que você pode definir para
desabilitar o aviso. Por exemplo, MSB3253 está desabilitado definindo a propriedade:

XML

<PropertyGroup>
<ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
None
</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
</PropertyGroup>

Quando possível, use a propriedade mais explícita, pois um código de erro por si só não
é tão facilmente compreendido. A página de referência de erro do código geralmente
contém a propriedade usada para desabilitá-la.

Suprimir avisos para pacotes NuGet


Em alguns casos, talvez você queira suprimir avisos do compilador NuGet para um único
pacote NuGet, em vez de para um projeto inteiro. O aviso atende a uma finalidade,
portanto convém não suprimi-lo no nível do projeto. Por exemplo, um dos avisos NuGet
informa que talvez o pacote não seja totalmente compatível com o seu projeto. Se você
suprimi-lo no nível do projeto e depois adicionar outro pacote NuGet, você nunca
saberá se ele estava gerando o aviso de compatibilidade.

Para suprimir um aviso específico para um único pacote


NuGet
1. No Gerenciador de Soluções, selecione o pacote NuGet para o qual você deseja
suprimir os avisos do compilador.
2. Ao clicar com o botão direito do mouse ou no menu de contexto, selecione
Propriedades.

3. Na caixa Suprimir avisos das propriedades do pacote, insira o número do aviso


que você quer suprimir nesse pacote. Se você quiser suprimir mais de um aviso,
use uma vírgula para separar os números de aviso.
O aviso desaparece do Gerenciador de Soluções e da Lista de Erros. No arquivo
de projeto, a propriedade NoWarn é definida.

XML

<PackageReference Include="NuGet.Build.Tasks.Pack" Version="6.2.0">


<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers;
buildtransitive</IncludeAssets>
<NoWarn>NU5104</NoWarn>
</PackageReference>

Conteúdo relacionado
Passo a passo: Criar um aplicativo
Como exibir, salvar e configurar arquivos de log de build
Compilar e criar
Ações de Build
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Todos os arquivos em um projeto do Visual Studio têm uma ação de build. A ação de build
controla o que acontece com o arquivo quando o projeto é compilado.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac, confira
Build actions in Visual Studio for Mac (Ações de build no Visual Studio para Mac).

Definir uma ação de build


Para definir a ação de build para um arquivo, abra as propriedades do arquivo na janela
Propriedades selecionando o arquivo no Gerenciador de Soluções e pressionando Alt+Enter.
Ou clique com o botão direito do mouse no arquivo no Gerenciador de Soluções e escolha
Propriedades. Na janela Propriedades, na seção Avançado, use a lista suspensa ao lado de
Ação de Build para definir uma ação de build para o arquivo.
Valores de ação de build
Algumas das ações de build mais comuns para arquivos de projeto do C# e Visual Basic são:

Criar ação Tipos de Descrição


projeto

AdditionalFiles C#, Visual Um arquivo de texto que não seja de origem passado
Basic para o compilador do C# ou do Visual Basic como
entrada. Essa ação de build é usada principalmente para
fornecer entradas para analisadores referenciados por
um projeto para verificar a qualidade do código. Para
obter mais informações, confira Usar arquivos
adicionais .

ApplicationDefinition WPF O arquivo que define seu aplicativo. Ao criar um projeto


pela primeira vez, ele é App.xaml.

CodeAnalysisDictionary .NET Um dicionário de palavras personalizado, usado pela


Análise de Código para verificação ortográfica. Confira
Como personalizar o Dicionário do Code Analysis

Compilar any O arquivo é passado para o compilador como um


arquivo de origem.

Conteúdo .NET Um arquivo marcado como Content pode ser


recuperado como um fluxo chamando
Application.GetContentStream. Para projetos ASP.NET,
esses arquivos são incluídos como parte do site quando
ele for implantado.

DesignData WPF Usado para arquivos ViewModel do XAML, para


permitir que os controles do usuário sejam visualizados
em tempo de design, com tipos e dados de amostra
fictícios.

DesignDataWithDesignTimeCreateable WPF Como o DesignData, mas com tipos reais.

Embedded Resource .NET O arquivo é passado para o compilador como um


recurso a ser inserido no assembly. É possível chamar
System.Reflection.Assembly.GetManifestResourceStream
para ler o arquivo do assembly.

EntityDeploy .NET Para arquivos .edmx do Entity Framework (EF) que


especificam a implantação de artefatos do EF.

Fakes .NET Usado para a estrutura de testes do Microsoft Fakes.


Confira Isolar o código em teste com o Microsoft Fakes

Nenhuma any O arquivo não faz parte do build de nenhuma maneira.


Esse valor pode ser usado para arquivos de
documentação como "Leiame", por exemplo.
Criar ação Tipos de Descrição
projeto

Página WPF Compile um arquivo XAML para um arquivo .baml


binário para um carregamento mais fácil em tempo de
execução.

Recurso WPF Especifica a inserção do arquivo em um arquivo de


recursos do manifesto do assembly com a extensão
.g.resources.

Shadow .NET Usado para um arquivo .accessor que contém uma lista
de nomes de arquivos do assembly inseridos, um por
linha. Para cada assembly na lista, gere classes públicas
com os nomes ClassName_Accessor que são exatamente
como os originais, mas com métodos públicos ao invés
de métodos privados. Usado para teste de unidade.

Tela inicial WPF Especifica um arquivo de imagem a ser exibido em


tempo de execução quando o aplicativo está sendo
iniciado.

XamlAppDef Windows Instrui a compilação a criar um arquivo XAML de fluxo


Workflow de trabalho em um assembly com um fluxo de trabalho
Foundation inserido.

7 Observação

Ações adicionais de build podem ser definidas por tipos de projeto específicos, portanto,
a lista de ações de build depende do tipo de projeto, e podem aparecer valores que não
estão nessa lista.

Confira também
Opções do compilador do C#
Opções do compilador do Visual Basic
Ações de build (Visual Studio para Mac)
Noções sobre configurações de build
Artigo • 01/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você precisa de configurações de build quando precisa compilar seus projetos com
configurações diferentes. Por exemplo, Depurar e Versão são configurações de build, e
diferentes opções de compilador são usadas adequadamente ao compilá-las. Uma
configuração está ativa e é indicada na barra de comandos na parte superior do IDE.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Configurações de build no Visual Studio para Mac.

A configuração e o controle de plataforma em que os arquivos de saída criados são


armazenados. Normalmente, quando o Visual Studio compila seu projeto, a saída é
colocada em uma subpasta de projeto chamada com a configuração ativa (por exemplo,
bin/Debug/x86), mas você pode alterar isso.

Você pode criar suas próprias configurações de build no nível da solução e do projeto. A
configuração da solução determina quais projetos são incluídos no build quando essa
configuração está ativa. Somente os projetos especificados na configuração da solução
ativa serão criados. Se várias plataformas de destino forem selecionadas no
Configuration Manager, todos os projetos que se aplicarem a essa plataforma serão
criados. A configuração do projeto determina quais configurações de build e opções do
compilador são usadas quando você compila o projeto.

Para criar, selecionar, modificar ou excluir uma configuração, é possível usar o


Configuration Manager. Para abri-lo, na barra de menus, escolha Build>Configuration
Manager ou apenas digite Configuração na caixa de pesquisa. Também é possível usar
a lista Configurações de Solução na barra de ferramentas Padrão para selecionar uma
configuração ou para abrir o Configuration Manager.
7 Observação

Se você não conseguir encontrar as configurações de solução na barra de


ferramentas e não puder acessar o Configuration Manager, pode ser porque você
está usando as configurações de desenvolvimento do Visual Basic. Para obter mais
informações, consulte Como gerenciar configurações com as configurações para
desenvolvedores do Visual Basic aplicadas.

Por padrão, as configurações de Depurar e Versão são incluídas nos projetos criados
usando modelos do Visual Studio. Uma configuração de Depurar dá suporte à
depuração de um aplicativo, e uma configuração de Versão cria uma versão do
aplicativo que pode ser implantada. Para saber mais, consulte Como definir
configurações de depuração e versão. Também é possível criar configurações de solução
e de projeto personalizadas. Para obter mais informações, consulte Como criar e editar
configurações.

Configurações da solução
Uma configuração de solução especifica como os projetos na solução devem ser criados
e implantados. Para modificar uma configuração de solução ou definir uma nova, no
Configuration Manager, em Configuração da solução ativa, escolha Editar ou Novo.
Cada entrada na caixa Contextos do Projeto em uma configuração de solução
representa um projeto na solução. Para cada combinação de Configuração da solução
ativa e Plataforma da solução ativa, é possível definir como cada projeto é usado.

Quando você define uma nova configuração de solução e seleciona a caixa de seleção
Criar novas configurações de projeto, o Visual Studio cria uma nova configuração de
projeto em todos os projetos. Da mesma forma, quando você define uma nova
plataforma de solução e seleciona a caixa de seleção Criar novas plataformas de
projeto, o Visual Studio cria a nova opção de plataforma em todos os projetos. Além
disso, se você adicionar um projeto direcionado a uma nova plataforma, o Visual Studio
adicionará essa plataforma à lista de plataformas de solução e disponibilizará a
plataforma como uma opção em todos os projetos. Você pode modificar as
configurações de cada projeto, para casos em que as plataformas não são necessárias
ou suportadas por alguns projetos.

A configuração da solução ativa também fornece contexto ao IDE. Por exemplo, se você
estiver trabalhando em um projeto e a configuração especificar que ele será criado para
um dispositivo móvel, a Caixa de Ferramentas exibirá apenas os itens que podem ser
usados em um projeto de dispositivo móvel.

Configurações de projeto
A configuração e a plataforma que um projeto define como destino serão usadas
conjuntamente para especificar as propriedades a serem usadas quando ele for criado.
Um projeto pode ter configurações diferentes para cada combinação de configuração e
plataforma. Para modificar as propriedades de um projeto, abra o menu de atalho do
projeto em Gerenciador de Soluções e escolha Propriedades. Na parte superior da guia
Compilar do designer de projeto, escolha uma configuração ativa para editar as
configurações de build correspondentes.
Como o Visual Studio associa configurações de
projeto a configurações de solução
Quando você define uma nova configuração de solução e não copia as configurações
de uma existente, o Visual Studio usa os critérios a seguir para associar as configurações
de projeto existentes à nova configuração de solução. Os critérios são avaliados na
ordem mostrada.

1. Se um projeto tiver um nome de configuração (<nome de configuração><nome de


plataforma>) que corresponda ao nome da nova configuração de solução, essa
configuração será usada. Nomes de configuração não diferenciam maiúsculas de
minúsculas.

2. Se o projeto tiver um nome de configuração no qual a parte configuração-nome


corresponda à nova configuração de solução, essa configuração será usada,
independentemente se a parte da plataforma for correspondente ou não.

3. Se ainda não houver correspondência, a primeira configuração listada no projeto


será usada.

Como o Visual Studio associa configurações de


solução a novas configurações de projeto
Quando você cria uma configuração de projeto (no Configuration Manager, escolhendo
Novo no menu suspenso na coluna Configuração desse projeto) e marca a caixa de
seleção Criar novas configurações de solução o Visual Studio procura uma
configuração de solução com nome semelhante para compilar o projeto em cada
plataforma à que ele dá suporte. Em alguns casos, o Visual Studio renomeia as
configurações de solução existentes ou define novas configurações.

O Visual Studio usa os seguintes critérios para associar configurações de solução a


configurações de projeto:

Se uma configuração de projeto não especificar uma plataforma ou especificar


apenas uma delas, então a configuração de solução cujo nome corresponder ao da
nova configuração de projeto será localizada ou adicionada. O nome padrão dessa
configuração de solução não inclui um nome de plataforma; ele assume a forma
<nome de configuração do projeto>.

Se um projeto der suporte a várias plataformas, uma configuração de solução será


localizada ou adicionada para cada plataforma com suporte. O nome de cada
configuração de solução inclui tanto o nome de configuração do projeto quanto o
nome da plataforma e tem a forma <nome de configuração do projeto><nome da
plataforma>.

Como as configurações afetam o build


Quando você compila uma solução usando o comando Compilar>Compilar Solução, o
Visual Studio compila apenas a configuração ativa. Todos os projetos especificados
nessa configuração de solução são compilados e a única configuração de projeto
compilada é aquela especificada na configuração da solução ativa e na plataforma de
solução ativa, que é mostrada na barra de ferramentas no Visual Studio. Por exemplo,
Depurar e x86. Outras configurações e plataformas definidas não são compiladas.

Se você quiser criar várias configurações e plataformas em uma ação, poderá usar a
opção Compilar>Build em Lote no Visual Studio. Para acessar esse recurso, pressione
Ctrl+Q para abrir a caixa de pesquisa e insira Batch build . O build em lote não está
disponível para todos os tipos de projeto. Confira Como compilar várias configurações
simultaneamente.

Confira também
Passo a passo: Criar um aplicativo
Compilar e criar
Soluções e projetos
Referência de build do C/C++
Configurar projetos para plataformas de destino
Configurações de build (Visual Studio para Mac)
Como criar e editar configurações
Artigo • 15/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode criar várias configurações de build para uma solução, além das configurações
internas de Depuração e Versão. Por exemplo, você pode criar uma configuração de
Teste para builds de teste internos e pode configurar diferentes tipos de builds que
podem ser distribuídos para clientes diferentes.

Configurações de build
É possível usar a caixa de diálogo Configuration Manager ou modificar configurações
de build existentes ou compilar novas configurações.

Para abrir a caixa de diálogo do Configuration Manager, no Gerenciador de Soluções,


abra o menu de atalho da solução e, em seguida, escolha Configuration Manager.

Você também pode abrir o Configuration Manager clicando na lista suspensa na barra
de ferramentas do Visual Studio, o que permite escolher a configuração atual (por
exemplo, Depuração ou Versão).
Há dois níveis de configuração: a configuração da solução e a do projeto. A
configuração da solução é o que você escolhe ao alternar as configurações ativas
usando a barra de ferramentas no Visual Studio. A configuração do projeto é a
configuração específica em cada projeto.

Na caixa de diálogo Configuration Manager é possível usar a lista suspensa


Configuração da solução ativa para selecionar uma configuração de build em toda a
solução, modificar uma existente ou criar uma nova configuração. É possível usar a lista
suspensa Plataforma da solução ativa para selecionar a plataforma que a configuração
define como destino, modificar uma existente ou adicionar uma plataforma. Se você
adicionar uma plataforma de solução, ela precisará ter suporte de pelo menos um dos
projetos.

O painel Contextos do projeto lista os projetos na solução. Para cada projeto, é possível
selecionar configuração e plataforma específicas de projeto, modificar existentes ou
criar uma configuração ou adicionar uma nova plataforma de uma lista de plataformas
com suporte do Visual Studio. Também é possível marcar caixas de seleção que indicam
se cada projeto está incluído quando você usa a configuração em toda a solução para
compilar ou implantar a solução.

2 Aviso

O Visual Studio não impõe nenhum requisito de que as plataformas de projeto


escolhidas nesta caixa de diálogo correspondam à plataforma da solução. Por
exemplo, nada impede você de definir todas as plataformas de projeto como x86
quando a plataforma de solução ativa for x64 , portanto, evite confusões e escolha
plataformas de projeto que correspondam à plataforma de solução sempre que
possível.

Definir as propriedades com base nas configurações


Para definir as propriedades com base nas configurações, no Gerenciador de Soluções,
abra o menu de atalho para um projeto e, em seguida, escolha Propriedades.

A maioria das propriedades do projeto não depende da configuração nem da


plataforma, mas algumas dependem. Para uma configuração de Versão, é possível
especificar que o código seja otimizado quando a solução for compilada, e para uma
configuração de Depuração, é possível especificar que o símbolo de compilação
condicional DEBUG seja incluído. Você também pode escolher quais avisos deseja
suprimir, ou elevar a erros, de modo diferente com base na configuração ou na
plataforma, bem como controlar determinadas configurações que afetam algumas
opções do compilador; Estouro aritmético, Alinhamento de arquivo e a opção do
compilador /deterministic .

As propriedades que você pode definir de modo diferente com base na configuração e
na plataforma têm um ícone de engrenagem ao lado delas na página de configurações
do projeto. Se você clicar no ícone de engrenagem, será exibido um menu que oferece
opções para ter os mesmos valores, ou valores diferentes, com base na configuração, na
plataforma ou em ambas.

Para obter mais informações sobre as configurações da página de propriedades,


consulte Gerenciar propriedades de solução e de projeto.

Criar uma configuração de projeto


Você cria uma configuração de projeto quando deseja adicionar um novo tipo de build.
Por exemplo, em vez de Depuração e Versão, você pode criar configurações de
Desenvolvimento, Teste e Produção.

1. Abra a caixa de diálogo Configuration Manager.

2. Selecione um projeto na coluna Projeto.

3. Na lista suspensa Configuração desse projeto, escolha Novo.

A caixa de diálogo Nova Configuração de Projeto é aberta.

4. Na caixa Nome, insira um nome para a nova configuração.

5. Para usar as configurações de propriedade com base em uma configuração de


projeto existente, na lista suspensa Copiar configurações de, escolha uma
configuração. Você pode personalizar as configurações posteriormente nas
páginas de propriedades do projeto.

6. Para criar uma configuração em toda a solução ao mesmo tempo, a marque a


caixa de seleção Criar nova configuração de solução.

Renomear uma configuração de projeto


1. Abra a caixa de diálogo Configuration Manager.

2. Na coluna Projeto, selecione o projeto que tenha a configuração de projeto que


você deseja renomear.

3. Na lista suspensa Configuração desse projeto, escolha Editar.

A caixa de diálogo Editar Configurações de Projeto é aberta.

4. Selecione o nome de configuração de projeto que você deseja alterar.

5. Selecione Renomear e, em seguida, digite um novo nome.

Criar e modificar configurações de build em


toda a solução

Para compilar uma configuração de build em toda a


solução
1. Abra a caixa de diálogo Configuration Manager.

2. Na lista suspensa Configuração da solução ativa, escolha Nova.

A caixa de diálogo Nova configuração de solução é aberta.

3. Na caixa de texto Nome, insira um nome para a nova configuração.

4. Para usar as configurações de uma configuração de solução existente, na lista


suspensa Copiar configurações de, escolha uma configuração.

5. Se você desejar criar configurações de projeto ao mesmo tempo, marque a caixa


de seleção Criar novas configurações de projeto.
Para renomear uma configuração de build em toda a
solução
1. Abra a caixa de diálogo Configuration Manager.

2. Na lista suspensa Configuração da Solução Ativa, escolha Editar.

A caixa de diálogo Editar Configurações da Solução é aberta.

3. Selecione o nome de configuração da solução que você deseja alterar.

4. Selecione Renomear e, em seguida, digite um novo nome.

Para modificar uma configuração de build em toda a


solução
1. Abra a caixa de diálogo Configuration Manager.

2. Na lista suspensa Configuração da solução ativa, selecione a configuração


desejada.

3. No painel Contextos do projeto, para cada projeto, selecione a Configuração e a


Plataforma desejadas e selecione se deseja Criá-la e se deseja Implantá-la.

Confira também
Noções sobre configurações de build
Configurar projetos para plataformas de destino
Criar e limpar projetos e soluções no Visual Studio
Gerenciar propriedades do projeto e da solução
Criar e editar configurações (Visual Studio para Mac)
gerenciar configurações de build com as
definições do desenvolvedor do Visual
Basic aplicadas
Artigo • 13/01/2024

Por padrão, todas as opções avançadas de configuração de build ficam ocultas quando
as configurações do desenvolvedor do Visual Basic são aplicadas. Este artigo explica
como habilitar manualmente essas configurações de build.

Habilitar configurações de build avançadas


Por padrão, as configurações de desenvolvedor do Visual Basic ocultam a opção de abrir
a caixa de diálogo Configuration Manager e as listas Configuração e Plataforma no
Designer de Projeto.

1. No menu Ferramentas , clique em Opções.

2. Expanda Projetos e Soluções e clique em Geral.

3. Clique em Mostrar configurações avançadas de build.

4. Clique em OK.

O Configuration Manager agora está disponível no menu Build e as listas


Configuração e Plataforma estão visíveis no Designer de Projeto.

Conteúdo relacionado
Noções sobre configurações de build
Compilar e criar
Configurações do ambiente
Criar várias configurações em uma única
solicitação de compilação
Artigo • 16/01/2024

É possível compilar a maioria dos tipos de projetos com várias, ou até mesmo todas, as
configurações de build com uma ação IDE usando a caixa de diálogo Build em Lotes.
No entanto, não é possível compilar os seguintes tipos de projetos em várias
configurações de build ao mesmo tempo:

1. Aplicativo da Windows Store em JavaScript para Windows 8.x.

2. Todos os projetos do Visual Basic.

3. Projetos do CMake

Se uma solução contiver qualquer projeto desses dois tipos de projeto, o Build do Lote
não estará disponível para essa solução. Nesse caso, o comando não aparece no menu
Compilar.

Para obter mais informações sobre configurações de build, consulte Noções básicas
sobre configurações de build.

Para compilar um projeto em várias


configurações de build
1. Na barra de menus, escolha Criar>Criação em Lotes. Ou pressione Ctrl+Q para
abrir a caixa de pesquisa e pesquise por Batch Build .

2. Na coluna Build, marque as caixas de seleção para as configurações com as quais


você deseja compilar um projeto.

 Dica

Para editar ou criar uma configuração de build para uma solução, escolha
Compilar>Gerenciador de Configurações na barra de menus para abrir a
caixa de diálogo Gerenciador de Configurações. Depois de editar uma
configuração de build para uma solução, escolha o botão Recompilar na caixa
de diálogo Build em Lotes para atualizar todas as configurações de build dos
projetos na solução.
3. Escolha os botões Build ou Recompilar para compilar o projeto com as
configurações especificadas.

Conteúdo relacionado
Como criar e editar configurações
Noções sobre configurações de build
Criar vários projetos paralelamente
Configurar projetos para plataformas de
destino
Artigo • 23/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio permite que você configure seus builds de aplicativo para direcionar a
diferentes plataformas (arquiteturas de processador), incluindo Arm64 e outras
plataformas. Você não precisa executar o Visual Studio em uma plataforma para
compilar para essa plataforma de destino. Para obter mais informações sobre o suporte
do Arm64 no Visual Studio, confira Visual Studio em dispositivos com o ARM. Para obter
suporte à plataforma de 64 bits para desenvolvimento do .NET, confira Aplicativos de 64
bits.

7 Observação

O Visual Studio 2022 é executado como um aplicativo de 64 bits. Isso é totalmente


separado das plataformas às quais você direcionar os seus projetos no Visual
Studio. Você pode usar qualquer versão do Visual Studio para direcionar a
plataformas de 32 bits e 64 bits.

Plataformas de destino com o Gerenciador de


Configurações
O Configuration Manager oferece uma maneira de adicionar rapidamente uma nova
plataforma de destino para seu projeto. Se você selecionar uma das plataformas
incluídas no Visual Studio, uma configuração será definida para compilar seu projeto
para a plataforma selecionada.

Para direcionar a algumas plataformas em um projeto C++ nativo, você precisa instalar
as ferramentas de build para a plataforma. As ferramentas de build do C++ para
plataformas x86 e x64 são instaladas com a carga de trabalho padrão do C++. Se você
estiver direcionando a outra arquitetura de processador, como Arm64, precisará usar o
Instalador do Visual Studio para instalar as ferramentas de build para a plataforma antes
de continuar. Confira Modificar o Visual Studio. Você não precisa executar o Visual
Studio em um dispositivo Arm64 para direcionar ao Arm64. Para o Arm64, você pode
instalar ferramentas de build do Arm64 ou ferramentas de build ARM64EC; confira
Arm64 para Visual Studio .
Para o desenvolvimento do .NET, o .NET 6 ou superior é necessário para direcionar à
plataforma Arm64. Confira Suporte do .NET para macOS 11 e Windows 11 para Arm64 e
x64 .

Para configurar um projeto para direcionar ao Arm64 e


outras plataformas
1. Na barra de menus, escolha Build>Gerenciador de Configurações.

2. Na lista Plataforma da solução ativa, escolha uma plataforma para a solução usar
como destino e, em seguida, escolha o botão Fechar.

a. Se a plataforma que você deseja não aparecer na lista Plataforma da Solução


Ativa, escolha Nova. Depois de instalar as ferramentas para uma plataforma
específica, você poderá adicionar as novas configurações de solução e projeto
direcionadas a essa plataforma.

A caixa de diálogo Nova plataforma de solução é exibida.

b. Na lista Digitar ou selecionar a nova plataforma, escolha a plataforma desejada


(arquitetura do processador); por exemplo, ARM64 .

7 Observação
Se você der um novo nome à sua configuração, precisará modificar as
configurações no Designer de Projeto para ter a plataforma correta como
destino.

c. Se você quiser copiar as configurações de uma configuração de plataforma


atual, escolha-a e selecione o botão OK.

7 Observação

O nome da plataforma Win32 é usado para projetos C++ e significa x86. O Visual
Studio considera plataformas de nível de projeto e plataformas de nível de solução,
e as plataformas de projeto vêm dos sistemas de projeto específicos a uma
linguagem de programação. Os projetos C++ usam Win32 e x64, mas as
plataformas de solução usam x86 e x64. Quando você escolhe x86 como a
configuração da solução, o Visual Studio seleciona a plataforma Win32 para
projetos C++. Para ver as configurações de plataforma no nível do projeto e de
plataforma no nível da solução, abra Configuration Manager e observe as duas
configurações de plataforma. A plataforma no nível da solução é mostrada na lista
suspensa Plataforma de solução ativa e a tabela mostra a plataforma no nível do
projeto para cada projeto.

Direcionar a plataformas na interface do


usuário de Propriedades do Projeto ou do
Designer de Projeto
A interface do usuário do Designer de Projeto ou das Propriedades de Projeto também
permite definir diferentes plataformas como destino para seu projeto. Se selecionar uma
das plataformas incluídas na lista na caixa de diálogo Nova Plataforma de Solução não
funcionar para sua solução, você poderá criar um nome de configuração personalizado
e modificar as configurações nas Propriedades de Projeto para ter a plataforma correta
como destino.

A execução dessa tarefa varia de acordo com a linguagem de programação que você
está usando. Para obter mais informações, consulte os links a seguir:

Para projetos do Visual Basic, consulte /platform (Visual Basic).

Para projetos C#, consulte Página de Build, Designer de Projeto (C#).

Edição manual do arquivo de projeto


Às vezes, você precisa editar manualmente o arquivo de projeto para algumas
configurações personalizadas. Um exemplo é quando você tem condições que não
podem ser especificadas no IDE, como uma referência diferente para duas plataformas
diferentes ou um assembly que deve ser registrado para uma plataforma específica para
expô-la ao COM. A ferramenta que processa o arquivo de projeto é o MSBuild.

U Cuidado

Não é recomendável editar manualmente um arquivo de projeto C++ que você


está usando no Visual Studio.

Registro COM
Se você estiver criando um assembly do .NET e expondo-o ao COM, o Visual Studio
registrará o assembly com uma arquitetura de plataforma específica, já que há locais de
registro diferentes para cada arquitetura de plataforma (por exemplo, x86 e x64 ). Se o
assembly já tiver como destino uma plataforma específica, isso será usado, mas se você
estiver registrando um assembly .NET criado para Any CPU , o MSBuild usará como
padrão registrá-lo no runtime atual do MSBuild. Se você estiver criando no Visual
Studio, isso será x64 no Visual Studio 2022 e vers posteriores e x86 no Visual Studio
2019 e versões anteriores. Se você definir a arquitetura da plataforma usando os
métodos descritos anteriormente neste artigo ou especificar um PlatformTarget
diferente no arquivo de projeto, o MSBuild respeitará isso ao se registrar. Há uma
propriedade que você pode definir para substituir esse comportamento,
RegisterAssemblyMSBuildArchitecture . Você pode definir

RegisterAssemblyMSBuildArchitecture para a arquitetura de plataforma desejada (como


x86 ou x64 ) adicionando-a a um elemento PropertyGroup de nível superior no arquivo

de projeto.

Referenciando assemblies e DLLs x86 e x64


Você pode ter um assembly ou uma DLL .NET com as versões x86 e x64. Para configurar
o projeto para usar essas referências, primeiro adicione a referência e, em seguida, abra
o arquivo de projeto e edite-o para adicionar um ItemGroup com uma condição que
referencie a configuração e a plataforma de destino. Por exemplo, suponha que o
binário que você está referenciando seja o ClassLibrary1 e que haja caminhos diferentes
para as Configurações de Depuração e Versão, bem como para as versões x86 e x64. Em
seguida, use quatro elementos ItemGroup com todas as combinações de configurações,
da seguinte maneira:

XML
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<Platforms>AnyCPU;x64;x86</Platforms>
</PropertyGroup>

<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64'">


<Reference Include="ClassLibrary1">

<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x64\Debug\netstandard2.0\Cla
ssLibrary1.dll</HintPath>
</Reference>
</ItemGroup>

<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64'">


<Reference Include="ClassLibrary1">

<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x64\Release\netstandard2.0\C
lassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>

<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86'">


<Reference Include="ClassLibrary1">

<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x86\Debug\netstandard2.0\Cla
ssLibrary1.dll</HintPath>
</Reference>
</ItemGroup>

<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86'">


<Reference Include="ClassLibrary1">

<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x86\Release\netstandard2.0\C
lassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>
</Project>

Para obter mais informações sobre o arquivo de projeto, confira Referência de esquema
do arquivo de projeto do MSBuild.

Confira também
/platform (opções do compilador de C#)
Aplicativos de 64 bits
Suporte ao IDE do Visual Studio de 64 bits
Noções básicas sobre o arquivo de projeto
Configurar projetos para se destinarem
a várias plataformas
Artigo • 01/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio fornece uma maneira de uma solução se destinar a várias plataformas
ou arquiteturas de CPU ao mesmo tempo. As propriedades para defini-las são
acessadas por meio da caixa de diálogo Configuration Manager.

Ter uma plataforma como destino


A caixa de diálogo Configuration Manager permite criar e definir configurações e
plataformas no nível do projeto e da solução. Cada combinação de destinos e
configurações no nível da solução pode ter um conjunto exclusivo de propriedades
associadas a ela, permitindo mudar facilmente entre, por exemplo, uma configuração de
versão destinada a uma plataforma x64, uma configuração de versão destinada a uma
plataforma x86 e uma configuração de depuração destinada a uma plataforma x86.

1. No menu Compilar, clique em Gerenciador de Configurações.

2. Na caixa Plataforma da solução ativa, selecione a plataforma à qual você deseja


que a solução seja destinada ou selecione <Novo>para criar uma nova plataforma.
O Visual Studio compilará seu aplicativo para direcionar a plataforma definida
como a plataforma ativa na caixa de diálogo Configuration Manager.

Remover uma plataforma


Se perceber que não precisa de uma plataforma, você pode removê-la usando a caixa
de diálogo Gerenciador de Configurações. Isso removerá todas as configurações de
solução e projeto que você definiu para essa combinação de configuração e destino.

1. No menu Compilar, clique em Gerenciador de Configurações.

2. Na caixa Plataforma da solução ativa, selecione <Editar>. A caixa de diálogo


Editar Plataformas de Solução é aberta.

3. Clique na plataforma que deseja remover e clique em Remover.


Ter várias plataformas como destino com uma
solução
Uma vez que pode alterar as configurações com base na combinação de definições de
plataforma e de configuração, você pode configurar uma solução que pode ter mais de
uma plataforma de destino.

Para destinar-se a várias plataformas


1. Use o Configuration Manager para adicionar pelo menos duas plataformas de
destino para a solução.

2. Selecione a plataforma a que deseja se destinar na lista Plataforma da solução


ativa.

3. Compile a solução.

Para criar várias configurações de solução de uma vez


1. Use o Configuration Manager para adicionar pelo menos duas plataformas de
destino para a solução.

2. Use a janela Build em Lotes para criar várias configurações de solução de uma vez.

É possível ter uma plataforma de solução definida como, por exemplo, x64, e não
ter projetos na solução destinados à mesma plataforma. Também é possível ter
vários projetos em sua solução, cada um destinado a plataformas diferentes. É
recomendável que, se tiver uma dessas situações, você crie uma nova configuração
com um nome descritivo para evitar confusão.

Confira também
Como criar e editar configurações
Noções sobre configurações de build
Criar e limpar projetos e soluções no Visual Studio
Como criar várias configurações simultaneamente
MSBuild
Artigo • 03/11/2023

O Microsoft Build Engine é uma plataforma para a criação de aplicativos. Esse


mecanismo, que é também conhecido como MSBuild, fornece um esquema XML para
um arquivo de projeto que controla como a plataforma de build processa e compila
software. O Visual Studio usa o MSBuild, que não depende do Visual Studio. Ao invocar
msbuild.exe ou build dotnet no seu arquivo de projeto ou solução, você pode organizar
e criar produtos em ambientes em que o Visual Studio não está instalado.

O Visual Studio usa o MSBuild para carregar e compilar projetos gerenciados. Os


arquivos de projeto no Visual Studio (.csproj, .vbproj, .vcxproj e outros) contêm o código
XML do MSBuild que é executado ao compilar um projeto usando o IDE. Os projetos do
Visual Studio importam toas as configurações e processos de build necessários para
realizar o trabalho de desenvolvimento típico, mas você pode estendê-las ou modificá-
las de dentro do Visual Studio ou usando um editor de XML.

Para instalar o MSBuild em um sistema Windows que não tenha o Visual Studio, acesse
Ferramentas de Construção para o Visual Studio na página de downloads . Ao
instalar o MSBuild por esse método, você obtém MSBuild.exe.

Para o .NET Core e o .NET 5 ou posterior, outra maneira de obter o equivalente ao


MSBuild é instalar o SDK do .NET. O comando de compilação .NET dotnet build está
disponível com o SDK do .NET no macOS, Windows ou Linux. O comando de
compilação do .NET dotnet build é um wrapper fino sobre a versão do .NET Core do
MSBuild.exe. Você pode usar a interface de linha de comando (CLI) do .NET Core , que
usa o MSBuild, para criar projetos direcionados ao .NET Core e ao .NET 5 e posterior.

No Visual Studio 2022 e versões posteriores, quando você compila no Visual Studio, a
versão de 64 bits do MSBuild é usada.

Para obter informações sobre o MSBuild para C++, confira MSBuild (C++).

Os exemplos a seguir ilustram quando você deve executar builds invocando o MSBuild
da linha de comando em vez do IDE do Visual Studio.

O Visual Studio não está instalado.

Você deseja usar a versão de 64 bits do MSBuild e está usando o Visual Studio
2019 ou anterior. Esta versão do MSBuild normalmente não é necessária, mas
permite que o MSBuild acesse mais memória.
Você deseja executar um build em vários processos. No entanto, você pode usar o
IDE para alcançar o mesmo resultado em projetos em C++ e C#.

Você deseja modificar o sistema de build. Por exemplo, você talvez queira habilitar
as seguintes ações:

Pré-processar arquivos antes de eles chegarem ao compilador.

Copiar as saídas de build para um local diferente.

Criar arquivos compactados de saídas de build.

Realizar uma etapa de pós-processamento. Por exemplo, convém marcar um


assembly com uma versão diferente.

Você pode escrever código no IDE do Visual Studio, mas executar os builds usando o
MSBuild. Como outra alternativa, você pode compilar o código no IDE em um
computador de desenvolvimento, mas executar o MSBuild da linha de comando para
compilar o código integrado de um repositório de origem com colaboração de vários
desenvolvedores.

7 Observação

Você pode usar o Azure Pipelines para compilar, testar e implantar seu aplicativo
automaticamente. O sistema de build pode executar builds automaticamente
quando os desenvolvedores fazem o check-in de código (por exemplo, como parte
de uma estratégia de Integração Contínua) ou de acordo com um cronograma (por
exemplo, um build de teste de aceitação pós-build noturno). O Azure Pipelines
compila seu código usando o MSBuild. Para obter mais informações, confira Azure
Pipelines.

Para obter um tutorial introdutório para o MSBuild no Windows, confira Passo a passo:
usando o MSBuild.

Usar MSBuild em um prompt de comando


Para executar o MSBuild em um prompt de comando, passe um arquivo de projeto para
MSBuild.exe, junto com as opções de linha de comando apropriadas. As opções de linha
de comando permitem que você defina propriedades, execute destinos específicos e
defina outras opções que controlam o processo de build. Por exemplo, você usaria a
seguinte sintaxe de linha de comando para criar o arquivo MyProj.proj com a
propriedade Configuration definida como Debug .
Prompt de comando do Windows

MSBuild.exe MyProj.proj -property:Configuration=Debug

Para obter mais informações sobre as opções de linha de comando do MSBuild, confira
Referência de linha de comando.

) Importante

Antes de baixar um projeto, determine a confiabilidade do código.

Para .NET Core e .NET 5 ou posterior, você normalmente usa dotnet build para invocar
o MSBuild. Confira o build do dotnet. Se você instalar somente o SDK do .NET e não o
Visual Studio ou as Ferramentas de Build do Visual Studio, terá o MSBuild somente por
meio de dotnet build .

A linha de comando dotnet build --help lista as opções de linha de comando


específicas para dotnet build , nem todas as opções de MSBuild.exe, mas você ainda
pode usar todas as opções de linha de comando listadas na referência de linha de
comando do MSBuild. As opções que não forem processadas por dotnet build serão
repassadas ao MSBuild.

Arquivo de projeto
O MSBuild usa um formato de arquivo de projeto baseado em XML que é simples e
extensível. O formato de arquivo de projeto do MSBuild permite que os
desenvolvedores descrevam os itens que devem ser compilados e também como eles
devem ser compilados para diferentes sistemas operacionais e configurações. Além
disso, o formato de arquivo de projeto permite aos desenvolvedores criar regras de
build reutilizáveis que podem ser fatoradas em arquivos separados para que os builds
possam ser realizados de forma consistente entre os diferentes projetos no produto.

O sistema de build do Visual Studio armazena a lógica específica do projeto no próprio


arquivo de projeto e usa arquivos XML do MSBuild importados, com extensões como
.props e .targets , para definir a lógica de build padrão. Os arquivos .props definem

as propriedades do MSBuild e os arquivos .targets definem destinos do MSBuild. Essas


importações às vezes são visíveis no arquivo de projeto do Visual Studio, mas em
projetos mais recentes, como projetos .NET Core, .NET 5 e .NET 6, você não vê as
importações no arquivo de projeto; Em vez disso, você verá uma referência do SDK, que
tem esta aparência:
XML

<Project Sdk="Microsoft.Net.Sdk">

Eles são chamados de projetos no estilo do SDK. Quando você faz referência a um SDK,
como o SDK do .NET, as importações de arquivos .props e .target são especificadas
implicitamente pelo SDK.

As seções a seguir descrevem alguns dos elementos básicos do formato de arquivo de


projeto do MSBuild. Para obter um tutorial sobre como criar um arquivo de projeto
básico, consulte Passo a passo: criar um arquivo de projeto do MSBuild do zero.

Propriedades
As propriedades representam pares chave-valor que podem ser usados para configurar
builds. As propriedades são declaradas com a criação de um elemento que tem o nome
da propriedade como um filho de um elemento PropertyGroup. Por exemplo, o código
a seguir cria uma propriedade chamada BuildDir que tem um valor de Build .

XML

<PropertyGroup>
<BuildDir>Build</BuildDir>
</PropertyGroup>

Você pode definir uma propriedade condicionalmente colocando um atributo


Condition no elemento. O conteúdo dos elementos condicionais é ignorado a menos

que a condição seja avaliada como true . No exemplo a seguir, a propriedade


Configuration será definida se ainda não tiver sido.

XML

<Configuration Condition=" '$(Configuration)' == ''


">DefaultValue</Configuration>

As propriedades podem ser referenciadas por todo o arquivo de projeto usando a


sintaxe $(<PropertyName>). Por exemplo, você pode fazer referência às propriedades
nos exemplos anteriores usando $(BuildDir) e $(Configuration) .

Para obter mais informações sobre propriedades, confira Propriedades do MSBuild.

Itens
Os itens são entradas no sistema de build e normalmente representam arquivos. Os
itens são agrupados em tipos de item com base em nomes de item definidos pelo
usuário. Esses tipos de item podem ser usados como parâmetros para tarefas, que usam
os itens individuais para executar as etapas do processo de build.

Os itens são declarados no arquivo de projeto, criando um elemento que tem o nome
do tipo de item como um filho de um elemento ItemGroup. Por exemplo, o código a
seguir cria um tipo de item chamado Compile , que inclui dois arquivos.

XML

<ItemGroup>
<Compile Include = "file1.cs"/>
<Compile Include = "file2.cs"/>
</ItemGroup>

Os tipos de item podem ser referenciados por todo o arquivo de projeto usando a
sintaxe @(<ItemType>). Por exemplo, o tipo de item no exemplo seria referenciado
usando @(Compile) .

No MSBuild, os nomes de elementos e atributos diferenciam maiúsculas de minúsculas.


No entanto, os nomes de propriedade, item e metadados não. O exemplo a seguir cria o
tipo de item Compile , comPile ou qualquer outra variação de maiúsculas e minúsculas e
fornece ao tipo de item o valor "one.cs;two.cs".

XML

<ItemGroup>
<Compile Include="one.cs" />
<Compile Include="two.cs" />
</ItemGroup>

Os itens podem ser declarados usando caracteres curinga e podem conter metadados
adicionais para cenários de build mais avançados. Para obter mais informações sobre os
itens, consulte Itens.

Tarefas
As tarefas são unidades de código executável usadas por projetos do MSBuild para
executar operações de build. Por exemplo, uma tarefa pode compilar os arquivos de
entrada ou executar uma ferramenta externa. As tarefas podem ser reutilizadas e podem
ser compartilhadas por diferentes desenvolvedores em projetos diferentes.
A lógica de execução de uma tarefa é escrita em código gerenciado e mapeada para o
MSBuild usando o elemento UsingTask. Você pode escrever sua própria tarefa por meio
da criação de um tipo gerenciado que implementa a interface ITask. Para saber mais
sobre como escrever tarefas, consulte Produção de tarefas.

O MSBuild inclui tarefas comuns que você pode modificar para atender às suas
necessidades. Os exemplos são Copy, que copia arquivos, MakeDir, que cria diretórios e
Csc, que compila os arquivos de código-fonte do Visual C#. Para obter uma lista das
tarefas disponíveis juntamente com as informações de uso, consulte Referência das
tarefas.

Uma tarefa é executada em um arquivo de projeto do MSBuild criando um elemento


que tem o nome da tarefa como um filho de um elemento Target. As tarefas
normalmente aceitam parâmetros, que são passados como atributos do elemento. As
propriedades e itens do MSBuild podem ser usados como parâmetros. Por exemplo, o
código a seguir chama a tarefa MakeDir e passa para ela o valor da propriedade
BuildDir que foi declarada em um exemplo anterior.

XML

<Target Name="MakeBuildDirectory">
<MakeDir Directories="$(BuildDir)" />
</Target>

Para obter mais informações sobre as tarefas, consulte Tarefas.

Destinos
Os destinos agrupam tarefas em uma ordem específica e expõe seções do arquivo de
projeto como pontos de entrada para o processo de build. Os destinos geralmente são
agrupados em seções lógicas para aumentar a legibilidade e para permitir a expansão.
Dividir as etapas de build em destinos permite que você chame uma parte do processo
de build de outros destinos sem copiar essa seção do código em cada destino. Por
exemplo, se vários pontos de entrada no processo de build precisam de referências para
serem compilados, você pode criar um destino que compila as referências e, em
seguida, executar esse destino de todos os pontos de entrada em que ele é necessário.

Os destinos são declarados no arquivo de projeto usando o elemento Target. Por


exemplo, o código a seguir cria um destino chamado Compile , que, em seguida, chama
a tarefa Csc que tem a lista de itens declarada no exemplo anterior.

XML
<Target Name="Compile">
<Csc Sources="@(Compile)" />
</Target>

Em cenários mais avançados, os destinos podem ser usados para descrever relações
entre si e executar a análise de dependência para que seções inteiras do processo de
build possam ser ignoradas se o destino estiver atualizado. Para obter mais informações
sobre destinos, consulte Destinos.

Logs de build
Você pode registrar erros de build, avisos e mensagens para o console ou outro
dispositivo de saída. Para obter mais informações, confira Obtendo logs de build com o
MSBuild).

Usar MSBuild no Visual Studio


O Visual Studio usa o formato de arquivo de projeto do MSBuild para armazenar
informações de build sobre projetos gerenciados. As configurações do projeto
adicionadas ou alteradas usando a interface do Visual Studio são refletidas no arquivo
.*proj gerado para cada projeto. O Visual Studio usa uma instância hospedada do
MSBuild para compilar projetos gerenciados. Isso significa que um projeto gerenciado
pode ser compilado no Visual Studio ou em um prompt de comando (mesmo se o
Visual Studio não estiver instalado) e os resultados serão idênticos.

Para obter um tutorial sobre como usar o MSBuild no Visual Studio, consulte Instruções
passo a passo: usando o MSBuild.

Multiplataforma
Usando o Visual Studio, você pode compilar um aplicativo para ser executado em
qualquer uma das várias versões do .NET Framework ou .NET Core, incluindo .NET 5 e
posterior. Por exemplo, você pode compilar um aplicativo para execução no .NET
Framework 4 em uma plataforma de 32 bits e pode compilar o mesmo aplicativo para
ser executado no .NET Framework 4.8 em uma plataforma de 64 bits. A capacidade de
compilar para mais de uma estrutura é chamada de multiplataforma.

Estes são alguns dos benefícios de multiplataforma:


Você pode desenvolver aplicativos destinados a versões anteriores do .NET
Framework, por exemplo, versões 3.5 e 4.7.2.

Você pode direcionar um perfil de estrutura, que é um subconjunto predefinido de


uma estrutura de destino.

Se um service pack para a versão atual do .NET Framework for lançado, você
poderá direcionar seu aplicativo a ele.

A multiplataforma garante que um aplicativo use apenas a funcionalidade que está


disponível na estrutura de destino e na plataforma.

Para obter mais informações, consulte Multiplataforma.

Personalizando o build
O MSBuild dá suporte a uma ampla variedade de cenários de build personalizados. A
maioria das funcionalidades internas pode ser substituída ou estendida. Confira
Personalizar seu build.

Usando o MSBuild de maneira programática


Se você estiver desenvolvendo uma ferramenta de build, talvez queira invocar o
MSBuild programaticamente de um aplicativo .NET. Usando a API do MSBuild, você
pode controlar todos os aspectos de um sistema de build complexo. O MSBuild fornece
um pacote NuGet com uma API completa (o namespace Microsoft.Build) que você pode
usar de um aplicativo .NET para essas finalidades. Confira Usar a API do MSBuild.

O MSBuild é de código aberto


O MSBuild é um projeto de software livre que aceita contribuições de usuário, assim
como o restante do ecossistema do .NET. O repositório que contém a origem do
MSBuild está disponível no repositório GitHub do MSBuild .

Confira também
ノ Expandir a tabela
Título Descrição

Passo a passo: Criar um arquivo Mostra como criar um arquivo de projeto básico de forma
de projeto do MSBuild do zero incremental, usando somente um editor de texto.

Passo a passo: Usando o Apresenta os blocos de construção do MSBuild e mostra


MSBuild como escrever, manipular e depurar projetos do MSBuild sem
fechar o IDE do Visual Studio.

Conceitos do MSBuild Apresenta os quatro blocos de construção do MSBuild:


propriedades, itens, destinos e tarefas.

Itens Descreve os conceitos gerais por trás do formato do arquivo


do MSBuild e como as partes se encaixam.

propriedades MSBuild Introduz propriedades e coleções de propriedades.


Propriedades são pares chave-valor que podem ser usados
para configurar builds.

Destinos Explica como agrupar tarefas em uma ordem específica e


habilitar seções do processo de build a ser chamado na linha
de comando.

Tarefas Mostra como criar uma unidade do código executável que


pode ser usado pelo MSBuild para realizar operações de build
atômicas.

Condições Discute como usar o atributo Condition em um elemento do


MSBuild.

Separação em lotes Discute como o MSBuild categoriza listas de itens por


metadados para execução em tarefas e destinos.

Multiplataforma Mostra como direcionar várias versões do .NET e/ou várias


plataformas.

Obtendo logs de build Descreve como registrar eventos de build, mensagens e erros.

Como o MSBuild compila Descreve o processo de build interno usado no MSBuild


projetos

Criar uma tarefa personalizada Mostra como criar uma tarefa personalizada, com um exemplo
para a geração de código de código.

Usar o MSBuild para gerar um Mostra como estender o build para lidar com a geração de
cliente da API REST cliente da API REST, com um exemplo de código.

Recursos adicionais Lista os recursos de comunidade e suporte para obter mais


informações sobre o MSBuild.
Referência
Referência do MSBuild
Links para tópicos que contêm informações de referência.

Glossário
Define termos comuns do MSBuild.
Documentação do Azure Pipelines
Implementar CI/CD (integração contínua e entrega contínua) para o aplicativo e a
plataforma de sua escolha.

Introdução

p CONCEITO

O que é o Azure Pipelines?

Utilizar o Azure Pipelines

Principais conceitos para usuários não familiarizados com o Azure Pipelines

Pipelines de lançamento clássicos

f INÍCIO RÁPIDO

Inscreva-se grátis

Crie seu primeiro pipeline

Clonar ou importar um pipeline

Personalizar um pipeline

Compilar, implantar e testar em qualquer linguagem e qualquer


ecossistema

g TUTORIAL

Imagem de contêiner

Aplicativos .NET Core

Anaconda

Android

Serviço de Kubernetes do Azure

Java

Aplicativos JavaScript e Node.js

Aplicativos Python
PHP

Veja mais >

Principais conceitos

p CONCEITO

Agentes

Condições

Expressões

Ambientes

Trabalhos

Parâmetros de runtime

Estágios

Tarefas

Modelos

Gatilhos

Diretrizes de referência

i REFERÊNCIA

Esquema do YAML

Variáveis predefinidas

Variáveis de artefatos de versão

Grupos de variáveis

Índice da tarefa

Criar qualquer repositório

c GUIA DE INSTRUÇÕES
GitHub

Git do Azure Repos

Controle de versão do Team Foundation

Nuvem do Bitbucket

Subversion

Git genérico

g TUTORIAL

Criar vários branches do Git

Implantar no Azure

e VISÃO GERAL

Implantar no Azure

g TUTORIAL

Conectar-se ao Azure

Implantar no banco de dados SQL do Azure

Implantar no Serviço de Kubernetes do Azure

Usar segredos do Azure Key Vault

Gerenciar agentes e agentes auto-hospedados

c GUIA DE INSTRUÇÕES

Implantar no Windows

Agentes hospedados pela Microsoft

Agentes do Linux auto-hospedados

Agentes do macOS auto-hospedados


Configurar testes contínuos

g TUTORIAL

Configurar para teste de interface do usuário

Teste de interface do usuário usando o Selenium

Revisar resultados de cobertura de código

Examinar resultados de teste

Gerenciar testes instáveis

Analisar resultados do teste

Configurar recursos

c GUIA DE INSTRUÇÕES

Criar e gerenciar pools de agentes

Criar e gerenciar grupos de implantação

Criar e gerenciar conexões de serviço

Definir políticas de retenção de build e lançamento

Solucionar problemas

c GUIA DE INSTRUÇÕES

Solucionar problemas de builds e versões

Executar um lançamento no modo de depuração

Solucionar problemas de conexões de serviço do Azure Resource Manager

Publicar pacotes

g TUTORIAL

Publicar e baixar artefatos


Publicar pacotes do NuGet

Publicar pacotes npm

Publicar pacotes do Python

Publicar e baixar Universal Packages

Publicar pacotes do Maven

Publicar símbolos para depuração

Integrar com outros aplicativos

c GUIA DE INSTRUÇÕES

Integrar com o Slack

Integrar com o Microsoft Teams

Integração aos ganchos de serviço


Como especificar eventos de build
(Visual Basic)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Eventos de build no Visual Basic podem ser usados para executar scripts, macros ou
outras ações como parte do processo de compilação. Eventos de pré-build ocorrem
antes da compilação; eventos de pós-build ocorrem após a compilação.

Eventos de build são especificados na caixa de diálogo Eventos de Build, disponível na


página Compilar do Designer de Projeto.

7 Observação

O Visual Basic Express não dá suporte à entrada de eventos de build. Isso tem
suporte apenas no produto Visual Studio completo.

Como especificar eventos de pré-build e de


pós-build

Para especificar um evento de build


1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto,
clique em Propriedades.

2. Clique na guia Compilar.

3. Clique no botão Eventos de Build para abrir a caixa de diálogo Eventos de Build.

4. Insira os argumentos de linha de comando para a ação pré ou pós-build e, em


seguida, clique em OK.

7 Observação

Adicione uma instrução call antes de todos os comandos pós-build que


executam arquivos .bat. Por exemplo, call C:\MyFile.bat ou call
C:\MyFile.bat call C:\MyFile2.bat .
7 Observação

Se o evento de pré ou de pós-build não for concluído com êxito, você poderá
encerrar o build fazendo a ação do evento terminar com um código diferente
de zero (0), o que indica uma ação bem-sucedida.

Exemplo: como alterar informações de


manifesto usando um evento de pós-build
O procedimento a seguir mostra como definir a versão mínima do sistema operacional
no manifesto do aplicativo usando um comando .exe chamado de um evento de pós-
build (o arquivo .exe.manifest no diretório do projeto). A versão mínima do sistema
operacional é um número de quatro partes, como 4.10.0.0. Para fazer isso, o comando
alterará a seção <dependentOS> do manifesto:

XML

<dependentOS>
<osVersionInfo>
<os majorVersion="4" minorVersion="10" buildNumber="0"
servicePackMajor="0" />
</osVersionInfo>
</dependentOS>

Para criar um comando .exe para alterar o manifesto do


aplicativo
1. Crie um aplicativo de console para o comando. No menu Arquivo, clique em Novo
e em Projeto.

2. Na caixa de diálogo Novo Projeto, no nó Visual Basic, selecione Windows e, em


seguida, o modelo Aplicativo de Console. Dê ao projeto o nome de
ChangeOSVersionVB .

3. Em Module1.vb, adicione a seguinte linha às outras instruções Imports na parte


superior do arquivo:

VB

Imports System.Xml
4. Adicione o seguinte código em Sub Main :

VB

Sub Main()
Dim applicationManifestPath As String
applicationManifestPath = My.Application.CommandLineArgs(0)
Console.WriteLine("Application Manifest Path: " &
applicationManifestPath.ToString)

'Get version name


Dim osVersion As Version
If My.Application.CommandLineArgs.Count >= 2 Then
osVersion = New
Version(My.Application.CommandLineArgs(1).ToString)
Else
Throw New ArgumentException("OS Version not specified.")
End If
Console.WriteLine("Desired OS Version: " & osVersion.ToString())

Dim document As XmlDocument


Dim namespaceManager As XmlNamespaceManager
namespaceManager = New XmlNamespaceManager(New NameTable())
With namespaceManager
.AddNamespace("asmv1", "urn:schemas-microsoft-com:asm.v1")
.AddNamespace("asmv2", "urn:schemas-microsoft-com:asm.v2")
End With

document = New XmlDocument()


document.Load(applicationManifestPath)

Dim baseXPath As String


baseXPath =
"/asmv1:assembly/asmv2:dependency/asmv2:dependentOS/asmv2:osVersionInfo
/asmv2:os"

'Change minimum required OS Version.


Dim node As XmlNode
node = document.SelectSingleNode(baseXPath, namespaceManager)
node.Attributes("majorVersion").Value = osVersion.Major.ToString()
node.Attributes("minorVersion").Value = osVersion.Minor.ToString()
node.Attributes("buildNumber").Value = osVersion.Build.ToString()
node.Attributes("servicePackMajor").Value =
osVersion.Revision.ToString()

document.Save(applicationManifestPath)
End Sub

O comando utiliza dois argumentos. O primeiro argumento é o caminho para o


manifesto do aplicativo (ou seja, a pasta na qual o processo de build cria o
manifesto, geralmente, <NomeDoProjeto>.publish). O segundo argumento é a
nova versão do sistema operacional.
5. No menu Compilar, clique em Compilar Solução.

6. Copie o arquivo .exe para um diretório como C:\TEMP\ChangeOSVersionVB.exe.

Em seguida, invoque esse comando em um evento de pós-build para modificar o


manifesto do aplicativo.

Para invocar um evento de pós-build para alterar o


manifesto do aplicativo
1. Crie um aplicativo do Windows para o projeto a ser publicado. No menu Arquivo,
clique em Novo e em Projeto.

2. Na caixa de diálogo Novo Projeto, no nó Visual Basic, selecione Área de Trabalho


do Windows e, em seguida, o modelo Aplicativo do Windows Forms. Dê ao
projeto o nome de VBWinApp .

3. Com o projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique


em Propriedades.

4. No Designer de Projeto, acesse a página Publicar e defina o Local de publicação


como C:\TEMP.

5. Publique o projeto clicando em Publicar Agora.

O arquivo de manifesto será compilado e colocado em


C:\TEMP\VBWinApp_1_0_0_0\VBWinApp.exe.manifest. Para exibir o manifesto,
clique com o botão direito do mouse no arquivo, clique em Abrir com, então
clique em Selecionar um programa em uma lista de programas instalados e
clique em Bloco de Notas.

Pesquise o elemento <osVersionInfo> no arquivo. Por exemplo, a versão pode ser:

XML

<os majorVersion="4" minorVersion="10" buildNumber="0"


servicePackMajor="0" />

6. No Designer de Projeto, vá para a guia Compilar e clique no botão Eventos de


Build para abrir a caixa de diálogo Eventos de Build.

7. Na caixa Linha de Comando do Evento de Pós-Build, digite o seguinte comando:

C:\TEMP\ChangeOSVersionVB.exe "$(TargetPath).manifest" 5.1.2600.0


Ao compilar o projeto, esse comando alterará a versão mínima do sistema
operacional no manifesto do aplicativo para 5.1.2600.0.

A macro $(TargetPath) expressa o caminho completo para o arquivo executável


que está sendo criado. Portanto, $(TargetPath).manifest especificará o manifesto do
aplicativo criado no diretório bin. A publicação copiará esse manifesto para o local
de publicação definido anteriormente.

8. Publique o projeto novamente. Acesse a página Publicar e clique em Publicar


Agora.

Exiba o manifesto novamente. Para exibir o manifesto, vá para o diretório de


publicação, clique com o botão direito do mouse no arquivo, clique em Abrir com,
então em Selecionar o programa em uma lista e, em seguida, clique no Bloco de
Notas.

A versão agora deve ser:

XML

<os majorVersion="5" minorVersion="1" buildNumber="2600"


servicePackMajor="0" />

Confira também
Página de compilação, Designer de Projeto (Visual Basic)
Página de Publicação, Designer de Projeto
Caixa de diálogo da linha de comando do evento de pré-build/evento de pós-
build
Como especificar eventos de build (C#)
Como especificar eventos de build (C#)
Artigo • 21/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use eventos de build para especificar comandos que são executados antes do início do
build ou após sua conclusão.

Especificar um evento de build


1. No Gerenciador de Soluções, selecione o projeto para o qual deseja especificar o
evento de build.

2. No menu Projeto, clique em Propriedades de {Nome do projeto} (ou no


Gerenciador de Soluções, pressione Alt+Enter).

3. Selecione Eventos de Build>.

4. Na seção Evento de pré-build, especifique a sintaxe do evento de build.

7 Observação

Eventos de pré-build não serão executados se o projeto estiver atualizado e


nenhum build será disparado.

5. Na seção Evento de pós-build, especifique a sintaxe do evento de build.


7 Observação

Adicione uma instrução call antes de todos os comandos pós-build que


executam arquivos .bat. Por exemplo, call MyFile.bat ou call MyFile.bat
call MyFile2.bat . Os caminhos podem ser absolutos ou relativos à pasta do
projeto.

6. Na caixa Executar o evento de pós-build, especifique em que condições o evento


pós-build deve ser executado.

Criar os comandos do evento de build


Os comandos do evento de build podem incluir qualquer comando que seja válido em
um prompt de comando ou em um arquivo .bat. O nome de um arquivo em lote deve
ser precedido por call para garantir que todos os comandos posteriores sejam
executados.

Você pode executar scripts do PowerShell inserindo um comando como PowerShell


MyPowerShellScript.ps1 . O caminho para o script do PowerShell pode ser absoluto ou
pode ser relativo ao diretório do projeto. Você precisaria garantir que a política de
execução de scripts do PowerShell no sistema operacional esteja definida
adequadamente para executar o script. Consulte Sobre políticas de execução.

Para usar outro shell, como o bash, geralmente você usaria a mesma sintaxe de
comando que usaria para iniciar um script de shell no prompt de comando do Windows.
O uso de shells de terceiros está além do escopo desta documentação, mas sites como
o Stack Overflow podem ser úteis.

No arquivo de projeto
Quando você executa as etapas anteriores, o Visual Studio modifica o arquivo de
projeto adicionando o destino PreBuild ou PostBuild e o código do MSBuild
necessário para executar as etapas fornecidas. Você pode abrir o arquivo de projeto e
ver as etapas. É possível modificar as etapas no arquivo de projeto. Você verá as
alterações na seção Build > Eventos das propriedades do projeto depois de salvá-las.

XML

<Target Name="PreBuild" BeforeTargets="PreBuildEvent">


<Exec Command="call prebuild.bat" />
</Target>
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
<Exec Command="call postbuild.bat" />
</Target>

Erros e outras saídas


A saída dos eventos de build é gravada na seção Build da Janela de Saída. Para abri-la,
escolha Exibir>Outras Janelas, Janela de Saída ou pressione Ctrl+Alt+O. Na lista
suspensa ao lado de Mostrar saída de, escolha Build.

Se o evento de pré ou de pós-build não for concluído com êxito, você poderá encerrar o
build fazendo a ação do evento terminar com um código diferente de zero (0). O código
de saída zero indica uma ação bem-sucedida; qualquer outro código de saída é
considerado um erro.

Se o evento de pré-build falhar, você poderá ver um erro como este na janela Lista de
Erros:

Saída

MSB3073 The command "call c:\source\repos\prebuild.bat" exited with code 1.

Se não houver informações suficientes na janela Lista de Erros, você poderá tentar usar
a Janela de Saída para exibir a saída completa do build, incluindo qualquer saída de
arquivos em lotes.

 Dica

A janela Lista de Erros é limitada a apenas uma linha de saída, a primeira linha
inserida para o evento. Se a saída da janela Lista de Erros for importante para você,
evite colocar mais de uma linha no evento. Crie um arquivo em lote no prompt de
comando do Windows ou no sistema operacional e use call mybatchfile.bat para
o evento. Inclua os comandos no próprio arquivo em lote.

Para obter diretrizes sobre os comandos que você pode usar em arquivos em lote,
consulte Comandos do Windows.

Macros
As "macros" normalmente disponíveis (na verdade propriedades do MSBuild) são
listadas em propriedades comuns do MSBuild. Para projetos do SDK do .NET (.NET Core
ou .NET 5 e posterior), propriedades adicionais são listadas em Propriedades do
MSBuild para Microsoft.NET.Sdk.

Em seus scripts para eventos de build, talvez você queira referenciar os valores de
algumas variáveis no nível do projeto, como o nome do projeto ou o local da pasta de
saída. Em versões anteriores do Visual Studio, elas eram chamadas de macros. O
equivalente a macros em versões recentes do Visual Studio são propriedades do
MSBuild. O MSBuild é o mecanismo de build que o Visual Studio usa para processar o
arquivo de projeto quando ele executa um build. Um evento de build no IDE resulta em
um destino do MSBuild no arquivo de projeto. Você pode usar qualquer propriedade do
MSBuild disponível no destino no arquivo de projeto (por exemplo, $(OutDir) ou
$(Configuration) ) . As propriedades do MSBuild que estão disponíveis para você nesses

eventos dependem dos arquivos importados implicitamente ou explicitamente em um


arquivo de projeto, como arquivos .props e propriedades .targets definidos em seu
arquivo de projeto, como em elementos PropertyGroup . Tenha cuidado para usar a
ortografia exata de cada propriedade. Nenhum erro será relatado se você digitar
incorretamente uma propriedade; em vez disso, uma propriedade indefinida é avaliada
como uma cadeia de caracteres vazia.

Por exemplo, suponha que você especifique um evento de pré-build da seguinte


maneira:

Esse evento de pré-compilação resulta na seguinte entrada, chamada de Target no


arquivo de projeto:

XML

<Target Name="PreBuild" BeforeTargets="PreBuildEvent">


<Exec Command="echo Configuration: $(Configuration)&#xD;&#xA;echo
DevEnvDir: $(DevEnvDir)&#xD;&#xA;echo OutDir: $(OutDir)&#xD;&#xA;echo
ProjectDir: $(ProjectDir)&#xD;&#xA;echo VisualStudioVersion:
$(VisualStudioVersion)&#xD;&#xA;echo AssemblySearchPaths:
$(AssemblySearchPaths)&#xD;&#xA;echo AssemblyName:
$(AssemblyName)&#xD;&#xA;echo BaseIntermediateOutputPath:
$(BaseIntermediateOutputPath)&#xD;&#xA;echo CscToolPath: $(CscToolPath)" />
</Target>

O evento de build aparece como um destino que inclui a tarefa Exec com a entrada
especificada como Command . As linhas novas são codificadas no XML.

Quando você cria o projeto neste exemplo, o evento de pré-build imprime os valores de
algumas propriedades. Neste exemplo, $(CscToolPath) não produz nenhuma saída, pois
ela não está definida. É uma propriedade opcional que você pode definir em seu
arquivo de projeto para dar o caminho para uma instância personalizada do compilador
C# (por exemplo, se você estivesse testando uma versão diferente de csc.exeou um
compilador experimental).

A saída dos eventos de build é gravada na saída de build, que pode ser encontrada na
janela Saída. Na lista suspensa Mostrar saída, escolha Compilar.

Saída

Build started...
1>------ Build started: Project: ConsoleApp4, Configuration: Debug Any CPU -
-----
1>You are using a preview version of .NET. See: https://aka.ms/dotnet-core-
preview
1>Configuration: Debug
1>DevEnvDir: C:\Program Files\Microsoft Visual
Studio\2022\Preview\Common7\IDE\
1>OutDir: bin\Debug\net6.0\
1>ProjectDir: C:\source\repos\ConsoleApp4\ConsoleApp4\
1>VisualStudioVersion: 17.0
1>ALToolsPath:
1>AssemblySearchPaths: {CandidateAssemblyFiles};{HintPathFromItem};
{TargetFrameworkDirectory};{RawFileName}
1>AssemblyName: ConsoleApp4
1>BaseIntermediateOutputPath: obj\
1>CscToolsPath:
1>Skipping analyzers to speed up the build. You can execute 'Build' or
'Rebuild' command to run analyzers.
1>ConsoleApp4 ->
C:\source\repos\ConsoleApp4\ConsoleApp4\bin\Debug\net6.0\ConsoleApp4.dll

7 Observação

Alguns cenários exigem ações de build mais complexas do que os eventos de build
são capazes. Por exemplo, para muitos cenários comuns de geração de código,
você precisa lidar com operações limpas e de recompilação e talvez queira habilitar
o build incremental para etapas de geração de código, de modo que a etapa seja
executada somente se a saída estiver desatualizada em relação às entradas. O
MSBuild foi projetado para lidar de modo inteligente com todos esses cenários.
Considere criar um destino personalizado que especifique a execução de
AfterTargets ou BeforeTargets durante um ponto específico no processo de build

e, para obter mais controle em cenários avançados, considere criar uma tarefa
personalizada, ou avalie as maneiras diferentes de Personalizar um build.

Exemplo
1. Crie um arquivo em lote chamado postbuild.bat na pasta do projeto, com o
seguinte conteúdo:

batch

echo Copying output file %1 to %1.copy


copy %1 %1.copy

Lembre-se de que, em um arquivo em lote, %1 refere-se ao primeiro argumento


passado.

2. Chame o arquivo em lote na seção Evento de pós-build das propriedades do


projeto e passe um argumento usando a propriedade de MSBuild $(TargetPath) .

Prompt de comando do Windows

call postbuild.bat $(TargetPath)

3. Compile o projeto e verifique a pasta de saída. Você deverá ver o arquivo copiado
ao lado do assembly compilado. Na Janela de Saída, na seção Build, você deverá
ver a saída do arquivo em lote:

Saída

1>Output file is C:\source\repos\ConsoleApp-BuildEvents\ConsoleApp-


BuildEvents\bin\Debug\net6.0\ConsoleApp-BuildEvents.dll
1> 1 file(s) copied.
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped
==========
========== Build started at 12:00 PM and took 00.723 seconds ==========
Confira também
Página Eventos de Build, Designer de Projeto (C#)
Caixa de diálogo da linha de comando do evento de pré-build/evento de pós-
build
Como especificar eventos de build (Visual Basic)
Compilar e criar
Como configurar avisos no Visual Basic
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O compilador do Visual Basic inclui um conjunto de avisos sobre o código que podem
causar erros em tempo de execução. É possível usar essas informações para escrever
códigos mais limpos, mais rápidos e melhores com menos bugs. Por exemplo, o
compilador produzirá um aviso quando o usuário tentar invocar um membro de uma
variável de objeto não atribuída, retornar de uma função sem definir o valor retornado
ou executar um bloco Try com erros na lógica para capturar exceções.

Às vezes, o compilador fornece lógica extra em nome do usuário para que o usuário
possa se concentrar na tarefa em questão, em vez de antecipar possíveis erros. Em
versões anteriores do Visual Basic, o Option Strict era usado para limitar a lógica
adicional fornecida pelo compilador do Visual Basic. A configuração de avisos permite
limitar essa lógica de uma maneira mais granular, no nível dos avisos individuais.

Talvez você deseje personalizar seu projeto e desligar alguns avisos não relevantes ao
aplicativo enquanto transforma outros avisos em erros. Esta página explica como ativar
e desativar avisos individuais.

Ativar e desativar avisos


Há duas maneiras diferentes para configurar avisos: é possível configurá-los usando o
Designer de Projeto ou usar as opções /warnaserror e /nowarn do compilador.

A guia Compilar da página Designer de Projeto permite ativar e desativar avisos.


Marque a caixa de seleção Desabilitar Todos os Avisos para desabilitar todos os avisos;
marque Tratar Todos os Avisos como Erros para tratar todos os avisos como erros.
Alguns avisos individuais podem ser ativados/desativados como erro ou aviso, conforme
desejado, na tabela exibida.

Quando Opção Estrita é definida como Desativado, os avisos relacionados à Opção


Estrita não podem ser tratados independentemente uns dos outros. Quando Opção
Estrita é definida como Ativado, os avisos associados são tratados como erros,
independentemente de seu status. Quando Opção Estrita é definida como
Personalizado especificando /optionstrict:custom no compilador de linha de
comando, os avisos da Opção Estrita podem ser ativados ou desativados de forma
independente.
A opção de linha de comando /warnaserror do compilador também pode ser usada
para especificar se os avisos são tratados como erros. É possível adicionar uma lista
delimitada por vírgula a essa opção para especificar quais avisos devem ser tratados
como erros ou avisos, usando + ou -. A tabela a seguir fornece detalhes das possíveis
opções.

Opção de linha de Especifica


comando

/warnaserror+ Tratar todos os avisos como erros

/warnsaserror - Não trate avisos como erros. Esse é o padrão.

/warnaserror+: Trate avisos específicos como erros, listados por seus números de ID de
<warning list > erro em uma lista delimitada por vírgula.

/warnaserror-: Não trate avisos específicos como erros, listados por seus números de ID
<warning list> de erro em uma lista delimitada por vírgula.

/nowarn Não relate os avisos.

/nowarn:<warning Não relate os avisos especificados, listados por seus números de ID de erro
list> em uma lista delimitada por vírgula.

A lista de avisos contém os números de ID de erro dos avisos que devem ser tratados
como erros, que podem ser usados com as opções de linha de comando para ativar ou
desativar avisos específicos. Se a lista de avisos contiver um número inválido, um erro
será relatado.

Exemplos
Esta tabela de exemplos de argumentos de linha de comando descreve a ação de cada
argumento.

Argumento Descrição

vbc /warnaserror Especifica que todos os avisos devem ser tratado como erros.

vbc /warnaserror:42024 Especifica que o aviso 42024 deve ser tratado como um erro.

vbc Especifica que os avisos 42024 e 42025 devem ser tratados como
/warnaserror:42024,42025 erros.

vbc /nowarn Especifica que nenhum aviso deve ser relatado.

vbc /nowarn:42024 Especifica que o aviso 42024 não deve ser relatado.
Argumento Descrição

vbc /nowarn:42024,42025 Especifica que os avisos 42024 e 42025 não devem ser relatados.

Tipos de avisos
Veja a seguir uma lista de avisos que você pode desejar tratar como erros.

Aviso de conversão implícita


Gerado para instâncias de conversão implícita. Eles não incluem conversões implícitas
de um tipo numérico intrínseco em uma cadeia de caracteres durante o uso do
operador & . O padrão para novos projetos é desativado.

ID: 42016

Aviso de invocação de método e resolução de sobrecarga


com associação tardia
Gerado para instâncias de associação tardia. O padrão para novos projetos é desativado.

ID: 42017

Avisos de operandos do tipo 'Object'


Gerados quando ocorrem operandos do tipo Object que criarão um erro com Option
Strict On. O padrão para novos projetos é ativado.

ID: 42018 e 42019

Avisos de declarações que exigem a cláusula 'As'


Gerados quando uma declaração da variável, função ou propriedade que não tem uma
cláusula As cria um erro com Option Strict On. Variáveis que não têm um tipo atribuído
a elas são consideradas como sendo do tipo Object . O padrão para novos projetos é
ativado.

ID: 42020 (declaração da variável), 42021 (declaração da função) e 42022 (declaração da


propriedade).
Avisos de possível exceção de referência nula
Gerados quando uma variável é usada antes de receber um valor. O padrão para novos
projetos é ativado.

ID: 42104, 42030

Aviso de variável local não utilizada


Gerado quando uma variável local é declarada, mas nunca referenciada. O padrão é
habilitado.

ID: 42024

Aviso de acesso de membro compartilhado por meio de


variável de instância
Gerado quando o acesso a um membro compartilhado por meio de uma instância pode
ter efeitos colaterais, ou quando o acesso a um membro compartilhado por meio de
uma variável de instância não está do lado direito de uma expressão ou está sendo
passado como um parâmetro. O padrão para novos projetos é ativado.

ID: 42025

Avisos de operador recursivo ou acesso de propriedade


Gerados quando o corpo de uma rotina usa o mesmo operador ou a mesma
propriedade em que é definido. O padrão para novos projetos é ativado.

ID: 42004 (operador), 42026 (propriedade)

Aviso de função ou operador sem o valor retornado


Gerado quando a função ou o operador não tem um valor retornado especificado. Isso
inclui a omissão de um Set na variável local implícita com o mesmo nome da função. O
padrão para novos projetos é ativado.

ID: 42105 (função), 42016 (operador)

Aviso de modificador de sobrecargas usado em um


módulo
Gerado quando Overloads é usado em um Module . O padrão para novos projetos é
ativado.

ID: 42028

Avisos de blocos de captura duplicados ou sobrepostos


Gerado quando um bloco Catch nunca é acessado devido à definição de sua relação
com outros blocos Catch . O padrão para novos projetos é ativado.

ID: 42029, 42031

Confira também
Tipos de erro
Instrução Try...Catch...Finally
/nowarn
/warnaserror (Visual Basic)
Página de compilação, Designer de Projeto (Visual Basic)
Avisos de compilador desativados por padrão
Passo a passo: Criar um ambiente de
build de vários computadores
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode criar um ambiente de build na sua organização instalando o Visual Studio em
um computador host e, em seguida, copiando vários arquivos e configurações para
outro computador de modo que ele possa participar de compilações. Você não precisa
instalar o Visual Studio no outro computador.

Este documento não confere direitos para redistribuir o software externamente nem
para fornecer ambientes de build a terceiros.

Isenção de responsabilidade

Este documento é fornecido "no estado em que se encontra". Embora tenhamos


testado as etapas descritas, não é possível testar exaustivamente cada configuração.
Tentaremos manter o documento atualizado com quaisquer informações adicionais
que obtivermos. As informações e opiniões expressadas neste documento, incluindo
URLs e outras referências a sites da Internet, podem ser alteradas sem aviso prévio.
A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui
fornecidas. Você assume o risco de usá-las.

Este documento não fornece direitos legais e nenhuma propriedade intelectual


sobre qualquer produto da Microsoft. Você pode copiar e usar este documento para
fins de referência interna.

Você não tem obrigação de enviar à Microsoft nenhuma sugestão ou comentário


("Comentários") com relação a este documento. No entanto, qualquer Comentário
que você forneça voluntariamente poderá ser usado em Produtos Microsoft e
especificações relacionadas ou outra documentação (coletivamente, "Ofertas
Microsoft"), que, por sua vez, poderão ser utilizados por terceiros para desenvolver
seus próprios produtos. Portanto, ao fornecer Comentários sobre a Microsoft em
qualquer versão deste documento ou das Ofertas da Microsoft aos quais elas se
aplicam, você concorda que: (a) a Microsoft pode livremente usar, reproduzir,
licenciar, distribuir e comercializar de outra forma seus Comentários em qualquer
Oferta da Microsoft; (b) você também concede a terceiros, sem custos, somente os
direitos de patente necessários para permitir que outros produtos usem ou
interajam com quaisquer partes específicas de um Produto Microsoft que
incorporem Seus Comentários; e (c) você não fornecerá à Microsoft nenhum
Comentário (i) que você tenha motivo para acreditar que esteja sujeito a qualquer
declaração ou direito de patente, direitos autorais ou outra propriedade intelectual
de terceiros; ou (ii) sujeito a termos de licença que busquem exigir que qualquer
Oferta da Microsoft que incorpore ou seja derivada desses Comentários, ou outra
propriedade intelectual da Microsoft, seja licenciada ou compartilhada de outra
forma com quaisquer terceiros.

Este passo a passo foi validado nos seguintes sistemas operacionais:

Windows 8 (x86 e x64)


Windows 7 Ultimate
Windows Server 2008 R2 Standard

Depois de concluir as etapas neste passo a passo, você pode usar o ambiente de vários
computadores para criar estes tipos de aplicativos:

Aplicativos de área de trabalho em C++ que usem o SDK do Windows 8


Aplicativos de área de trabalho em Visual Basic ou C# voltados para o .NET
Framework 4.5

O ambiente de vários computadores não pode ser usado para compilar estes tipos de
aplicativos:

Aplicativos UWP. Para compilar aplicativos UWP, instale o Visual Studio no


computador de build.
Aplicativos de área de trabalho voltados para o .NET Framework 4 ou anterior. Para
criar esses tipos de aplicativos, instale o Visual Studio ou Assemblies e Ferramentas
do .NET Reference (do SDK do Windows 7.1) no computador de build.

Pré-requisitos
O Visual Studio com a carga de trabalho instalada para desenvolvimento de área de
trabalho .NET.

Instalar o software nos computadores


Primeiro, configure o computador host e, em seguida, configure o computador de build.

Ao instalar o Visual Studio no computador host, você pode criar os arquivos e as


configurações que você copiará posteriormente para o computador de build. Você pode
instalar o Visual Studio em um computador x86 ou x64, mas a arquitetura do
computador de build deverá corresponder à arquitetura do computador host.

1. No computador host, instale o Visual Studio.

2. No computador de compilação, instale o .NET Framework 4.5 ou posterior. Para


verificar se ele está instalado, verifique se a entrada de Versão na subchave de
registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework
Setup\NDP\v4\Full tem o valor de 4.5 ou superior.

Copiar arquivos do computador host para o


computador de build
Esta seção aborda a cópia de arquivos específicos, compiladores, ferramentas de build,
ativos do MSBuild e configurações do Registro do computador host para o computador
de build. Estas instruções pressupõem que você instalou o Visual Studio no local padrão
no computador host; se você tiver instalado-o em outro local, ajuste as etapas
apropriadamente.

Em um computador x86, a localização padrão é C:\Arquivos de


Programas\Microsoft Visual Studio
Em um computador x64, a localização padrão é C:\Arquivos de Programas
(x86)\Microsoft Visual Studio

Observe que o nome da pasta Arquivos de Programa depende do sistema operacional


instalado. Em um computador x86, o nome é Arquivos de Programa; em um computador
x64, o nome é Arquivos de Programa (x86). Independentemente da arquitetura do
sistema, este passo a passo refere-se à pasta Arquivos de Programa como
%ProgramFiles%.

7 Observação

No computador de build, todos os arquivos relevantes precisam estar na mesma


unidade. No entanto, a letra da unidade para essa unidade pode ser diferente da
letra da unidade para a unidade na qual o Visual Studio está instalado no
computador host. Em qualquer caso, você deve considerar o local dos arquivos ao
criar entradas de Registro conforme descrito mais adiante neste documento.

Copiar os arquivos do SDK do Windows para o


computador de build
1. Se você tiver somente o SDK do Windows para Windows 8 instalado, copie estas
pastas recursivamente do computador host para o computador de build:

%ProgramFiles%\Windows Kits\8.0\bin\

%ProgramFiles%\Windows Kits\8.0\Catalogs\

%ProgramFiles%\Windows Kits\8.0\DesignTime\

%ProgramFiles%\Windows Kits\8.0\include\

%ProgramFiles%\Windows Kits\8.0\Lib\

%ProgramFiles%\Windows Kits\8.0\Redist\

%ProgramFiles%\Windows Kits\8.0\References\

Se você também tiver estes outros kits do Windows 8...

Kit de Avaliação e Implantação do Microsoft Windows

Kit de Driver do Microsoft Windows

Kit de Certificação de Hardware do Microsoft Windows

... eles poderão ter instalado arquivos nas pastas %ProgramFiles%\Windows


Kits\8.0 listadas na etapa anterior, e os termos de licença poderão não permitir
direitos de servidor de build para esses arquivos. Verifique os termos de licença
para cada kit do Windows instalado para determinar se os arquivos podem ser
copiados para o computador de build. Se os termos de licença não permitirem
direitos de servidor de build, remova os arquivos do computador de build.

2. Copie as seguintes pastas recursivamente do computador host para o computador


de build:

%ProgramFiles%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\

%ProgramFiles%\Common Files\Merge Modules\

%ProgramFiles%\Microsoft Visual Studio\<versão>\<edição>\VC\

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\Tools\ProjectComponents\

%ProgramFiles%\MSBuild\Microsoft.Cpp\v4.0\v110\

%ProgramFiles%\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\
%ProgramFiles%\Reference
Assemblies\Microsoft\Framework\.NETFramework\v4.5\

3. Copie estes arquivos do computador host para o computador de build:

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\msobj110.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\mspdb110.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\mspdbcore.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\mspdbsrv.exe

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\msvcdis110.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\Tools\makehm.exe

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\Tools\VCVarsQueryRegistry.bat

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\Tools\vsvars32.bat

4. As seguintes bibliotecas de runtime do Visual C++ serão necessárias apenas se


você executar saídas de build no computador de build, por exemplo, como parte
do teste automatizado. Normalmente, os arquivos estão localizados em subpastas
na pasta %ProgramFiles%\Microsoft Visual Studio\<versão>\
<edição>\VC\redist\x86 ou %ProgramFiles%\Microsoft Visual Studio\<versão>\
<edição>\VC\redist\x64, dependendo da arquitetura do sistema. Em sistemas x86,
copie os binários x86 para a pasta Windows\System32\. Em sistemas x64, copie os
binários x86 para a pasta Windows\SysWOW64 e os binários x64 para a
Windows\System32.

\Microsoft.VC110.ATL\atl110.dll

\Microsoft.VC110.CRT\msvcp110.dll

\Microsoft.VC110.CRT\msvcr110.dll

\Microsoft.VC110.CXXAMP\vcamp110.dll
\Microsoft.VC110.MFC\mfc110.dll

\Microsoft.VC110.MFC\mfc110u.dll

\Microsoft.VC110.MFC\mfcm110.dll

\Microsoft.VC110.MFC\mfcm110u.dll

\Microsoft.VC110.MFCLOC\mfc110chs.dll

\Microsoft.VC110.MFCLOC\mfc110cht.dll

\Microsoft.VC110.MFCLOC\mfc110deu.dll

\Microsoft.VC110.MFCLOC\mfc110enu.dll

\Microsoft.VC110.MFCLOC\mfc110esn.dll

\Microsoft.VC110.MFCLOC\mfc110fra.dll

\Microsoft.VC110.MFCLOC\mfc110ita.dll

\Microsoft.VC110.MFCLOC\mfc110jpn.dll

\Microsoft.VC110.MFCLOC\mfc110kor.dll

\Microsoft.VC110.MFCLOC\mfc110rus.dll

\Microsoft.VC110.OPENMP\vcomp110.dll

5. Copie somente os seguintes arquivos da pasta Debug_NonRedist\x86 ou


Debug_NonRedist\x64 para o computador de build, conforme descrito em Preparar
um computador de teste para executar um executável de depuração. Nenhum
outro arquivo pode ser copiado.

\Microsoft.VC110.DebugCRT\msvcp110d.dll

\Microsoft.VC110.DebugCRT\msvcr110d.dll

\Microsoft.VC110.DebugCXXAMP\vcamp110d.dll

\Microsoft.VC110.DebugMFC\mfc110d.dll

\Microsoft.VC110.DebugMFC\mfc110ud.dll

\Microsoft.VC110.DebugMFC\mfcm110d.dll

\Microsoft.VC110.DebugMFC\mfcm110ud.dll
\Microsoft.VC110.DebugOpenMP\vcomp110d.dll

Criar configurações de registro


Você deve criar entradas do Registro para definir configurações para MSBuild.

1. Identifique a pasta pai para entradas do Registro. Todas as entradas de Registro


são criadas sob a mesma chave pai. Em um computador x86, a chave pai é
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft. Em um computador x64, a chave
pai é HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft.
Independentemente da arquitetura do sistema, este passo a passo refere-se à
chave pai como %RegistryRoot%.

7 Observação

Se a arquitetura do computador host for diferente do computador de build,


certifique-se de usar a chave pai apropriado em cada computador. Isso é
especialmente importante se você estiver automatizando o processo de
exportação.

Além disso, se você estiver usando uma letra da unidade diferente no


computador de build daquela usada no computador host, altere os valores
das entradas do Registro de acordo.

2. Crie as seguintes entradas do Registro no computador de build. Todas estas


entradas são cadeias de caracteres (Tipo = = "REG_SZ" no Registro). Defina os
valores dessas entradas da mesma forma que os valores das entradas comparáveis
no computador host.

%RegistryRoot%\.NETFramework\v4.0.30319\AssemblyFoldersEx\VCMSBuil
d Public Assemblies@(Default)

%RegistryRoot%\Microsoft SDKs\Windows\v8.0@InstallationFolder

%RegistryRoot%\Microsoft SDKs\Windows\v8.0A@InstallationFolder

%RegistryRoot%\Microsoft SDKs\Windows\v8.0A\WinSDK-
NetFx40Tools@InstallationFolder

%RegistryRoot%\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-
x86@InstallationFolder

%RegistryRoot%\VisualStudio\11.0@Source Directories
%RegistryRoot%\VisualStudio\11.0\Setup\VC@ProductDir

%RegistryRoot%\VisualStudio\SxS\VC7@FrameworkDir32

%RegistryRoot%\VisualStudio\SxS\VC7@FrameworkDir64

%RegistryRoot%\VisualStudio\SxS\VC7@FrameworkVer32

%RegistryRoot%\VisualStudio\SxS\VC7@FrameworkVer64

%RegistryRoot%\VisualStudio\SxS\VC7@11.0

%RegistryRoot%\VisualStudio\SxS\VS7@11.0

%RegistryRoot%\Windows Kits\Installed Roots@KitsRoot

%RegistryRoot%\MSBuild\ToolsVersions\4.0\11.0@VCTargetsPath

%RegistryRoot%\MSBuild\ToolsVersions\4.0\11.0@VCTargetsPath10

%RegistryRoot%\MSBuild\ToolsVersions\4.0\11.0@VCTargetsPath11

Em um computador de build x64, crie também a seguinte entrada do Registro e


consulte o computador host para determinar como configurá-la.

%RegistryRoot%\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-
x64@InstallationFolder

Se o computador de compilação for x64 e você desejar usar a versão de 64 bits do


MSBuild, ou se você estiver usando o Build Service do Team Foundation Server em
um computador x64, crie as seguintes entradas no registro de 64 bits nativo.
Consulte o computador host para determinar como definir estas entradas.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\11.0\Setup\VS
@ProductDir

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0\
11.0@VCTargetsPath

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0\
11.0@VCTargetsPath10

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0\
11.0@VCTargetsPath11
Definir variáveis de ambiente no computador
de build
Para usar o MSBuild no computador de build, é preciso definir as variáveis de ambiente
PATH. Use vcvarsall.bat para definir as variáveis ou configure-as manualmente.

Usar vcvarsall.bat para definir variáveis de ambiente


Abra uma janela do Prompt de Comando no computador de build e execute %Program
Files%\Microsoft Visual Studio\<versão>\<edição>\VC\vcvarsall.bat. Você pode usar um
argumento de linha de comando para especificar o conjunto de ferramentas que você
deseja usar: x86, x64 nativo ou x64 de compilador cruzado. Se você não especificar um
argumento de linha de comando, o conjunto de ferramentas x86 será usado.

Esta tabela descreve os argumentos compatíveis com vcvarsall.bat:

Argumento Compilador Compilar uma arquitetura de Arquitetura de saída de


Vcvarsall.bat computador compilação

x86 (padrão) Nativo de x86, x64 x86


32 bits

x86_amd64 x64 Cruzado x86, x64 x64

amd64 x64 Nativo x64 x64

Se vcvarsall.bat for executado com êxito – ou seja, nenhuma mensagem de erro for
exibida, você poderá ignorar a próxima etapa e continuar na seção Instalar assemblies
do MSBuild para o GAC (Cache de Assembly Global) no computador de build deste
documento.

Definir manualmente variáveis de ambiente


1. Para configurar manualmente o ambiente de linha de comando, adicione este
caminho à variável de ambiente PATH:

%Program Files%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE

2. Opcionalmente, você também pode adicionar os seguintes caminhos à variável


PATH para tornar mais fácil usar o MSBuild para compilar suas soluções.
Se você quiser usar o MSBuild nativo de 32 bits, adicione estes caminhos à variável
PATH:

%Program Files%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools

%windir%\Microsoft.NET\Framework\v4.0.30319

Se você quiser usar o MSBuild nativo de 64 bits, adicione estes caminhos à variável
PATH:

%Program Files%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\x64

%windir%\Microsoft.NET\Framework64\v4.0.30319

Instalar assemblies do MSBuild para o GAC


(Cache de Assembly Global) no computador de
build
O MSBuild requer que alguns assemblies adicionais sejam instalados no GAC do
computador de build.

1. Copie os seguintes assemblies do computador host para o computador de build.


Como eles serão instalados no GAC, não importa o local em que você os coloca no
computador de build.

%ProgramFiles%\MSBuild\Microsoft.Cpp\v4.0\v110\Microsoft.Build.CPPTasks.
Common.v110.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\CommonExtensions\Microsoft\VC\Project\Microsof
t.VisualStudio.Project.VisualC.VCProjectEngine.dll

%ProgramFiles%\Microsoft Visual Studio\<versão>\


<edição>\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProject
Engine.dll

2. Para instalar os assemblies no GAC, localize gacutil.exe no computador de build;


normalmente, ele está em %ProgramFiles%\Microsoft
SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\. Se você não conseguir localizar essa
pasta, repita as etapas na seção Copiar arquivos do computador host para o
computador de build deste passo a passo.
Abra uma janela do Prompt de Comando que tem direitos administrativos e
execute este comando para cada arquivo:

gacutil -i <file>

7 Observação

Uma reinicialização pode ser necessária para um assembly ser instalado


totalmente no GAC.

Criar projetos
Você pode usar o Azure Pipelines para compilar projetos e soluções do Visual Studio ou
pode compilá-los na linha de comando. Ao usar o Azure Pipelines para compilar
projetos, ele invoca o executável do MSBuild que corresponde à arquitetura do sistema.
Na linha de comando, você pode usar o MSBuild de 32 bits ou 64 bits e escolher a
arquitetura do MSBuild configurando a variável de ambiente PATH ou invocando
diretamente o executável do MSBuild específico da arquitetura.

Para usar msbuild.exe no prompt de comando, execute o seguinte comando, em que


solution.sln é um espaço reservado para o nome da solução.

msbuildsolution.sln

Para obter mais informações sobre como usar o MSBuild na linha de comando, consulte
Referência de linha de comando.

Criar o ambiente de build para que ele possa


fazer o check-in no controle do código-fonte
Você pode criar um ambiente de build que possa ser implantado em vários
computadores e que não exija arquivos de "GAC" nem a modificação das configurações
do Registro. As etapas a seguir são apenas uma maneira de fazer isso. Adapte estas
etapas às características exclusivas do seu ambiente de build.

7 Observação

Você precisa desabilitar o build incremental para que tracker.exe não gere um erro
durante um build. Para desabilitar a compilação incremental, defina este parâmetro
de build:
msbuildsolution.sln/p:TrackFileAccess=false

1. Crie um diretório Depot no computador host.

Estas etapas referem-se ao diretório como %Depot%.

2. Copie os diretórios e arquivos, conforme descrito na seção Copiar arquivos do


computador host para o computador de build deste passo a passo, mas cole-os no
diretório %Depot% recém-criado. Por exemplo, copie de %ProgramFiles%\Windows
Kits\8.0\bin para %Depot%\Windows Kits\8.0\bin.

3. Quando os arquivos forem colados em %Depot%, faça estas alterações:

In %Depot%\MSBuild\Microsoft.Cpp\v4.0\v110\Microsoft.CPP.Targets,
\Microsoft.Cpp.InvalidPlatforms.targets\, \Microsoft.cppbuild.targets\ e
\Microsoft.CppCommon.targets\, altere todas as instâncias de

AssemblyName="Microsoft.Build.CppTasks.Common.v110, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

como

AssemblyFile="$(VCTargetsPath11)Microsoft.Build.CppTasks.Common.v110.dll
".

A nomenclatura anterior se baseia no assembly ao qual se está aplicando


GAC.

Em %Depot% \MSBuild\Microsoft.Cpp\v4.0\v110\Microsoft.CPPClean.Targets,
altere todas as instâncias de

AssemblyName="Microsoft.Build.CppTasks.Common.v110, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

como

AssemblyFile="$(VCTargetsPath11)Microsoft.Build.CppTasks.Common.v110.dll
".

4. Crie um arquivo .props (por exemplo, Partner.AutoImports.props) e coloque-o na


raiz da pasta que contém os projetos. Esse arquivo é usado para definir as variáveis
que são usadas pelo MSBuild para localizar vários recursos. Se as variáveis não
forem definidas por esse arquivo, elas serão definidas por outros arquivos .props e
.targets que dependem de valores de registro. Uma vez que não estamos
configurando nenhum valor de registro, essas variáveis estariam vazias e o build
falharia. Em vez disso, adicione isto a Partner.AutoImports.props:

XML

<?xml version="1.0" encoding="utf-8"?>


<!-- This file must be imported by all project files at the top of the
project file. -->
<Project ToolsVersion="4.0"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<VCTargetsPath>$(DepotRoot)MSBuild\Microsoft.Cpp\v4.0\v110\
</VCTargetsPath>
<VCTargetsPath11>$(DepotRoot)MSBuild\Microsoft.Cpp\v4.0\v110\
</VCTargetsPath11>
<MSBuildExtensionsPath>$(DepotRoot)MSBuild</MSBuildExtensionsPath>
<MSBuildExtensionsPath32>$(DepotRoot)MSBuild</MSBuildExtensionsPath32>
<VCInstallDir_110>$(DepotRoot)Microsoft Visual
Studio\2017\Enterprise\VC\</VCInstallDir_110>
<VCInstallDir>$(VCInstallDir_110)</VCInstallDir>
<WindowsKitRoot>$(DepotRoot)Windows Kits\</WindowsKitRoot>
<WindowsSDK80Path>$(WindowsKitRoot)</WindowsSDK80Path>
<WindowsSdkDir_80>$(WindowsKitRoot)8.0\</WindowsSdkDir_80>
<WindowsSdkDir>$(WindowsSDKDir_80)</WindowsSdkDir>
<WindowsSdkDir_80A>$(DepotRoot)Microsoft SDKs\Windows\v8.0A\
</WindowsSdkDir_80A>
</PropertyGroup>
</Project>

5. Em cada um dos seus arquivos de projeto, adicione a seguinte linha na parte


superior, após a linha <Project Default Targets...> .

XML

<Import
Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDire
ctory), Partner.AutoImports.props))\Partner.AutoImports.props"/>

6. Altere o ambiente da linha de comando da seguinte maneira:

Defina Depot=localização do diretório Depósito criado na etapa 1

Defina path=%path%;localização do MSBuild no


computador;%Depot%\Windows\System32;%Depot%\Windows\SysWOW64;
%Depot%\Microsoft Visual Studio 16.0\Common7\IDE\

Para a compilação nativa de 64 bits, aponte para a versão de 64 bits do


MSBuild.
Confira também
Preparar um computador de teste para executar um executável de depuração
Referência de linha de comando
Documentação do depurador – Visual
Studio (Windows)
O depurador do Visual Studio ajuda você a observar o comportamento em tempo de
execução do seu programa e localizar problemas.

Introdução

g TUTORIAL

Aprender a depurar C#

Aprender a depurar C++

Aprender a depurar Visual Basic

Experimentar a depuração assistida por IA

Executar o código Python no depurador >>

Depuração para iniciantes absolutos

Conceitos básicos

e VISÃO GERAL

Introdução ao depurador

O que é depuração?

Localizador de recursos do depurador

c GUIA DE INSTRUÇÕES

Etapa de código

Definir um ponto de interrupção

Editar o código e continuar a depuração

Pilha de chamadas

Aprofundar-se no depurador
c GUIA DE INSTRUÇÕES

Dicas e truques do depurador

Gravar e depurar executando código XAML

Depurar um aplicativo do Azure em tempo real

Instruir o depurador sobre o que mostrar

Depurar problemas de desempenho >>

Inspecionar dados

c GUIA DE INSTRUÇÕES

Inspecionar variáveis

Definir uma inspeção em variáveis

Medir o desempenho

g TUTORIAL

Introdução à análise de uso da CPU

Introdução à medição de uso de memória

Insights automáticos de uso da CPU assistida por IA com o Copilot

e VISÃO GERAL

Introdução às ferramentas de criação de perfil

Qual ferramenta devo usar?

Maneiras de executar ferramentas de criação de perfil

p CONCEITO

Entendendo sobre os métodos de coleta de desempenho

Colaboração
g TUTORIAL

Gravar e depurar código com o Live Share >>


Como o Visual Studio facilita o controle
de versão com o Git
Artigo • 17/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você já quis voltar para uma versão de trabalho anterior do seu código? Você acha que
armazena manualmente cópias do seu código em locais diferentes como um backup? O
controle de versão é a resposta.

O Git é o sistema de controle de versão moderno mais usado. Com o Git, você pode
acompanhar as alterações de código feitas ao longo do tempo e reverter para versões
específicas. Portanto, se você é um desenvolvedor profissional ou se está aprendendo a
codificar, a experiência do Git do Visual Studio pode ser muito útil para você.

 Dica

Para saber mais sobre como usar o Git e o GitHub no Visual Studio, inscreva-se na
série de aprendizagem do Git .

Trabalhe com o Git & GitHub no Visual Studio


O controle de versão com o Visual Studio é fácil com o Git. Estamos onde você está. É
possível trabalhar remotamente com o provedor Git de sua escolha, como o GitHub ou
o Azure DevOps. Ou você pode trabalhar localmente sem nenhum provedor.

Para começar a usar o Git com o Visual Studio:

Se você tiver um repositório Git hospedado em um provedor Git como o GitHub,


faça uma cópia do repositório em seu computador local.

Caso contrário, crie facilmente um novo repositório Git e adicione seu código. Se
você ainda não tiver um provedor Git, recomendamos começar com o GitHub, pois
a experiência do Git no Visual Studio é otimizada para esse provedor. O GitHub
oferece armazenamento de código de nuvem gratuito e seguro em que você pode
armazenar seu código e acessá-lo de qualquer dispositivo, em qualquer lugar.

Além de adicionar contas do GitHub e do GitHub Enterprise ao conjunto, você também


pode aproveitá-las da mesma forma que faz com as contas da Microsoft. Se você não
tiver uma conta do GitHub, siga estas etapas para criar uma conta do GitHub a ser
usada com o Visual Studio agora.

Se você é novo no Git, o site https://git-scm.com/ é um bom local para começar.

Mostrar arquivos no Gerenciador de Soluções


Quando você clona um repositório ou abre um repositório local, o Visual Studio alterna
para o contexto do Git. O Gerenciador de Soluções carrega a pasta na raiz do
repositório Git e verifica a árvore de diretório em busca de arquivos visualizáveis, como
CMakeLists.txt ou aqueles com a extensão de arquivo .sln . Para obter mais

informações, consulte Visualizar arquivos no Gerenciador de soluções.

Fluxo de trabalho loop interno intuitivo


Para o fluxo de trabalho do Git diário, o Visual Studio oferece uma forma perfeita de
interagir com o Git durante a codificação sem que mude o código.

É possível fazer várias tarefas e experimentar seu código por meio de branches. Se você
ou sua equipe trabalhar em vários recursos ao mesmo tempo ou se quiser explorar
ideias sem mudar seu código de trabalho, a ramificação será muito útil. O fluxo de
trabalho do Git recomendado usa um novo branch para cada recurso ou correção
trabalhada por você. Saiba como criar um branch do Visual Studio.

Depois de criar um branch e mudar para ele, comece a trabalhar alterando os arquivos
existentes ou adicionando novos e confirmando seu trabalho no repositório. Para saber
mais sobre como fazer uma confirmação no Visual Studio e entender melhor os estados
de arquivo no Git, consulte a página Criar uma confirmação.

O Git é um sistema de controle de versão distribuído, o que significa que todas as


alterações feitas até agora são apenas alterações locais. Para contribuir com essas
alterações em um repositório remoto, envie essas confirmações locais para um remoto.

Se você estiver trabalhando em equipe ou usando computadores diferentes, também


será necessário buscar e efetuar pull de novas alterações continuamente no repositório
remoto. Para saber mais sobre como gerenciar operações de rede do Git no Visual
Studio, consulte a página Buscar, efetuar pull, push e sincronização.

Colaboração & gerenciamento de repositório


No entanto, há momentos em que faz mais sentido se concentrar no repositório Git. Por
exemplo, talvez seja necessário ter uma boa visão do que sua equipe vem trabalhando
ou copiar uma confirmação de um branch diferente ou apenas limpar suas confirmações
de saída. O Visual Studio inclui recursos avançados de colaboração e navegação de
repositório que eliminam a necessidade de usar outras ferramentas.
Para ajudar você a focar no repositório Git, o Visual Studio tem uma janela do
Repositório Git, que é uma exibição consolidada de todos os detalhes em seu
repositório, incluindo branches locais e remotos e histórico de confirmações. É possível
acessar essa janela diretamente do Git ou Exibição na barra de menus ou na barra de
status.

Procurar e gerenciar repositórios Git


Para saber mais sobre como você pode usar a janela repositório Git no Visual Studio
para navegar e gerenciar seu repositório Git, consulte as seguintes páginas:

Procurar um repositório
Gerenciar um repositório

Identificar conflitos de mesclagem


Conflitos podem ocorrer durante uma mesclagem se dois desenvolvedores modificarem
as mesmas linhas em um arquivo e o Git não souber automaticamente qual está correto.
O Git interrompe a mesclagem e informa que está em um estado de conflito. Saiba mais
na página Resolver conflitos de mesclagem.

Personalizar suas configurações do Git


Para personalizar suas configurações do Git em um nível de repositório, bem como em
um nível global:

1. Vá para Configurações do Git>Configurações na barra de menus ou


Ferramentas>Opções>Controle do código-fonte>Configurações Globais do Git
2. Escolha as opções desejadas.
Clonar um repositório Git no Visual
Studio
Artigo • 07/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio facilita a clonagem de um repositório diretamente do IDE. É possível


trabalhar remotamente com o provedor Git de sua escolha, como o GitHub ou o Azure
DevOps. Se você precisar criar um novo repositório em vez de clonar um existente,
consulte Criar um repositório a partir do Visual Studio.

Pré-requisitos
Para acompanhar este artigo, você precisará do seguinte:

Visual Studio instalado


Conta de usuário do GitHub

Clonar um repositório do GitHub e entrar


1. Abra o Visual Studio.

2. No menu Git, selecione Clonar Repositório.

7 Observação

Se você não tiver interagido com o menu Git antes, poderá ver Clonar em vez
de Clonar Repositório. Se for o caso, selecione Clonar.

E, se Git não estiver na barra de menus, vá para


Ferramentas>Opções>Controle de Origem>Seleção de Plug-in e selecione
Git na lista suspensa Plug-in de controle de origem atual.
3. Na janela Clonar um repositório, na seção Inserir uma URL do repositório Git,
adicione as informações do repositório na caixa Local do repositório.

Em seguida, na seção Caminho, você pode optar por aceitar o caminho padrão
para seus arquivos de origem locais ou navegar até um local diferente.

Em seguida, na seção Procurar um repositório, selecione GitHub.

4. Na janela Abrir do GitHub, você pode verificar as informações da sua conta do


GitHub ou adicioná-la. Para fazer isso, selecione Entrar no menu suspenso.
Se você estiver entrando no GitHub do Visual Studio pela primeira vez, um aviso
de Autorização do Visual Studio será exibido. Escolha as opções desejadas e
selecione Autorizar github.

Em seguida, você verá uma janela de confirmação de autorização. Insira sua senha
e selecione Confirmar senha.

Depois de vincular sua conta do GitHub ao Visual Studio, uma notificação de êxito
será exibida.

5. Depois de entrar, o Visual Studio retornará ao diálogo Clonar um repositório, em


que a janela Abrir do GitHub lista todos os repositórios aos quais você tem acesso.
Selecione o que você deseja e selecione Clonar.

Se uma lista de repositórios não aparecer, insira o local do repositório e selecione


Clonar.

6. Em seguida, o Visual Studio apresenta uma lista de soluções no repositório.


Escolha a solução que você deseja carregar ou abra a Exibição de Pasta no
Gerenciador de Soluções.

 Dica
Você pode alterar a Exibição de Pasta padrão para a Exibição de Solução no
menu Git. Selecione Configurações>Controle do Código-
Fonte>Configurações globais do Git>Carregar a solução automaticamente
ao abrir um repositório do Git para fazer isso.

Abrir um repositório local existente


Depois de clonar ou criar um repositório, o Visual Studio detectará o repositório Git e o
adicionará à sua lista de Repositórios Locais no menu Git. A partir daí, você pode
acessar e alternar rapidamente entre seus repositórios Git.

Navegar até um repositório do Azure DevOps e


cloná-lo
1. Abra o Visual Studio.

2. No menu Git, selecione Clonar Repositório.


3. Na seção Procurar um repositório da caixa de diálogo Clonar um repositório,
selecione Azure DevOps.

4. Uma caixa de diálogo Conectar a um Projeto é exibida. Siga os prompts para


entrar em sua conta do Azure e navegue até o Azure DevOps Server que hospeda
os arquivos que você está procurando.

Próximas etapas
Para continuar seu percurso, visite a página Criar um repositório.
Criar um repositório Git do Visual Studio
Artigo • 13/01/2024

O Visual Studio facilita a criação de um repositório diretamente do IDE. A criação do


repositório do Visual Studio é otimizada para o GitHub, mas você pode trabalhar
remotamente com o provedor Git de sua escolha. Veja aqui como fazer isso.

Pré-requisitos
Para acompanhar este artigo, você precisará do seguinte:

Visual Studio instalado


Conta de usuário do GitHub

Criar um repositório do GitHub


1. Abra o Visual Studio e selecione Criar projeto.

 Dica

Se você ainda não tiver um projeto no Visual Studio para adicionar a um


repositório, poderá rapidamente criar um aplicativo de console C# e nomeá-
lo MyNewApp. O Visual Studio preenche seu novo aplicativo com o código
padrão "Olá, Mundo!".

2. No menu Git, selecione Criar Repositório Git.

3. No diálogo Criar um repositório Git, em Efetuar push para uma nova seção
remota, escolha GitHub.

4. Na seção Criar um repositório GitHub do diálogo Criar um repositório Git, insira


o nome do repositório que você deseja criar. Se você ainda não entrou na sua
conta do GitHub, também pode fazer isso nessa tela.
Em Inicializar um Repositório Git local, você pode usar a opção de modelo
.gitignore para especificar intencionalmente arquivos não rastreados que você
deseja que o Git ignore. Para saber mais sobre o .gitignore, confira Como ignorar
arquivos . E para saber mais sobre licenciamento, confira Como licenciar um
repositório .

 Dica

Você pode atualizar e alterar essas configurações sempre que quiser. Para
obter instruções detalhadas, confira Configurações do Git no Visual Studio.

5. Depois de entrar e inserir as informações do repositório, selecione o botão Criar e


Efetuar Push para criar seu repositório e adicionar seu aplicativo.

Abrir um repositório local existente


Depois de criar ou clonar um repositório, o Visual Studio detectará o repositório Git e o
adicionará à sua lista de Repositórios Locais no menu Git. A partir daí, você pode
acessar e alternar rapidamente entre seus repositórios Git.

Criar um repositório do Azure DevOps


1. Abra o Visual Studio e selecione Criar projeto.

 Dica

Se você ainda não tiver um projeto no Visual Studio para adicionar a um


repositório, poderá rapidamente criar um aplicativo de console C# e nomeá-
lo MyNewApp. O Visual Studio preenche seu novo aplicativo com o código
padrão "Olá, Mundo!".

2. No menu Git, selecione Criar Repositório Git.

3. No diálogo Criar um repositório Git, em Efetuar push para uma nova seção
remota, escolha Azure DevOps.

4. Na seção Criar um repositório do Azure DevOps, entre em sua conta do Azure e


selecione um projeto na lista suspensa Project.

5. Selecione o botão Criar e Efetuar Push para criar o repositório e adicionar o


aplicativo.

Conteúdo relacionado
Criar um branch
Tutorial: abrir um projeto de um repositório
Trabalhar com contas do GitHub no Visual Studio
Configurações e preferências do Git no
Visual Studio
Artigo • 14/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

No Visual Studio, você pode definir e exibir configurações e preferências comuns do Git,
como seu nome e endereço de email, suas ferramentas de comparação e mesclagem
preferenciais e muito mais. Essas configurações e preferências podem ser exibidas e
configuradas na caixa de diálogo Opções na página Configurações Globais do Git
(aplica-se a todos os seus repositórios) ou na página Configurações do Repositório Git
(aplica-se ao repositório atual).

Você pode definir dois tipos de configurações:

Configurações do Git – as configurações nesta seção correspondem às


configurações do Git salvas nos arquivos de configuração do Git. Essas
configurações podem ser exibidas e modificadas no Visual Studio, mas são
gerenciadas por arquivos de configuração do Git.
Configurações do Visual Studio – as configurações nesta seção definem as
configurações e preferências relacionadas ao Git gerenciadas pelo Visual Studio.

Como definir as configurações


1. Para definir as configurações do Git no Visual Studio, escolha Configurações no
menu do Git de nível superior.
2. Escolha Configurações Globais do Git ou Configurações do Repositório Git para
exibir e definir configurações de nível global ou de nível de repositório.

3. Você pode definir várias configurações comuns do Git, conforme descrito nas
seções a seguir deste artigo. Depois de definir as configurações desejadas,
selecione OK para salvar as configurações atualizadas.
Configurações do Git
Você também pode definir e verificar algumas das configurações mais comuns do Git.
Você pode exibir e modificar as configurações a seguir no Visual Studio, mesmo que
elas sejam gerenciadas por arquivos de configuração do Git.

Nome e email
Remover os branches remotos durante o fetch
Trocar a base do branch local durante o pull
Provedor de rede de criptografia
Auxiliar de credenciais
Ferramentas de comparação e mesclagem
Arquivos Git
Branches remotos
Outras configurações

7 Observação

As configurações do Git definidas nas Configurações Globais do Visual Studio


correspondem às configurações no arquivo de configuração específico do usuário
do Git, enquanto as configurações em Configurações do Repositório
correspondem às configurações no arquivo de configuração específico do
repositório. Para obter mais informações sobre a configuração do Git, confira o
capítulo Pro Git sobre como personalizar o Git , a documentação do git-
config e a referência do Git Pro nos arquivos de configuração . Para definir as
configurações do Git não expostas no Visual Studio, use o comando git config
para gravar um valor nos arquivos de configuração: git config [--local|--
global|--system] section.key value .

Nome e email
O nome e o email fornecidos serão usados como informações de committer para
qualquer commit que você fizer. Essa configuração está disponível em escopos globais e
de repositório e corresponde às configurações de git config user.name e
user.email .

1. No menu Git, acesse Configurações. Para definir o nome de usuário e o email no


nível global, acesse Configurações Globais do Git; para definir o nome de usuário
e o email no nível do repositório, acesse Configurações do Repositório Git.

2. Forneça o nome de usuário e o email e escolha OK para salvar.


Remover os branches remotos durante o fetch
A remoção remove branches de acompanhamento locais que não existem mais
remotamente e ajuda você a manter sua lista de branches limpa e atualizada. Essa
configuração está disponível em escopos globais e de repositório e corresponde à
configuração git config fetch.prune .

Recomendamos definir essa opção como True no nível global. As configurações válidas
são, da seguinte maneira:

True (recomendado)
Falso
Não definido (padrão)

Veja como alterar as configurações:

1. No menu Git, acesse Configurações. Acesse Configurações Globais do Git para


configurar essa opção no nível global; acesse Configurações do Repositório Git
para configurar essa opção no nível do repositório.

2. Defina Remover branches remotos durante o fetch como Verdadeiro


(recomendado). Selecione OK para salvar.

Trocar a base do branch local durante o pull


A troca de base reserva as alterações feitas por commits no branch atual que não estão
no branch upstream, redefine o branch atual para o branch upstream e aplica as
alterações que foram reservadas. Essa configuração está disponível em escopos globais
e de repositório e corresponde à configuração git config pull.rebase . As
configurações válidas são, da seguinte maneira:

Verdadeiro: trocar a base do branch atual na parte superior do branch upstream


após o fetch.
Falso: mesclar o branch atual no branch upstream.

Não definido (padrão): a menos que especificado em outros arquivos de


configuração, mescle o branch atual no branch upstream.

Interativo: trocar a base no modo interativo.

Mesclagens: trocar a base sem nivelar commits de mesclagem criados localmente.

7 Observação

No Visual Studio 2022 versão 17.2, alteramos a configuração "Preservar" para


"Mesclagens" para corresponder a uma atualização recente do Git. Portanto,
se você estiver usando uma versão anterior do Visual Studio com ferramentas
do Git, sua interface do usuário poderá dizer "Preservar" em vez de
"Mesclagens". No entanto, a funcionalidade permanece a mesma.

Veja como alterar as configurações:

1. No menu Git, acesse Configurações. Acesse Configurações Globais do Git para


configurar essa opção no nível global; acesse Configurações do Repositório Git
para configurar essa opção no nível do repositório.

2. Defina Trocar base de branch local ao efetuar pull para a configuração desejada e
selecione OK para salvar.

Não é possível configurar pull.rebase para Interativa no Visual Studio. O Visual Studio
não tem suporte à troca de base interativa. Para configurar pull.rebase para usar o
modo interativo, use a linha de comando.

Provedor de rede de criptografia


O provedor de rede criptográfica é uma configuração do Git no escopo global que
configura qual back-end TLS/SSL usar em runtime e corresponde à configuração git
config http.sslBackend . Os valores são os seguintes:
OpenSSL: use OpenSSL para protocolos TLS e SSL.
Canal Seguro: use Canal Seguro (schannel) para protocolos TLS e SSL. O Schannel
é a solução nativa do Windows, acessando a Windows Credential Store, permitindo
assim o gerenciamento de certificados em toda a empresa.
Não definido (padrão): se essa configuração não estiver definida, OpenSSL será o
padrão.

Veja como alterar as configurações:

1. No menu Git, acesse Configurações. Acesse Configurações Globais do Git para


definir essa configuração.

2. Defina Provedor de rede criptográfica com o valor desejado e selecione OK para


salvar.

Auxiliar de credenciais
Quando o Visual Studio executa uma operação remota do Git, o ponto de extremidade
remoto pode rejeitar a solicitação porque ela exige que as credenciais sejam fornecidas
com a solicitação. Nesse momento, o Git invoca um auxiliar de credenciais, que
retornará as credenciais necessárias para executar a operação e, em seguida, tentará a
solicitação novamente. O auxiliar de credenciais usado corresponde à configuração git
config credential.helper . Ele está disponível no escopo global com os seguintes
valores:

GCM para Windows: use o Gerenciador de Credenciais do Git para Windows


como o auxiliar.
GCM Core: use o Gerenciador de Credenciais do Git Core como o auxiliar.
Não definido (padrão): se essa configuração não estiver definida, o auxiliar de
credenciais definido na configuração do sistema será usado. No Git para Windows
2.29 e versões posteriores, o auxiliar de credenciais padrão é o GCM Core.

Veja como alterar as configurações:

1. No menu Git, acesse Configurações. Acesse Configurações Globais do Git para


definir essa configuração.

2. Defina Auxiliar de credenciais como o valor desejado e selecione OK para salvar.


Ferramentas de comparação e mesclagem
O Git mostrará conflitos de diferenças e mesclagem em suas ferramentas preferenciais.
As configurações nesta seção correspondem às configurações git config diff.tool e
merge.tool . Você pode configurar o Git para usar o Visual Studio como sua
ferramenta de mesclagem ou comparação em Configurações Globais do Git e
Configurações do Repositório Git selecionando Usar o Visual Studio. Para configurar
outras ferramentas de comparação e mesclagem, use git config com a opção
diff.tool ou merge.tool .

Arquivos Git
Você pode usar a seção Arquivos Git no escopo Configurações do Repositório Git para
exibir e editar os arquivos gitignore e gitattributes para seu repositório.

Remotos
Você pode usar o painel Remotos em Configurações do Repositório Git para configurar
os remotos para seu repositório. Essa configuração corresponde ao comando git
remote e permite adicionar, editar ou remover remotos.
Outras configurações
Para exibir todas as outras definições de configuração do Git, você pode abrir e exibir os
arquivos de configuração propriamente ditos ou pode executar git config --list para
exibir as configurações.

Configurações do Visual Studio


As configurações a seguir gerenciam as preferências relacionadas ao Git no Visual
Studio e são gerenciadas pelo Visual Studio em vez de arquivos de configuração do Git.
Todas as configurações nesta seção são definidas na página Configurações Globais do
Git.

Local padrão
Fechar as soluções abertas que não estão sob o Git ao abrir um repositório
Habilitar o download de imagens de autor de fontes de terceiros
Confirmar as alterações após a mesclagem por padrão
Habilitar push --force
Abrir pasta no Gerenciador de Soluções ao abrir um repositório Git
Carregar a solução automaticamente ao abrir um repositório Git
Fazer check-out de branches automaticamente com um clique duplo ou usando a
tecla Enter
Local padrão
O local padrão configura a pasta padrão na qual os repositórios são clonados.

Fechar as soluções abertas que não estão sob o Git ao


abrir um repositório
Por padrão, o Visual Studio fecha qualquer solução ou pasta aberta quando você alterna
para outro repositório. Ao fazer isso, ele também poderá carregar a solução ou pasta do
novo repositório com base na sua escolha entre Abrir pasta no Gerenciador de Soluções
ao abrir um repositório Git e Carregar automaticamente a solução ao abrir um
repositório Git. Isso mantém a consistência entre o código aberto e o repositório aberto.
No entanto, se sua solução não estiver na mesma raiz de pasta que o repositório,
convém manter a solução aberta ao alternar para o repositório correspondente. Você
pode fazer isso com esta configuração. Os valores são os seguintes:

Sim: quando um repositório é aberto, a solução aberta no momento é sempre


fechada

Não: quando um repositório é aberto, o Visual Studio executa uma verificação


sobre se a solução atual está no Git. Se não estiver, a solução permanecerá aberta.

Sempre pergunte (padrão): quando isso estiver definido, você poderá fazer uma
escolha por meio de uma caixa de diálogo por repositório aberto, quer queira
manter a solução atual aberta ou fechá-la.

Habilitar o download de imagens de autor de fontes de


terceiros
Habilitar o download de imagens de autor de fontes de terceiros é uma configuração
específica do Visual Studio no escopo global. Quando marcada, as imagens de autor são
baixadas do serviço de imagem Gravatar , se disponíveis, e exibidas nas exibições de
commit e histórico.
) Importante

Para fornecer imagens de autor nos modos de exibição Commit e Histórico, a


ferramenta cria um hash MD5 para os endereços de email do autor armazenados
no repositório ativo. Esse hash é enviado ao Gravatar para encontrar um valor de
hash correspondente para os usuários que se inscreveram anteriormente no
serviço. Se uma correspondência for encontrada, a imagem do usuário será
recuperada do serviço e exibida no Visual Studio. Os usuários que não
configuraram o serviço retornarão uma imagem gerada aleatoriamente. Observe
que os endereços de email não são gravados pelo Visual Studio, nem nunca são
compartilhados com Gravatar ou com qualquer outro terceiro.

Confirmar as alterações após a mesclagem por padrão


Quando Confirmar alterações após a mesclagem por padrão estiver habilitada, o Git
criará automaticamente um commit quando um branch for mesclado com o branch
atual.

Quando marcada, os comandos git merge emitidos pelo Visual Studio são
executados com a opção --commit .
Quando desmarcada, os comandos git merge emitidos pelo Visual Studio são
executados com as opções --no-commit --no-ff .

Para obter mais informações sobre essas opções, confira --commit e --no-commit e --
no-ff .

Habilitar push --force-with-lease


Quando habilitada, essa configuração permite que você efetue push --force-with-lease
de dentro do Visual Studio. Por padrão, Habilitar push --force-with-lease está
desabilitado.
Para obter mais informações, confira push --force-with-lease .

Abrir pasta no Gerenciador de Soluções ao abrir um


repositório Git
Quando você usa o Visual Studio para abrir ou alternar para um repositório Git, o Visual
Studio carrega o conteúdo do Git para que você possa exibir alterações, commits,
branches e gerenciar seu repositório de dentro do IDE. Além disso, o Visual Studio
também carregará o código do repositório no Gerenciador de Soluções. O Visual Studio
examinará a pasta do repositório em busca de soluções, CMakeLists.txt ou quaisquer
outros arquivos de exibição que ele reconheça e os exiba como uma lista no
Gerenciador de Soluções. Desse ponto em diante, você pode selecionar uma solução a
ser carregada ou a pasta para exibir o conteúdo do diretório. Quando você desativar
essa caixa de seleção, o Visual Studio não abrirá a pasta do repositório no Gerenciador
de Soluções. Isso basicamente permitirá que você abra o Visual Studio apenas como um
gerenciador de repositório Git. Esta configuração está ativada por padrão.

Carregar a solução automaticamente ao abrir um


repositório Git
Essa configuração é aplicável somente quando a configuração Abrir pasta no
Gerenciador de Soluções ao abrir um repositório Git está ativada. Quando você abre um
repositório Git no Visual Studio e a verificação de pasta subsequente detecta que há
apenas uma solução presente no repositório, o Visual Studio carrega automaticamente
essa solução. Se você desativar a configuração, o Gerenciador de Soluções exibirá a
única solução presente no repositório na lista de exibições. No entanto, ele não
carregará a solução. Por padrão, esta configuração é desativada.

Fazer check-out de branches automaticamente com um


clique duplo ou usando a tecla Enter
A janela Repositório Git tem uma lista de branches exibidos em uma estrutura de árvore.
A seleção de apenas um branch alternará do painel histórico de commits para a exibição
dos commits do branch selecionado. Para fazer check-out de um branch, você poderá
clicar com o botão direito do mouse para abrir o menu de contexto e selecionar Fazer
check-out. Se você ativar essa configuração, clicar duas vezes ou pressionar a tecla Enter
fará check-out do branch e exibirá os respectivos commits.

Confira também

) Importante

Se você tiver uma sugestão para nós, informe-nos. Agradecemos a oportunidade


de nos envolvermos com você em decisões de design por meio do portal do
Developer Community .

Vídeo Introdução ao Git no Visual Studio no YouTube


Postagem no blog Aumento da produtividade com o Git no Visual Studio
caixa de diálogo Opções
Criar um branch do Git no Visual Studio
Artigo • 13/01/2024

É fácil criar um branch no Visual Studio; tudo o que você precisa fazer é baseá-lo em um
branch existente.

Veja aqui como fazer isso.

1. Para começar, verifique se você tem um repositório criado ou clonado


anteriormente aberto.

2. No menu Git, selecione Novo Branch.

3. Na caixa de diálogo Criar um branch, insira um nome de branch.

 Dica

Para obter detalhes de nomenclatura de branch, confira Caracteres especiais


em nomes de branch e de marca .
4. Na seção Baseado em, use a lista suspensa para escolher se deseja basear seu
novo branch em um branch local existente ou em um branch remoto.

5. A caixa de seleção Fazer check-out do branch, que está ativada por padrão,
alterna automaticamente para o branch recém-criado. Alterne essa opção se você
quiser permanecer no branch atual.

Feito, você criou um branch.

 Dica

O comando equivalente para essa ação é git checkout -b <new-branch> <existing-


branch> .

7 Observação

Para obter mais informações sobre as atualizações mais recentes que aprimoram a
alternância de branch, confira a postagem no blog Visual Studio 2022
Performance Enhancements: Git Branch Switching (Aprimoramentos de
desempenho do Visual Studio 2022: Alternância de Branch do Git).

Conteúdo relacionado
Fazer um commit
Mesclar e trocar base de branches.
Fazer uma confirmação do Git no Visual
Studio
Artigo • 13/01/2024

A parte principal de qualquer fluxo de trabalho do Git é modificar arquivos e confirmar


as alterações nesses arquivos. Embora este artigo faça referência a repositórios GitHub,
você pode trabalhar remotamente com o provedor Git de sua escolha, como GitHub ou
Azure DevOps. Ou você pode trabalhar localmente sem nenhum provedor.

O Git acompanha as alterações de arquivo no seu repositório enquanto você trabalha e


separa os arquivos em seu repositório em três categorias. Essas alterações são
equivalentes ao que você veria ao inserir o comando git status na linha de comando:

Arquivos não modificados: esses arquivos não foram alterados desde a última
confirmação.
Arquivos modificados: esses arquivos têm alterações desde a última confirmação,
mas você ainda não os preparou para a próxima confirmação.
Arquivos preparados: esses arquivos têm alterações que serão adicionadas à
próxima confirmação.

Conforme faz seu trabalho, o Visual Studio controla as alterações de arquivo em seu
projeto na seção Alterações da janela Alterações do Git.
Novidade na versão 17.6: também é possível referenciar um problema ou uma
solicitação de pull digitando # ou clicando no botão # no canto inferior direito da caixa
de texto da mensagem de confirmação. Para saber mais, confira a postagem no blog
Problemas de referência e solicitações de pull .

Para preparar alterações quando estiver pronto, clique no botão + (mais) em cada
arquivo que deseja preparar ou clique com o botão direito do mouse em um arquivo e
selecione Preparar. Também é possível preparar todos os arquivos modificados com um
clique usando o botão preparar tudo + (mais) na parte superior da seção Alterações.

Quando você prepara uma alteração, o Visual Studio cria uma seção Alterações
preparadas. Somente as alterações na seção Alterações Preparadas são adicionadas à
próxima confirmação, o que você pode fazer selecionando Confirmar Preparadas. O
comando equivalente para essa ação é git commit -m "Your commit message" .
As alterações também podem não preparadas clicando no botão – (menos). O comando
equivalente para essa ação é git reset <file_path> remover preparação de um único
arquivo ou git reset <directory_path> remover preparação de todos os arquivos em
um diretório.

Você também pode optar por não preparar seus arquivos modificados ignorando a área
de preparo. Nesse caso, o Visual Studio permite que você confirme suas alterações
diretamente sem precisar prepará-las. Basta inserir sua mensagem de confirmação e, em
seguida, selecione Confirmar Tudo. O comando equivalente para essa ação é git
commit -a .

O Visual Studio também facilita a confirmação e a sincronização com um clique usando


os atalhos Confirmar Tudo e Enviar e Confirmar Tudo e Sincronizar. Ao clicar duas
vezes em qualquer arquivo nas seções Alterações e Alterações preparadas, veja uma
comparação linha a linha com a versão não modificada do arquivo.
Quando você clica duas vezes em uma Confirmação, o Visual Studio abre seus detalhes
em uma janela de ferramentas separada. A partir daqui, você pode reverter a
confirmação, redefinir a confirmação, alterar a mensagem de confirmação ou criar uma
tag na confirmação. Quando você clica em um arquivo alterado na confirmação, o Visual
Studio abre a exibição Comparação lado a lado da confirmação e seu pai.
Conteúdo relacionado
Linhas de código de fase
Experiência do Git no Visual Studio
Linhas de código de estágio no Visual
Studio
Artigo • 13/01/2024

O suporte ao preparo de linhas, também conhecido como preparo interativo , está


disponível no Visual Studio 2022 versão 17.3 e posterior. O preparo de linhas permite
preparar partes de alterações em seus arquivos diretamente do editor de código. O
preparo de linhas também pode ser útil quando você deseja dividir as alterações entre
commits diferentes.

A partir do Visual Studio 2022 versão 17.6, você pode usar a opção de focalização para
também cancelar o preparo das alterações, linha por linha.
Suporte à margem de cor
A primeira coisa que você pode observar sobre o suporte ao preparo de linhas é como
o editor visualiza as alterações do Git na barra de rolagem e na margem.

As cores e anotações facilitam a diferenciação entre alterações salvas e não salvas que
você adicionou, excluiu ou modificou.

 Dica

Você pode alterar as cores exibidas pelo Visual Studio para ajudá-lo a gerenciar as
alterações. Acesse Ferramentas>Opções>Ambiente>Fontes e Cores e escolha
entre as seguintes opções:

Acompanhar as adições nos documentos sob o controle do código-fonte


Acompanhar as exclusões nos documentos sob o controle do código-fonte
Acompanhar as modificações nos documentos sob o controle do código-
fonte
Suporte Espiar Diferença
As margens de cor são interativas. Quando você seleciona uma margem de cor, o Visual
Studio abre a interface do usuário (UI) Espiar Diferença, na qual você pode exibir suas
alterações no editor sem alternar o contexto. A interface do usuário Espiar Diferença
resume o número de linhas adicionadas e removidas e facilita a navegação entre as
alterações usando as setas para cima e para baixo.

Você também pode acessar Espiar Diferença ao clicar com o botão direito do mouse em
uma linha que inclui alterações. Um menu de contexto é exibido, onde você pode
selecionar Espiar Diferença nele. Ou você pode usar o atalho de teclado Alt+F8.

7 Observação

Se preferir uma exibição de diferença embutida, você poderá usar o controle


Configurações no canto superior direito do editor Diff para alternar para o modo
Embutido.

 Dica

Você pode modificar a forma como o Visual Studio interage com as alterações de
código na interface do usuário Espiar Diferença, usando a opção Clique para espiar
a margem de Ferramentas>Opções>Editor de Texto>Avançado.

Por exemplo, você pode alterar a configuração padrão de Clique único para Clicar
duas vezes,ou selecionar Nenhum para desativar a interface do usuário Espiar
Diferença.

Preparar partes de código


Você pode preparar qualquer parte do código usando a interface do usuário (Interface
do usuário) Espiar Diferença. Para fazer isso, passe o mouse sobre a alteração que você
deseja preparar e selecione Preparar Alteração. Como alternativa, use o botão Preparar
global se desejar preparar todas as alterações feitas em um documento.

Se preferir uma exibição de diferença de tela inteira, você poderá alternar para o editor
Diff. Veja como: selecione o botão Promover para Documento no canto superior
direito da interface do usuário Espiar Diferença. Ou você pode usar o atalho de teclado
Ctrl+Alt+Home. Todos os recursos que a interface do usuário Espiar Diferença fornece
também estão disponíveis no editor Diff.

Fazer Commit das alterações preparadas


Após preparar seu commit revisando e preparando as alterações que deseja incluir, você
pode criar seu commit usando a janela Alterações do Git. Em seguida, insira sua
mensagem de confirmação e selecione Commit Preparada.

Conteúdo relacionado
Push para remoto
Experiência do Git no Visual Studio
Efetuar push do Visual Studio para um
branch remoto
Artigo • 13/01/2024

Quando você se autentica no GitHub, o Visual Studio pode aprimorar seu fluxo de
trabalho nele. Um desses aprimoramentos é a capacidade de efetuar push de um
projeto local (ou publicá-lo) diretamente para o GitHub com apenas um clique. A fase
final de um fluxo de trabalho simples do Git é efetuar push das alterações para o
repositório remoto.

Um remoto é um local seguro para armazenar seu código na nuvem. Normalmente, ele
é chamado de origin/main (ou origin/master), em que "origin" é o nome padrão para
um remoto. Para obter mais informações sobre essa terminologia, confira a página
Ramificação do Git – Branches remotos no site do Git.

Embora este artigo faça referência a repositórios GitHub, você pode trabalhar
remotamente com o provedor Git de sua escolha, como GitHub, GitLab ou Azure
DevOps.

Veja como efetuar push para um remoto no Visual Studio.

1. Verifique se você tem um arquivo aberto para trabalhar em um repositório criado


ou clonado anteriormente.

2. Faça uma alteração no arquivo, salve-o, selecione a guia Alterações do Git e


confirme a alteração.

3. Na janela Alterações do Git, observe o texto do link que inclui o número de


confirmações de entrada e saída. No exemplo a seguir, o texto do link mostra 1
saída/0 entrada.

O texto de "saída" representa o número de confirmações que ainda não foram


tiveram push efetuado para o remoto; já o texto de "entrada" representa as
confirmações que tiveram fetch, mas ainda não tiveram pull efetuado do remoto.
4. Para efetuar push para seu remoto, selecione o botão Push ou selecione Push no
menu Git.

Conteúdo relacionado
Criar uma solicitação de pull no Visual Studio ou
Buscar, efetuar pull e sincronizar no Visual Studio
Experiência do Git no Visual Studio
Criar uma solicitação de pull no Visual
Studio
Artigo • 08/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Se você for autenticado no GitHub ou no Azure DevOps e tiver enviado alterações por
push para o repositório remoto, poderá criar uma solicitação de pull sem sair do Visual
Studio. As solicitações pull são uma ferramenta essencial no GitHub e no Azure DevOps
para revisão de código. Essas revisões ajudam a capturar problemas nos novos recursos
e permitem que os colegas compartilhem sua experiência com diferentes regiões da
base de código - melhorando a integridade da base de código em geral.

7 Observação

Para experimentar o recurso, verifique se ele está habilitado em


Ferramentas>Opções>Visualizar Recursos>Solicitação de Pull

Para criar uma solicitação de pull, siga estas etapas:

1. Antes de criar uma solicitação de pull, você precisa criar uma nova ramificação
para suas alterações. Essa ramificação mantém suas modificações separadas da
ramificação principal até que estejam prontas para serem mescladas.

2. Em seguida, você pode confirmar e enviar por push suas alterações como faria
normalmente na janela Alterações do Git.

3. Selecione o link na faixa de notificação para Criar uma solicitação de pull.

Como alternativa, você pode criar uma solicitação de pull de uma ramificação
remota navegando até a janela Nova Solicitação de Pull pelo menu de nível
superior Git>GitHub ou Azure DevOps>Nova Solicitação de Pull. Ou clique com o
botão direito do mouse em uma ramificação na Janela do Repositório Git.

Ou selecione com o botão direito do mouse uma ramificação na Janela do


Repositório Git para abrir o menu de contexto e selecione Nova Solicitação de
Pull.
4. Selecione a ramificação na qual você quer mesclar e dê à sua solicitação de pull
um título e uma descrição.
 Dica

Você pode usar a sintaxe de markdown para formatar sua descrição de


solicitação pull do Visual Studio. Experimente digitando os símbolos de
markdown na caixa Descrição e visualizar sua marcação selecionando o botão
Visualizar.

5. A visualização da diferença permite que você veja todas as alterações nos arquivos
que foram confirmadas como parte da sua solicitação de pull.

 Dica

A opção de exibição de diferença de resumo permite que você revise apenas


as seções alteradas do código.
6. Você pode vincular itens de trabalho referenciando-os com a pesquisa de
problemas , digitando # a descrição ou pressionando o botão # no canto inferior
direito. Você também pode adicionar seus revisores digitando seu nome de
usuário do GitHub ou a identidade ou email do Azure DevOps.

7. ’Depois de clicar em Criar na sua solicitação de pull, outros desenvolvedores


poderão examinar suas alterações e fornecer comentários.

Próximas etapas
Para continuar seu percurso, visite a página Fetch, pull e sync no Visual Studio.
Confira também
Experiência do Git no Visual Studio
Visual Studio & GitHub: melhores juntos
Usar o git fetch, pull, push e sync para
controle de versão no Visual Studio
Artigo • 13/01/2024

O Visual Studio ajuda você a manter o branch local sincronizado com o branch remoto
por meio de operações de download (fetch e pull) e de upload (push), visíveis na janela
Repositório Git.

Você pode efetuar fetch, pull e sincronizar no Visual Studio 2022 usando o menu Git.

Na captura de tela anterior, a opção Fetch está realçada. O menu Git também inclui as
seguintes opções adicionais:

Pull
Push
Sincronizar (Efetuar Pull e depois Push)
Você também pode usar os controles de botão na janela Alterações do Git para
executar essas operações.

Da esquerda para a direita, os controles de botão incluem Fetch, Pull, Pushe Sync.

Além disso, também há um controle de botão reticências (...) para operações adicionais.
Quando você o seleciona, um menu de contexto é exibido. Você pode usá-lo para
ajustar suas operações de fetch, pull, push e sincronização.

Fetch
É importante efetuar fetch e pull antes de efetuar push. Os fetches verificam se há
commits remotos que você deve incorporar às alterações locais. Se vir algum, efetue
pull primeiro para evitar conflitos de mesclagem upstream.

Quando você efetua fetch em um branch, a janela Alterações do Git tem um indicador
na lista suspensa do branch, que exibe o número de confirmações sem pull efetuado do
branch remoto. Esse indicador também mostra o número de confirmações locais sem
push efetuado.
O indicador também funciona como um link para levá-lo ao histórico de confirmação
desse branch na janela Repositório do Git. A parte superior do histórico agora exibe os
detalhes dessas confirmações enviadas e recebidas. A partir daqui, você também pode
decidir efetuar pull ou push das confirmações.

Recepção
Sempre efetue pull antes de efetuar push. Ao efetuar pull primeiro, você poderá evitar
conflitos de mesclagem upstream.

Push
Ao criar confirmações, você salvou inerentemente instantâneos locais do seu código.
Use Push para efetuar push das confirmações para o GitHub, onde você pode
armazená-las como backups ou compartilhar seu código com outras pessoas.

Mas, como mencionado anteriormente, sempre efetue pull antes de efetuar push. Como
medida de proteção, o Visual Studio não permite efetuar push dos commits se o branch
local estiver atrás do branch remoto. Se você tentar efetuar push, um diálogo solicitará
que você faça pull antes.

Sincronizar
Use essa operação para efetuar pull e efetuar push sequencialmente.

Conteúdo relacionado
Navegar pelos repositórios Git
Tutorial: abrir um projeto de um repositório
Procurar repositórios Git e comparar
branches no Visual Studio
Artigo • 03/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A janela Alterações do Git oferece uma forma perfeita de interagir com o Git durante a
codificação sem precisar mudar o código. No entanto, há momentos em que faz mais
sentido se concentrar no repositório Git. Por exemplo, talvez seja necessário ter uma
boa visão do que sua equipe vem fazendo ou comparar dois commits para investigar
um bug.

Você pode trabalhar remotamente com o provedor Git de sua escolha, como o GitHub
ou o Azure DevOps.

Navegar por branches locais e remotos


Para começar, abra a janela Repositório Git selecionando Repositório Git no menu
Exibição (ou usando o atalho de teclado Ctrl+0, Ctrl+R). Você também pode acessar a
janela Repositório Git selecionando os links de saída/entrada na janela Alterações do
Git e na barra de status.

A janela Repositório Git contém três seções principais, conforme numerado na captura
de tela anterior:
1. Branches: o Git capacita os usuários a executar várias tarefas e experimentar seu
código por meio de branches. Se você estiver trabalhando em vários recursos ao
mesmo tempo ou quiser explorar ideias sem afetar seu código de trabalho, a
ramificação pode ser útil.

2. Grafo: esta seção visualiza o estado do branch. Ele tem três subseções:

A Entrada mostra os commits de entrada que sua equipe vem contribuindo.


A Saída mostra os commits locais que você ainda não efetuou push.
O Histórico Local mostra o restante dos commits rastreados pelo repositório
local.

3. Commit: a seleção de qualquer commit na seção Grafo abre seus detalhes. Você
pode verificar as alterações que um commit introduziu selecionando-os, e a
diferença será exibida. Por exemplo, a captura de tela anterior mostra as alterações
feitas por um commit no arquivo Resize.cs.

Os atalhos de teclado Alt+Seta para cima ou Alt+Seta para baixo permitem que você
pule entre essas seções.

Você pode navegar por qualquer branch local ou remoto sem precisar mudar de branch.
Quando encontrar um commit no qual deseja se concentrar, selecione o botão Abrir na
Nova Guia para abrir o commit em uma guia diferente.

 Dica
Para exibir o commit em tela inteira, desanexe a guia Commit e maximize a janela
Commit usando o botão Maximizar. Você também pode selecionar sua
configuração de comparação favorita selecionando Configuração de Comparação
(o ícone de engrenagem).

Exibição de grafo de várias ramificações


Novidade com a versão 17.7: ao abrir a janela Repositório Git, você começa no modo de
exibição de branch único. Em seguida, você pode selecionar qualquer branch para
adicionar o branch e seus commits a uma exibição de grafo de várias ramificações, o
que adiciona indicações visuais que tornam mais eficiente interagir com vários branches.

Há linhas coloridas e rótulos de branch no lado esquerdo do modo de exibição


Histórico Local que ajudam a facilitar o rastreamento de quais commits pertencem a
cada branch. Você pode usar a lista de branches na parte superior da tabela para rolar
entre branches com mais facilidade e saber imediatamente quais branches aparecem no
grafo.

Comparar commits
Para comparar dois commits em seu branch, use a tecla Ctrl para selecionar os dois
commits que você deseja comparar. Em seguida, clique com o botão direito do mouse
em um deles e selecione Comparar Commits.

 Dica
Assim como nos Detalhes de Confirmação, você pode usar o botão Abrir em uma
Nova Guia para abrir a comparação em uma guia diferente ou maximizá-la na tela.

Criar um branch a partir de um commit


No Visual Studio, você pode usar o painel Grafo de Git na janela Repositório Git para
criar branches de commits anteriores. Para fazer isso, clique com o botão direito do
mouse no commit do qual você gostaria de criar um branch e selecione Novo Branch.

7 Observação

O comando equivalente para essa ação é git branch <branchname> [<commit-id>] .

Comparar branches
A comparação de branches oferece uma visão geral das diferenças entre dois branches,
o que pode ser útil antes de criar uma solicitação de pull, mesclar ou até mesmo excluir
um branch.

Para comparar o branch com check-out feito atualmente com outros branched usando
o Visual Studio, você pode utilizar o seletor de branch hospedado na barra de status e a
janela de ferramentas de alterações do Git para escolher qualquer branch local ou
remoto com o qual comparar. Clique com o botão direito do mouse no branch de
destino e selecione Comparar com o Branch Atual. Como alternativa, você pode utilizar
a lista de ramificações na janela Repositório Git para acessar o mesmo comando.
A seleção de Comparar com o Branch Atual abre a experiência comparar branches
onde você pode navegar na lista Alterações e selecionar o arquivo que deseja
comparar.

 Dica

Se preferir uma comparação embutida, você poderá usar o ícone de engrenagem


Opções de configuração de comparação e mudar para o modo de exibição de
comparação embutida.

Fazer check-out de commits


Fazer check-out de um commit pode ter diversos benefícios. Por exemplo, isso permite
que você volte para um ponto anterior no histórico do repositório em que você pode
executar ou testar seu código. Também pode ser útil se você quiser examinar o código
de um branch remoto (branch de um colega, por exemplo). Dessa forma, você não
precisa criar um branch local se não estiver planejando contribuir para ele. Nesse caso,
basta conferir a dica do branch remoto que deseja examinar.
Para conferir um commit anterior no Visual Studio, abra a janela Repositório Git, clique
com o botão direito do mouse no commit para a qual deseja voltar e selecione
checkout (–detach). O Visual Studio mostra uma caixa de diálogo de confirmação
explicando que, ao fazer check-out de um commit, você ficará no estado HEAD
desanexado. O que significa que o HEAD do repositório apontará diretamente para um
commit em vez de um branch.
Agora que você está em um estado de cabeçalho desanexado, fique à vontade para
executar e testar seu código ou até mesmo explorar e fazer commit em alterações.
Quando terminar de explorar e quiser voltar para o branch, descarte as alterações
fazendo check-out de um branch existente ou mantenha as alterações criando um
branch primeiro.

) Importante

Os commits criados em um estado HEAD desanexado não são associados a


nenhum branch e podem ser coletados pelo Git após o check-out de um branch.
Por esse motivo, para manter suas alterações, é recomendável criar um branch
antes de fazer check-out dele. Por exemplo, as confirmações C5 e C6 serão
coletadas como lixo se fizermos check-out sem criar um novo branch.

Para saber mais sobre o estado HEAD desanexado, confira a documentação do Git
HEAD desanexado .

Pode ser útil fazer check-out da extremidade de um branch remoto se você quiser
examinar rapidamente uma solicitação de pull e avaliar as atualizações mais recentes.
Para fazer isso no Visual Studio, primeiro certifique-se de buscar e obter as atualizações
mais recentes do repositório remoto. Em seguida, clique com o botão direito do mouse
no branch remoto que você deseja examinar e selecione Fazer check-out de commit de
dica.

Próximas etapas
Para continuar sua jornada, consulte Gerenciar repositórios Git no Visual Studio.

Confira também
A experiência do Git no Visual Studio
O Visual Studio e o GitHub são melhores juntos
Gerenciar repositórios Git no Visual
Studio
Artigo • 19/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A janela Repositório Git fornece uma experiência Git em tela inteira que ajuda você a
gerenciar seu repositório Git e manter-se atualizado com os projetos da sua equipe. Por
exemplo, talvez seja necessário redefinir, reverter ou selecionar commits cherry-pick ou
apenas limpar seu histórico de confirmação. A janela Repositório Git também é um
ótimo lugar para visualizar e gerenciar seus branches.

O controle de versão com o Visual Studio é fácil com o Git. E, é possível trabalhar
remotamente com o provedor Git de sua escolha, como o GitHub ou o Azure DevOps.
Ou você pode trabalhar localmente sem nenhum provedor.

Alterar o último commit (emendar)


A atualização do último commit é chamada de emenda no Git e é um caso de uso
comum. Às vezes, você só precisa atualizar sua mensagem de commit ou talvez precise
incluir uma alteração de última hora.

Você pode emendar um commit na linha de comando usando o seguinte comando:

Bash

git commit --amend

A janela Repositório Git facilita a atualização da mensagem de commit. Abra os


detalhes do commit do último commit clicando duas vezes nele e, em seguida,
selecione a opção Editar ao lado da mensagem de commit.

Quando terminar de editar sua mensagem de commit, selecione Emendar.

Se você precisar incluir alterações de código no último commit, poderá fazer isso na
janela Alterações do Git. Marque a caixa de seleção Emendar e confirme as alterações.

Para saber mais sobre como emendar, confira Ferramentas do Git – Reescrevendo o
Histórico no site do Git.

Commits de mesclagem (squash)


Para mesclar uma série de commits, o Git fornece uma opção para apertar commits em
um único commit. Essa opção poderá ser útil se você fizer commits frequentes e acabar
com uma longa lista de commits para limpeza antes de enviar por push para um
repositório remoto.

Você pode usar a opção squash em dois commits na linha de comando usando o
seguinte comando:
Bash

git rebase -i HEAD~2

Em seguida, atualize pick para squash , salve e atualize a mensagem de commit.

Para mesclar commits no Visual Studio, use a tecla Ctrl para selecionar vários commits
que você quer mesclar. Em seguida, clique com o botão direito e selecione Fazer
Squash de Commits. O Visual Studio combina automaticamente suas mensagens de
commit, mas, às vezes, é melhor fornecer uma mensagem atualizada. Depois de
examinar e atualizar sua mensagem de commit, selecione o botão Squash.


Para saber mais sobre como usar squash, confira Ferramentas do Git – Reescrevendo o
Histórico no site do Git.

Mesclar e trocar base de branches


Se você estiver usando branches do Git para trabalhar em diferentes recursos, em algum
momento precisará incluir atualizações introduzidas em outros branches. Isso pode
acontecer enquanto você ainda está trabalhando no branch de recursos. Isso também
pode acontecer quando você terminar de trabalhar no branch de recursos e precisar
manter suas alterações adicionando-as a um branch diferente. No Git, você pode incluir
essas atualizações mesclando ou trocando a base de branches.

7 Observação

As instruções a seguir usam New_Feature como nome de exemplo para um branch


de recursos. Substitua-o pelo nome do seu próprio branch.

Para mesclar o branch principal em seu branch de recursos na linha de comando, use os
seguintes comandos:

Bash

git checkout New_Feature


git merge main

Para fazer o mesmo no Visual Studio, faça o check-out do branch de recursos clicando
duas vezes nele na lista de branches. Em seguida, clique com o botão direito em main e
selecione Mesclar "main" em "New_Feature".
Para trocar a base do branch principal em seu branch de recursos na linha de comando,
use os seguintes comandos:

Bash

git checkout New_Feature


git rebase main

Para fazer o mesmo no Visual Studio, faça o check-out do branch de recursos clicando
duas vezes nele na lista de branches. Em seguida, clique com o botão direito em main e
selecione Trocar base de "New_Feature" para "main".
Para saber mais sobre mesclagem, troca de base e ramificação em geral, confira
Ramificação do Git no site do Git.

Copiar commits (cherry-pick)


Copie commits de um branch para outro usando a opção cherry-pick. Ao contrário de
uma mesclagem ou troca de base, cherry-picking traz apenas as alterações dos commits
selecionados, em vez de todas as alterações em um branch. Cherry-picking é uma ótima
maneira de enfrentar esses problemas comuns:

Commit acidental no branch errado. Cherry-pick leva as alterações para o branch


correto e redefine o branch original para o commit anterior.
Efetuar pull de um conjunto de commits feitos em um branch de recursos, para
mesclá-los de volta ao branch principal antecipadamente.
Portabilidade em commits específicos do branch principal sem trocar a base de
seu branch.

Para copiar as alterações de um commit para o branch atual usando a linha de


comando, use o seguinte comando:
Bash

git cherry-pick 7599e530

Para fazer o mesmo no Visual Studio, visualize o branch do qual você deseja selecionar
um commit selecionando-o com um único clique. Em seguida, clique com o botão
direito do mouse no commit de destino e selecione Cherry-Pick.

Após a conclusão da operação, o Visual Studio mostrará uma mensagem de êxito. O


commit que você escolheu é exibido na seção Saída.

Para saber mais sobre cherry-picking de commits, confira a página da Web do Git para o
comando cherry-pick .

Reverter as alterações
Use o comando revert para desfazer as alterações feitas em commits enviados por push
para branches compartilhados. O comando revert cria um novo commit que desfaz as
alterações feitas em um commit anterior. O comando revert não reescreve o histórico
do repositório, o que o torna seguro de usar quando você estiver trabalhando com
outras pessoas.
Para reverter as alterações feitas em um commit usando a linha de comando, use os
comandos a seguir. Substitua a ID de exemplo pela ID de um commit real em seu
branch.

Bash

git revert 53333305


git commit

No exemplo anterior, os comandos desfarão as alterações feitas no commit 53333305 e


criarão um novo commit no branch. O commit original ainda está no histórico do Git.
Para fazer o mesmo no Visual Studio, clique com o botão direito no commit que você
deseja reverter e selecione Revert. Após a confirmação da ação e conclusão da
operação, o Visual Studio exibirá uma mensagem de êxito e uma nova confirmação será
exibida na seção Saída.

Selecione o novo commit para confirmar que ele irá desfazer as alterações do commit
revertido.

Para saber mais sobre como reverter as alterações, confira a página da Web do Git para
o comando reverter .

Redefinir um branch para um estado anterior


Use o comando reset para trazer um branch em seu repositório local de volta ao
conteúdo de um commit anterior. Essa ação descarta todas as alterações que ocorreram
desde o commit para o qual você está redefinindo seu branch.

2 Aviso

Não redefina branches compartilhados, pois você pode excluir o trabalho de outras
pessoas. Em vez disso, use o comando revert.

Para redefinir um branch para um estado anterior usando a linha de comando, use o
comando a seguir. Substitua a ID de exemplo pela ID de um commit real em seu branch.

Bash

git reset --hard 53333305

A parte --hard do comando informa ao Git para redefinir os arquivos para o estado do
commit anterior e descartar quaisquer alterações preparadas. Para fazer o mesmo no
Visual Studio, clique com o botão direito no commit para o qual você deseja redefinir o
branch e selecione Redefinir>Excluir Alterações (--forçada).

Para saber mais sobre como redefinir branches, confira a página da Web do Git para o
comando reset .

Conteúdo relacionado
Trabalhar com vários repositórios
A experiência do Git no Visual Studio
Trabalhar com vários repositórios
Artigo • 18/03/2023

Como um dos nossos recursos mais solicitados no Developer Community ,


adicionamos suporte a vários repositórios ao Visual Studio 2022, começando com a
versão 17.4.

Agora, você pode ter até dez repositórios Git ativos simultaneamente no Visual Studio.
O suporte a vários repositórios significa que você pode trabalhar com uma solução que
abrange mais de um repositório e aplicar operações do Git em vários repositórios
simultaneamente. Por exemplo, em um projeto Web grande, talvez seja necessário ter
repositórios diferentes para gerenciar o trabalho feito no front-end, na API, no banco de
dados, na documentação, juntamente com várias bibliotecas e dependências. Antes do
suporte a vários repositórios, talvez você precisasse abrir várias instâncias do Visual
Studio para trabalhar entre repositórios. A partir da versão 17.4, você pode gerenciar,
exibir e depurá-los todos com uma instância do Visual Studio.

7 Observação

Para ver o suporte a vários repositórios em ação, assista ao vídeo Usar vários
repositórios Git no Visual Studio no YouTube.

Gerenciamento de branches e controle de


alterações
O suporte a vários repositórios estende as funcionalidades das janelas Alterações do Git
e Repositório Git. Você pode gerenciar seus cenários de vários repositórios da mesma
maneira que faria ao trabalhar com apenas um repositório.
Você pode criar seus branches em vários repositórios ao mesmo tempo usando a caixa
de diálogo de criação de branch estendido.

Em seguida, conforme você faz alterações, a janela Alterações do Git acompanha o


trabalho separado pelo repositório. Você pode preparar e fazer commit como
normalmente faria.
Você pode usar os seletores de branch na barra de status e a janela de ferramentas
Alterações do Git para alternar branches. Tudo o que você precisa fazer é selecionar o
branch do qual deseja fazer check-out. Além disso, você pode executar operações de
branch de loop interno, como mesclar, trocar base, renomear, excluir e comparar
branches clicando com o botão direito do mouse no branch para abrir o menu de
contexto.

Além disso, você pode executar operações de gerenciamento de repositório e branch


mais avançadas na janela Repositório Git.
Operações de rede
Quando você estiver pronto para confirmar, a caixa de diálogo operações de rede
facilitará a especificação do branch exato para o qual você está enviando por push e a
reordenação de seus pushes. Essa mesma caixa de diálogo permite que você exerça
mais controle sobre outras operações de rede, como fetch e pull.

Configurações do repositório
Você pode usar a página Configurações do Repositório Git para especificar suas opções
para cada repositório. Por exemplo, você pode especificar se deseja remover branches
remotos durante o fetch.
Ativar vários repositórios de uma solução ou de
uma pasta
Você pode ativar vários repositórios de uma solução ou de uma pasta.

Usar uma solução


Veja como criar uma solução com vários repositórios:

1. Abra uma das soluções existentes que já tem um repositório inicializado.

2. Clique com o botão direito do mouse na solução em Gerenciador de Soluções e


escolha Adicionar>Projeto Existente.

3. Selecione o arquivo .csproj para outro projeto que tenha um repositório


inicializado.

Após a adição do projeto, o Visual Studio detecta e ativa o segundo repositório.


Em seguida, você pode ajustar as Referências de Projeto conforme necessário.

Usar uma pasta


Se os repositórios que você deseja usar forem independentes uns dos outros e não
precisarem fazer parte da mesma solução, talvez você queira usar uma pasta para abri-
los.
Para fazer isso, você pode colocar os diretórios do repositório local na mesma pasta pai
e, em seguida, usar a opção Abrir uma pasta local na página de inicialização do Visual
Studio para abrir a pasta pai. O Visual Studio detecta e ativa cada repositório e controla
as alterações por repositório (conforme mostrado na captura de tela a seguir).

Próximas etapas
Quer saber mais sobre como desenvolveremos mais funcionalidades do Git no Visual
Studio 2022 ou compartilhar seus comentários conosco sobre o recurso de vários
repositórios? Confira as seções "Criando com seus comentários", "O que vem a seguir" e
"Deixe-nos saber o que você pensa" da postagem no blog Multi-repository support
released (suporte a vários repositórios lançado).

Em seguida, para continuar sua jornada com o gerenciamento de repositório, confira


Resolver conflitos de mesclagem no Visual Studio.
Como resolver conflitos de mesclagem
no Visual Studio
Artigo • 19/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Quando você mescla um branch com outro, as alterações de arquivo de confirmações


em um branch podem entrar em conflito com as alterações no outro. O Git tenta
resolver essas alterações usando o histórico em seu repositório para determinar a
aparência dos arquivos mesclados. Quando não está claro como mesclar alterações, o
Git interrompe a mesclagem e informa quais arquivos entram em conflito.

Entender conflitos de mesclagem


A imagem a seguir mostra um exemplo básico de como as alterações entram em
conflito no Git. Neste exemplo, o branch principal e o branch de correção de bugs
fazem atualizações nas mesmas linhas do código-fonte.

Se você tentar mesclar o branch de bugfix no principal, o Git não poderá determinar
quais alterações usar na versão mesclada. Talvez você queira manter as alterações no
branch principal, no branch de correção de bugs ou em alguma combinação dos dois.
Resolva esse conflito com uma confirmação de mesclagem no branch principal que
reconcilia as alterações conflitantes entre os dois branches.
O cenário de conflito de mesclagem mais comum ocorre quando você efetua pull de
atualizações de um branch remoto para o branch local (por exemplo, de origem/bugfix
para o branch de correção de bugs local). Você pode resolver esses conflitos da mesma
maneira: crie uma confirmação no branch local para reconciliar as alterações e conclua a
mesclagem.

Evitar conflitos de mesclagem


O Git é bom na mesclagem automática de alterações de arquivo na maioria das
circunstâncias, desde que o conteúdo do arquivo não mude drasticamente entre
confirmações. Se o branch estiver muito atrás do branch principal, considere rebasear os
branches antes de abrir uma solicitação de pull. Os branches com base trocada serão
mesclados no branch principal sem conflitos.

Resolver conflitos de mesclagem


Se você estiver colaborando com outras pessoas no mesmo branch, poderá ver
conflitos de mesclagem ao enviar suas alterações por push.

O Visual Studio detecta se o branch local no qual você está trabalhando está atrás
de seu branch de rastreamento remoto e, em seguida, oferece opções para
escolher.
7 Observação

Se o repositório remoto der suporte ao Force Push, você poderá habilitá-lo


usando Git>Configurações.

Neste exemplo, selecione Pull e Push para incluir as alterações introduzidas no


repositório remoto. Se houver conflitos de mesclagem quando você estiver
efetuando pull de alterações ou tentando mesclar dois branches, o Visual Studio
permitirá que você saiba na janela Alterações do Git, na janela Repositório Git e
em todos os arquivos que têm conflitos.

A janela Alterações do Git mostra uma lista de arquivos com conflitos em


Alterações Não Mescladas. Para começar a resolver conflitos, clique duas vezes
em um arquivo. Ou, se você tiver um arquivo com conflitos aberto no editor,
poderá selecionar Abrir Editor de Mesclagem.

No Editor de Mesclagem, comece a resolver o conflito usando qualquer um dos


seguintes métodos (conforme descrito na captura de tela numerada):

1. Acesse seus conflitos linha por linha e escolha entre manter o lado direito ou
esquerdo marcando as caixas de seleção.
2. Mantenha ou ignore todas as suas alterações conflitantes.
3. Edite manualmente seu código na janela Resultado.

 Dica
Se você não gostar do layout padrão no Editor de Mesclagem, fique à
vontade para alterá-lo usando o menu suspenso de engrenagem.

Por exemplo, a captura de tela a seguir mostra a aparência do modo de


exibição vertical:

Quando terminar de resolver os conflitos de mesclagem, selecione Aceitar


Mesclagem. Repita esse processo para todos os arquivos conflitantes.

Use a janela Alterações do Git para criar uma confirmação de mesclagem e


resolver o conflito.
7 Observação

Se você precisar manter todas as alterações em um arquivo, clique com o


botão direito do mouse na seção Alterações não Mescladas e selecione
Manter Atual (Local) sem precisar abrir o Editor de Mesclagem.
 Dica

Para saber mais sobre as opções de acessibilidade disponíveis para você, confira a
seção Atalhos de teclado do Git da página Dicas e truques de acessibilidade do
Visual Studio.

Conteúdo relacionado
Página da Web do Git para o comando de mesclagem
A experiência do Git no Visual Studio
Janela Alterações do Git sem conjunto
de repositório ativo
Artigo • 13/01/2024

Se você emitir uma instrução do Git no Visual Studio, como tentar confirmar uma
alteração quando não houver um repositório ativo definido, você verá a janela
Alterações do Git. Nesta janela, você pode optar por:

Criar repositório do Git, se você não tiver um repositório Git existente.


Clonar repositório, se você tiver um repositório Git hospedado em um provedor
Git como o GitHub.

Se você não estiver familiarizado com o Git no Visual Studio, consulte Como o Visual
Studio facilita o controle de versão com o Git ou o site https://git-scm.com/ .

) Importante

Se você tiver uma sugestão para nós, informe-nos. Agradecemos a oportunidade


de nos envolvermos com você em decisões de design por meio do portal do
Developer Community .

Para obter informações adicionais, consulte o seguinte:

Vídeo Introdução ao Git no Visual Studio no YouTube


Postagem no blog Aumento da produtividade com o Git no Visual Studio
caixa de diálogo Opções
Criar uma conta do GitHub para usar
com o Visual Studio
Artigo • 13/01/2024

Com uma conta do GitHub, você obtém suporte completo do GitHub de dentro do
IDE do Visual Studio para gerenciar seu código e colaborar com outras pessoas em
projetos de desenvolvimento.

Se você ainda não tem uma conta do GitHub, consulte aqui como criar uma.

1. Abra https://github.com em um navegador da Web e selecione Sign up.

2. Insira seu endereço de email.

3. Crie uma senha para sua nova conta do GitHub e insira um nome de usuário
também. Em seguida, escolha se deseja receber atualizações e comunicados por
email e selecione Continuar.
4. Verifique sua conta resolvendo um desafio. Selecione o botão Start Puzzle para
fazer isso e siga as solicitações.

5. Depois de verificar sua conta, selecione o botão Create account.

6. Em seguida, o GitHub envia um código de inicialização para seu endereço de


email. Digite o código de inicialização na caixa de diálogo Enter Code e pressione
Enter.
7. O GitHub faz algumas perguntas para ajudar a adaptar sua experiência. Escolha as
respostas que se aplicam a você nas seguintes caixas de diálogo:

Quantos membros da equipe trabalharão com você?


Quais recursos específicos você está interessado em usar?

8. Na tela Onde as equipes colaboram e enviam, você pode escolher se deseja usar
a conta Gratuita ou a Conta de equipe. Para escolher a conta Gratuita, selecione o
botão Ignorar personalização.

 Dica

Você sempre pode atualizar sua conta mais tarde. Consulte a página Tipos de
contas do GitHub para saber mais.

O GitHub abre uma página personalizada no navegador.


Parabéns! Você criou com êxito sua conta do GitHub.

Conteúdo relacionado
Clonar um repositório
Tutorial: abrir um projeto de um repositório
Testando ferramentas no Visual Studio
As ferramentas de teste do Visual Studio podem ajudar você e sua equipe a desenvolver
e manter altos padrões de excelência de código.

Sobre ferramentas de teste

e VISÃO GERAL

Introdução às ferramentas de teste

Ferramentas e tarefas de teste de unidade

Noções básicas de teste de unidade

Visão geral do Live Unit Testing (.NET)

Introdução

g TUTORIAL

Introdução ao teste de unidade

Executar testes de unidade com o Gerenciador de Testes

c GUIA DE INSTRUÇÕES

Cobertura de código para – Determinar quanto do código está sendo testado

Teste de unidade do .NET

g TUTORIAL

Criar e executar testes de unidade para código gerenciado

Introdução ao Live Unit Testing

Gerar testes de unidade (IntelliTest)

Execução de teste com Recarga Dinâmica

c GUIA DE INSTRUÇÕES
Microsoft Fakes – Isolar o código em teste

Teste de unidade C++

e VISÃO GERAL

Escrever testes de unidade para C/C++

Ferramentas relacionadas (Azure DevOps)

c GUIA DE INSTRUÇÕES

Testes exploratórios e manuais (Azure Test Plans)

Teste de carga (Teste de Carga do Azure)

Testes contínuos (Azure Pipelines)


Meça o desempenho do aplicativo no
Visual Studio
Ferramentas de diagnóstico e criação de perfil ajudam você a diagnosticar o uso de
memória e de CPU, além de outros problemas no aplicativo. Com essas ferramentas,
você pode acumular dados de desempenho enquanto executa o aplicativo.

Introdução

g TUTORIAL

Introdução à análise de uso da CPU

Introdução à medição de uso de memória

Conceitos básicos

e VISÃO GERAL

Introdução às ferramentas de criação de perfil

Qual ferramenta devo usar?

Maneiras de executar ferramentas de criação de perfil

p CONCEITO

Entendendo sobre os métodos de coleta de desempenho

Ferramentas de desempenho

c GUIA DE INSTRUÇÕES

Uso da CPU

Uso de Memória

E/S do arquivo

Banco de Dados

Visualizador de Eventos
Rastreamento de alocação de objeto .NET

.NET Async

Contadores do .NET

Instrumentação

Analisar o consumo de recursos (XAML)

Guides

c GUIA DE INSTRUÇÕES

Reduzir os custos de computação com ferramentas de criação de perfil

Otimizar as configurações do criador de perfil

Medir o desempenho na linha de comando

Usar várias ferramentas de criador de perfil simultaneamente


Documentação de análise de código –
Visual Studio (Windows)
O Visual Studio fornece várias ferramentas diferentes para analisar e melhorar a
qualidade do código.

Configurar análise de código .NET

e VISÃO GERAL

Analisar código .NET

p CONCEITO

Perguntas frequentes

c GUIA DE INSTRUÇÕES

Análise de código .NET

Análise de qualidade do código .NET >>

Análise de estilo de código .NET

Análise de código .NET

e VISÃO GERAL

Análise do código-fonte do .NET >>

Análise de qualidade do código .NET >>

Análise de estilo de código do .NET >>

i REFERÊNCIA

Regras de qualidade de código .NET

Regras de estilo de código .NET

Análise de código C++


g

e VISÃO GERAL

Analisar código C e C++

Convenções de formatação de EditorConfig

i REFERÊNCIA

Avisos da análise de código C++

Medir a complexidade do código (.NET)

p CONCEITO

Métricas de código
Documentação de implantação do
Visual Studio
Saiba como implantar aplicativos, serviços e componentes usando o Visual Studio

Sobre a implantação

e VISÃO GERAL

Introdução à implantação

Visão geral da publicação

Aplicativos Web ASP.NET

g TUTORIAL

Ferramenta de publicação

Obter configurações de publicação do IIS

Publicar com Git

Aplicativos C++

c GUIA DE INSTRUÇÕES

Pacote do instalador

Configurar projeto

Aplicativos ASP.NET Core

g TUTORIAL

Ferramenta de publicação

ClickOnce
Pacote do instalador

c GUIA DE INSTRUÇÕES

Empacotar um aplicativo da área de trabalho para a Windows Store

Aplicativos da área de trabalho do .NET Framework

g TUTORIAL

ClickOnce

Pacote do instalador

Implantar no Azure

g TUTORIAL

Aplicativo ASP.NET Core para Serviço de Aplicativo

ASP.NET para Serviço de Aplicativo (.NET Framework)

Aplicativo Web do ASP.NET para Aplicativos Web do Azure

Aplicativo Web do ASP.NET para Aplicativos de Contêiner do Azure

Funções do Azure

Implantar com ações do GitHub

Implantar o aplicativo Entity Framework Core com GitHub Actions

Implantar contêineres do Docker

c GUIA DE INSTRUÇÕES

Implantar no Registro de Contêiner do Azure

Implantar no Serviço de Aplicativo do Azure

Implantar no Docker Hub


Implantar sem um Dockerfile

Tipos de implantação adicionais

c GUIA DE INSTRUÇÕES

Aplicativos Node.js no Serviço de Aplicativo do Linux

Aplicativos conteinerizados

Publicar pacotes do NuGet


Extensibilidade do Visual Studio
Saiba mais sobre a Extensibilidade do Visual Studio.

Começar agora

b COMEÇAR AGORA

Instalar o SDK do Visual Studio

Escrever extensões do Visual Studio com o kit de ferramentas do Visual Studio Community

e VISÃO GERAL

Escrever extensões do Visual Studio

g TUTORIAL

Criar sua primeira extensão: Hello World

Estender

c GUIA DE INSTRUÇÕES

Menus e comandos

Janelas de ferramentas

Editor e linguagens

Language Server Protocol

Configurações e opções

Recursos

s SAMPLE

Modelos de Extensibilidade do Visual Studio

d TREINAMENTO
Comunidade do ExtendVS Gitter

Blog sobre Extensibilidade no Visual Studio

Enviar extensões

c GUIA DE INSTRUÇÕES

Publicar uma extensão

Publicação de linha de comando

Galerias privadas

Descubra as novidades

h NOVIDADES

SDK do Visual Studio 2019

SDL do Visual Studio 2017


Analisar e modelar a sua arquitetura
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Verifique se seu aplicativo atende aos requisitos de arquitetura usando as ferramentas


de arquitetura e modelagem do Visual Studio para projetar e modelar seu aplicativo.

1. Entenda melhor o código do programa existente visualizando a estrutura de


código, o comportamento e as relações com mapas de código e diagramas de
dependência.

Consulte a organização e as relações do código criando mapas de código.


Visualize dependências entre assemblies, namespaces, classes, métodos e
assim por diante.
Encontre conflitos entre seu código e seu design criando diagramas de
dependência para validar o código.
Consulte a estrutura de classe e os membros de um projeto específico
criando diagramas de classe com base no código.
Gere texto usando modelos T4 com blocos de texto e lógica de controle
dentro de modelos para gerar arquivos baseados em texto.

2. Instrua sua equipe sobre a necessidade de respeitar as dependências de


arquitetura.

3. Crie modelos em diferentes níveis de detalhe em todo o ciclo de vida do aplicativo


como parte do processo de desenvolvimento.

Consulte Cenário: alterar o design usando visualização e modelagem.

Mapas de código
Mapas de código são um tipo de modelo que ajuda você a ver a organização e as
relações em seu código.

Use mapas para examinar o código do programa para que você possa entender melhor
sua estrutura e suas dependências, como atualizá-lo e estimar o custo das alterações
propostas.

Saiba mais:

Instalar ferramentas de código de arquitetura


Mapear as dependências nas soluções
Usar mapas de códigos para depurar aplicativos
Encontrar possíveis problemas usando analisadores de mapa de códigos

Diagramas de Dependência
Diagramas de dependência permitem definir a estrutura de um aplicativo como um
conjunto de camadas ou blocos com dependências explícitas. A validação dinâmica
mostra conflitos entre dependências no código e dependências descritas em um
diagrama de dependência.

Use diagramas de dependência para:

Estabilizar a estrutura do aplicativo por meio de várias alterações ao longo de sua


vida.
Descobrir conflitos de dependência não intencionais antes de verificar as
alterações no código.

Saiba mais:

Instalar ferramentas de código de arquitetura


Criar diagramas de dependência do código
Diagramas de dependência: referência
Validar o código com diagramas de dependência

Modelos de Diagrama de DSL (Linguagem


Específica de Domínio)
Uma DSL é uma notação que você projeta para uma finalidade específica. No Visual
Studio, geralmente é gráfico.

Use um idioma específico do domínio para:

Gerar ou configurar partes do aplicativo. O trabalho é necessário para desenvolver


a notação e as ferramentas. O resultado pode ser uma melhor opção para seu
domínio do que uma personalização UML.
Para projetos grandes ou em linhas de produtos em que o investimento no
desenvolvimento da DSL e suas ferramentas é retornado pelo seu uso em mais de
um projeto.

Saiba mais:

SDK de Modelagem para Visual Studio - linguagens específicas ao domínio


Suporte de edição para ferramentas de
arquitetura e modelagem
O Visual Studio está disponível em várias edições. Nem todas elas dão suporte às
ferramentas de arquitetura e modelagem. A tabela a seguir mostra a disponibilidade de
cada ferramenta.

Recurso Enterprise Professional edition Community


edition edition

Mapas de Yes Só dá suporte à leitura de mapas de código, à -


código filtragem de mapas de código, à adição de novos
nós genéricos e à criação de um novo Grafo
Direcionado a partir de uma seleção.

Diagramas Yes Dá suporte apenas à leitura de diagramas de Dá suporte


de dependência. apenas à
dependência leitura de
diagramas de
dependência.

Grafos Yes Yes Yes


direcionados
(diagramas
DGML)

Clone de Sim - -
código
Personalizar o IDE do Visual Studio
Artigo • 20/01/2024

Você pode personalizar as configurações do IDE do Visual Studio de várias maneiras


para dar o melhor suporte ao seu próprio estilo e requisitos de desenvolvimento. Muitas
das configurações usam perfis móveis entre as instâncias do Visual Studio consulte
Configurações sincronizadas. Este artigo descreve de forma breve as diferentes
personalizações e o local em que é possível encontrar mais informações.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Personalizar o IDE do Visual Studio para Mac.

Configurações do ambiente padrão para o


Visual Studio
Escolha uma coleção padrão de configurações de ambiente que otimiza o Visual Studio
para seu tipo de desenvolvimento.

No Visual Studio, é possível otimizar seu ambiente de desenvolvimento para o tipo de


trabalho de desenvolvimento que você faz selecionando Ferramentas>Assistente de
Importação e Exportação de Configurações. Neste assistente, você pode escolher uma
coleção específica de configurações que melhor correspondam ao seu ambiente de
desenvolvimento. Cada coleção de configurações otimiza elementos, como atalhos de
teclado, layouts de janela, modelos de item e projeto e visibilidade de comando.

Opções do ambiente geral


Muitas opções de personalização são expostas pela caixa de diálogo Opções de
Ambiente. Há duas maneiras de acessar essa caixa de diálogo:

Na barra de menus, escolha Ferramentas>Opções e, se o nó Ambiente ainda não


estiver expandido, expanda-o.

Pressione Ctrl+Q, digite ambiente na caixa de pesquisa e, em seguida, escolha


Ambiente > Geral nos resultados.

 Dica
Quando a caixa de diálogo Opções for exibida, você poderá pressionar F1 para
obter ajuda sobre as diversas configurações nessa página.

Temas de cores do ambiente


Para alterar o tema de cor entre Escuro, Claro, Azul e Azul (Contraste Extra), digite tema
na caixa de pesquisa e escolha Ambiente > Geral. Na caixa de diálogo Opções, altere a
opção Tema de cores.

Para alterar as opções de colorização no editor, digite ambiente na caixa de pesquisa e,


em seguida, escolha Ambiente > Fontes e Cores. Consulte How to: Change fonts and
colors (Como alterar fontes e cores).

Personalizar menus e barras de ferramentas


Para adicionar ou remover itens de menu ou de barra de ferramentas, consulte Como
personalizar menus e barras de ferramentas.

Maiúsculas e minúsculas do menu principal


É possível alterar o uso de maiúsculas e minúsculas do menu principal optando por
Primeira letra de cada palavra em maiúscula ("Arquivo") ou Tudo em maiúscula
("ARQUIVO"). Digite ambiente na caixa de pesquisa, selecione Ambiente > Geral e, em
seguida, altere a opção Aplicar o estilo de capitalização de título à barra de menus.

Layouts de janela
Você pode definir e salvar vários layouts de janela e mudar entre eles. Por exemplo, você
pode definir um layout para codificação e outro para depuração. Para organizar as
posições e o comportamento da janela e salvar os layouts personalizados, confira
Personalizar layouts de janela e guias.

Ferramentas externas
É possível personalizar o menu Ferramentas para iniciar ferramentas externas. Para
obter mais informações, confira Gerenciar ferramentas externas.

Conteúdo relacionado
Configurações do ambiente
Visão geral do IDE do Visual Studio
Início rápido: Introdução ao IDE do Visual Studio
Personalizar o IDE do Visual Studio para Mac
Personalizar o editor e o IDE do Visual
Studio
Artigo • 03/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Este artigo mostra como alterar o tema de cores no IDE do Visual Studio e como alterar
as cores da fonte no editor.

 Dica

Se você ainda não tiver instalado o Visual Studio, acesse a página Downloads do
Visual Studio para instalá-lo gratuitamente.

Definir o tema de cores para o IDE


O tema das cores padrão para a interface do usuário do Visual Studio é Escuro. Veja
como alterá-lo para um tema de cores diferente.

1. Na barra de menus, selecione Ferramentas>Opções.

2. Na lista de opções, escolha Ambiente>Geral.

3. Na lista Tema de cores, escolha entre os temas Azul, Azul (Contraste Extra),
Escuro padrão e Claro. Ou escolha a opção Usar configuração do sistema para
selecionar o tema que o Windows usa.
7 Observação

Ao alterar um tema de cores, o texto no IDE é revertido para as fontes e os


tamanhos padrão ou personalizados anteriormente para esse tema.

 Dica

Quer ainda mais temas para escolher? Confira a ampla variedade de temas
personalizados no Visual Studio Marketplace . E para ver exemplos de
novos temas personalizados do Visual Studio 2022 com base no VS Code,
confira a postagem no blog Introdução a uma coleção de novos temas do
Visual Studio .

Alterar as cores do texto no editor


E aqui, como personalizar algumas cores de texto do editor.

Primeiro, crie um arquivo XML para ver as cores padrão:

1. Na barra de menus, escolha Arquivo>Novo>Arquivo.

2. Na caixa de diálogo Novo Arquivo, na categoria Geral, escolha Arquivo XML e


escolha Abrir.
3. Cole o seguinte XML abaixo da linha que contém o <?xml version="1.0"
encoding="utf-8"?> .

XML

<Catalog>
<Book id="bk101">
<Author>Garghentini, Davide</Author>
<Title>XML Developer's Guide</Title>
<Genre>Computer</Genre>
<Price>44.95</Price>
<PublishDate>2000-10-01</PublishDate>
<Description>
An in-depth look at creating applications with XML.
</Description>
</Book>
<Book id="bk102">
<Author>Garcia, Debra</Author>
<Title>Midnight Rain</Title>
<Genre>Fantasy</Genre>
<Price>5.95</Price>
<PublishDate>2000-12-16</PublishDate>
<Description>
A former architect battles corporate zombies, an evil
sorceress, and her own childhood to become queen of the world.
</Description>
</Book>
</Catalog>

Observe que os números de linha são azul-turquesa e os atributos XML (como


id="bk101" ) são azul-claro.
Em seguida, altere a cor do texto destes itens:

1. Para abrir a caixa de diálogo Opções, escolha Ferramentas>Opções na barra de


menus.

2. Em Ambiente, escolha a categoria Fontes e Cores.

Observe que o texto em Mostrar configurações para diz Editor de Texto. Você
pode Expandir a lista suspensa para ver a lista abrangente dos locais em que você
pode personalizar as fontes e a cor do texto.

3. Para alterar a cor do texto de números de linha, a lista Exibir itens, escolha
Número de Linha. Na caixa Primeiro plano do item, escolha Verde-oliva.
Algumas linguagens têm suas próprias configurações específicas de fontes e cores.
Se você for um desenvolvedor de C++ e quiser alterar a cor usada para as funções,
por exemplo, você poderá procurar pelas Funções de C++ na lista Exibir itens.

4. Antes de sair da caixa de diálogo, vamos alterar também a cor dos atributos XML.
Na lista Exibir itens, role para baixo até Atributo XML e selecione-o. Na caixa
Primeiro plano do item, escolha Verde-limão. Escolha OK para salvar as seleções e
fechar a caixa de diálogo.

Os números de linha agora são uma cor verde-oliva e os atributos XML são verde-
limão brilhante. Se você abrir outro tipo de arquivo, como um arquivo de código
C++ ou C#, verá que os números de linha também aparecem na cor verde-oliva.
Próximas etapas
Explore as outras opções de personalização na caixa de diálogoFontes e Cores>Opções
para personalizar o Visual Studio bem do seu jeito.

 Dica

Procurando informações sobre como baixar temas de cores do VS Code e


importá-los para o Visual Studio? Confira a postagem no blog Apresentando uma
coleção de novos temas do Visual Studio para obter todos os detalhes.

Confira também
Alterar fontes, cores e temas no Visual Studio
Alterar maiúsculas e minúsculas do texto no editor
Personalizar layouts de janela e guias
Configurações do ambiente do Visual
Studio
Artigo • 16/01/2024

No Visual Studio, é possível otimizar seu ambiente de desenvolvimento para o tipo de


trabalho de desenvolvimento que você faz selecionando Ferramentas>Assistente de
Importação e Exportação de Configurações. Neste assistente, você pode escolher uma
coleção específica de configurações que melhor correspondam ao seu ambiente de
desenvolvimento. Cada coleção de configurações otimiza elementos, como atalhos de
teclado, layouts de janela, modelos de item e projeto e visibilidade de comando.

As seguintes coleções de configurações estão disponíveis:

Geral
JavaScript
Visual Basic
Visual C#
Visual C++
Desenvolvimento para a Web
Desenvolvimento para a Web (Somente Código)

Importar e exportar configurações


Você pode usar o assistente para exportar suas próprias configurações de ambiente ou
importar categorias específicas de configurações. Essas configurações podem incluir as
que você salvou ou recebeu anteriormente de outra pessoa.

Redefinir todas as configurações


Você também pode usar o assistente a fim de redefinir o ambiente para uma das
coleções padrão de configurações. Veja aqui como fazer isso.

1. Na barra de menus, selecione Ferramentas>Importação e Exportação de


Configurações.

2. No Assistente de Importação e Exportação de Configurações, selecione Redefinir


todas as configurações e, em seguida, selecione Avançar.
3. Na página Salvar Configurações Atuais, selecione Sim, salve minhas
configurações atuais ou Não, basta redefinir as configurações e substituir
minhas configurações atuais e selecione Avançar.

4. Na página Escolher uma Coleção Padrão de Configurações, selecione uma


coleção e selecione Concluir.
5. Na página Redefinição Concluída, selecione Fechar.

Conteúdo relacionado
Sincronizar configurações em vários computadores
Personalizar o IDE do Visual Studio
Sincronizar as configurações do Visual
Studio em vários computadores
Artigo • 13/01/2024

Quando você entra no Visual Studio em vários computadores usando a mesma conta de
personalização, as configurações podem ser sincronizadas nos computadores.

Configurações sincronizadas
Por padrão, as seguintes configurações são sincronizadas:

Configurações de desenvolvimento. Você seleciona uma coleção de configurações


na primeira vez que abrir o Visual Studio, mas pode alterar a seleção a qualquer
momento. Para obter mais informações, confira Configurações do ambiente.

Alias de comando definidos pelo usuário. Para saber mais sobre como definir
aliases de comando, veja Aliases de comando do Visual Studio.

Layouts de janela definidos pelo usuário na página Janela>Gerenciar Layouts de


Janela.

As seguintes opções nas páginas Ferramentas>Opções:

Configurações de tema e de uso de maiúsculas na barra de menus, na página


de opções Ambiente>Geral.

Todas as configurações da página de opções Ambiente>Fontes e Cores.

Todos os atalhos de teclado da página de opções Ambiente>Teclado.

Todas as configurações da página de opções Ambiente>Guias e Janelas.

Todas as configurações da página de opções Ambiente>Inicialização.

Todas as configurações nas páginas de opção do Editor de Texto, por exemplo,


preferências de estilo de código.

Todas as configurações das páginas de opções Designer XAML.

Desligar configurações sincronizadas em um


computador específico
As configurações sincronizadas para o Visual Studio são ativadas por padrão. Você pode
desativar as configurações sincronizadas em um computador acessando a página
Ferramentas>Opções>Ambiente>Contas e desmarcando a caixa de seleção
Sincronizar configurações entre dispositivos e instalações neste computador (habilitar
isto pode substituir as configurações locais).

Em versões anteriores do Visual Studio 2022, essa caixa de seleção controlava apenas a
sincronização de configurações entre dispositivos. Quando você desmarcou a caixa de
seleção, isso impediu que o dispositivo atual sincronizasse com outros dispositivos. (No
entanto, se a caixa de seleção estava selecionada em outros dispositivos, esses
dispositivos continuaram sincronizando uns com os outros. Por outro lado, várias
instalações do Visual Studio no mesmo dispositivo continuaram sincronizando suas
configurações mesmo que a caixa de seleção tenha sido desmarcada.)

Começando no Visual Studio 2022 versão 17.2, essa caixa de seleção também controla
como o Visual Studio sincroniza suas instalações no mesmo dispositivo. Desmarcar a
caixa de seleção impede que a instalação atual do Visual Studio sincronize suas
configurações com instalações do Visual Studio no mesmo dispositivo ou em outros
dispositivos. Instalações do Visual Studio em outros dispositivos que têm a caixa de
seleção marcada continuam sendo sincronizadas entre si, assim como dispositivos com
versões anteriores (pré-17.2) do Visual Studio 2022 instaladas.

Se você tem várias instalações do Visual Studio, a tabela a seguir descreve como suas
configurações são sincronizadas quando você seleciona ou desmarca a caixa de seleção
Sincronizar configurações do Visual Studio entre dispositivos e instalações neste
computador.

ノ Expandir a tabela

Caixa de Versão do A instalação atual A instalação atual Outras instalações no


seleção Visual é sincronizada no é sincronizada mesmo dispositivo
status Studio mesmo entre são sincronizadas
dispositivo? dispositivos? entre dispositivos?

Desmarcada 17.1 e Sim Não No


anterior

Selecionado 17.1 e Sim Yes Sim, exceto 17.2+ com


anterior a caixa de seleção
desmarcada

Desmarcada 17.2 e Não No Nenhuma alteração


posterior
Caixa de Versão do A instalação atual A instalação atual Outras instalações no
seleção Visual é sincronizada no é sincronizada mesmo dispositivo
status Studio mesmo entre são sincronizadas
dispositivo? dispositivos? entre dispositivos?

Selecionado 17.2 e Sim Yes Sim, exceto 17.2+ com


posterior a caixa de seleção
desmarcada

Sincronizar configurações entre edições e


produtos do IDE do Visual Studio
As configurações são sincronizadas em todas as versões e edições do Visual Studio
instaladas lado a lado. As configurações também são sincronizadas entre os produtos
do IDE do Visual Studio, incluindo o Blend para Visual Studio. No entanto, um produto
individual do IDE do Visual Studio pode ter as próprias configurações que não são
compartilhadas com o Visual Studio. Por exemplo, as configurações específicas do Blend
para Visual Studio no computador "A" não são compartilhadas com o Visual Studio nos
computadores "A" ou "B".

Configurações sincronizadas lado a lado


Algumas configurações, como o layout da janela de ferramentas, não são
compartilhadas entre diferentes instalações lado a lado do Visual Studio. Por exemplo, o
arquivo CurrentSettings.vssettings em %userprofile%\Documents\Visual Studio
2019\Settings é uma pasta específica da instalação semelhante a
%localappdata%\Microsoft\VisualStudio\16.0_xxxxxxxx\Settings.

Restaurar as configurações sincronizadas


Para restaurar todas as configurações para os padrões, entre no Visual Studio e, em
seguida, selecione Ferramentas>Importar e Exportar Configurações para abrir o
Assistente para Importar e Exportar Configurações. Selecione Restaurar todas as
configurações e siga as etapas restantes do assistente.

Conteúdo relacionado
Personalizar o IDE
Configurações do ambiente
Caixa de diálogo Ambiente > Opções de Contas
Instalar versões do Visual Studio lado a lado
Como alterar fontes, cores e temas no
Visual Studio
Artigo • 24/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível alterar as fontes e as cores no Visual Studio de várias maneiras. Por exemplo,
é possível alterar o tema escuro padrão (também conhecido como "modo escuro") para
um tema claro, um tema azul, um tema de contraste extra ou um tema que corresponda
às configurações do sistema. Também é possível alterar a fonte padrão e o tamanho do
texto no IDE e no editor de código.

 Dica

Confira a postagem de blog Atualizamos a interface do usuário no Visual Studio


2022 para saber mais sobre os ajustes sutis de taxa de contraste de cores e uma
nova fonte do Cascadia Code que adicionamos para tornar o Visual Studio mais
acessível para todos.

Alterar o tema de cores


Veja como alterar o tema de cores do quadro IDE e as janelas de ferramentas no Visual
Studio.

1. Na barra de menus, selecione Ferramentas>Opções.

2. Na lista de opções, escolha Ambiente>Geral.

3. Na lista de Tema de cores, selecione o tema Escuro padrão, o tema Claro, o tema
Azul ou o tema Azul (Contraste extra).

Você também pode optar por usar o tema que o Windows usa selecionando Usar
configuração do sistema.
7 Observação

Ao alterar um tema de cores, o texto no IDE é revertido para as fontes e os


tamanhos padrão ou personalizados anteriormente para esse tema.

 Dica

Quer ainda mais temas para escolher? Confira a ampla variedade de temas
personalizados no Visual Studio Marketplace . E para ver exemplos de
novos temas personalizados do Visual Studio 2022 com base no VS Code,
confira a postagem no blog Introdução a uma coleção de novos temas do
Visual Studio .

Alterar fontes e tamanho do texto


É possível alterar a fonte e o tamanho do texto para todas as janelas de quadros e
ferramentas do IDE ou apenas para determinadas janelas ou elementos de texto. Você
também pode alterar a fonte e o tamanho do texto no editor.

Para alterar a fonte e o tipo de texto no IDE


1. Na barra de menus, selecione Ferramentas>Opções.
2. Na lista de opções, selecione Ambiente>Fontes e Cores.

3. Na lista Mostrar configurações de, selecione Ambiente.

7 Observação

Para alterar apenas a fonte das janelas de ferramentas, na lista Mostrar


configurações de, selecione Todas as janelas de ferramentas de texto.

4. Modifique as opções Fontee Tamanho para alterar a fonte e o tamanho do texto


do IDE.

5. Selecione o item apropriado em Exibir itens e, em seguida, modifique as opções


Primeiro plano do item e Tela de fundo do item.

Para alterar a fonte e o tipo de texto no editor


1. Na barra de menus, selecione Ferramentas>Opções.

2. Na lista de opções, selecione Ambiente>Fontes e Cores.

3. Na lista Mostrar configurações de, selecione Editor de Texto.


4. Modifique as opções Fontee Tamanho para alterar a fonte e o tamanho do texto
do editor.

5. Selecione o item apropriado em Exibir itens e, em seguida, modifique as opções


Primeiro plano do item e Tela de fundo do item.

Para obter mais informações sobre como alterar fontes e cores para acessibilidade,
consulte a seção Definir opções de acessibilidade desta página. E, para obter detalhes
sobre todos os elementos da interface do usuário em que você pode alterar esquemas
de fontes e cores, consulte a página Fontes e Cores, Ambiente, Caixa de Diálogo
Opções.

Definir opções do editor específicas a um


idioma
Você pode fazer várias alterações no editor de código para adequá-lo à linguagem de
programação de sua escolha. Por exemplo, é possível alterar a formatação de chave no
C# para aparecer embutido ou em uma nova linha e muito mais. Para saber como
personalizar o editor de código, consulte Definir opções de editor específicas do idioma.

Definir opções de Acessibilidade.


Em um mundo neurodiverso, queremos dar suporte a nossos diferentes alunos e
usuários com deficiência visual oferecendo as seguintes opções de fonte e temas de
cores:

É possível usar a fonte Cascadia Code, que adiciona mais peso às proporções de
letras, numerais e caracteres para ajudar a remover a ambiguidade. O Cascadia
Code também inclui ligaturas de codificação.
É possível optar por usar um tema de cores de alto contraste para todos os
aplicativos e interface do usuário em um computador ou um tema de cor de
contraste extra apenas para o Visual Studio.

Saiba mais sobre a fonte Cascadia Code


A nova fonte Cascadia Code inclui Cascade Mono, que é a fonte padrão no Visual
Studio 2022. Não só essas duas fontes são mais fáceis de ler, mas a fonte Cascadia Code
também inclui ligaturas de codificação que transformam uma sequência de caracteres
em um glifo. A codificação de ligaturas ou glifos torna mais fácil que as pessoas
associem cognitivamente o significado por trás delas.

A captura de tela a seguir mostra um exemplo da fonte Cascadia Mono padrão e lista
uma série de caracteres para incluir símbolos matemáticos, que você pode encontrar
usando enquanto codifica.

A captura de tela a seguir mostra um exemplo da fonte Cascadia Code, em que a


mesma série de caracteres mostrados anteriormente agora é convertida em ligaturas de
codificação ou glifos.

Observe que a última linha de texto na captura de tela do Cascadia Code mostra como
o espaço entre caracteres duplicados é reduzido, o que também facilita a leitura.

Veja como alternar entre as fontes Cascadia:

1. Acesse Ferramentas>Opções>Ambiente>Fontes e Cores.

2. Na lista suspensa Fonte, selecione a fonte Cascadia Code ou a fonte Cascadia


Mono desejada e, em seguida, selecione OK.
Usar alto contraste do Windows
Use um dos procedimentos a seguir para alternar a opção de alto contraste do
Windows:

No Windows ou em qualquer aplicativo da Microsoft, pressione as teclas Alt à


esquerda+Shift à direita+PrtScn.

No Windows, selecione Iniciar>Configurações>Facilidade de Acesso. Depois, na


seção Visão do Windows 10 e posterior, selecione Alto contraste.

2 Aviso

A configuração de alto contraste do Windows afeta todos os aplicativos e


interface do usuário no computador.

Usar contraste extra do Visual Studio


Use os procedimentos a seguir para alternar a opção de contraste extra do Visual
Studio:

1. Na barra de menus do Visual Studio, selecione Ferramentas>Opções e, na lista de


opções, selecione Ambiente>Geral.
2. Na lista suspensa do Tema de cores, selecione o tema Azul (Contraste Extra) e
selecione OK.

 Dica

Se houver uma opção de acessibilidade para cores ou fontes que você acha que
podem ser úteis, mas não estão disponíveis no Visual Studio no momento,
informe-nos selecionando Sugerir um recurso no Visual Studio Developer
Community . Para obter mais informações sobre esse fórum e como funciona,
consulte a página Sugerir um recurso.

Mais recursos de acessibilidade no Visual Studio


O Visual Studio também inclui recursos para ajudar pessoas que têm limitações para
escrita. Por exemplo, o Visual Studio fornece suporte a layouts de teclado Dvorak, que
torna os caracteres digitados com maior frequência mais acessíveis.

Você também pode personalizar os atalhos de teclado padrão disponíveis com o Visual
Studio. Para obter mais informações, consulte as seguintes páginas:

Identificar e personalizar atalhos de teclado


Como usar exclusivamente o teclado
Atalhos de teclado no Visual Studio

O Visual Studio também inclui preenchimento automático para métodos e parâmetros.


Para obter mais informações, consulte IntelliSense no Visual Studio.

Há mais maneiras de personalizar o Visual Studio para ser mais acessível para você. Por
exemplo, você pode alterar o comportamento de janelas pop-up, janelas de ferramentas
baseadas em texto, botões da barra de ferramentas, indicadores de margem e muito
mais.

7 Observação

As caixas de diálogo e os comandos de menu vistos podem ser diferentes daqueles


descritos aqui, o que pode variar dependendo da edição ou das configurações
ativas. Para alterar as configurações, selecione Importar e Exportar Configurações
no menu Ferramentas. Para obter mais informações, confira Redefinir as
configurações.
Alterar o comportamento das janelas pop-up
O Visual Studio exibe janelas pop-up no editor. Essas janelas pop-up incluem
informações que facilitam a codificação, como parâmetros para concluir uma função ou
instrução. Essas janelas pop-up também podem ser úteis se você tiver dificuldades para
digitar. No entanto, alguns usuários podem achar que interferem no foco do editor de
código, o que pode ser um problemático.

Veja como desativar as janelas pop-up:

1. No menu Ferramentas , selecione Opções.

2. Selecione Editor de texto>Todos os idiomas>Geral.

3. Desmarque as caixas de seleção Listar membros automaticamente e Informações


de parâmetros.

É possível reorganizar as janelas no IDE (ambiente de desenvolvimento integrado) para


se adequar melhor à maneira como você trabalha. Você pode encaixar, derivar, ocultar
ou ocultar automaticamente cada janela de ferramentas. Saiba mais sobre como alterar
os layouts das janelas em Personalizar layouts de janela.

Alterar as configurações das janelas de ferramentas baseadas em


texto

É possível alterar as configurações de janelas de ferramentas baseadas em texto, como


as janelas Comando, Imediato e de Saída, usando
Ferramentas>Opções>Ambiente>Fontes e cores.

Ao selecionar [Todas as janelas de ferramentas de texto] na lista suspensa Mostrar


configurações de, a configuração padrão é listada como Padrão nas listas suspensas
Primeiro plano do item e Tela de fundo do item. Selecione o botão Personalizar para
alterar essas configurações.

Também é possível alterar as configurações de como o texto é exibido no editor. Veja


aqui como fazer isso.

1. No menu Ferramentas , selecione Opções.

2. Selecione Ambiente>Fontes e Cores.

3. Selecione uma opção no menu suspenso Mostrar configurações de.

Para alterar o tamanho da fonte do texto em um editor, selecione Editor de Texto.


Para alterar o tamanho da fonte do texto em janelas de ferramentas baseadas em
texto, selecione [Todas as Janelas de Ferramentas de Texto].

Para alterar o tamanho da fonte do texto das Dicas de Ferramentas de um editor,


selecione Dica de Ferramenta do Editor.

Para alterar o tamanho da fonte do texto em pop-ups de preenchimento de


declaração, selecione Preenchimento de Declaração.

4. Em Exibir Itens, selecione Texto sem formatação.

5. Em Fonte, selecione um novo tipo de fonte.

6. Em Tamanho, selecione um novo tamanho da fonte.

 Dica

Para redefinir o tamanho do texto em editores e janelas de ferramentas


baseadas em texto, selecione Usar Padrões.

7. Selecione OK.

Alterar as cores de texto, indicadores de margem, espaços em


branco e elementos de código

Você pode optar por alterar as cores padrão de texto, indicadores de margem, espaços
em branco e elementos de código no editor. Veja aqui como fazer isso.

1. No menu Ferramentas , selecione Opções.

2. Na pasta Ambiente, selecione Fontes e Cores.

3. Em Mostrar configurações de, selecione Editor de Texto.

4. Em Exibir Itens, selecione um item cuja exibição você precisa alterar, como Texto
sem formatação, Margem de Indicadores, Espaço em branco visível, Nome do
Atributo HTML ou Atributo XML.

5. Selecione configurações de exibição entre as opções a seguir: Primeiro plano do


item, Tela de fundo do item e Negrito.

6. Selecione OK.

 Dica
Para usar cores de alto contraste em todas as janelas de aplicativo do sistema
operacional, pressione as teclas Alt esquerda+Shift esquerda+PrtScn. Feche e
reabra o Visual Studio, se estiver aberto, para implementar completamente as cores
de alto contraste.

Adicionar texto aos botões da barra de ferramentas ou modificar o


texto
Para melhorar a acessibilidade e a usabilidade da barra de ferramentas, você pode
adicionar texto a botões da barra de ferramentas.

Para atribuir texto a botões da barra de ferramentas

1. No menu Ferramentas, selecione Personalizar.

2. Na caixa de diálogo Personalizar, selecione a guia Comandos.

3. Selecione Barra de ferramentas e escolha o nome da barra de ferramentas que


contém o botão cujo texto você pretende exibir.

4. Na lista, selecione o comando que deseja alterar.

5. Selecione Modificar Seleção.

6. Selecione Imagem e Texto.

Para modificar o texto exibido em um botão

1. Selecione Modificar Seleção novamente.

2. Em Nome, insira uma nova legenda para o botão selecionado.

Suporte à acessibilidade
Para obter mais informações sobre recursos, produtos e serviços que tornam o Windows
mais acessível para pessoas com deficiências, consulte Produtos e serviços de
acessibilidade da Microsoft. E, para obter mais informações sobre como obter formatos
mais acessíveis de documentação para produtos da Microsoft, consulte a seção
Documentação em formatos alternativos da página Produtos e serviços de
acessibilidade da Microsoft.
As informações de acessibilidade incluídas nesta página podem se aplicar somente aos
usuários que têm licença de produtos Microsoft nos Estados Unidos. Se você adquiriu
este produto fora dos Estados Unidos, visite o site Acessibilidade da Microsoft para
obter uma lista de números de telefone e endereços dos serviços de suporte da
Microsoft. Contate qualquer subsidiária para descobrir se os tipos de produtos ou
serviços descritos nesta página estão disponíveis em sua região. Informações sobre
acessibilidade também estão disponíveis em outros idiomas.

Confira também
Recursos do editor de código no Visual Studio
Personalizar o editor e o IDE do Visual Studio
Como personalizar menus e barras de
ferramentas no Visual Studio
Artigo • 09/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Para personalizar o Visual Studio, além de adicionar e remover barras de ferramentas e


menus na barra de menus, você também pode adicionar e remover comandos em
qualquer barra de ferramentas ou menu.

 Dica

Para saber mais sobre como personalizar a barra de ferramentas para que você
possa torná-la sua, confira nossa postagem recente no blog, Otimizando barras de
ferramentas para seu fluxo de trabalho .

Adicionar, remover ou mover um menu na


barra de menus
1. Na barra de menu, selecione Ferramentas>Personalizar.

A caixa de diálogo Personalizar é aberta.

2. Na guia Comandos, deixe o botão de opção Barra de menus selecionado, deixe


Barra de Menus selecionado na lista ao lado dessa opção e realize um dos
seguintes conjuntos de etapas:

Para adicionar um menu, selecione o botão Adicionar Novo Menu, selecione


o botão Modificar Seleção e nomeie o menu que você deseja adicionar.

Para remover um menu, selecione-o na lista Visualização e, em seguida,


selecione o botão Excluir.

Para mover um menu na barra de menus, escolha o menu na lista Controles e


escolha o botão Mover para Cima ou Mover para Baixo.

Adicionar, remover ou mover uma barra de


ferramentas
1. Na barra de menu, selecione Ferramentas>Personalizar.

A caixa de diálogo Personalizar é aberta.

2. Na guia Barra de Ferramentas, realize um dos seguintes conjuntos de etapas:

Para adicionar uma barra de ferramentas, escolha o botão Novo, especifique


um nome para a barra de ferramentas que você deseja adicionar e selecione
o botão OK.

Para remover uma barra de ferramentas personalizada, selecione-a na lista


Barras de Ferramentas e escolha o botão Excluir.

) Importante

Você pode excluir as barras de ferramentas que cria, mas não as barras
de ferramentas padrão.

Para mover uma barra de ferramentas personalizada para um local de encaixe


diferente, arraste a barra de ferramentas pela borda esquerda e mova-a para
qualquer lugar na área de encaixe principal.

7 Observação

Para obter mais informações sobre como aprimorar a usabilidade e a


acessibilidade de texto, barras de ferramentas e mais, confira Definir
opções de acessibilidade.

Personalizar um menu ou uma barra de


ferramentas

2 Aviso

Depois de personalizar uma barra de ferramentas ou um menu, verifique se a


respectiva caixa de seleção permanece marcada na caixa de diálogo Personalizar.
Caso contrário, as alterações não persistirão depois que você fechar e reabrir o
Visual Studio.

1. Na barra de menu, selecione Ferramentas>Personalizar.


A caixa de diálogo Personalizar é aberta.

2. Na guia Comandos, selecione o botão de opção do tipo de elemento que você


deseja personalizar.

3. Na lista desse tipo de elemento, selecione o menu ou a barra de ferramentas que


deseja personalizar e executa um dos seguintes conjuntos de etapas:

Para adicionar um comando, selecione o botão Adicionar Comando.

Na caixa de diálogo Adicionar Comando, selecione um item na lista


Categorias, selecione um item na lista Comandos e selecione o botão OK.

Para excluir um comando, selecione-o na lista Controles e, em seguida,


selecione o botão Excluir.

Para reorganizar comandos, escolha um comando na lista Controles e


escolha o botão Mover para Cima ou Mover para Baixo.

Para agrupar comandos em uma linha horizontal, selecione o primeiro


comando na lista Visualização, selecione o botão Modificar Seleção e, em
seguida, selecione Iniciar um Grupo.

Redefinir um menu ou uma barra de


ferramentas
1. Na barra de menu, selecione Ferramentas>Personalizar.

A caixa de diálogo Personalizar é aberta.

2. Na guia Comandos, escolha o botão de opção do tipo de elemento que você


deseja redefinir.

3. Na lista desse tipo de elemento, selecione o menu ou a barra de ferramentas que


você deseja redefinir.

4. Selecione o botão Modificar Seleção e selecione Redefinir no menu exibido.

Também é possível redefinir todos os menus e barras de ferramentas escolhendo o


botão Redefinir Tudo.

Confira também
Personalizar o IDE
Personalizar o editor
Personalizar layouts de janela e guias
Artigo • 30/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

No Visual Studio, é possível personalizar a posição, tamanho e comportamento de


janelas para criar layouts de janela que funcionam melhor para vários fluxos de trabalho
de desenvolvimento. Você também pode personalizar a maneira como usa guias para
interagir com o código.

Personalizar layouts de janela


Quando você personaliza um layout de janela, o IDE (ambiente de desenvolvimento
integrado) do Visual Studio se lembra dele. Por exemplo, se você alterar o local de
encaixe do Gerenciador de Soluções e fechar o Visual Studio, na próxima vez que você
abrir o Visual Studio, o Gerenciador de Soluções estará encaixado no mesmo local. O
IDE do Visual Studio se lembra do local de encaixe mesmo que você esteja trabalhando
em outro computador.

Também é possível dar um nome ao layout personalizado e salvá-lo e, em seguida,


mudar entre layouts com um único comando. Por exemplo, é possível criar um layout
para edição e outro para depuração e alternar entre eles usando o comando de menu
Janela>Aplicar Layout de Janela.

Janelas de ferramentas e do documento


O IDE tem dois tipos básicos de janela, janelas de ferramentas e janelas do documento.
As janelas de ferramentas incluem o Gerenciador de Soluções, Gerenciador de
Servidores, Janela de Saída, Lista de Erros, os designers, as janelas do depurador e
assim por diante. As janelas do documento contêm arquivos de código-fonte, arquivos
de texto arbitrário, arquivos de configuração e assim por diante. Você pode
redimensionar ou arrastar janelas de ferramentas pela barra de título. Você pode
arrastar janelas de documento por sua guia. Clique com o botão direito do mouse na
guia ou barra de título para definir outras opções na janela.

O menu Janela mostra opções para encaixar, flutuar e ocultar janelas no IDE. Clique com
o botão direito do mouse em uma guia da janela ou barra de título para ver mais
opções para essa janela específica. É possível exibir mais de uma instância de
determinadas janelas de ferramentas por vez. Por exemplo, é possível exibir mais de
uma janela do navegador da Web e é possível criar instâncias extra de algumas janelas
de ferramentas selecionando Nova Janela no menu Janela.

Dividir janelas

Quando é necessário exibir ou editar dois locais ao mesmo tempo em um documento, é


possível dividir as janelas. Para dividir o documento em duas seções de rolagem
independentes, selecione Dividir no menu Janela. Selecione Remover Divisão no menu
Janela para restaurar o modo de exibição único.

Barras de ferramentas

Você pode organizar barras de ferramentas arrastando-as para onde deseja ou usando a
caixa de diálogo Personalizar. Para obter mais informações sobre como posicionar e
personalizar barras de ferramentas, consulte Como personalizar menus e barras de
ferramentas.

Organizar e encaixar janelas


Uma janela do documento e uma janela de ferramentas podem ser encaixadas para que
tenham uma posição e um tamanho dentro do quadro de janela do IDE. Elas também
podem ser posicionadas como uma janela flutuante separada fora do IDE.

Você pode encaixar uma janela de ferramentas em qualquer lugar no quadro do IDE.
Você também pode encaixar algumas janelas de ferramentas como janelas com guias no
quadro do editor. Além disso, você pode encaixar janelas de documentos no quadro do
editor ou fixá-las à posição atual na ordem de tabulação.

Também é possível encaixar várias janelas para que elas flutuem juntas em um raft no
IDE ou fora dele. As janelas de ferramentas também podem ser ocultadas ou
minimizadas.

É possível organizar janelas das seguintes maneiras:

Fixe as janelas do documento à esquerda da caixa de guias.


Encaixe janelas de guias no quadro de edição.
Encaixe janelas de ferramentas na borda de um quadro no IDE.
Faça janelas do documento ou de ferramentas flutuar no IDE ou fora dele.
Oculte as janelas de ferramentas ao longo da borda do IDE.
Exiba janelas em monitores diferentes.
Redefina o posicionamento da janela para o layout padrão ou para um layout
personalizado salvo.
Para organizar janelas de ferramentas e documentos, você pode colocar o cursor na
barra de título de uma janela e arrastá-la para o local desejado. Como alternativa, você
pode clicar com o botão direito do mouse na barra de título da janela para usar seu
menu de contexto ou pode usar os comandos no menu Janela.

Encaixar janelas

Quando você seleciona e arrasta a barra de título de uma janela de ferramentas ou a


guia da janela do documento, um losango guia é exibido. Durante a operação de
arrastar, quando o cursor do mouse está sobre uma das setas no losango, será exibida
uma área sombreada que mostra onde a janela será encaixada se você soltar o botão do
mouse.

Para mover uma janela encaixável sem ajustá-la no local, pressione a tecla Ctrl enquanto
você arrasta a janela.

Para retornar uma janela do documento ou de ferramentas para seu local encaixado
mais recente, pressione Ctrl enquanto você clica duas vezes na barra de título ou na
guia da janela.

A captura de tela a seguir mostra o losango guia para janelas de documento, que só
podem ser encaixadas dentro do quadro de edição:

As janelas de ferramentas podem ser fixadas em um lado de um quadro no IDE ou


dentro do quadro de edição. Um guia do losango será exibido quando você arrastar
uma janela de ferramentas para outro lugar para ajudá-lo a reencaixar a janela
facilmente.

A captura de tela a seguir mostra o Gerenciador de Soluções sendo encaixado em um


novo local delimitado por uma área sombreada roxa:

Fechar e ocultar automaticamente janelas de ferramentas


Você pode fechar uma janela de ferramentas selecionando o X no canto superior direito
da barra de título. Para reabrir a janela, selecione as janelas de ferramentas desejadas
usando Exibir na barra de menus ou o atalho de teclado associado.

As janelas de ferramentas dão suporte a um recurso chamado Ocultar


Automaticamente, que faz com que uma janela saia da frente quando você usa uma
janela diferente. Quando uma janela é ocultada automaticamente, o nome dela é
exibido em uma guia na borda do IDE. Para usar a janela novamente, selecione a guia
para que a janela volte a ser exibida.

 Dica

Para definir se o recurso de ocultar automaticamente é operado em janelas de


ferramentas individualmente ou como grupos encaixados, marque ou desmarque O
botão Ocultar Automaticamente afeta somente a janela de ferramentas ativa na
caixa de diálogo Opções. Para obter mais informações, consulte a página Caixa de
diálogo Opções: Ambiente > Geral.

7 Observação

As janelas de ferramentas que têm ocultar automaticamente habilitado poderão ser


exibidas temporariamente quando a janela estiver em foco. Para ocultar a janela
novamente, selecione um item fora da janela atual. Quando a janela perde o foco,
ela não é mais exibida.

Usar um segundo monitor

Se você tiver um segundo monitor e o sistema operacional der suporte a ele, será
possível selecionar qual monitor exibirá uma janela. É possível até mesmo agrupar várias
janelas em rafts em outros monitores.
 Dica

É possível criar várias instâncias do Gerenciador de Soluções e movê-las para outro


monitor. Clique com o botão direito do mouse no nó Solução e selecione Nova
Exibição do Gerenciador de Soluções. Para fechar as instâncias extra, clique duas
vezes em cada uma delas enquanto pressiona a tecla Ctrl.

Redefinir, nomear e mudar entre layouts de janela


É possível voltar o IDE para o layout de janela original para sua coleção de
configurações selecionando Janelas>Redefinir Layout de Janela na barra de menus.
Quando você executar esse comando, as seguintes ações ocorrerão:

Todas as janelas serão movidas para as posições padrão.

As janelas fechadas no layout de janela padrão serão fechadas.

As janelas abertas no layout de janela padrão serão abertas.

Criar e salvar layouts personalizados

O Visual Studio permite salvar até 10 layouts de janela personalizados e mudar


rapidamente entre eles. As etapas a seguir mostram como criar, salvar, invocar e
gerenciar dois layouts personalizados que usam vários monitores com janelas de
ferramentas encaixadas e flutuantes.

Criar um projeto e personalizar o layout

Primeiro, criaremos um projeto de interface do usuário. A ideia é maximizar o espaço da


janela do designer tirando outras janelas de ferramentas do caminho.

1. Crie um projeto de Aplicativo WPF em C#.

2. Se você tiver vários monitores, arraste a janela do Gerenciador de Soluções e o


janela Propriedades sobre o segundo monitor.

Se estiver usando apenas um monitor, tente fechar todas as janelas exceto o


designer.

3. Pressione Ctrl+Alt+X para exibir a janela da Caixa de ferramentas. Se a janela


estiver encaixada, arraste-a para que ela flutue em algum lugar que você gostaria
de posicioná-la.
4. Quando o layout estiver da maneira como você deseja, selecione Janela>Salvar
Layout de Janela. Dê a esse layout o nome "Designer".

Observe que o próximo atalho de teclado da lista reservada de Ctrl+Alt+1...0 foi


atribuído ao seu novo layout.

Criar um layout e um projeto de banco de dados

Adicione um novo projeto do Banco de Dados do SQL Server à solução.

1. Clique com o botão direito do mouse no nó Solução no Gerenciador de Soluções


para abrir o menu de contexto, selecione Adicionar e, em seguida, Novo Projeto.

2. Na caixa de diálogo Adicionar um novo projeto, selecione SQL na lista suspensa


Todos os tipos de projeto e selecione Projeto de Banco de Dados do SQL Server.

(Você também pode usar a caixa Pesquisar para localizar o modelo. Para fazer isso,
insira 'SQL' como uma cadeia de caracteres de pesquisa na caixa que inclui o
seguinte texto: Pesquisar modelos (Alt+S).)

3. Clique com o botão direito do mouse no novo projeto de banco de dados no


Gerenciador de Soluções e selecione Exibir no Pesquisador de Objetos.

Quando você faz isso, o Visual Studio exibe a janela Pesquisador de Objetos do
SQL Server, que permite acessar tabelas, modos de exibição e outros objetos em
seu banco de dados. É possível fazer essa janela flutuar ou deixá-la encaixada.
Ajuste as outras janelas de ferramentas da maneira como você as desejar. Para
maior realismo, é possível adicionar um banco de dados real, mas isso não é
necessário para este passo a passo.

4. Quando chegar ao layout desejado, selecione Janela na barra de menus e, em


seguida, Salvar Layout da Janela. Dê a esse layout o nome "DB Project". (Não nos
preocuparemos com um layout de modo de depuração para este projeto.)

Mudar entre os layouts

Para alternar entre layouts, use os atalhos de teclado da lista reservada de Ctrl+Alt+1...0.
Ou, no menu principal, selecione Janela>Aplicar Layout da Janela.

Se você tiver vários monitores no trabalho e um laptop com um monitor em casa,


poderá criar layouts otimizados para cada computador.

7 Observação

Se você aplicar um layout de vários monitor em um sistema de monitor único, as


janelas flutuantes inseridas no segundo monitor ficarão ocultas agora atrás da
janela do Visual Studio. Você pode trazer essas janelas para a frente pressionando
Alt+Tab. Se você abrir o Visual Studio posteriormente com vários monitores,
poderá restaurar as janelas para as posições especificadas reaplicando o layout.

Gerenciar e usar perfil móvel nos seus layouts


É possível remover, renomear ou reordenar o layout personalizado seleiconando
Janela>Gerenciar Layouts de Janela. Se você mover um layout, a associação de teclas
será ajustada automaticamente para refletir a nova posição na lista. As associações de
teclas em si não podem ser modificadas, mas você pode armazenar até 10 layouts por
vez.

Para se lembrar de qual atalho de teclado foi atribuído a qual layout, selecione
Janela>Aplicar Layout de Janela.

Esses layouts alternam automaticamente entre as edições do Visual Studio e as


instâncias do Blend em computadores separados.

Personalizar guias
Você pode personalizar guias para interagir com janelas de documentos de várias
maneiras diferentes. Por exemplo, você pode exibir uma versão prévia de um arquivo no
editor sem abrir o arquivo, agrupar suas guias, organizá-las em várias linhas e muito
mais.

 Dica

Para saber mais sobre como gerenciar guias no Visual Studio 2022 e posterior,
consulte a seguinte postagem no blog: Muitas guias abertas? Sem problemas.

Guia de versão prévia


Na guia Visualização, é possível exibir arquivos no editor sem abri-los. É possível exibir a
versão prévia dos arquivos selecionando-os no Gerenciador de Soluções durante a
depuração, quando você intervém nos arquivos, com Ir para Definição, e quando você
navega pelos resultados de uma pesquisa. Os arquivos de visualização são exibidos em
uma guia à direita da caixa de guias de documentos. O arquivo será aberto para edição
se você modificá-lo ou selecionar Abrir.

Grupos de guias
Grupos de guias ampliam sua capacidade de gerenciar um workspace limitado
trabalhando com dois ou mais documentos abertos no IDE. É possível organizar várias
janelas do documento e de ferramentas em grupos de guias verticais ou horizontais e
embaralhar os documentos de um grupo de guias em outro.

Guias de documentos verticais


Você pode gerenciar guias de documentos em uma lista vertical do lado esquerdo ou
do lado direito do editor.

Você pode aplicar guias de documentos verticais das seguintes maneiras:

Selecione Ferramentas>Opções>Ambiente>Guias e Janelas na barra de menus.


Em seguida, no controle Definir layout da guia, selecione Superior, Esquerdo ou
Direito na lista suspensa.

Clique com o botão direito do mouse em uma guia, selecione Definir Layout da
Guia e selecione Esquerdo ou Direito. (Para retornar as guias à posição padrão,
selecione Superior.)

Colorir guias de documentos


O Visual Studio 2022 inclui novas opções de personalização que podem ajudá-lo a
codificar com mais eficiência. Agora, você pode colorir guias de arquivo por projeto
para que não precise buscar seus arquivos abertos.

Para colorir guias, navegue até Ferramentas>Opções>Ambiente>Guias e Janelase


selecione Colorir guias de documentos por projeto.

Colorir guias em diferentes exibições


Você pode colorir guias em exibições verticais e horizontais no Editor.
A seguinte captura de tela mostra um exemplo de coloração de guias na exibição
vertical:

A seguinte captura de tela mostra um exemplo de coloração de guias na exibição


horizontal:

Selecionar suas cores


Você também pode selecionar suas cores de guia. Para fazer isso, clique com o botão
direito do mouse em uma guia e selecione Definir Cor da Guia para escolher na paleta.

A seguinte captura de tela mostra um exemplo de como personalizar o esquema de


cores das guias:
Várias linhas de guias
Adicionamos a capacidade de encapsular guias em várias linhas para que você possa ter
mais guias horizontais abertas por vez. Guias fixadas serão exibidas em uma linha
separada das guias desafixadas.


Para alterar essas opções, navegue até Ferramentas>Opções>Ambiente>Guias e
Janelas>Mostrar guias em várias linhas.

Sistema de organização personalizado


Adicionamos opções extra para deixar a guia ativa atual em negrito, alterar a largura da
guia e adicionar um botão de fechamento extra na parte superior do documento.

Para alterar essas opções, navegue até Ferramentas>Opções>Ambiente>Guias e


Janelas.

Acessibilidade aprimorada
Alteramos o indicador de documentos com alterações não salvas para um ponto maior
e mais visível.

Você pode reverter para o asterisco familiar usando


Ferramentas>Opções>Ambiente>Guias e Janelas>Modificar Indicator Sujo.

Mostrar nomes em itálico


Você pode mostrar os nomes de documentos que não estão visíveis em itálico.
Para habilitar essa opção, acesse Ferramentas>Opções>Ambiente>Guias e
Janelas>Mostrar guias invisíveis em itálico no menu suspenso de guias.

Restaurar guias fechadas


Facilitamos a restauração de documentos que você abriu pela última vez, de maneira
semelhante ao comportamento de um navegador. Agora, você pode reabrir a última
guia que fechou clicando com o botão direito do mouse em uma guia, usando o atalho
de teclado Ctrl+K, Ctrl+Z ou navegando até o item de menu em Janela>Restaurar Guia
Fechada.

Confira também
Como mover-se no IDE
Dicas de acessibilidade e truques do
Visual Studio
Artigo • 10/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio tem recursos internos de acessibilidade que são compatíveis com
leitores de tela e outras tecnologias assistenciais. Se você quiser usar atalhos de teclado
para navegar na IDE ou temas de alto contraste para melhorar a visibilidade, encontrará
várias dicas & truques a respeito disso nesta página.

Também abordamos como usar anotações para revelar informações úteis sobre seu
código e também como definir dicas de áudio para eventos de erro, ponto de
interrupção ou aviso.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Acessibilidade do Visual Studio para Mac.

Salvar as configurações do IDE


É possível personalizar sua experiência no IDE salvando seu layout de janela, esquema
de mapeamento de teclado e outras preferências. Para obter mais informações, confira
Personalizar o IDE do Visual Studio.

Modificar o IDE para exibição de alto contraste


Para algumas pessoas, algumas cores são mais difíceis de enxergar. Se você deseja mais
contraste ao codificar, mas não quer usar os temas típicos de "Alto Contraste", agora
oferecemos o tema "Azul (Contraste extra)".
 Dica

Confira a postagem de blog Atualizamos a interface do usuário no Visual Studio


2022 para saber mais sobre os ajustes sutis de taxa de contraste de cores e uma
nova fonte do Cascadia Code que adicionamos para tornar o Visual Studio mais
acessível para todos.

Use anotações para revelar informações úteis


sobre seu código
O editor do Visual Studio inclui vários "adornos" de texto que permitem saber as
características e os recursos em determinados pontos em uma linha de código, como
ícones de chave de fenda e lâmpada, "linhas sinuosas" de erros e avisos, indicadores e
assim por diante. Você pode usar o conjunto de comandos "Mostrar Anotações de
Linha" para ajudá-lo a descobrir esses adornos e, em seguida, navegar entre eles.

Acessar barras de ferramentas usando atalhos


de teclado
O Visual Studio IDE tem barras de ferramentas, assim como tem muitas janelas de
ferramentas. Os atalhos de teclado a seguir ajudam a acessá-las.

Recurso Descrição Atalho


de
teclado

Barras de Selecione o primeiro botão na barra de ferramentas Standard. Alt,


ferramentas Ctrl+Tab
do IDE
Recurso Descrição Atalho
de
teclado

Barras de Mova o foco para a barra de ferramentas em uma janela de Shift+Alt


ferramentas ferramentas.
da janela
de OBSERVAÇÃO: isso funciona para a maioria das janelas de ferramentas,
ferramentas mas somente quando o foco está em uma janela de ferramentas. Além
disso, você deve escolher a tecla SHIFT antes da tecla ALT. Em algumas
janelas de ferramentas, como a Team Explorer, você deve manter a
tecla SHIFT pressionada por um momento antes de escolher a tecla
ALT.

Barras de Acesse o primeiro item na barra de ferramentas Avançar (quando uma Ctrl+Tab
ferramentas barra de ferramentas tem foco).

Atalhos de teclado do Git


A barra de status do Visual Studio mostra controles pop-up para acesso rápido a vários
recursos do Git. Os atalhos de teclado a seguir ajudam a acessá-las.

Recurso Descrição Atalho de


teclado

Seletor de Exibir, gerenciar e fazer check-out de seletores em um Ctrl+Alt+F3


Ramificação repositório Git ativo.

Seletor de Exiba, gerencie e abra repositórios Git conhecidos pelo Ctrl+Alt+F4


Repositório Visual Studio.

Outros atalhos de teclado úteis


Alguns outros atalhos de teclado úteis estão indicados a seguir.

Recurso Descrição Atalho de


teclado

IDE Ativar e desativar o alto contraste. Alt


esquerdo+Shift
OBSERVAÇÃO: atalho de teclado padrão do Windows esquerdo+PrtScn

Caixa de Marque ou desmarque a opção da caixa de seleção em uma Barra de espaços


diálogo caixa de diálogo.

OBSERVAÇÃO: atalho de teclado padrão do Windows


Recurso Descrição Atalho de
teclado

Menus de Abra um menu de contexto (clique com o botão direito do Shift+F10


contexto mouse).

OBSERVAÇÃO: atalho de teclado padrão do Windows

Menus Acesse rapidamente um item de menu usando as teclas de Alt + [letra]


aceleração. Escolha a tecla Alt seguida pelas letras
sublinhadas em um menu para ativar o comando. Por
exemplo, para exibir a caixa de diálogo Abrir Projeto, no Visual
Studio, escolha Alt+F+O+P.

OBSERVAÇÃO: atalho de teclado padrão do Windows

Caixa de Usar o recurso de pesquisa no Visual Studio. Ctrl+Q


pesquisa

Janela caixa Mover-se entre guias da Caixa de ferramentas. Ctrl+Seta para


de cima
ferramentas
e

Ctrl+Seta para
baixo

Janela caixa Adicionar um controle da Caixa de ferramentas a um Enter


de formulário ou designer.
ferramentas

Caixa de Excluir uma combinação de teclas inserida na opção Backspace


diálogo Pressionar teclas de atalho.
Opções:
Teclado de
> ambiente

Janela de Abra a janela de ferramentas Notificações usando duas Ctrl+\, Ctrl+N


ferramentas combinações de teclas de atalho de teclado, uma seguida pela
Notificações outra. Em seguida, exiba uma notificação usando as teclas de
direção para selecioná-la.

Para obter uma lista completa, consulte Atalhos de teclado no Visual Studio.

7 Observação

As caixas de diálogo e os comandos do menu que você vê podem ser diferentes


dos descritos na Ajuda, dependendo da edição ou das configurações ativas.
Acessar notificações usando atalhos de teclado
Quando uma notificação aparece na IDE, você pode acessar a janela Notificações
usando atalhos de teclado da seguinte forma:

1. Em qualquer lugar na IDE, pressione estes dois atalhos de teclado em sequência,


um após o outro: Ctrl+\ e Ctrl+N.

A janela Notificações é aberta.

2. Use a tecla Tab ou as teclas de direção para selecionar uma notificação.

Atribuir indicações de áudio a eventos de


programa do Visual Studio
Começando com a versão 17.3 e continuando na versão 17.4& posterior, você pode
adicionar indicações de áudio para eventos de programa diretamente no Visual Studio.
Especificamente, você pode alternar uma configuração para que o Visual Studio
reproduza uma indicação de áudio quando o cursor no editor chega em uma linha com
um erro, ponto de interrupção ou aviso. Quando você exibe um arquivo no modo de
exibição Diff, o Visual Studio também pode executar uma indicação de áudio quando o
cursor chega em uma linha que foi adicionada ou removida.

Para adicionar a funcionalidade de indicação de áudio, acesse


Ferramentas>Opções>Editor de Texto>Geral e selecione a configuração Habilitar
indicações de áudio.

 Dica

Para saber mais sobre o percurso para adicionar indicações de áudio no Visual
Studio, confira a postagem no blog Escutar, o Visual Studio tem um novo recurso
que você precisa ouvir falar! .

No Visual Studio 2022 versão 17.2 e versões anteriores, você pode usar a Painel de
Controle de Som no Windows para atribuir indicações de áudio a eventos de programa
do Visual Studio. Especificamente, você pode atribuir dicas de áudio aos seguintes
eventos do programa:

Ocorrências de ponto de interrupção


Build cancelado
Build com falha
Build bem-sucedido

Veja como adicionar indicações de áudio a eventos de programa usando Windows 11


ou Windows 10.

Windows 11
1. Selecione o botão Iniciar em um computador executando Windows 11 e, na caixa
Pesquisar, digite Alterar sons do sistema.
2. Nos resultados da pesquisa, selecione a opção Painel de Controle para Alterar
sons do sistema. (Como alternativa, selecione o ícone Abrir no painel direito dos
resultados da pesquisa.)

3. Na caixa de diálogo Som, clique na guia Sons.

4. Em Eventos do Programa, role até Microsoft Visual Studio e, em seguida,


selecione os sons que você deseja aplicar aos eventos escolhidos.
5. Clique em OK.

Windows 10
1. Na caixa Pesquisar em um computador executando o Windows 10, digite Alterar
sons do sistema.

(Como alternativa, se você tiver habilitado a Cortana, diga "Ei Cortana" e, em


seguida, diga "Alterar sons do sistema".)

2. Clique duas vezes em Alterar sons do sistema.


3. Na caixa de diálogo Som, clique na guia Sons.

4. Em Eventos do Programa, role até Microsoft Visual Studio e, em seguida,


selecione os sons que você deseja aplicar aos eventos escolhidos.
5. Clique em OK.

Confira também
Definir opções de acessibilidade
Personalizar menus e barras de ferramentas no Visual Studio
Personalizar o IDE do Visual Studio
Acessibilidade (Visual Studio para Mac)
Acessibilidade da Microsoft
Aninhamento de arquivos no
Gerenciador de Soluções
Artigo • 17/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Gerenciador de Soluções aninha arquivos relacionados para ajudar a organizá-los e


torná-los mais fáceis de localizar. Por exemplo, se você adicionar um formulário do
Windows Forms a um projeto, o arquivo de código do formulário será aninhado abaixo
do formulário no Gerenciador de Soluções. Em projetos do .NET Core (e do .NET 5 e
posterior), o aninhamento de arquivos pode ser levado um passo adiante. Você pode
escolher entre as predefinições de aninhamento de arquivo Desativado, Padrão e Web.
Você também pode personalizar como os arquivos são aninhados ou criar
configurações específicas de projeto e da solução.

7 Observação

No Visual Studio 2022 versão 17.2 e anteriores, esse recurso só tinha suporte para
projetos do ASP.NET Core. Na versão 17.3 e posterior, os projetos direcionados ao
.NET são compatíveis com aninhamento de arquivos.

Opções de aninhamento de arquivos

As opções disponíveis para o aninhamento não personalizado de arquivos são:

Desativado: essa opção fornece uma lista plana de arquivos sem nenhum
aninhamento.

Padrão: essa opção fornece o comportamento padrão do aninhamento de


arquivos no Gerenciador de Soluções. Se não houver nenhuma configuração para
um tipo de projeto fornecido, nenhum arquivo do projeto será aninhado. Se
houver configurações, por exemplo, para um projeto Web, o aninhamento será
aplicado.

Web: essa opção aplica o comportamento Web de aninhamento de arquivos a


todos os projetos da solução atual. Ela tem várias regras. Por isso, incentivamos
você a conferi-la e enviar-nos sua opinião. A seguinte captura de tela destaca
apenas alguns exemplos do comportamento de aninhamento de arquivos obtidos
com essa opção:

Personalizar o aninhamento de arquivos


Caso não goste das configurações prontas para uso, crie suas próprias configurações
personalizadas de aninhamento de arquivos que instruem o Gerenciador de Soluções
em como aninhar arquivos. Adicione quantas configurações personalizadas de
aninhamento de arquivos desejar e alterne entre elas, conforme desejado. Para criar
uma configuração personalizada, comece com um arquivo vazio ou use as
configurações Web como ponto de partida:
Recomendamos que você use as configurações Web como ponto de partida porque é
mais fácil trabalhar com algo que já funciona. Se você usar as configurações Web como
ponto de partida, o arquivo .filenesting.json será semelhante ao seguinte arquivo:

Vamos nos concentrar no nó dependentFileProviders e em seus nós filho. Cada nó filho


é um tipo de regra que pode ser usado pelo Visual Studio para aninhar arquivos. Por
exemplo, ter o mesmo nome de arquivo, mas uma extensão diferente é um tipo de
regra. As regras disponíveis são:

extensionToExtension: use esse tipo de regra para aninhar file.js em file.ts

fileSuffixToExtension: use esse tipo de regra para aninhar file-vsdoc.js em file.js

addedExtension: use esse tipo de regra para aninhar file.html.css em file.html

pathSegment: use esse tipo de regra para aninhar jquery.min.js em jquery.js

allExtensions: use esse tipo de regra para aninhar file.* em file.js

fileToFile: use esse tipo de regra para aninhar bower.json em .bowerrc


O provedor extensionToExtension
Esse provedor permite que você defina regras de aninhamento de arquivos usando
extensões de arquivo específicas. Considere o seguinte exemplo:

cart.js é aninhado em cart.ts devido à primeira regra de extensionToExtension

cart.js não é aninhado em cart.tsx porque .ts antecede .tsx nas regras, e pode haver
apenas um pai

light.css é aninhado em light.sass devido à segunda regra de extensionToExtension


home.html é aninhado em home.md devido à terceira regra de
extensionToExtension

O provedor fileSuffixToExtension
Esse provedor funciona da mesma maneira que o provedor extensionToExtension, com
a única diferença que a regra examina o sufixo do arquivo em vez de apenas a extensão.
Considere o seguinte exemplo:

portal-vsdoc.js é aninhado em portal.js devido à regra de fileSuffixToExtension

todos os outros aspectos da regra funcionam da mesma maneira que


extensionToExtension

O provedor addedExtension
Esse provedor aninha arquivos com uma extensão adicional no arquivo sem uma
extensão adicional. A extensão adicional só pode ser exibida ao final do nome de
arquivo completo.

Considere o seguinte exemplo:


file.html.css é aninhado em file.html devido à regra de addedExtension

7 Observação

Você não especifica nenhuma extensão de arquivo para a regra addedExtension ; ela
automaticamente se aplica a todas as extensões de arquivo. Ou seja, qualquer
arquivo com o mesmo nome e extensão que outro arquivo mais uma extensão
adicional no final é aninhado no outro arquivo. Você não pode limitar o efeito
desse provedor apenas as extensões de arquivo específicas.

O provedor pathSegment
Esse provedor aninha arquivos com uma extensão adicional em um arquivo sem uma
extensão adicional. A extensão adicional só pode ser exibida no meio do nome de
arquivo completo.

Considere o seguinte exemplo:


jquery.min.js é aninhado em jquery.js devido à regra de pathSegment

7 Observação

Se você não especificar nenhuma extensão de arquivo para a regra


pathSegment ; ela se aplica a todas as extensões de arquivo. Ou seja, qualquer

arquivo com o mesmo nome e extensão que outro arquivo mais uma
extensão adicional no meio é aninhado no outro arquivo.

Você pode limitar o efeito da regra pathSegment às extensões de arquivo


específicas, especificando-as da seguinte maneira:

JSON

"pathSegment": {
"add": {
".*": [
".js",
".css",
".html",
".htm"
]
}
}

O provedor allExtensions
Esse provedor permite que você defina regras de aninhamento de arquivos para
arquivos com qualquer extensão, exceto o mesmo nome de arquivo base. Considere o
seguinte exemplo:

template.cs e template.doc são aninhados em template.tt devido à regra de


allExtensions.

O provedor fileToFile
Esse provedor permite que você defina regras de aninhamento de arquivos com base
em nomes de arquivo inteiros. Considere o seguinte exemplo:
.bowerrc é aninhado em bower.json devido à regra de fileToFile

Ordem das regras


A ordenação é importante em todas as partes do arquivo de configurações
personalizadas. Altere a ordem na qual as regras são executadas movendo-as para cima
ou para baixo dentro do nó dependentFileProvider. Por exemplo, se você tem uma
regra que torna file.js o pai de file.ts e outra regra que torna file.coffee o pai de file.ts, a
ordem na qual elas são exibidas no arquivo determina o comportamento de
aninhamento quando todos os três arquivos estão presentes. Como file.ts só pode ter
um pai, a regra executada primeiro vence.

A ordenação também é importante para as próprias seções de regra, não apenas para
os arquivos dentro de uma seção. Assim que é encontrada uma correspondência entre
um par de arquivos e uma regra de aninhamento de arquivo, outras regras posteriores
no arquivo são ignoradas e o próximo par de arquivos é processado.

Botão de aninhamento de arquivos


Gerencie todas as configurações, incluindo suas próprias configurações personalizadas,
por meio do mesmo botão no Gerenciador de Soluções:
Criar configurações específicas do projeto
É possível criar configurações específicas para um projeto e para uma solução por meio
do menu do clique com o botão direito (menu de contexto) de cada solução e projeto:

As configurações específicas a um projeto e uma solução são combinadas com as


configurações ativas do Visual Studio. Por exemplo, você pode ter um arquivo de
configurações específicas a um projeto em branco, mas o Gerenciador de Soluções
ainda pode estar aninhando arquivos. O comportamento de aninhamento é obtido das
configurações específicas a uma solução ou das configurações do Visual Studio. A
precedência para mesclagem das configurações de aninhamento de arquivos é: Visual
Studio > Solução > Projeto.

Você pode instruir o Visual Studio a ignorar as configurações específicas a um projeto e


uma solução, mesmo se os arquivos existem em disco, habilitando a opção Ignorar
configurações de solução e projeto em Ferramentas>Opções>ASP.NET
Core>Aninhamento de Arquivos.

Faça o oposto e instrua o Visual Studio a usar somente as configurações específicas a


um projeto ou uma solução definindo o nó root como true. O Visual Studio interrompe
a mesclagem de arquivos nesse nível e não os combina com arquivos de um nível
superior na hierarquia.

É possível fazer check-in das configurações específicas a um projeto e uma solução no


controle do código-fonte, e toda a equipe que trabalha na base de código pode
compartilhá-las.

Desabilitar regras de aninhamento de arquivo


para um projeto
Desabilite as regras globais existentes de aninhamento de arquivos para soluções ou
projetos específicos usando a ação remover para um provedor, em vez de adicionar.
Por exemplo, se você adicionar o seguinte código de configurações a um projeto, todas
as regras de pathSegment que possam existir globalmente para esse projeto específico
serão desabilitadas:

JSON

"dependentFileProviders": {
"remove": {
"pathSegment": {}
}
}

Confira também
Personalizar o IDE
Soluções e projetos no Visual Studio
Personalizar a inicialização
Artigo • 16/01/2024

Você pode personalizar a experiência de inicialização do Visual Studio de várias


maneiras diferentes, como abrir a solução mais recente ou apenas um ambiente de
desenvolvimento vazio.

Para alterar o item de inicialização


1. Na barra de menus, selecione Ferramentas>Opções.

2. Expanda Ambiente e selecione Geral.

3. Na lista Na inicialização, abrir, selecione o que deve acontecer depois que o Visual
Studio é iniciado. Escolha entre janela Iniciar (onde você pode abrir um projeto
novo ou existente), Solução mais recente ou Ambiente vazio.
Suporte para idiomas bidirecionais no
Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio pode exibir um texto em árabe e hebraico corretamente e permite que
você insira o texto bidirecional para valores e nomes de objeto.

7 Observação

Para inserir e exibir idiomas bidirecionais, você precisa trabalhar com uma versão
do Windows que está configurada com o idioma apropriado. Essa pode ser uma
versão em inglês do Windows com o pacote de idioma apropriado instalado, ou a
versão localizada do Windows.

Recursos totalmente compatíveis


Em tempo de design no Visual Studio, você pode usar idiomas bidirecionais ao inserir
texto, nomear objetos e salvar e abrir arquivos.

Entrada de texto
O Visual Studio dá suporte ao Unicode; portanto, se o sistema estiver definido com a
localidade e o idioma de entrada apropriados, será possível inserir texto em árabe ou
hebraico. (O suporte para árabe inclui Kashida e Sinais Diacríticos.)

Nomes de objeto em árabe ou hebraico


Use idiomas bidirecionais para atribuir nomes a soluções, projetos, arquivos, pastas e
assim por diante. No código, use idiomas bidirecionais para os nomes de variáveis,
classes, objetos, atributos, metadados e outros elementos. Ao trabalhar com o árabe, é
possível usar qualquer caractere árabe, incluindo Kashida e Sinais Diacríticos.

Os seguintes elementos podem ser nomeados usando o árabe ou o hebraico e são


manipulados corretamente pelo Visual Studio:

Nomes de solução, projeto e arquivo, incluindo as pastas incluídas no caminho do


projeto.
O Gerenciador de Soluções exibe os nomes de elemento e de solução
corretamente.

Conteúdo do arquivo.

É possível abrir ou salvar arquivos com a codificação Unicode ou com uma página
de código selecionada.

Elementos de dados.

O Gerenciador de Servidores exibe esses elementos corretamente e você pode


editá-los.

Elementos copiados para a Área de Transferência do Windows.

Atributos e metadados.

Valores de propriedade.

É possível usar um texto em árabe ou hebraico na janela Propriedades. A janela


permite mudar entre o sentido de leitura da direita para a esquerda e da esquerda
para a direita usando pressionamentos de tecla padrão do Windows (Ctrl+Shift
Direita para direita para a esquerda e Ctrl+Shift Esquerda para esquerda para a
direita).

Código e texto literal.

No editor de código, é possível usar o árabe ou o hebraico para nomear classes,


funções, variáveis, propriedades, literais de cadeia de caracteres, atributos e assim
por diante. No entanto, o editor não dá suporte ao sentido de leitura da direita
para a esquerda; o texto sempre começa na margem esquerda.

 Dica

Você deve colocar literais de cadeia de caracteres em arquivos de recurso, em


vez de fazer hard-coding nos programas. Para saber mais, veja Recursos em
aplicativos da área de trabalho (.NET Framework).

7 Observação

Você deve ser consistente na forma como se refere aos objetos nomeados em
árabe e hebraico. Por exemplo, se você usar Kashida ao nomear uma variável
em árabe, deverá sempre usar Kashida ao se referir a essa variável; caso
contrário, ocorrerão erros.
Comentários sobre o código. É possível criar comentários em árabe ou hebraico.
Você também pode usar esses idiomas na ferramenta de construtor de
comentários.

Codificação de arquivo
É possível salvar e abrir arquivos com uma codificação Unicode ou específica a um
idioma. Para saber mais, confira Como salvar e abrir arquivos com codificação.

Sentido de leitura da direita para a esquerda


O Visual Studio tem suporte limitado para o sentido de leitura da direita para a
esquerda. Por padrão, os controles de entrada de texto no Visual Studio usam o sentido
de leitura da esquerda para a direita. Na maioria dos casos, é possível usar gestos do
Windows padrão para mudar o sentido de leitura. Por exemplo, é possível pressionar
Ctrl+Shift Direita para mudar para a janela Propriedades para dar suporte ao sentido
de leitura da direita para a esquerda em valores da propriedade.

Não há suporte para o sentido de leitura da direita para a esquerda nos seguintes locais
do Visual Studio:

Caixas de seleção, listas suspensas e outros controles em caixas de diálogo do


Visual Studio sempre usam o sentido de leitura da esquerda para a direita.

O editor de código (e o editor de texto) não dão suporte ao sentido de leitura da


direita para a esquerda. Insira o texto em um idioma bidirecional, mas com o
sentido de leitura sempre sendo da esquerda para a direita.

Confira também
Desenvolver aplicativos localizados e globalizados
Localizar, instalar e gerenciar extensões
para o Visual Studio
Artigo • 23/06/2023

Extensões são pacotes de código executados dentro do Visual Studio e fornecem


recursos novos ou aprimorados. As extensões podem ser controles, exemplos, modelos,
ferramentas ou outros componentes que adicionam funcionalidade ao Visual Studio,
por exemplo, do Live Share ou do GitHub Copilot .

Para obter informações sobre como criar extensões do Visual Studio, confira SDK do
Visual Studio. Para obter informações sobre como usar extensões, confira a página de
extensão individual no Visual Studio Marketplace . E para obter informações sobre
como encontrar extensões, confira a postagem no blog Onde estão minhas extensões
favoritas no Visual Studio 2022?

7 Observação

Para saber mais sobre um novo modelo de extensibilidade atualmente em versão


prévia, confira a postagem no blogCriar Extensões Melhores com
VisualStudio.Extensibility (Versão Prévia 3) .

Usar a caixa de diálogo Gerenciar Extensões


No IDE do Visual Studio, a caixa de diálogo Gerenciar Extensões é a ferramenta usada
para localizar, instalar e gerenciar extensões do Visual Studio. Para abrir a caixa de
diálogo Gerenciar Extensões, escolha Extensões>Gerenciar Extensões. Ou digite
Extensões na caixa de pesquisa e selecione Gerenciar Extensões.
O painel à esquerda categoriza as extensões entre aquelas que estão instaladas, as que
estão disponíveis no Visual Studio Marketplace (Online) e aquelas que têm atualizações
disponíveis. O Gerenciador de Extensões de Roaming mantém uma lista de todas as
extensões do Visual Studio você instalou em qualquer computador ou instância do
Visual Studio. Ele foi projetado para permitir que você encontre suas extensões favoritas
com mais facilidade.

Encontrar e instalar extensões


Você pode instalar extensões do Visual Studio Marketplace ou da caixa de diálogo
Gerenciar Extensões no Visual Studio.

Para instalar extensões de dentro do Visual Studio:

1. Em Extensões>Gerenciar Extensões, localize a extensão que você deseja instalar.


Se você souber o nome ou parte do nome da extensão, será possível pesquisar na
janela Pesquisar.

2. Selecione Baixar.

Após a conclusão do download, você verá uma notificação na parte inferior da caixa de
diálogo Gerenciar Extensões : "A extensão está agendada para instalação. Sua extensão
será instalada após todas as instâncias do Visual Studio terem sido fechadas."

Se você tentar instalar uma extensão que tenha dependências, o instalador verificará se
elas já foram instaladas. Se elas não tiverem sido instaladas, a caixa de diálogo
Gerenciar Extensões listará as dependências que devem ser instaladas para que seja
possível instalar a extensão.

Instalar sem usar a caixa de diálogo Gerenciar Extensões


Extensões que foram empacotadas em arquivos .vsix podem estar disponíveis em locais
diferentes do Visual Studio Marketplace. A caixa de diálogo Extensões>Gerenciar
Extensões não pode detectar esses arquivos, mas é possível instalar um arquivo .vsix
clicando duas vezes no arquivo ou selecionando-o e pressionando Enter. Depois disso,
basta seguir as instruções. Depois que a extensão for instalada, será possível usar a caixa
de diálogo Gerenciar Extensões para habilitá-la, desabilitá-la ou desinstalá-la.

7 Observação

O Visual Studio Marketplace contém extensões VSIX e MSI. A caixa de diálogo


Gerenciar Extensões não pode habilitar ou desabilitar extensões baseadas em
MSI.
Se uma extensão baseada em MSI incluir um arquivo extension.vsixmanifest, a
extensão será exibida na caixa de diálogo Gerenciar Extensões.
Desinstalar ou desabilitar uma extensão
Se desejar parar de usar uma extensão, você poderá desabilitá-la ou desinstalá-la. A
desabilitação de uma extensão a mantém instalada, mas descarregada. Localize a
extensão e selecione Desinstalar ou Desabilitar. Reinicie o Visual Studio para
descarregar uma extensão desabilitada.

7 Observação

Você pode desabilitar extensões VSIX, mas não extensões que foram instaladas
usando um MSI. As extensões instaladas por MSI só podem ser desinstaladas.

Gerenciar extensões
Se você gerencia extensões para uma organização ou quer saber mais sobre
atualizações automáticas de extensão, notificações sobre falta de resposta e muito mais,
você está no lugar certo.

Extensões administrativas e por usuário


A maioria das extensões são por usuário e são instaladas na pasta
%LocalAppData%\Microsoft\VisualStudio\<versão do Visual Studio>\Extensions\.
Algumas extensões são administrativas e são instaladas na pasta <pasta de instalação do
Visual Studio>\Common7\IDE\Extensions\.

Para proteger seu sistema contra extensões que podem conter erros ou código mal-
intencionado, você pode restringir extensões por usuário para carregar somente quando
o Visual Studio é executado com permissões normais de usuário. Isso significa que as
extensões por usuário são desabilitadas quando o Visual Studio é executado com
permissões elevadas.

Para restringir quando as extensões por usuário são carregadas:

1. Abra a página de opções de extensões


(Ferramentas>Opções>Ambiente>Extensões).

2. Desmarque a caixa de seleção Carregar extensões por usuário ao executar como


administrador.

3. Reinicie o Visual Studio.


Atualizações automáticas de extensão
As extensões são atualizadas automaticamente quando uma nova versão está disponível
no Visual Studio Marketplace. A nova versão da extensão é detectada e instalada em
segundo plano. Na próxima vez que você abrir o Visual Studio, a nova versão da
extensão será executada.

Se você desejar desabilitar as atualizações automáticas, poderá desabilitar o recurso


para todas as extensões ou somente para extensões específicas.

Para desabilitar as atualizações automáticas para todas as extensões, escolha o link


Alterar as configurações de Extensões na caixa de diálogo
Ferramentas>Gerenciar Extensões. Na caixa de diálogo Opções, desmarque a
opção Atualizar extensões automaticamente.

Para desabilitar as atualizações automáticas de uma extensão específica,


desmarque a opção Atualizar automaticamente essa extensão no painel de
detalhes da extensão do lado direito da caixa de diálogo Gerenciar Extensões.

Notificações de falha e falta de resposta


O Visual Studio notifica você se ele suspeita de que uma extensão estava envolvida em
uma falha durante uma sessão anterior. Quando o Visual Studio falhar, ele armazenará a
pilha de exceção. Na próxima vez em que o Visual Studio for iniciado, ele examinará a
pilha, começando com a folha e funcionando em direção à base. Se o Visual Studio
determinar que um quadro pertence a um módulo que faz parte de uma extensão
instalada e habilitada, ele mostra uma notificação.

O Visual Studio também notifica você se ele suspeita de que uma extensão é
responsável por uma interface do usuário sem resposta.

Quando essas notificações forem exibidas, você poderá ignorar a notificação ou


executar uma das seguintes ações:

Escolha Desabilitar esta extensão. O Visual Studio desabilita a extensão e permite


que você saiba se precisa reiniciar o sistema para a desabilitação entrar em vigor.
Você poderá habilitar a extensão novamente na caixa de diálogo
Extensões>Gerenciar Extensões se desejar.

Escolha Nunca mostrar essa mensagem novamente.


Se a notificação for sobre uma falha em uma sessão anterior, o Visual Studio
não mostrará mais uma notificação quando uma falha associada a essa
extensão ocorrer. O Visual Studio ainda mostrará notificações quando a falta de
resposta puder ser associada a essa extensão, ou para falhas ou falta de
resposta que possam ser associadas a outras extensões.
Se a notificação for sobre a falta de resposta, o IDE (ambiente de
desenvolvimento integrado) não mostrará mais uma notificação quando essa
extensão for associada à falta de resposta. O Visual Studio ainda mostrará
notificações relacionadas à falha para essa extensão, e notificações relacionadas
a falhas e falta de resposta para outras extensões.

Escolha Saiba mais para navegar para esta página.

Escolha o botão X no final da notificação para ignorar a notificação. Uma nova


notificação será exibida para instâncias futuras da extensão que está sendo
associada a uma falha ou falta de resposta da interface do usuário.

7 Observação

Uma notificação de falha ou de falta de resposta da interface do usuário significa


apenas que um dos módulos de extensão estava na pilha quando a interface do
usuário ficou sem resposta ou quando a falha ocorreu. Isso não significa
necessariamente que a extensão em si seja a culpada. É possível que a extensão
tenha chamado um código que faz parte do Visual Studio, que por sua vez resultou
em uma falha ou interface do usuário sem resposta. No entanto, a notificação
ainda poderá ser útil se a extensão que causou a falta de resposta ou a falha da
interface do usuário não for importante para você. Nesse caso, desabilitar a
extensão evita que a falta de resposta da IU ou a falha ocorra no futuro, sem afetar
sua produtividade.

Exemplos
Quando você instala um exemplo online, a solução é armazenada em dois locais:

Uma cópia funcional é armazenada no local que você especificou quando criou o
projeto.

Uma cópia mestra separada é armazenada em seu computador.

É possível usar a caixa de diálogo Extensões>Gerenciar Extensões para executar estas


tarefas relacionadas a amostras:

Listar as cópias mestras dos exemplos que você instalou.

Desabilitar ou desinstalar a cópia mestra de um exemplo.


Instale os Pacotes de Exemplos, que são coleções de exemplos que se relacionam
a uma tecnologia ou um recurso.

Instalar exemplos online individuais.

Exibir notificações de atualização quando as alterações do código-fonte são


publicadas para exemplos instalados.

Atualize a cópia mestra de um exemplo instalado quando houver uma notificação


de atualização.

Conteúdo relacionado
SDK do Visual Studio
Página Visual Studio Extensibility.
Visual Studio Marketplace
Suporte para o SDK do Visual Studio
Gerenciar ferramentas externas
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode chamar ferramentas externas de dentro do Visual Studio usando o menu
Ferramentas. Algumas ferramentas padrão estão disponíveis no menu Ferramentas, e
você pode personalizar o menu adicionando outros executáveis de sua preferência.

Ferramentas disponíveis no menu Ferramentas


O menu Ferramentas contém vários comandos internos, incluindo:

Gerenciador de snippets de código para Organizar snippets de código


Personalizar para Personalizar menus e barras de ferramentas
Opções para Definir várias opções diferentes para o IDE do Visual Studio e outras
ferramentas

Adicionar novas ferramentas ao menu


Ferramentas
É possível adicionar uma ferramenta externa para aparecer no menu Ferramentas.

1. Abra a caixa de diálogo Ferramentas Externas, escolhendo


Ferramentas>Ferramentas Externas.

2. Clique em Adicionar e preencha as informações. Por exemplo, a seguinte entrada


faz com que o Windows Explorer seja aberto no diretório do arquivo que está
aberto no Visual Studio no momento:

Título: Open File Location

Comando: explorer.exe

Argumentos: /root, "$(ItemDir)"


Esta é uma lista completa de argumentos que podem ser usados ao definir uma
ferramenta externa:

Nome Argumento Descrição

Caminho de item $(ItemPath) O nome de arquivo completo do arquivo atual


(unidade + caminho + nome de arquivo).

Diretório do item $(ItemDir) O diretório do arquivo atual (unidade + caminho).

Nome de arquivo $(ItemFilename) O nome do arquivo atual.


de item

Extensão de item $(ItemExt) A extensão de nome de arquivo do arquivo atual.

Linha atual $(CurLine) A posição da linha atual do cursor na janela de


código.

Coluna atual $(CurCol) A posição da coluna atual do cursor na janela de


código.

Texto atual $(CurText) O texto selecionado.

Caminho de $(TargetPath) O nome de arquivo completo do item a ser criado


destino (unidade + caminho + nome de arquivo).
Nome Argumento Descrição

Diretório de $(TargetDir) O diretório do item a ser criado.


destino

Nome de destino $(TargetName) O nome de arquivo do item a ser criado.

Extensão de $(TargetExt) A extensão de nome de arquivo do item a ser criada.


destino

Diretório binário $(BinDir) O local final do binário que está sendo criado
(definido como unidade + caminho).

Diretório do $(ProjectDir) O diretório do projeto atual (unidade + caminho).


projeto

Nome de arquivo $(ProjectFileName) O nome de arquivo do projeto atual.


do projeto

Diretório da $(SolutionDir) O diretório da solução atual (unidade + caminho).


solução

Nome de arquivo $(SolutionFileName) O nome de arquivo da solução atual.


da solução

7 Observação

A barra de status do IDE exibe as variáveis Linha Atual e Coluna Atual para indicar
a localização do ponto de inserção no Editor de Códigos ativo. A variável Texto
Atual retorna o texto ou o código selecionado nesse local.

Confira também
Ferramentas de build do C/C++
Entre ou alterne entre as contas de
usuário do Visual Studio
Artigo • 08/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá a entrar no Visual Studio, adicionar e alternar entre contas
de usuário, atualizar seu perfil, sair da sua conta e os benefícios de estar conectado. Se
quiser saber como usar várias contas para entradas, consulte nosso artigo, Acessar
várias contas associadas à conta de entrada do Visual Studio.

Você pode obter suporte a assinaturas e pesquisar as perguntas frequentes sobre


assinaturas, contas e cobrança na nossa página de suporte de assinaturas .

Entre em sua conta


Você pode entrar na sua conta Microsoft ou organizacional. Para adicionar outra conta,
consulte Adicionar e alternar contas de usuário.

1. Inicie o Visual Studio. Ao abrir o Visual Studio pela primeira vez, será solicitado que
você entre e forneça algumas informações básicas de registro.

7 Observação
Se você optar por não entrar quando abrir o Visual Studio pela primeira vez,
será fácil fazê-lo mais tarde. Procure o link Entrar no canto superior direito do
ambiente do Visual Studio.

2. Escolha uma conta microsoft ou uma conta corporativa ou de estudante. Se você


não tiver uma, poderá criar uma conta da Microsoft gratuitamente .

3. Escolha o tema de cor preferido e outras configurações de interface do usuário. O


Visual Studio se lembra essas configurações e sincroniza-as em todos os
ambientes do Visual Studio nos quais você entrou. Você poderá alterar as
configurações mais tarde, ao abrir o menu Ferramentas>Opções no Visual Studio.

Você pode ver que está conectado com êxito no canto superior direito do ambiente do
Visual Studio. A menos que você se desconecte, você será conectado automaticamente
ao Visual Studio sempre que o iniciar, e todas as alterações nas configurações
sincronizadas são aplicadas automaticamente.

Benefícios: por que entrar?


Embora você não precise entrar, há muitas vantagens em fazê-lo.

ノ Expand table

Benefício Descrição

Estender o período de Usar o Visual Studio Professional ou o Visual Studio Enterprise por
avaliação do Visual Studio um período adicional de 90 dias, em vez ficar limitado ao período
de avaliação gratuita de 30 dias.

Desbloquear o Visual Desbloquear o Visual Studio se você usar uma conta associada a
Studio uma Assinatura do Visual Studio ou a uma organização do Azure
DevOps.

Sincronizar suas As configurações que você personaliza, como associações de teclas,


configurações layout da janela e tema de cores, são aplicadas imediatamente
quando você entra no Visual Studio em qualquer dispositivo.

Conectar-se aos serviços Conectar-se a serviços, como o Azure e o Azure DevOps Services no
do Azure automaticamente IDE sem solicitar credenciais da mesma conta novamente.

Usar a edição Community Embora não seja necessário entrar, você poderá receber
sem interrupções periodicamente solicitações para entrar se ainda não tiver feito isso.
Entre no IDE para continuar usando Visual Studio Community sem
interrupções.
Benefício Descrição

Obter 'Visual Studio Dev Este programa inclui software gratuito, treinamento, suporte e
Essentials' muito mais.

Adicionar e alternar entre as contas de usuário


no Visual Studio
Se você tem várias contas, é possível adicionar todas elas no Visual Studio para acessar
os recursos de qualquer conta sem a necessidade de entrar nas contas separadamente.

Após adicionar várias contas em um computador, esse grupo de contas se moverá com
você se você entrar no Visual Studio em outro computador. Entretanto, as credenciais
da sua conta não usam perfil móvel; portanto, será solicitado que você insira as
credenciais dessas outras contas na primeira vez que tentar utilizar os recursos delas em
um novo computador.

Existem vários tipos de contas que você pode adicionar:

Adicione uma conta padrão do Visual Studio:

1. Selecione o ícone com o nome do seu perfil no canto superior direito do


ambiente do Visual Studio.
2. Selecione Adicionar outra conta e escolha uma conta para entrar.
3. Na página Entrar em sua conta, selecione a conta ou escolha Usar outra
conta.
4. Siga as solicitações para ingressar as credenciais da nova conta.

Adicionar uma conta do GitHub

Adicionar uma conta MFA (autenticação multifator)

Atualizar o perfil da sua conta


1. Vá para Arquivo > Configurações da Conta... e escolha o link Gerenciar Perfil do
Visual Studio.
2. Na janela do navegador, selecione Editar perfil e altere as configurações
desejadas.
3. Quando terminar, selecione Salvar alterações.
Acessar várias contas associadas à conta
de entrada do Visual Studio
Artigo • 09/01/2024

Neste artigo, você aprenderá a acessar várias contas de usuário no Visual Studio. Depois
de entrar no Visual Studio com uma conta da Microsoft ou organizacional, você poderá
ver os recursos acessíveis de suas contas em locais como a caixa de diálogo Adicionar
Serviço Conectado, Gerenciador de Servidores e Team Explorer.

Os serviços do Azure, do Application Insights, do Azure DevOps e do Microsoft 365 dão


suporte à experiência de conexão simplificada.

Acessar sua conta do Azure através da caixa de


diálogo Adicionar Serviço Conectado
1. Abra um projeto existente ou crie um projeto.

2. Escolha o nó do projeto em Gerenciador de Soluções e clique com o botão direito


do mouse e selecione Adicionar>Serviço Conectado.

A janela Serviços Conectados será exibida e mostrará a lista de serviços da conta


do Azure associados à sua conta de personalização do Visual Studio. Você não
precisa entrar separadamente no Azure. No entanto, você precisará entrar nas
outras contas na primeira vez que tentar acessar os recursos delas em outro
computador.

Acessar o Microsoft Entra ID em um projeto


Web
O Microsoft Entra ID habilita o suporte ao logon único do usuário final em aplicativos
Web ASP.NET MVC ou na autenticação do AD em serviços de API Web. A autenticação
de domínio é diferente da autenticação de conta de usuário individual. Os usuários que
têm acesso ao domínio do Active Directory podem as respectivas contas existentes do
Microsoft Entra para se conectarem aos seus aplicativos Web. Os aplicativos do
Microsoft 365 também podem usar a autenticação de domínio.

Para ver esse cenário em ação:

1. Crie um novo projeto de aplicativo Web do ASP.NET Core.


2. Na página Informações adicionais, escolha .NET 8.0 na lista suspensa da Estrutura
de destino.
3. Escolha um tipo de autenticação na lista suspensa Tipo de autenticação.

Identidade: suporte de proxy para contas com


suporte do Microsoft Entra
O Visual Studio agora pode detectar quando os usuários estão atrás de um proxy e
solicitar proativamente credenciais de proxy ao adicionar contas da Microsoft (MSA) ou
contas corporativas ou de estudante (WSA) ao Visual Studio.

As credenciais de proxy são armazenadas no Gerenciador de Credenciais do Windows e


são usadas conforme necessário para concluir operações relacionadas à identidade.

7 Observação

Se o servidor proxy for iniciado ou alterado após abrir o Visual Studio, a caixa de
diálogo Configurações da Conta mostrará um aviso, mas você precisará reiniciar o
Visual Studio para obter o prompt de credenciais de proxy.
Entrar no Visual Studio com contas que
exigem MFA (autenticação multifator)
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Neste artigo, você aprenderá a usar o Visual Studio com contas que exigem MFA
(autenticação multifator).

Por que habilitar políticas de MFA?


Ao colaborar com usuários convidados externos, é uma boa ideia proteger seus
aplicativos e dados com políticas de AC (acesso condicional), como a MFA
(autenticação multifator).

Depois de habilitados, os usuários convidados precisarão de mais do que apenas um


nome de usuário e uma senha para acessar seus recursos e precisarão atender a
requisitos de segurança adicionais. As políticas de MFA podem ser impostas no nível do
locatário, aplicativo ou usuário convidado individual, da mesma maneira que podem ser
habilitadas para membros da sua própria organização.

Como a experiência do Visual Studio é afetada


pelas políticas de MFA?
Versões do Visual Studio anteriores à 16.6 podem ter experiências de autenticação
degradadas quando usadas com contas que habilitaram políticas de AC, como a MFA, e
estão associadas a dois ou mais locatários.

Esses problemas podem fazer com que sua instância do Visual Studio solicite a
reautenticação várias vezes por dia. Talvez seja necessário inserir novamente suas
credenciais para locatários autenticados anteriormente, mesmo durante a mesma sessão
do Visual Studio.

Usando o Visual Studio com políticas de MFA


Você pode acessar recursos protegidos por políticas de AC, como MFA no Visual Studio.
Para usar esse fluxo de trabalho aprimorado, você precisará optar por usar o navegador
da Web padrão do seu sistema ou o agente de autenticação do Windows (disponível no
Visual Studio versão 17.5, mas recomendamos usar o Visual Studio versão 17.7 para uma
experiência ideal) como mecanismo para adicionar e reautenticar contas do Visual
Studio.

2 Aviso

Deixar de usar esse fluxo de trabalho pode gerar uma experiência degradada,
resultando em vários prompts de autenticação adicionais ao adicionar ou
autenticar novamente contas do Visual Studio.

Habilitando o agente de autenticação do Windows

7 Observação

O Gerenciador de Contas da Web (WAM) está disponível apenas no Windows 10 e


superior, bem como no Windows Server 2019 e superior.

Para habilitar esse fluxo de trabalho, vá para a caixa de diálogo Opções do Visual Studio
(Opções > Ferramentas…), selecione a guia Contas e, em seguida, selecione Agente de
autenticação do Windows no menu suspenso Adicionar e reautenticar contas usando:.

O agente de autenticação do Windows usa o Gerenciador de Contas da Web (WAM) e


oferece muitos benefícios, como segurança, suporte aprimorado a MFA e integração
perfeita entre contas adicionadas ao sistema operacional e ao Visual Studio.

Habilitando o navegador da Web do sistema

7 Observação

Para obter a melhor experiência, recomendamos que você limpe os dados do


navegador da Web padrão do sistema antes de prosseguir com esse fluxo de
trabalho. Além disso, se você tiver contas corporativas ou de estudante em suas
configurações do Windows 10, em Acessar trabalho ou escola, verifique se elas
estão autenticadas corretamente.

Para habilitar esse fluxo de trabalho, vá para a caixa de diálogo Opções do Visual Studio
(Opções > Ferramentas…), selecione a guia Contas e selecione Navegador da Web do
sistema no menu suspenso Adicionar e reautenticar contas usando:.

Entrar em contas adicionais com políticas de MFA


Agente de autenticação do Windows

Depois que o fluxo de trabalho do agente de autenticação do Windows estiver


habilitado, você poderá entrar ou adicionar contas ao Visual Studio como faria
normalmente, por meio da caixa de diálogo Configurações da Conta (Arquivo >
Configurações da Conta…). O Gerenciador de Contas da Web (WAM) simplifica a
experiência de entrada, permitindo que os usuários façam registrem com contas
conhecidas do Windows, como a conta conectada à sua sessão do Windows.
Navegador da Web do sistema

Depois que o fluxo de trabalho do navegador da Web do sistema for habilitado, você
poderá entrar ou adicionar contas ao Visual Studio como faria normalmente, por meio
da caixa de diálogo Configurações da Conta (Arquivo > Configurações da Conta...).
Essa ação abrirá o navegador da Web padrão do sistema, solicitará que você entre em
sua conta e validará qualquer política de MFA necessária.

Durante o processo de entrada, você pode receber um prompt adicional solicitando que
permaneça conectado. Esse prompt provavelmente aparecerá na segunda vez que uma
conta for usada para entrar. Para minimizar a necessidade de inserir novamente as
credenciais, recomendamos que você selecione Sim, pois isso garante que as
credenciais sejam preservadas entre as sessões do navegador.

Com base em suas atividades de desenvolvimento e na configuração de recursos, você


ainda pode receber um prompt para inserir novamente as credenciais durante a sessão.
Isso pode ocorrer quando você adiciona um novo recurso ou tenta acessar um recurso
sem ter atendido anteriormente aos requisitos de autorização de CA/MFA.

Reautenticando uma conta


Se houver um problema com a conta, o Visual Studio poderá solicitar que você insira
novamente as credenciais de conta.
Clicar em Inserir novamente suas credenciais abrirá o navegador da Web padrão do
sistema e tentará atualizar automaticamente as credenciais. Se não tiver êxito, você será
solicitado a entrar em sua conta e a validar qualquer política de CA/MFA necessária.

Se a sua conta estiver associada a vários diretórios ativos do Azure e tiver um problema
de acesso com um ou mais deles, a caixa de diálogo Redigite suas credenciais mostrará
os diretórios afetados e os códigos de erro AADSTS associados.

Você poderá desativar a seleção de todos os diretórios que não deseja autenticar
novamente e continuar uma operação de entrada regular com o diretório base, bem
como todos os locatários convidados que permanecerem selecionados. Os diretórios
desmarcados não estarão acessíveis para uso futuro até que o filtro da conta seja
removido.
7 Observação

Para obter a melhor experiência, mantenha o navegador aberto até que todas as
políticas de CA/MFA sejam validadas para seus recursos. Fechar o navegador
poderá resultar na perda do estado de MFA criado e pode gerar prompts de
autorização adicionais.

Solucionar problemas de conexão

Problemas de CA/MFA
Se você estiver enfrentando problemas de CA/MFA e/ou não conseguir fazer logon
mesmo usando o navegador da Web do sistema, tente as seguintes etapas para resolver
o problema:

1. Saia da conta no Visual Studio.


2. Selecione Ferramentas>Opções>Contas> Desmarque Autenticar em todos os
Azure Active Directories.
3. Entre novamente.

7 Observação
Após essas etapas, você provavelmente poderá fazer logon, mas a conta será
colocada em um estado filtrado. Enquanto estiver em um estado filtrado, somente
o locatário e os recursos padrão da conta estarão disponíveis. Todos os outros
locatários e recursos do Azure Active Directory ficarão inacessíveis, mas você
poderá adicioná-los manualmente.

Problemas de pré-autorização

Começando no Visual Studio 2022 versão 17.5, se você vir a caixa de diálogo de erro
anterior, tente as seguintes etapas para resolver o problema:

1. Saia da conta no Visual Studio.


2. Entre novamente.
3. Crie um tíquete Relatar um Problema explicando a atividade que você estava
executando e/ou o recurso que estava tentando acessar antes de encontrar o
problema.

7 Observação

Criar um tíquete nos ajudará a identificar áreas problemáticas e a fornecer os logs


necessários para investigar e resolver o problema.

Problemas de entrada com Nuvens Governamentais


Começando no Visual Studio 2022 versão 17.5, se você vir a caixa de diálogo de erro
anterior ou tiver problemas durante operações de entrada, tente as seguintes etapas
para resolver o problema:

1. Feche o Visual Studio.


2. Abra o "Prompt de Comando do Desenvolvedor" para sua instalação específica do
Visual Studio.
3. Digite Set DisableWAMClientIdForVS=true . Como alternativa, você pode usar Setx
DisableWAMClientIdForVS true para definir uma variável de usuário no sistema.

Depois de configurar uma variável de usuário, você não precisará fazer isso
novamente.
4. Após definir a variável de usuário, abra o Visual Studio no Prompt de Comando do
Desenvolvedor: devenv .
5. Entre novamente.

Como recusar o uso de um locatário específico


do Azure Active Directory no Visual Studio
O Visual Studio 2019 versão 16.6 e superior oferece a flexibilidade de filtrar locatários
individualmente ou globalmente, ocultando-os efetivamente do Visual Studio. A
filtragem elimina a necessidade de autenticar com esse locatário, mas também significa
que você não poderá acessar nenhum recurso associado.

Essa funcionalidade é útil quando você tem vários locatários, mas deseja otimizar o
ambiente de desenvolvimento direcionando um subconjunto específico. Ela também
pode ajudar em instâncias em que você não pode validar uma política específica de
CA/MFA, pois pode filtrar o locatário responsável.

Como filtrar todos os locatários


Para filtrar globalmente todos os locatários, abra a caixa de diálogo Configurações da
Conta (Arquivo > Configurações da Conta... > Opções de conta) e desmarque a caixa
de seleção Autenticar em todos os Azure Active Directories.

Desmarcar essa opção garante que você se autenticará apenas com o locatário padrão
da conta. Isso também significa que você não poderá acessar nenhum recurso associado
a outros locatários em que sua conta pode ser um convidado.

Como filtrar locatários individuais


Para filtrar locatários associados à sua conta do Visual Studio, abra a caixa de diálogo
Configurações da Conta (Arquivo > Configurações da Conta...) e clique em Aplicar
filtro.

A caixa de diálogo Filtrar conta será exibida, permitindo que você selecione quais
locatários deseja usar com sua conta.
Após você desmarcar o locatário a ser filtrado, as caixas de diálogo Configurações da
Conta e a Filtrar conta mostrarão o estado filtrado.
Confira também
Entrar no Visual Studio
Entrar no Visual Studio para Mac
Adicione suas contas do GitHub ao
conjunto de chaves do Visual Studio
Artigo • 13/01/2024

Neste artigo, você aprenderá como adicionar sua conta pública do GitHub ou do GitHub
Enterprise ao seu conjunto de chaves do Visual Studio. Após adicionar sua conta, você
poderá acompanhar suas alterações de código nos repositórios do GitHub, diretamente
do Visual Studio. Você também pode criar e utilizar o GitHub Actions para a automação
da implantação.

Adicionar contas públicas do GitHub


É possível adicionar sua conta pública do GitHub a qualquer momento, caso você já
esteja conectado ao Visual Studio com uma conta da Microsoft, uma conta corporativa
ou uma conta de estudante.

Adicione uma conta GitHub por meio da caixa de diálogo Configurações da conta:

1. Abra a caixa de diálogo “Configurações da conta” acessando


Arquivo>Configurações da conta....

2. No submenu Todas as contas, selecione + Adicionar para adicionar uma conta e


clique em GitHub.
3. Você será redirecionado para o navegador, no qual poderá entrar com suas
credenciais do GitHub. Depois de entrar, aparecerá uma janela de êxito no
navegador e você poderá retornar ao Visual Studio.

4. Sua conta do GitHub agora estará presente no submenu Todas as contas.


Adicione uma conta do GitHub por meio do cartão de perfil:

Se você ainda não estiver conectado ao Visual Studio, clique no link Entrar no canto
superior direito do ambiente do Visual Studio e use uma conta Microsoft, uma conta
corporativa ou uma conta de estudante para entrar.

Em seguida, siga estas instruções para adicionar sua conta do GitHub.

1. Clique no ícone com o nome do seu perfil no canto superior direito do ambiente
do Visual Studio, selecione Adicionar outra conta e, em seguida, GitHub.

2. Você será redirecionado para o navegador, no qual poderá entrar com suas
credenciais do GitHub. Depois de entrar, aparecerá uma janela de êxito no
navegador e você poderá retornar ao Visual Studio.
3. Sua conta do GitHub agora estará presente em seu cartão de perfil.

Como habilitar contas corporativas do GitHub


Por padrão, o Visual Studio só tem contas públicas do GitHub habilitadas.

1. Para habilitar contas corporativas do GitHub, acesse Ferramentas>Opções e


pesquise pelas opçõesContas.
2. Em seguida, marque a caixa Incluir contas do GitHub Enterprise Server. Na
próxima vez que você acessar as Configurações da Conta e tentar adicionar uma
conta do GitHub, aparecerá opções para o GitHub e o GitHub Enterprise.

3. Depois de inserir o endereço do servidor GitHub Enterprise, selecione Entrar com


seu navegador. Lá, é possível entrar usando suas credenciais do GitHub Enterprise.

Adicionar contas do EMU (Usuário Gerenciado)


do GitHub Enterprise
É possível adicionar sua conta EMU do GitHub se já estiver conectado ao Visual Studio
com uma conta da Microsoft, uma conta corporativa ou uma conta de estudante.
1. Selecione o ícone com suas iniciais no canto superior direito do ambiente do
Visual Studio. Agora, selecione Adicionar outra conta>GitHub.

2. Você será redirecionado para o navegador, no qual poderá entrar com suas
credenciais do EMU do GitHub.

Você pode usar a caixa de diálogo Configurações de Conta para gerenciar suas
contas:

1. Selecione o ícone com suas iniciais no canto superior direito do ambiente do


Visual Studio. Selecione Configurações da conta, para abrir a caixa de diálogo, ou
acesse Arquivo>Configurações da conta....

2. No submenu Todas as contas, selecione o submenu + Adicionar para incluir uma


conta e selecione GitHub.
3. Selecione GitHub Enterprise na caixa de diálogo Conectar-se ao GitHub.

7 Observação

Insira suas credenciais de conta EMU do GitHub (o nome de usuário tem um


sublinhado seguido pelo nome da empresa) nesta página.
Depois de entrar, aparecerá uma janela de êxito no navegador e você poderá retornar
ao Visual Studio.
Solução de Problemas de Acesso
Se você estiver enfrentando problemas ao adicionar ou autenticar novamente contas do
GitHub, tente as seguintes etapas:

Verifique se o HTTP Strict Transport Security (HSTS) não está habilitado para localhost
no navegador da Web padrão do sistema:

No Microsoft Edge, é possível digitar: edge://net-internals/#hsts e inserir localhost


na seção Excluir políticas de segurança de domínio.
No Google Chrome, digite: chrome://net-internals/#hsts e inserir localhost na
seção Excluir políticas de segurança de domínio.

7 Observação

Relate um problema se você ainda estiver enfrentando problemas no acesso.

Conteúdo relacionado
Entrar no Visual Studio
Como o Visual Studio facilita o controle de versões com o Git
Implantar seu aplicativo no Azure usando os fluxos de trabalho do GitHub Actions.
Estender uma versão de avaliação ou
atualizar uma licença
Artigo • 27/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode avaliar uma avaliação gratuita do Visual Studio Professional ou Visual Studio
Enterprise por 30 dias. E caso você se conecte, poderá estender o período de
avaliação para 90 dias. A extensão da avaliação de 90 dias funciona apenas uma vez. (O
Visual Studio Community não exige que você se conecte. No entanto, se a instalação
solicitar que você se conecte periodicamente, conecte-se para continuar usando o
Visual Studio Community sem interrupções.)

Para continuar usando o Visual Studio após o término de um período de avaliação,


desbloqueie-o com uma assinatura online ou uma chave do produto (Product Key).

Usar uma assinatura online


1. Escolha o botão Entrar no canto superior direito do IDE (ou acesse
Arquivo>Configurações de Conta... para abrir a caixa de diálogo Configurações
da Conta e escolha o botão Entrar).

2. Insira as credenciais de uma conta Microsoft ou uma conta corporativa ou de


estudante. O Visual Studio encontrará uma Assinatura do Visual Studio ou uma
organização do Azure DevOps associada à sua conta.

) Importante

O Visual Studio procura automaticamente assinaturas online associadas quando


você se conecta a uma organização do Azure DevOps na janela de ferramentas do
Team Explorer. Quando se conecta a uma organização do Azure DevOps, você
pode entrar usando contas da Microsoft e corporativas ou de estudante. Se houver
uma assinatura online para aquela conta de usuário, o Visual Studio
automaticamente desbloqueará o IDE para você.

Para obter mais informações sobre assinaturas do Visual Studio e como elas funcionam,
consulte a página Perguntas frequentes sobre suporte a assinaturas .

Inserir uma chave do produto


1. Selecione Arquivo>Configurações de Conta... para abrir a caixa de diálogo
Configurações de Conta e escolha o link Licenciar com uma Chave de Produto.

2. Insira a chave do produto (Product Key) no espaço fornecido.

 Dica

As versões de pré-lançamento do Visual Studio não têm chaves de produto. Você


deve entrar no IDE para usar as versões de pré-lançamento.

Para saber mais informações sobre as chaves do produto (Product Keys) do Visual
Studio para o Visual Studio e como obtê-las, consulte a página Usando chaves do
produto (Product Keys) nas assinaturas do Visual Studio.

Atualizar uma licença obsoleta


Você pode ver uma mensagem no Visual Studio que diz: "Sua licença ficou obsoleta e
deve ser atualizada".

Essa mensagem indica que, embora sua assinatura ainda possa ser válida, o token de
licença que o Visual Studio usa para manter sua assinatura atualizada ainda não foi
atualizado. O Visual Studio informa que a licença está obsoleta devido a um dos
seguintes motivos:

Você não usou o Visual Studio ou não se conectou à Internet por um longo
período de tempo.
Você saiu do Visual Studio.

Antes de o token de licença ficar obsoleto, o Visual Studio mostrará primeiro uma
mensagem de aviso que solicita que você insira suas credenciais novamente.

Se você não digitar novamente suas credenciais, o token começará a ficar obsoleto e a
caixa de diálogo Configurações de Conta informará quantos dias você ainda tem até
seu token expirar. Depois que o token expirar, será preciso digitar novamente suas
credenciais de conta para continuar usando o Visual Studio.

Observe que as políticas de AC habilitadas em uma conta podem afetar o estado ou a


licença da conta. Você pode solucionar problemas de CA/MFA para encontrar uma
resolução. Para contas associadas a vários Azure Active Directories, a filtragem de
locatários não essenciais pode ajudar. Você pode fazer isso usando a caixa de diálogo
Filtrar conta (Arquivo > Configurações da Conta > Aplicar Filtro). Ao autenticar
novamente uma conta, você também pode filtrar todos os diretórios com problemas de
acesso usando a caixa de diálogo Inserir novamente suas credenciais.

) Importante

Se estiver usando o Visual Studio por longos períodos em ambientes com acesso
limitado ou sem acesso à Internet, você deverá usar uma chave do produto
(Product Key) para desbloquear o Visual Studio a fim de evitar uma interrupção.

Atualizar uma licença expirada


Se a sua assinatura tiver expirado e você não tiver mais direitos de acesso ao Visual
Studio, será necessário renovar sua assinatura ou adicionar outra conta que tenha uma
assinatura. Para obter mais informações sobre a licença que você está usando, acesse
Arquivo>Configurações de Conta... e examine as informações de licença no lado direito
da caixa de diálogo. Se você tem outra assinatura associada a uma conta diferente,
adicione essa conta à lista Todas as Contas no lado esquerdo da caixa de diálogo
selecionando o link Adicionar uma conta.

Obter suporte
Às vezes, as coisas dão errado. Se você tiver um problema, aqui estão algumas opções
de suporte:

Relatar problemas do produto usando a ferramenta Relatar um Problema.


Encontre respostas para perguntas sobre assinaturas, contas e cobrança nas
Perguntas frequentes sobre suporte a assinaturas .

Confira também
Entrar no Visual Studio
Comparar as edições do Visual Studio
Saiba mais sobre as assinaturas do Visual Studio
Otimizar o desempenho do Visual
Studio
Artigo • 13/01/2024

Este artigo fornece algumas sugestões para tentar se você achar que o Visual Studio
está sendo executado lentamente. Você também pode dar uma olhada em Dicas e
truques de desempenho do Visual Studio para obter mais sugestões sobre como
melhorar o desempenho.

Atualizar o Visual Studio


Se você estiver usando uma versão anterior do Visual Studio, como Visual Studio 2017
ou Visual Studio 2019, baixe o Visual Studio 2022 gratuitamente para conferir o
desempenho aprimorado dele. As soluções são carregadas mais rapidamente do que
nas versões anteriores, com melhorias de desempenho em outras áreas também. É
possível instalar o Visual Studio em um computador que já tenha uma versão anterior
dele instalada. Para saber mais, confira Instalar versões do Visual Studio lado a lado.

Extensões e janelas de ferramentas


Você pode ter extensões instaladas que estão deixando o Visual Studio lento. Para obter
ajuda sobre como gerenciar extensões para melhorar o desempenho, consulte Alterar
configurações de extensão para melhorar o desempenho.

Da mesma forma, você pode ter janelas de ferramentas que estão deixando o Visual
Studio mais lento. Para obter ajuda sobre como gerenciar janelas de ferramentas,
consulte Alterar as configurações da janela de ferramentas.

Hardware
Se você estiver pensando em atualizar seu hardware, uma SSD (unidade de estado
sólido) tem mais efeito sobre o desempenho do que memória RAM adicional ou uma
CPU mais rápida.

Se você adicionar uma SSD, para ter o desempenho ideal, instale o Windows nessa
unidade em vez de uma HDD (unidade de disco rígido). O local da unidade das suas
soluções do Visual Studio parece não importar tanto.

Além disso, não execute sua solução de uma unidade USB. Copie-a para a HDD ou SSD.
Ajude-nos a melhorar
Seus comentários nos ajudam a melhorar. Use o recurso Relatar um Problema para
"registrar" um rastreamento e nos enviar. Selecione Ajuda>Enviar Feedback>Relatar
um Problema na barra de menus. Para saber mais, consulte Como relatar um problema
com o Visual Studio.

Conteúdo relacionado
Dicas e truques de desempenho
Otimizar o tempo de inicialização do
Visual Studio
Artigo • 06/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio foi projetado para iniciar da forma mais rápida e eficiente possível. No
entanto, determinadas extensões e janelas de ferramentas do Visual Studio poderão
afetar negativamente o tempo de inicialização quando forem carregadas. É possível
controlar o comportamento das extensões e das janelas de ferramentas lentas na caixa
de diálogo Gerenciador de Desempenho. Para ver mais dicas gerais sobre como
melhorar o desempenho, veja Dicas e truques de desempenho do Visual Studio.

Comportamento da inicialização
Para evitar estender o tempo de inicialização, o Visual Studio carrega extensões usando
uma abordagem sob demanda. Esse comportamento significa que as extensões não
abrem imediatamente após o Visual Studio ser iniciado, mas conforme necessário. Além
disso, como as janelas de ferramentas deixadas abertas em uma sessão anterior do
Visual Studio podem deixar o tempo de inicialização lento, o Visual Studio abre as
janelas de ferramentas de uma maneira mais inteligente para evitar afetar o tempo de
inicialização.

Se o Visual Studio detectar lentidão na inicialização, uma mensagem pop-up será


exibida, alertando-o para a janela de ferramentas ou extensão que está causando a
lentidão. A mensagem fornece um link para a caixa de diálogo Gerenciador de
Desempenho. Você também pode acessar esta caixa de diálogo escolhendo
Ajuda>Gerenciador de Desempenho do Visual Studio na barra de menus.

A caixa de diálogo lista as janelas de ferramentas e extensões que estão afetando o


desempenho de inicialização. Você pode alterar as configurações das janelas de
ferramentas e das extensões para melhorar o desempenho de inicialização.
Para alterar as configurações das extensões
para melhorar o desempenho da inicialização,
do carregamento de soluções e da digitação
1. Abra a caixa de diálogo Gerenciador de Desempenho escolhendo
Ajuda>Gerenciador de Desempenho do Visual Studio na barra de menus.

Se uma extensão estiver retardando a inicialização, o carregamento de soluções ou


a digitação no Visual Studio, a extensão aparecerá na caixa de diálogo
Gerenciador de Desempenho em Extensões>Inicialização (ou Carregamento da
Solução ou Digitação).

2. Escolha a extensão que você deseja desabilitar e clique no botão Desabilitar.

Sempre é possível habilitar novamente a extensão para sessões futuras usando o


Gerenciador de Extensões ou a caixa de diálogo Gerenciador de Desempenho do
Visual Studio.

Para alterar as configurações das janelas de


ferramentas para melhorar o tempo de
inicialização
1. Abra a caixa de diálogo Gerenciador de Desempenho escolhendo
Ajuda>Gerenciador de Desempenho do Visual Studio na barra de menus.

Se uma janela de ferramentas estiver retardando a inicialização do Visual Studio,


ela será exibida na caixa de diálogo Gerenciador de Desempenho do Visual
Studio em Janelas de Ferramentas>Inicialização.
2. Escolha a janela de ferramentas da qual você deseja alterar o comportamento.

3. Escolha uma das seguintes três opções:

Usar comportamento padrão: o comportamento padrão da janela de


ferramentas. Manter essa opção selecionada não melhorará o desempenho
de inicialização.

Não mostrar janela na inicialização: a janela de ferramentas especificada


sempre estará fechada ao abrir o Visual Studio, mesmo se ela for deixada
aberta em uma sessão anterior. Você pode abrir a janela de ferramentas no
menu apropriado quando necessário.

Ocultar automaticamente janela na inicialização: se uma janela de


ferramentas tiver sido deixada aberta em uma sessão anterior, essa opção
recolherá o grupo da janela de ferramentas na inicialização para evitar
inicializar a janela de ferramentas. Essa opção é uma boa alternativa se você
usa uma janela de ferramentas com frequência. A janela de ferramentas ainda
está disponível, mas não afeta mais negativamente o tempo de inicialização
do Visual Studio.

7 Observação

Algumas versões anteriores do Visual Studio tinham um recurso chamado carga de


solução leve. Nas versões atuais, soluções grandes que contêm um código
gerenciado são carregadas mais rapidamente do que antes, mesmo sem a carga de
solução leve.

Conteúdo relacionado
Otimizar o desempenho do Visual Studio
Dicas e truques de desempenho do Visual Studio
Soluções filtradas no Visual Studio
Artigo • 10/04/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Grandes equipes de desenvolvimento geralmente colaboram usando uma única solução


grande com vários projetos. No entanto, os desenvolvedores individuais normalmente
trabalham em um pequeno subconjunto desses projetos. Para melhorar o desempenho
ao abrir soluções grandes, o Visual Studio 2019 apresenta a filtragem de solução. A
filtragem de soluções permite que você abra uma solução com apenas projetos
seletivos carregados. Carregar um subconjunto de projetos em uma solução diminui a
carga, o build e o tempo de execução de teste dessa solução e permite uma revisão
mais focalizada.

Os seguintes recursos estão disponíveis:

Você pode chegar ao código mais rapidamente abrindo uma solução sem carregar
nenhum dos seus projetos. Depois que a solução é aberta, é possível escolher
seletivamente quais projetos carregar.

Quando você reabre uma solução, o Visual Studio lembra quais projetos foram
carregados em sua sessão anterior e carrega apenas esses projetos.

Você pode criar um arquivo de filtro de solução para salvar uma ou mais
configurações de carregamento do projeto ou compartilhar a configuração com
colegas de equipe.

7 Observação

Este tópico aplica-se ao Visual Studio no Windows.

Abrir uma solução filtrada


Você pode abrir uma solução sem carregar nenhum dos projetos diretamente na caixa
de diálogo Abrir projeto ou por meio da linha de comando.

Caixa de diálogo Abrir projeto


Para abrir uma solução sem carregar nenhum dos projetos usando a caixa de diálogo
Abrir projeto:
1. Na barra de menus, escolha Arquivo>Abrir>Projeto/Solução.

2. Na caixa de diálogo Abrir Projeto, selecione a solução e selecione Não carregar


projetos.

3. Escolha Abrir.

A solução é aberta com todos os seus projetos descarregados.

4. Na Gerenciador de Soluções, selecione os projetos que você deseja carregar


(pressione Ctrl enquanto clica para selecionar mais de um projeto) e, em seguida,
clique com o botão direito do mouse no projeto e escolha Recarregar projeto.
O Visual Studio lembrará de quais projetos estão carregados na próxima vez em
que você abrir a solução localmente.

Linha de comando
(Novo no Visual Studio 2019 versão 16.1.)

Para abrir uma solução sem carregar nenhum dos projetos a partir da linha de comando,
use o botão /donotloadprojects, como mostrado no exemplo a seguir:

Prompt de comando do Windows

devenv /donotloadprojects MySln.sln

Ativar/desativar a visibilidade do projeto


descarregado
Você pode optar por ver todos os projetos na solução ou apenas aqueles carregados
usando uma das seguintes opções no Gerenciador de Soluções:

Clique com o botão direito do mouse em sua solução e selecione Mostrar Projetos
Descarregados ou Ocultar Projetos Descarregados.

Selecione o nó da solução para habilitar o botão Mostrar todos os arquivos e, em


seguida, clique no botão para alternar a visibilidade dos projetos descarregados.

Carregar dependências do projeto


Em uma solução em que apenas os projetos selecionados foram carregados, talvez você
não tenha todas as dependências de projeto de um determinado projeto carregadas.
Use a opção de menu Carregar dependências do projeto para garantir que todos os
projetos dos quais um projeto depende também sejam carregados. Clique com o botão
direito do mouse em um ou mais projetos carregados no Gerenciador de Soluções e
escolha Carregar dependências do projeto.

Arquivos do filtro de solução


Se quiser compartilhar sua configuração de carregamento do projeto ou confirmá-la ao
controle do código-fonte, você poderá criar um arquivo de filtro de solução (que tenha
a extensão .slnf). Quando você abre um arquivo de filtro de solução, a solução é aberta
no Visual Studio com os projetos especificados carregados e todos os projetos
descarregados ocultos. Você pode ativar a configuração para exibir os projetos
descarregados.

Os arquivos de solução do filtro visualmente são diferenciados dos arquivos de solução


comuns pelo glifo de funil adicional no ícone ao lado da solução no Gerenciador de
Soluções. O nome do filtro e o número de projetos carregados também são mostrados
ao lado do nome da solução.
7 Observação

Se novos projetos forem adicionados à solução original depois de criar o arquivo


de filtro de solução, eles aparecerão como projetos descarregados no Gerenciador
de Soluções.

Criar um arquivo de filtro de solução


1. No Gerenciador de Soluções, clique com o botão direito do mouse na solução e
selecione Salvar como filtro de solução.
2. Escolha um nome e uma localização para o arquivo de filtro de solução.

Depois de criar um arquivo de filtro de solução, ele é adicionado à sua lista de Projetos
e soluções recentes para facilitar o acesso:
Confira também
Personalizar o aninhamento de arquivos no Gerenciador de Soluções
Otimizar o desempenho do Visual Studio
Dicas e truques de desempenho do
Visual Studio
Artigo • 29/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As recomendações de desempenho do Visual Studio destinam-se a situações de baixa


memória, o que podem ocorrer em casos raros. Nessas situações, é possível otimizar
determinados recursos do Visual Studio que você talvez não esteja usando. As dicas a
seguir não devem ser consideradas como as recomendações gerais.

7 Observação

Se você estiver tendo dificuldades para usar o produto devido a problemas de


memória, conte para nós pela ferramenta de comentários.

Usar um sistema operacional de 64 bits


Se você atualizar seu sistema de uma versão de 32 bits do Windows para uma versão de
64 bits, expanda a quantidade de memória virtual disponível para o Visual Studio de 2
GB para 4 GB. Uma atualização do sistema operacional de 64 bits permite que o Visual
Studio lide com cargas de trabalho maiores.

Para obter mais informações, confira Limites de Memória para as versões do Windows e
do Windows Server.

 Dica

O Visual Studio 2022 no Windows é um aplicativo de 64 bits. As versões anteriores


são de 32 bits.

Desabilitar a restauração de arquivo


automática
O Visual Studio reabre automaticamente os documentos que foram deixados abertos na
sessão anterior. Essa ação de restauração automática de arquivo pode prolongar o
tempo necessário para carregar uma solução em até 30% ou mais, dependendo do tipo
de projeto e dos documentos que estão sendo abertos. Designers como o Windows
Forms e o XAML e alguns arquivos JavaScript e TypeScript, podem demorar para abrir.

O Visual Studio notifica você em uma barra amarela quando a restauração automática
de documentos está fazendo com que a solução seja carregada de maneira mais lenta.
Você pode desabilitar a reabertura de arquivo automática seguindo estas etapas:

1. Selecione Ferramentas>Opções para abrir a caixa de diálogo Opções.

2. Na página Projetos e Soluções>Geral, desmarque a opção Reabrir documentos


ao carregar a solução.

Caso você desabilite a restauração automática de arquivos, uma maneira rápida de


navegar para os arquivos que deseja abrir é usar um dos comandos Ir para:

Para a funcionalidade Ir para general, selecione Editar>Ir para>Ir para Todos ou


pressione Ctrl+T.

Vá para a localização da última edição em uma solução usando Editar>Ir para>Ir


para Localização da Última Edição ou pressionando Ctrl+Shift+Backspace.

Use Ir Para Arquivo Recente para ver uma lista dos arquivos visitados
recentemente em uma solução. Selecione Editar>Ir para>Ir para Arquivo Recente
ou pressione Ctrl+1, Ctrl+R.

Configurar as opções de depuração


Se você tem ficado com pouca memória durante as sessões de depuração normalmente,
você pode otimizar o desempenho fazendo uma ou mais alterações de configuração.

Habilitar Apenas Meu Código

A otimização mais simples é habilitar o recurso Apenas Meu Código, que só


carrega símbolos para o seu projeto. Habilitar esse recurso pode resultar em uma
economia significativa de memória para depurar aplicativos gerenciados (.NET).
Esta opção já fica habilitada por padrão em alguns tipos de projeto.

Para habilitar o Apenas Meu Código, escolha


Ferramentas>Opções>Depuração>Geral e selecione Habilitar Apenas Meu
Código.

Especificar os símbolos a serem carregados

Para depuração nativa, o carregamento de arquivos de símbolo (.pdb) é caro em


termos de recursos de memória. Você pode definir as configurações de símbolo de
depuração para economizar memória. Normalmente, você pode configurar a
solução para carregar somente os módulos do seu projeto.

Para especificar o carregamento de símbolos, escolha


Ferramentas>Opções>Depuração>Símbolos.

Defina as opções para Somente os módulos especificados em vez de Todos os


módulos e, em seguida, especifique quais módulos você deseja carregar. Durante
a depuração, você também pode clicar com o botão direito do mouse em módulos
específicos na janela Módulos para incluir explicitamente um módulo no
carregamento de símbolo. (Para abrir a janela durante a depuração, escolha
Depuração>Janelas>Módulos.)

Para obter mais informações, confira Especificar arquivos de símbolo e de origem


no depurador.

Desabilitar Ferramentas de Diagnóstico

É recomendável desabilitar a criação de perfil de CPU após o uso. Esse recurso


pode consumir grandes quantidades de recursos. Quando a criação de perfil de
CPU está habilitada, esse estado é mantido nas sessões de depuração
subsequentes, por isso vale a pena desativá-lo explicitamente após terminar. Você
pode economizar alguns recursos desabilitando as ferramentas de diagnóstico
durante a depuração se você não precisar dos recursos fornecidos.

Para desabilitar as Ferramentas de Diagnóstico, inicie uma sessão de depuração,


selecione Ferramentas>Opções>Depuração>Geral e desmarque a opção
Habilitar Ferramentas de Diagnóstico durante a depuração.

Para obter mais informações, confira Ferramentas de Criação de Perfil.

Desabilitar ferramentas e extensões


Algumas ferramentas ou extensões podem ser desabilitadas para melhorar o
desempenho.

 Dica

Geralmente, é possível isolar problemas de desempenho desativando as extensões,


uma por vez e verificando novamente o desempenho.

Serviço de linguagem gerenciado (Roslyn)


Para obter mais informações sobre as considerações de desempenho do .NET Compiler
Platform (“Roslyn"), consulte Considerações de desempenho para grandes soluções .

Desabilitar CodeLens

O Visual Studio executa uma tarefa Localizar todas as referências em cada método
como exibido. O CodeLens fornece recursos como a exibição embutida do número
de referências. O trabalho é executado em um processo separado como
ServiceHub.RoslynCodeAnalysisService32. Em soluções grandes ou em sistemas
com recursos restritos, esse recurso pode afetar significativamente o desempenho.
Se estiver enfrentando problemas de memória, por exemplo, ao carregar uma
solução grande em um computador de 4 GB, ou alta utilização da CPU para esse
processo, você poderá desabilitar o CodeLens para liberar recursos.

Para desabilitar o CodeLens, escolha Ferramentas>Opções>Editor de


Texto>Todas as Linguagens>CodeLens e desmarque o recurso.

Para obter mais informações, confira Localizar alterações de código e outros


históricos com o CodeLens.

Outras ferramentas e extensões


Desabilitar extensões

Extensões são componentes de software adicionais acrescentados ao Visual Studio


que fornecem uma funcionalidade nova ou estendem a funcionalidade existente.
Extensões geralmente podem ser uma fonte de problemas de recursos de
memória. Se você estiver tendo problemas de recursos de memória, tente
desabilitar as extensões, uma por vez, para ver como ele afeta o cenário ou o fluxo
de trabalho.

Para desabilitar as extensões, acesse Extensões> Gerenciar Extensões e desabilite


uma extensão específica.

Desabilitar o modo de mapa

O modo de mapa exibe linhas de código, em miniatura, na barra de rolagem. O


modo de mapa está habilitado como padrão.

Para desabilitar o modo de mapa, acesse Ferramentas>Opções>Editor de


Texto>Todas as Linguagens>Barras de Rolagem e, na seção Comportamento,
desmarque a opção Usar modo de mapa para barra de rolagem vertical.

Desabilitar quebra de linha de palavras


A quebra de linha de palavras exibe a parte de uma longa linha de código que se
estende além da largura atual da janela do editor de código. A quebra de linha de
palavras está ativada por padrão.

Para desabilitar a quebra de linha de palavras para um projeto no qual você está
trabalhando no momento, vá para Editar>Avançado>Quebrar linha de palavras.
(Você pode alternar essa configuração usando os mesmos comandos de menu.)

Para desabilitar a quebra de linha de palavras para todos os projetos, acesse


Ferramentas>Opções>Geral>Editor de Texto>Todas as Linguagens>Geral e, na
seção Configurações, desmarque a opção Quebrar linha de palavras.

Desabilitar o XAML Designer

O Designer XAML está habilitado por padrão, mas só consome recursos se um


arquivo .xaml é aberto. Se você trabalha com arquivos XAML, mas não quer usar a
funcionalidade do designer, desabilite esse recurso para liberar memória.

Para desabilitar o Designer XAML, acesse Ferramentas>Opções>Designer


XAML>Habilitar o Designer XAML e desmarque a opção.

Remover as cargas de trabalho

Você pode usar o Instalador do Visual Studio para remover as cargas de trabalho
que não são mais usadas. Esta ação pode simplificar o custo de inicialização e do
runtime ignorando pacotes e assemblies que não são mais necessários.

Adicionar arquivos não rastreados ao .gitignore local

O Visual Studio executa o comando git status Git com arquivos não rastreados
para fornecer uma experiência perfeita quando você adiciona novos arquivos a um
repositório. Quando há um grande número de arquivos não rastreados, git
status pode consumir memória extra. Para ignorar esses arquivos e melhorar o
desempenho do git status , você pode adicionar esses arquivos ou pastas ao
arquivo local .gitignore. Para acessar o arquivo, acesse
Git>Configurações>Configurações do Repositório Git. Em seguida, na seção
Arquivos Git, selecione Adicionar para criar um arquivo .gitignore ou selecione
Editar se você já tiver um.

Habilitar o grafo de confirmação nas ferramentas do Git

Novidades no Visual Studio 2022 versão 17.2 : se você estiver enfrentando


atrasos ao exibir seu repositório Git ou histórico de ramificação no Visual Studio,
integramos um recurso de "grafo de confirmação" que pode ajudar. Para usar o
grafo de confirmação, faça o download e instale o Visual Studio 2022 . Para saber
mais sobre o grafo de confirmação, consulte a postagem no blog Sobrecarregar
sua experiência do Git no Visual Studio .

Forçar uma coleta de lixo


O CLR usa um sistema de gerenciamento de memória de coleta de lixo. Nesse sistema,
às vezes a memória é usada pelos objetos que não são mais necessários. Esse estado é
temporário. O coletor de lixo libera esta memória com base em seu desempenho e a
heurística de uso de recursos. Você pode forçar o CLR a coletar a memória não utilizada
usando uma tecla de atalho no Visual Studio. Se houver uma quantidade significativa de
lixo aguardando a coleta e você forçar uma coleta de lixo, você deverá ver o uso de
memória do processo devenv.exe ser deixado no Gerenciador de Tarefas. Raramente é
necessário usar esse método. No entanto, após uma operação cara (como um build
completo, sessão de depuração ou um evento de abertura de solução), ele pode ajudar
a determinar a quantidade de memória que realmente está sendo usado pelo processo.
Como o Visual Studio é misto (gerenciado & nativo), geralmente é possível que o
alocador nativo e o coletor de lixo disputem pelos recursos de memória limitada. Em
condições de alto uso de memória, pode ser útil forçar o coletor de lixo a ser executado.

Para forçar uma coleta de lixo, use o atalho de teclado: Ctrl+Alt+Shift+F12,


Ctrl+Alt+Shift+F12 (pressione-a duas vezes).

Se forçar a coleta de lixo de forma confiável faz seu cenário funcionar, relate isso na
ferramenta de comentários do Visual Studio, pois esse comportamento provavelmente
trata-se de um bug.

Para ver uma descrição detalhada do coletor de lixo CLR, consulte Noções básicas da
coleta de lixo.

Confira também
Otimizar o desempenho do Visual Studio
Atalhos de teclado no Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode acessar uma variedade de comandos e janelas no Visual Studio escolhendo o atalho de teclado
apropriado. Essa página lista os atalhos de comando padrão para o perfil Geral, que você pode ter escolhido
quando instalou o Visual Studio. Não importa qual o perfil escolhido, é possível identificar o atalho de um
comando abrindo a caixa de diálogo Opções, expandindo o nó Ambiente e escolhendo Teclado. Também é
possível personalizar seus atalhos atribuindo um atalho diferente a qualquer comando.

Para obter uma lista dos atalhos de teclado comuns e outras informações sobre produtividade, confira:

Dicas de teclado
Dicas de produtividade

Para obter mais informações sobre acessibilidade no Visual Studio, consulte Dicas e truques de
acessibilidade e Como usar o teclado de forma exclusiva.

Folha de referências de atalho imprimível


Clique para obter nossa folha de referências de atalho de teclado imprimível para o Visual Studio .

Atalhos de teclado populares para o Visual Studio


Todos os atalhos nesta seção se aplicam globalmente, a menos que especificado de outra forma. O contexto
Global significa que o atalho é aplicável em qualquer janela de ferramenta no Visual Studio.

 Dica

É possível pesquisar o atalho para qualquer comando abrindo a caixa de diálogo Opções, expandindo
o nó Ambiente e, em seguida, escolhendo Teclado.

Compilar
Depurar
Editar
Arquivo
Project
Refatoração
Ferramentas
Exibir
Window

Build: atalhos populares

Comandos Atalhos do teclado ID de Comando

Solução de compilação Ctrl+Shift+B Build.BuildSolution

Cancelar Ctrl+Break Build.Cancel

Compilar Ctrl+F7 Build.Compile

Executar Análise de Código na Solução Alt+F11 Build.RunCodeAnalysisonSolution

Depurar: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Interromper na função Ctrl+B Debug.BreakatFunction

Quebrar tudo Ctrl+Alt+Break Debug.BreakAll

Excluir todos os pontos de interrupção Ctrl+Shift+F9 Debug.DeleteAllBreakpoints

Exceções Ctrl+Alt+E Debug.Exceptions

Inspeção Rápida Ctrl+Alt+Q Debug.QuickWatch

ou Shift+F9

Reiniciar Ctrl+Shift+F5 Debug.Restart

Executar até o cursor Ctrl+F10 Debug.RunToCursor

Definir próxima instrução Ctrl+Shift+F10 Debug.SetNextStatement

Iniciar F5 Debug.Start

Iniciar sem depuração Ctrl+F5 Debug.StartWithoutDebugging


Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Avançar F11 Debug.StepInto

Sair Shift+F11 Debug.StepOut

Passar por F10 Debug.StepOver

Parar a depuração Shift+F5 Debug.StopDebugging

Alterna um ponto de interrupção F9 Debug.ToggleBreakpoint

Editar: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Quebrar linha Enter [Editor de Texto, Designer de Edit.BreakLine


Relatórios, Designer de Formulários do
Windows]

ou Shift+Enter [Editor de Texto]

Recolher para Ctrl+M, Ctrl+O [Editor de Texto] Edit.CollapseToDefinitions


definições

Comentar seleção Ctrl+K, Ctrl+C [Editor de Texto] Edit.CommentSelection

Completar a Alt+Seta para a Direita [Editor de Texto, Edit.CompleteWord


palavra Designer de Fluxo de Trabalho]

ou Ctrl+Barra de espaços [Editor de Texto,


Designer de Fluxo de Trabalho]

ou Ctrl+K, W [Designer de Fluxo de


Trabalho]

ou Ctrl+K, Ctrl+W [Designer de Fluxo de


Trabalho]

Copiar Ctrl+C Edit.Copy

ou Ctrl+Insert

Recortar Ctrl+X Edit.Cut

ou Shift+Delete

Excluir Excluir [Team Explorer] Edit.Delete

ou Shift+Delete [Diagrama de Sequência,


Diagrama de Atividades UML, Diagrama de
Camada]

ou Ctrl+Delete [Diagrama de Classes]

Localizar Ctrl+F Edit.Find

Localizar todas as Shift+F12 Edit.FindAllReferences


referências
Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Localizar nos Ctrl+Shift+F Edit.FindinFiles


arquivos

Localizar próximo F3 Edit.FindNext

Localizar Próxima Ctrl+F3 Edit.FindNextSelected


seleção

Formatar Ctrl+K, Ctrl+D [Editor de Texto] Edit.FormatDocument


documento

Formatar seleção Ctrl+K, Ctrl+F [Editor de Texto] Edit.FormatSelection

Ir para Ctrl+G Edit.GoTo

Ir para a Ctrl+F12 Edit.GoToDeclaration


declaração

Ir para definição F12 Edit.GoToDefinition

Ir para encontrar a Ctrl+D Edit.GoToFindCombo


combinação

Ir para o próximo F8 Edit.GoToNextLocation


local

Inserir Snippet Ctrl+K, Ctrl+X Edit.InsertSnippet

Guia Inserir Tab [Designer de Relatórios, Designer de Edit.InsertTab


Formulários do Windows, Editor de Texto]

Corte de linha Ctrl+L [Editor de Texto] Edit.LineCut

Coluna de Shift+Alt+Seta para Baixo [Editor de Texto] Edit.LineDownExtendColumn


extensão de linha
para baixo

Linha aberta acima Ctrl+Enter [Editor de Texto] Edit.LineOpenAbove

Listar os membros Ctrl+J [Editor de Texto, Designer de Fluxo de Edit.ListMembers


Trabalho]

ou Ctrl+K, Ctrl+L [Designer de Fluxo de


Trabalho]

ou Ctrl+K, L [Designer de Fluxo de Trabalho]

Navegar para Ctrl+, Edit.NavigateTo

Abrir arquivo Ctrl+Shift+G Edit.OpenFile

Modo de sobretipo Insert [Editor de Texto] Edit.OvertypeMode

Informações de Ctrl+Shift+Barra de espaços [Editor de Edit.ParameterInfo


parâmetro Texto, Designer de Fluxo de Trabalho]

ou Ctrl+K, Ctrl+P [Designer de Fluxo de


Trabalho]

ou Ctrl+K, P [Designer de Fluxo de Trabalho]


Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Colar Ctrl+V Edit.Paste

ou Shift+Insert

Inspecionar Alt+F12 [Editor de Texto] Edit.PeekDefinition


Definição

Refazer Ctrl+Y Edit.Redo

ou Shift+Alt+Backspace

ou Ctrl+Shift+Z

Substitua Ctrl+H Edit.Replace

Selecionar tudo Ctrl+A Edit.SelectAll

Selecionar a Ctrl+W [Editor de Texto] Edit.SelectCurrentWord


palavra atual

Cancelar seleção Esc [Editor de Texto, Designer de Relatórios, Edit.SelectionCancel


Designer de Configurações, Designer de
Formulários do Windows, Editor de Recursos
Gerenciados]

Remover e Ctrl+R, Ctrl+G [Editor de Texto] EditorContextMenus.CodeWindow.RemoveAndSort


classificar usos

Envolver com Ctrl+K, Ctrl+S Edit.SurroundWith


(disponível apenas no Visual Studio 2019 e
anterior)

Tabulação à Shift+Tab [Editor de Texto, Designer de Edit.TabLeft


esquerda Relatórios, Editor de Formulários do
Windows]

Ativar/Desativar Ctrl+M, Ctrl+L [Editor de Texto] Edit.ToggleAllOutlining


estrutura de
tópicos para tudo

Ativar/desativar Ctrl+K, Ctrl+K [Editor de Texto] Edit.ToggleBookmark


indicador

Alternar o modo Ctrl+Alt+Space [Editor de Texto] Edit.ToggleCompletionMode


de conclusão

Ativar/Desativar Ctrl+M, Ctrl+M [Editor de Texto] Edit.ToggleOutliningExpansion


Expansão da
Estrutura de
Tópicos

Remover Ctrl+K, Ctrl+U [Editor de Texto] Edit.UncommentSelection


Comentários da
Seleção

Desfazer Ctrl+Z Edit.Undo

ou Alt+Backspace
Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Excluir palavra até Ctrl+Delete [Editor de Texto] Edit.WordDeleteToEnd


o fim

Excluir palavra até Ctrl+Backspace [Editor de Texto] Edit.WordDeleteToStart


o início

Aquivo: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Fechar Alt+F4 File.Exit

Novo arquivo Ctrl+N File.NewFile

Novo Projeto Ctrl+Shift+N File.NewProject

Novo site Shift+Alt+N File.NewWebSite

Abrir arquivo Ctrl+O File.OpenFile

Abrir projeto Ctrl+Shift+O File.OpenProject

Abrir site Shift+Alt+O File.OpenWebSite

Renomear F2 [Team Explorer] File.Rename

Salvar tudo Ctrl+Shift+S File.SaveAll

Salvar Itens selecionados Ctrl+S File.SaveSelectedItems

Exibir no navegador Ctrl+Shift+W File.ViewinBrowser

Projeto: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Adicionar item existente Shift+Alt+A Project.AddExistingItem

Adicionar novo item Ctrl+Shift+A Project.AddNewItem

Refatorar: atalhos populares

Comando Atalho de teclado [Contextos especiais] ID de Comando

Extrair método Ctrl+R, Ctrl+M Refactor.ExtractMethod

Ferramentas: atalhos populares

Comando Atalho de teclado [Contextos especiais] ID de Comando

Anexar ao processo Ctrl+Alt+P Tools.AttachtoProcess


Exibir: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Exibição de classe Ctrl+Shift+C View.ClassView

Editar rótulo F2 View.EditLabel

Lista de erros Ctrl+\, Ctrl+E View.ErrorList

ou Ctrl+\, E

Navegar para trás Ctrl+- View.NavigateBackward

Navegar para frente Ctrl+Shift+- View.NavigateForward

Navegador de objetos Ctrl+Alt+J View.ObjectBrowser

Saída Ctrl+Alt+O View.Output

Janela de Propriedades F4 View.PropertiesWindow

Atualizar F5 [Team Explorer] View.Refresh

Gerenciador de servidor Ctrl+Alt+S View.ServerExplorer

Mostrar marca inteligente Ctrl+. View.ShowSmartTag

ou Shift+Alt+F10 [Modo Design do Editor de HTML]

Gerenciador de soluções Ctrl+Alt+L View.SolutionExplorer

TFS Team Explorer Ctrl+\, Ctrl+M View.TfsTeamExplorer

Caixa de Ferramentas Ctrl+Alt+X View.Toolbox

Exibir Código Enter [Diagrama de Classe] View.ViewCode

ou F7 [Designer de Configurações]

Designer de exibição Shift+F7 [Modo Código-fonte do Editor de HTML] View.ViewDesigner

Janela: atalhos populares

Comandos Atalhos de teclado [Contextos especiais] ID de Comando

Ativar janela do documento Esc Window.ActivateDocumentWindow

Fechar janela do documento Ctrl+F4 Window.CloseDocumentWindow

Próxima janela do documento Ctrl+F6 Window.NextDocumentWindow

Nav próxima janela do documento Ctrl+Tab Window.NextDocumentWindowNav

Próximo painel dividido F6 Window.NextSplitPane

Atalhos globais
Esses atalhos de teclado são globais, o que significa que você pode usá-los quando qualquer janela do
Visual Studio estiver em foco.

Analise
Arquitetura
Azure
Compilar
Menus de Contexto do Modo de Exibição de Classe
Depurar
Outros menus de depuração
Hub de Diagnóstico
Editar
Menus de Contexto do Editor
Arquivo
Ajuda
Teste de carga
Outros Menus de Contexto
Project
Menus de Contexto de Projeto e Solução
Refatoração
Gerenciador de Soluções
Equipe
Menus de Contexto do Team Foundation
Test
Gerenciador de Testes
Ferramentas
Exibir
Window

Analisar: atalhos globais

Comandos Atalhos do teclado ID de Comando

Navegar para trás Shift+Alt+3 Analyze.NavigateBackward

Navegar para frente Shift+Alt+4 Analyze.NavigateForward

Arquitetura: atalhos globais

Comandos Atalhos do teclado ID de Comando

Novo diagrama Ctrl+\, Ctrl+N Architecture.NewDiagram

Azure: atalhos globais

Comandos Atalhos do ID de Comando


teclado

Repetir operação de script de serviço móvel Ctrl+Num *, WindowsAzure.RetryMobileServiceScriptOperation


Ctrl+R
Comandos Atalhos do ID de Comando
teclado

Mostrar detalhes do erro de script do serviço Ctrl+Num *, WindowsAzure.ShowMobileServiceScriptErrorDetails


móvel Ctrl+D

Compilação: atalhos globais

Comandos Atalhos do teclado ID de Comando

Seleção de compilação Ctrl+B (Visual Studio 2019) Build.BuildSelection

Solução de compilação Ctrl+Shift+B Build.BuildSolution

Cancelar Ctrl+Break Build.Cancel

Compilar Ctrl+F7 Build.Compile

Executar Análise de Código na Solução Alt+F11 Build.RunCodeAnalysisonSolution

Menus de contexto do Modo de Exibição de Classe: atalhos globais

Comandos Atalhos do teclado ID de Comando

Propriedades Alt+Enter ClassViewContextMenus.ClassViewMultiselectProjectreferencesItems.Properties

Depuração: atalhos globais

Comandos Atalhos do teclado ID de Comando

Aplicar alterações de Alt+F10 Debug.ApplyCodeChanges


código

Anexar ao processo Ctrl+Alt+P Debug.AttachtoProcess

Autos Ctrl+Alt+V, A Debug.Autos

Quebrar tudo Ctrl+Alt+Break Debug.BreakAll

Pontos de Ctrl+Alt+B Debug.Breakpoints


interrupção

Pilha de chamadas Ctrl+Alt+C Debug.CallStack

Excluir todos os Ctrl+Shift+F9 Debug.DeleteAllBreakpoints


pontos de
interrupção

Inicializar Alt+F2 Debug.DiagnosticsHub.Launch

Desmontagem Ctrl+Alt+D Debug.Disassembly

Explorador de Dom Ctrl+Alt+V, D Debug.DOMExplorer

Habilitar ponto de Ctrl+F9 Debug.EnableBreakpoint


interrupção
Comandos Atalhos do teclado ID de Comando

Exceções Ctrl+Alt+E Debug.Exceptions

Ponto de interrupção Ctrl+K, B (Visual Studio 2019) Debug.FunctionBreakpoint


de função Ctrl+B (Visual Studio 2017)

Ir para chamada Ctrl+Shift+F11 Debug.GoToPreviousCallorIntelliTraceEvent


anterior ou para
evento do IntelliTrace

Iniciar diagnóstico Alt+F5 Debug.Graphics.StartDiagnostics

Imediata Ctrl+Alt+I Debug.Immediate

Chamadas do Ctrl+Alt+Y, T Debug.IntelliTraceCalls


IntelliTrace

Eventos do Ctrl+Alt+Y, F Debug.IntelliTraceEvents


IntelliTrace

Console JavaScript Ctrl+Alt+V, C Debug.JavaScriptConsole

Locais Ctrl+Alt+V, L Debug.Locals

Combinação de Ctrl+5 Debug.LocationToolbar.ProcessCombo


processos

Combinação de Ctrl+7 Debug.LocationToolbar.StackFrameCombo


quadros de pilha

Combinação de Ctrl+6 Debug.LocationToolbar.ThreadCombo


threads

Alternar o estado Ctrl+8 Debug.LocationToolbar.ToggleCurrentThreadFlaggedState


sinalizado do thread
atual

Alternar threads Ctrl+9 Debug.LocationToolbar.ToggleFlaggedThreads


sinalizados

Memória 1 Ctrl+Alt+M, 1 Debug.Memory1

Memória 2 Ctrl+Alt+M, 2 Debug.Memory2

Memória 3 Ctrl+Alt+M, 3 Debug.Memory3

Memória 4 Ctrl+Alt+M, 4 Debug.Memory4

Módulos Ctrl+Alt+U Debug.Modules

Pilhas paralelas Ctrl+Shift+D, S Debug.ParallelStacks

Inspeção paralela 1 Ctrl+Shift+D, 1 Debug.ParallelWatch1

Inspeção paralela 2 Ctrl+Shift+D, 2 Debug.ParallelWatch2

Inspeção paralela 3 Ctrl+Shift+D, 3 Debug.ParallelWatch3

Inspeção paralela 4 Ctrl+Shift+D, 4 Debug.ParallelWatch4

Processos Ctrl + Alt + Z Debug.Processes


Comandos Atalhos do teclado ID de Comando

Inspeção Rápida Shift+F9 ou Ctrl+Alt+Q Debug.QuickWatch

Reanexar ao Shift+Alt+P Debug.ReattachtoProcess


processo

Atualizar o aplicativo Ctrl+Shift+R Debug.RefreshWindowsapp


Windows

Registros Ctrl+Alt+G Debug.Registers

Reiniciar Ctrl+Shift+F5 Debug.Restart

Executar até o cursor Ctrl+F10 Debug.RunToCursor

Definir próxima Ctrl+Shift+F10 Debug.SetNextStatement


instrução

Mostrar pilha de Ctrl+Shift+` Debug.ShowCallStackonCodeMap


chamadas no mapa
de códigos

Mostrar próxima Alt+Num * Debug.ShowNextStatement


instrução

Iniciar F5 Debug.Start

Iniciar análise de Alt+F1 Debug.StartWindowsPhoneApplicationAnalysis


Aplicativo do
Windows Phone

Iniciar sem Ctrl+F5 Debug.StartWithoutDebugging


depuração

Avançar F11 Debug.StepInto

Intervir no processo Ctrl+Alt+F11 Debug.StepIntoCurrentProcess


atual

Intervir em específico Shift+Alt+F11 Debug.StepIntoSpecific

Sair Shift+F11 Debug.StepOut

Sair do processo Ctrl+Shift+Alt+F11 Debug.StepOutCurrentProcess


atual

Passar por F10 (ao depurar: executa uma etapa Debug.StepOver


sobre a ação)

Passar por F10 (quando não está em Debug.StepOver


depuração: inicia a depuração e
para na primeira linha do código do
usuário)

Depurar de forma Ctrl+Alt+F10 Debug.StepOverCurrentProcess


parcial o processo
atual

Parar a depuração Shift+F5 Debug.StopDebugging

Interromper análise Shift+Alt+F2 Debug.StopPerformanceAnalysis


de desempenho
Comandos Atalhos do teclado ID de Comando

Tarefas Ctrl+Shift+D, K Debug.Tasks

Threads Ctrl+Alt+H Debug.Threads

Alterna um ponto de F9 Debug.ToggleBreakpoint


interrupção

Alternar Ctrl+F11 Debug.ToggleDisassembly


desmontagem

Inspeção 1 Ctrl+Alt+W, 1 Debug.Watch1

Inspeção 2 Ctrl+Alt+W, 2 Debug.Watch2

Inspeção 3 Ctrl+Alt+W, 3 Debug.Watch3

Inspeção 4 Ctrl+Alt+W, 4 Debug.Watch4

Menus de contexto do depurador: atalhos globais

Comandos Atalhos do teclado ID de Comando

Excluir Alt+F9, D DebuggerContextMenus.BreakpointsWindow.Delete

Ir para desmontagem Alt+F9, A DebuggerContextMenus.BreakpointsWindow.GoToDisassembly

Ir para o código-fonte Alt+F9, S DebuggerContextMenus.BreakpointsWindow.GoToSourceCode

Hub de Diagnóstico: atalhos globais

Comando Atalho de teclado ID de Comando

Interromper a coleta Ctrl+Alt+F2 DiagnosticsHub.StopCollection

Editar: Atalhos globais

Comandos Atalhos do teclado ID de Comando

Copiar Ctrl+C Edit.Copy

ou

Ctrl+Ins

Recortar Ctrl+X Edit.Cut

ou

Shift+Delete

Anel da área de transferência de ciclo Ctrl+Shift+V Edit.CycleClipboardRing

ou

Ctrl+Shift+Ins
Comandos Atalhos do teclado ID de Comando

Excluir Excluir Edit.Delete

Duplicar Ctrl+D Edit.Duplicate

Localizar Ctrl+F Edit.Find

Localizar todas as referências Shift+F12 Edit.FindAllReferences

Localizar nos arquivos Ctrl+Shift+F Edit.FindinFiles

Localizar próximo F3 Edit.FindNext

Localizar Próxima seleção Ctrl+F3 Edit.FindNextSelected

Localizar anterior Shift+F3 Edit.FindPrevious

Localizar seleção anterior Ctrl+Shift+F3 Edit.FindPreviousSelected

Gerar método Ctrl+K, Ctrl+M Edit.GenerateMethod

Ir para Ctrl+G Edit.GoTo

Ir para Todos Ctrl+, ou Ctrl+T Edit.GoToAll

Ir para a declaração Ctrl+F12 Edit.GoToDeclaration

Ir para definição F12 Edit.GoToDefinition

Ir para membro Ctrl+1, Ctrl+M ou Ctrl+1, M ou Alt+\ Edit.GoToMember

Ir para o próximo local F8 (próximo erro na Lista de Erros ou na janela Edit.GoToNextLocation


Saída)

Ir para o local de pré- Shift+F8 (erro anterior na Lista de Erros ou na Edit.GoToPrevLocation


desenvolvimento janela Saída)

Inserir Snippet Ctrl+K, Ctrl+X Edit.InsertSnippet

Mover o controle para baixo Ctrl+Seta para baixo Edit.MoveControlDown

Mover o controle para baixo na Seta para Baixo Edit.MoveControlDownGrid


grade

Mover o controle para a esquerda Ctrl+Seta para a esquerda Edit.MoveControlLeft

Mover a grade esquerda do controle Seta para a esquerda Edit.MoveControlLeftGrid

Mover o controle para a direita Ctrl+Seta para a direita Edit.MoveControlRight

Mover a grade direita do controle Seta para a direita Edit.MoveControlRightGrid

Mover o controle para cima Ctrl+seta para cima Edit.MoveControlUp

Mover o controle para cima da grade Seta para Cima Edit.MoveControlUpGrid

Próximo indicador Ctrl+K, Ctrl+N Edit.NextBookmark

Próximo indicador na pasta Ctrl+Shift+K, Ctrl+Shift+N Edit.NextBookmarkInFolder

Abrir arquivo Ctrl+Shift+G (abre o nome do arquivo sob o Edit.OpenFile


cursor)
Comandos Atalhos do teclado ID de Comando

Colar Ctrl+V Edit.Paste

ou

Shift+Ins

Indicador anterior Ctrl+K, Ctrl+P Edit.PreviousBookmark

Indicador anterior na pasta Ctrl+Shift+K, Ctrl+Shift+P Edit.PreviousBookmarkInFolder

Localização rápida de símbolo Shift+Alt+F12 Edit.QuickFindSymbol

Refazer Ctrl+Y Edit.Redo

ou

Ctrl+Shift+Z

ou

Shift+Alt+Backspace

Atualizar referências remotas Ctrl+Shift+J Edit.RefreshRemoteReferences

Substitua Ctrl+H Edit.Replace

Substituir nos arquivos Ctrl+Shift+H Edit.ReplaceinFiles

Selecionar tudo Ctrl+A Edit.SelectAll

Selecionar o próximo controle Guia Edit.SelectNextControl

Selecionar controle anterior Shift+Tab Edit.SelectPreviousControl

Mostrar grade de bloco Enter Edit.ShowTileGrid

Dimensionar controle para baixo Ctrl+Shift+Seta para baixo Edit.SizeControlDown

Dimensionar o controle para baixo na Shift+Seta para baixo Edit.SizeControlDownGrid


grade

Dimensionar o controle para a Ctrl+Shift+Seta para a esquerda Edit.SizeControlLeft


esquerda

Dimensionar controle para a Shift+Seta para a esquerda Edit.SizeControlLeftGrid


esquerda da grade

Dimensionar o controle para a direita Ctrl+Shift+Seta para a direita Edit.SizeControlRight

Dimensionar o controle para a direita Shift+Seta para a direita Edit.SizeControlRightGrid


da grade

Dimensionar o controle para cima Ctrl+Shift+Seta para cima Edit.SizeControlUp

Dimensionar o controle para cima da Shift+Seta para cima Edit.SizeControlUpGrid


grade

Parar a pesquisa Alt+F3, S Edit.StopSearch


Comandos Atalhos do teclado ID de Comando

Envolver com Ctrl+K, Ctrl+S Edit.SurroundWith


(disponível apenas no Visual Studio 2019 e
anterior)

Desfazer Ctrl+Z Edit.Undo

ou

Alt+Backspace

Menus de contexto do editor: atalhos globais

Comandos Atalhos do ID de Comando


teclado

Condições de ponto de Alt+F9, C EditorContextMenus.CodeWindow.Breakpoint.BreakpointConditions


interrupção

Rótulos de edição de Alt+F9, L EditorContextMenus.CodeWindow.Breakpoint.BreakpointEditlabels


ponto de interrupção

Inserir um ponto de Shift+Alt+F9, T EditorContextMenus.CodeWindow.Breakpoint.InsertTemporaryBreakpoint


interrupção temporário

Mostrar item Ctrl+` EditorContextMenus.CodeWindow.CodeMap.ShowItem

Execute (executar) Ctrl+Alt+F5 EditorContextMenus.CodeWindow.Execute

Ir para a exibição Ctrl+M, Ctrl+G EditorContextMenus.CodeWindow.GoToView

Ativar/desativar arquivo Crtl+K, Ctrl+O EditorContextMenus.CodeWindow.ToggleHeaderCodeFile


de cabeçalho/código (letra "O")

Exibir hierarquia de Ctrl+K, Ctrl+T EditorContextMenus.CodeWindow.ViewCallHierarchy


chamada
ou

Ctrl+K, T

Arquivo: atalhos globais

Comandos Atalhos do teclado ID de Comando

Fechar Alt+F4 File.Exit

Novo arquivo Ctrl+N File.NewFile

Novo Projeto Ctrl+Shift+N File.NewProject

Novo site Shift+Alt+N File.NewWebSite

Abrir arquivo Ctrl+O (letra "O") File.OpenFile

Abrir projeto Ctrl+Shift+O (letra "O") File.OpenProject

Abrir site Shift+Alt+O (letra "O") File.OpenWebSite


Comandos Atalhos do teclado ID de Comando

Imprimir Ctrl+P File.Print

Salvar tudo Ctrl+Shift+S File.SaveAll

Salvar Itens selecionados Ctrl+S File.SaveSelectedItems

Exibir no navegador Ctrl+Shift+W File.ViewinBrowser

Ajuda: atalhos globais

Comandos Atalhos do teclado ID de Comando

Adicionar e remover conteúdo de ajuda Ctrl+Alt+F1 Help.AddandRemoveHelpContent

ajuda F1 F1 Help.F1Help

Exibir a ajuda Ctrl+F1 Help.ViewHelp

Ajuda da janela Shift+F1 Help.WindowHelp

Teste de carga: atalhos globais

Comando Atalho de teclado ID de Comando

Ir para o painel do contador Ctrl+R, Q LoadTest.JumpToCounterPane

Outros menus de contexto: atalhos globais

Comando Atalho de ID de Comando


teclado

Adicionar novo Inserção OtherContextMenus.MicrosoftDataEntityDesignContext.AddNewDiagram


diagrama

Projeto: atalhos globais

Comandos Atalhos do teclado ID de Comando

Adicionar item existente Shift+Alt+A Project.AddExistingItem

Adicionar novo item Ctrl+Shift+A Project.AddNewItem

Assistente de Classe Ctrl+Shift+X Project.ClassWizard

Substituições Ctrl+Alt+Ins Project.Override

Visualizar alterações Alt+; e, em seguida, Alt+C Project.Previewchanges

Publicar arquivos selecionados Alt+; e, em seguida, Alt+P Project.Publishselectedfiles

Substituir os arquivos selecionados do servidor Alt+; e, em seguida, Alt+R Project.Replaceselectedfilesfromserver


Menus de contexto de projeto e solução: atalhos globais

Comandos Atalhos do teclado ID de Comando

Mover para baixo Alt+Seta para baixo ProjectandSolutionContextMenus.Item.MoveDown

Mover para cima Alt+Up Arrow ProjectandSolutionContextMenus.Item.MoveUp

Refatoração: atalhos globais

Comandos Atalhos do teclado ID de Comando

Encapsular campo Ctrl+R, Ctrl+E Refactor.EncapsulateField

Extrair interface Ctrl+R, Ctrl+I Refactor.ExtractInterface

Extrair método Ctrl+R, Ctrl+M Refactor.ExtractMethod

Remover parâmetros Ctrl+R, Ctrl+V Refactor.RemoveParameters

Renomear Ctrl+R, Ctrl+R Refactor.Rename

Reordenar parâmetros Crtl+R, Ctrl+O (letra "O") Refactor.ReorderParameters

Gerenciador de soluções: atalhos globais

Comandos Atalhos do teclado ID de Comando

Abrir filtro de arquivos Ctrl+[, O (letra "O") SolutionExplorer.OpenFilesFilter

ou

Ctrl+[, Ctrl+O (letra "O")

Filtro de alterações pendentes Ctrl+[, P SolutionExplorer.PendingChangesFilter

ou

Ctrl+[, Ctrl+P

Sincronizar com documento ativo Ctrl+[, S SolutionExplorer.SyncWithActiveDocument

ou

Ctrl+[, Ctrl+S

Equipe: atalhos globais

Comandos Atalhos do teclado ID de Comando

Ir para ramificações do Git Ctrl+0 (zero), Ctrl+N Team.Git.GoToGitBranches

ou

Ctrl+0, N
Comandos Atalhos do teclado ID de Comando

Ir para alterações do Git Ctrl+0 (zero), Ctrl+G Team.Git.GoToGitChanges

ou

Ctrl+0, G

Ir para confirmações do Git Ctrl+0 (zero), Ctrl+O (letra "O") Team.Git.GoToGitCommits

ou

Ctrl+0, O

Pesquisa do gerenciador de equipe Ctrl+' Team.TeamExplorerSearch

Menus de contexto do Team Foundation: atalhos globais

Comandos Atalhos do teclado ID de Comando

Ir para compilações Ctrl+0 (zero), Ctrl+B TeamFoundationContextMenus.Commands.GoToBuilds

ou

Ctrl+0, B

Ir para conectar Ctrl+0 (zero), Ctrl+C TeamFoundationContextMenus.Commands.GoToConnect

ou

Ctrl+0, C

Ir para documentos Ctrl+0 (zero), Ctrl+D TeamFoundationContextMenus.Commands.GoToDocuments

ou

Ctrl+0, D

Ir para Início Ctrl+0 (zero), Ctrl+H TeamFoundationContextMenus.Commands.GoToHome

ou

Ctrl+0, H

Ir para meu trabalho Ctrl+0 (zero), Ctrl+M TeamFoundationContextMenus.Commands.GoToMyWork

ou

Ctrl+0, M

Ir para alterações pendentes Ctrl+0 (zero), Ctrl+P TeamFoundationContextMenus.Commands.GoToPendingChanges

ou

Ctrl+0, P
Comandos Atalhos do teclado ID de Comando

Ir para relatórios Ctrl+0 (zero), Ctrl+R TeamFoundationContextMenus.Commands.GoToReports

ou

Ctrl+0, R

Ir para configurações Ctrl+0 (zero), Ctrl+S TeamFoundationContextMenus.Commands.GoToSettings

ou

Ctrl+0, S

Ir para acesso via Web Ctrl+0 (zero), Ctrl+A TeamFoundationContextMenus.Commands.GoToWebAccess

ou

Ctrl+0, A

Ir para itens de trabalho Ctrl+0 (zero), Ctrl+W TeamFoundationContextMenus.Commands.GoToWorkItems

ou

Ctrl+0, W

Teste: atalhos globais

Comandos Atalhos do teclado ID de Comando

Usar o construtor de teste de interface do usuário codificado Ctrl+\, Ctrl+C Test.UseCodedUITestBuilder

Usar gravação de ação existente Ctrl+\, Ctrl+A Test.UseExistingActionRecording

Gerenciador de teste: atalhos globais

Comandos Atalhos do teclado ID de Comando

Depurar todos os testes Ctrl+R, Ctrl+A TestExplorer.DebugAllTests

Depurar todos os testes no contexto Ctrl+R, Ctrl+T TestExplorer.DebugAllTestsInContext

Depurar a última execução Ctrl+R, D TestExplorer.DebugLastRun

Repetir última execução Ctrl+R, L TestExplorer.RepeatLastRun

Executar todos os testes Ctrl+R, A TestExplorer.RunAllTests

Executar todos os testes no contexto Ctrl+R, T TestExplorer.RunAllTestsInContext

Mostrar gerenciador de testes Ctrl+E, T TestExplorer.ShowTestExplorer

Abrir guia Ctrl+E, L LiveUnitTesting.OpenTab

Resultados da cobertura de código Ctrl+E, C Test.CodeCoverageResults

Ferramentas: atalhos globais


Comandos Atalhos do teclado ID de Comando

Anexar ao processo Ctrl+Alt+P Tools.AttachtoProcess

Gerenciador de snippets de código Ctrl+K, Ctrl+B Tools.CodeSnippetsManager

Forçar gc Ctrl+Shift+Alt+F12, Ctrl+Shift+Alt+F12 Tools.ForceGC

Exibir: atalhos globais

Comandos Atalhos do teclado ID de Comando

Todos os Windows Shift+Alt+M View.AllWindows

Gerenciador de Ctrl+\, Ctrl+R View.ArchitectureExplorer


arquitetura

Para Trás Alt+Seta para a esquerda (funciona de maneira View.Backward


diferente do View.NavigateBackward no editor de
texto)

Janela de Indicadores Ctrl+K, Ctrl+W View.BookmarkWindow

Navegar para o próximo Ctrl+Shift+1 View.BrowseNext

Navegar para o anterior Ctrl+Shift+2 View.BrowsePrevious

Hierarquia de chamadas Ctrl+Alt+K View.CallHierarchy

Exibição de classe Ctrl+Shift+C View.ClassView

Combinação de exibição Ctrl+K, Ctrl+V View.ClassViewGoToSearchCombo


de classe ir para
pesquisa

Janela de definição de Ctrl+\, D View.CodeDefinitionWindow


código
ou

Ctrl+\, Ctrl+D

Janela Comando Ctrl+Alt+A View.CommandWindow

Fontes de dados Shift+Alt+D View.DataSources

Estrutura de tópicos do Ctrl+Alt+T View.DocumentOutline


documento

Editar rótulo F2 View.EditLabel

Lista de erros Ctrl+\, E View.ErrorList

ou

Ctrl+\, Ctrl+E

F# interativo Ctrl+Alt+F View.F#Interactive

Localizar resultados do Ctrl+Alt+F12 View.FindSymbolResults


símbolo
Comandos Atalhos do teclado ID de Comando

Encaminhar Alt+Seta para a direita (funciona de maneira View.Forward


diferente do View.NavigateForward no editor de
texto)

Encaminhar contexto de Ctrl+Shift+7 View.ForwardBrowseContext


navegação

Tela inteira Shift+Alt+Enter View.FullScreen

Navegar para trás Ctrl+- View.NavigateBackward

Navegar para frente Ctrl+Shift+- View.NavigateForward

Próximo erro Ctrl+Shift+F12 View.NextError

Notificações Ctrl+W, N View.Notifications

ou

Ctrl+W, Ctrl+N

Navegador de objetos Ctrl+Alt+J View.ObjectBrowser

Combinação navegador Ctrl+K, Ctrl+R View.ObjectBrowserGoToSearchCombo


de objetos ir para
pesquisa

Saída Ctrl+Alt+O (letra "O") View.Output

Contexto de navegação Ctrl+Shift+8 (somente C++) View.PopBrowseContext


pop

Janela de Propriedades F4 View.PropertiesWindow

Páginas de propriedades Shift+F4 View.PropertyPages

Modo de Exibição de Ctrl+Shift+E View.ResourceView


Recursos

Gerenciador de servidor Ctrl+Alt+S View.ServerExplorer

Mostrar marca Shift+Alt+F10 View.ShowSmartTag


inteligente
ou

Ctrl+.

Gerenciador de soluções Ctrl+Alt+L View.SolutionExplorer

Pesquisador de Objetos Ctrl+\, Ctrl+S View.SQLServerObjectExplorer


do SQL Server

Lista de tarefas Ctrl+\, T View.TaskList

ou

Ctrl+\, Ctrl+T

TFS team explorer Ctrl+\, Ctrl+M View.TfsTeamExplorer


Comandos Atalhos do teclado ID de Comando

Caixa de Ferramentas Ctrl+Alt+X View.Toolbox

Gerenciador de modelos Ctrl+\, Ctrl+U View.UMLModelExplorer


UML

Exibir Código F7 View.ViewCode

Designer de exibição Shift+F7 View.ViewDesigner

Navegador da Web Ctrl+Alt+R View.WebBrowser

Ampliar Ctrl+Shift+. View.ZoomIn

Reduzir Ctrl+Shift+, View.ZoomOut

Mostrar gerenciador de Ctrl+E, T TestExplorer.ShowTestExplorer


testes

Janela: atalhos globais

Comandos Atalhos do teclado ID de Comando

Ativar janela do documento Esc Window.ActivateDocumentWindow

Adicionar guia à seleção Ctrl+Shift+Alt+Space Window.AddTabtoSelection

Fechar janela do documento Ctrl+F4 Window.CloseDocumentWindow

Fechar janela da ferramenta. Shift+Esc Window.CloseToolWindow

Manter a guia aberta Ctrl+Alt+Home Window.KeepTabOpen

Mover para a barra de navegação Ctrl+F2 Window.MovetoNavigationBar

Próxima janela do documento Ctrl+F6 Window.NextDocumentWindow

Nav próxima janela do documento Ctrl+Tab Window.NextDocumentWindowNav

Próximo painel Alt+F6 Window.NextPane

Próximo painel dividido F6 Window.NextSplitPane

Próxima guia Ctrl+Alt+PgDn Window.NextTab

ou

Ctrl+PgDn

Próxima guia e adicionar à seleção Ctrl+Shift+Alt+PgDn Window.NextTabandAddtoSelection

Nav próxima da janela de ferramentas Alt+F7 Window.NextToolWindowNav

Janela do documento anterior Ctrl+Shift+F6 Window.PreviousDocumentWindow

Nav janela do documento anterior Ctrl+Shift+Tab Window.PreviousDocumentWindowNav

Painel anterior Shift+Alt+F6 Window.PreviousPane

Painel de divisão anterior Shift+F6 Window.PreviousSplitPane


Comandos Atalhos do teclado ID de Comando

Guia Anterior Ctrl+Alt+PgUp Window.PreviousTab

ou

Ctrl+PgUp

Guia e adicionar à seleção anterior Ctrl+Shift+Alt+PgUp Window.PreviousTabandAddtoSelection

Nav da janela de ferramentas anterior Shift+Alt+F7 Window.PreviousToolWindowNav

Início Rápido Ctrl+Q Window.QuickLaunch

Categoria anterior de início rápido Ctrl+Shift+Q Window.QuickLaunchPreviousCategory

Mostrar menu de encaixe Alt+- Window.ShowDockMenu

Mostrar lista de arquivos Ex MDI Ctrl+Alt+Down Arrow Window.ShowEzMDIFileList

Pesquisa do gerenciador de soluções Ctrl+; Window.SolutionExplorerSearch

Pesquisa de janela Alt+` Window.WindowSearch

Atalhos específicos do contexto


Esses atalhos de teclado são específicos do contexto, o que significa que você pode usá-los com menus e
itens no Visual Studio específicos para um tipo de projeto, linguagem de programação ou plataforma.

Designer de Modelo de Dados de Entidade ADO.NET


Diagrama de Classe
Editor de Teste de IU codificado
Editor de conjunto de dados
Visualizador de Diferenças
Explorador do DOM
F# Interativo
Editor de Documento Gráfico
Diagnóstico de gráfico
Editor de HTML
Exibição de Design do Editor HTML
Modo Código-Fonte do Editor de HTML
Diagrama da camada
Editor de Recursos Gerenciados
Janela do Editor de Mesclagem
Microsoft SQL Server Data Tools, Comparação de Esquemas
Microsoft SQL Server Data Tools, Designer de Tabela
Microsoft SQL Server Data Tools, Editor T-SQL
Microsoft SQL Server Data Tools, Editor T-SQL PDW
Inspetor de Página
Designer de consultas
Resultados da consulta
Designer de Relatório
Diagrama de sequências
Designer de Configurações
Gerenciador de Soluções
Team Explorer
Gerenciador de Testes
Editor de Texto
Diagrama de Atividade UML
Diagrama de Classe UML
Diagrama de Componente UML
Diagrama de Casos de Uso UML
Editor de Tecla Aceleradora do VC
Editor de Caixa de Diálogo do VC
Editor de Imagem do VC
Editor de Cadeia de Caracteres do VC
Designer de Exibição
Visual Studio
Designer de Formulários do Windows
Editor de Item de Trabalho
Visualização da Consulta de Item de Trabalho
Exibição de Resultados de Item de Trabalho
Designer de Fluxo de Trabalho
Designer de Interface do Usuário XAML
Editor XML (texto)
Designer de Esquema XML

Designer de modelo de dados de entidade ADO.NET: atalhos


específicos do contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado

Down Alt+Seta OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.Down


para baixo

Para baixo 5 Alt+PgDn OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.Down5

Para baixo Alt+End OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.ToBottom

Para cima Alt+Home OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.ToTop

Up Alt+Up OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.Up
Arrow

Para cima 5 Alt+PgUp OtherContextMenus.MicrosoftDataEntityDesignContext.MoveProperties.Up5

Renomear Ctrl+R, R OtherContextMenus.MicrosoftDataEntityDesignContext.Refactor.Rename

Remover do diagrama Shift+Del OtherContextMenus.MicrosoftDataEntityDesignContext.RemovefromDiagram

Gerenciador do Ctrl+1 View.EntityDataModelBrowser


modelo de dados de
entidade
Comandos Atalhos do ID de Comando
teclado

Detalhes de Ctrl+2 View.EntityDataModelMappingDetails


mapeamento do
modelo de dados de
entidade

Diagrama de classe: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Recolher Num - ClassDiagram.Collapse

Expanda Num + ClassDiagram.Expand

Excluir Ctrl+Del Edit.Delete

Expandir/recolher Lista de Tipos Base Shift+Alt+B Edit.ExpandCollapseBaseTypeList

Navegar para Lollipop Shift+Alt+L Edit.NavigateToLollipop

Remover do diagrama Excluir Edit.RemovefromDiagram

Exibir Código Enter View.ViewCode

Editor de Teste de IU Codificado: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado

Copiar Referência para a Ctrl+C OtherContextMenus.UITestEditorContextMenu.CopyReferencetoClipboard


Área de Transferência

Insira o atraso antes Ctrl+Alt+D OtherContextMenus.UITestEditorContextMenu.InsertDelayBefore

Localizar Todos Shift+Alt+L OtherContextMenus.UITestEditorContextMenu.LocateAll

Localizar controle de Ctrl+Shift+L OtherContextMenus.UITestEditorContextMenu.LocatetheUIControl


interface do usuário

Mover o código Ctrl+Alt+C OtherContextMenus.UITestEditorContextMenu.Movecode

Dividir em um novo Ctrl+Shift+T OtherContextMenus.UITestEditorContextMenu.Splitintoanewmethod


método

Editor de conjunto de dados: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Inserir coluna Inserção OtherContextMenus.ColumnContext.InsertColumn


Comandos Atalhos do teclado ID de Comando

Coluna Ctrl+L OtherContextMenus.DbTableContext.Add.Column

Visualizador de Diferenças: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Ignorar espaços em branco Ctrl+\, Ctrl+Barra de Diff.IgnoreTrimWhitespace


espaço

Exibição embutida Ctrl+\, Ctrl+1 Diff.InlineView

Exibição somente esquerda Ctrl+\, Ctrl+3 Diff.LeftOnlyView

Próxima diferença F8 Diff.NextDifference

Diferença anterior Shift+F8 Diff.PreviousDifference

Exibição somente à direita Ctrl+\, Ctrl+4 Diff.RightOnlyView

Exibição lado a lado Ctrl+\, Ctrl+2 Diff.SideBySideView

Alternar entre esquerda e direita Ctrl+\, Ctrl+Tab Diff.SwitchBetweenLeftAndRight

Sincronizar alternância do modo de Ctrl+\, Ctrl+Seta para Diff.SynchronizeViewToggle


exibição baixo

Adicionar comentário Ctrl+Shift+K EditorContextMenus.CodeWindow.AddComment

Editar arquivo local Ctrl+Shift+P EditorContextMenus.CodeWindow.EditLocalFile

Explorador do DOM: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Atualizar F5 DOMExplorer.Refresh

Selecionar elemento Ctrl+B DOMExplorer.SelectElement

Mostrar layout Ctrl+Shift+I DOMExplorer.ShowLayout

F# Interativo: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Cancelar avaliação interativa Ctrl+Break OtherContextMenus.FSIConsoleContext.CancelInteractiveEvaluation

Editor de Documentos do Graph: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado

Adicionar nó Inserção ArchitectureContextMenus.DirectedGraphContextMenu.Advanced.Add.AddNode

Ambas as B ArchitectureContextMenus.DirectedGraphContextMenu.Advanced.Select.BothDependencies
dependências

Dependências I ArchitectureContextMenus.DirectedGraphContextMenu.Advanced.Select.IncomingDependencies
de entrada

Dependências O ArchitectureContextMenus.DirectedGraphContextMenu.Advanced.Select.OutgoingDependencies
de saída

Novo Ctrl+Shift+K ArchitectureContextMenus.DirectedGraphContextMenu.NewComment


comentário.
ou

Ctrl+E, C

Remover Excluir ArchitectureContextMenus.DirectedGraphContextMenu.Remove

Renomear F2 ArchitectureContextMenus.DirectedGraphContextMenu.Rename

Diagnóstico gráfico: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Quadro de captura Nenhum Debug.Graphics.CaptureFrame

Mover a seleção de pixel para baixo Shift+Alt+Seta para baixo Gráficos.MoverSeleçãoDePixelParaBaixo

Mover seleção de pixel para a esquerda Shift+Alt+Seta para a esquerda Gráficos.MoverSeleçãoDePixelParaEsquerda

Mover a seleção de pixel para a direita Shift+Alt+Seta para a direita Gráficos.MoverSeleçãoDePixelParaDireita

Mover seleção de pixel para cima Shift+Alt+Seta para Cima Gráficos.MoverSeleçãodePixelParaCima

Aplicar zoom para o tamanho real Shift+Alt+0 (zero) Gráficos.AplicarZoomParaTamanhoReal

Zoom para ajustar na janela Shift+Alt+9 Gráficos.AplicarParaAjustarJanela

Ampliar Shift+Alt+= Gráficos.Ampliar

Reduzir Shift+Alt+- Gráficos.Reduzir

Editor HTML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Ir para o controlador Ctrl+M, Ctrl+G OtherContextMenus.HTMLContext.GoToController


Exibição de Design do Editor HTML: atalhos específicos do contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Mover o controle para baixo Ctrl+Seta para baixo Edit.MoveControlDown

Mover o controle para cima Ctrl+seta para cima Edit.MoveControlUp

Negrito Ctrl+B Format.Bold

Converter em hiperlink Ctrl+L Format.ConverttoHyperlink

Inserir indicador Ctrl+Shift+L Format.InsertBookmark

Itálico Ctrl+I Format.Italic

Underline Ctrl+U Format.Underline

Adicionar página de conteúdo Ctrl+M, Ctrl+C Project.AddContentPage

Coluna à esquerda Ctrl+Alt+Seta para a esquerda Table.ColumntotheLeft

Coluna à direita Ctrl+Alt+Seta para a Direita Table.ColumntotheRight

Linha acima Ctrl+Alt+Seta para cima Table.RowAbove

Linha abaixo Ctrl+Alt+Down Arrow Table.RowBelow

Controles não visuais net Ctrl+Shift+N View.ASP.NETNonvisualControls

Editar mestre Ctrl+M, Ctrl+M View.EditMaster

Próxima exibição Ctrl+PgDn View.NextView

Mostrar marca inteligente Shift+Alt+F10 View.ShowSmartTag

Exibir marcação Shift+F7 View.ViewMarkup

Guia Anterior Ctrl+PgUp Window.PreviousTab

Exibição de fonte do editor HTML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Ir para o controlador Ctrl+M, Ctrl+G OtherContextMenus.HTMLContext.GoToController

Próxima exibição Ctrl+PgDn View.NextView

Sincronizar exibições Ctrl+Shift+Y View.SynchronizeViews

Designer de exibição Shift+F7 View.ViewDesigner

Guia Anterior Ctrl+PgUp Window.PreviousTab

Diagrama de camada: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Excluir Shift+Delete Edit.Delete

Editor de recursos gerenciados: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Editar célula F2 Edit.EditCell

Remover Excluir Edit.Remove

Remover linha Ctrl+Delete Edit.RemoveRow

Cancelar seleção Escape Edit.SelectionCancel

Áudio Ctrl+4 Resources.Audio

Arquivos Ctrl+5 Resources.Files

Ícones Ctrl+3 Resources.Icons

Imagens Ctrl+2 Resources.Images

Outro Ctrl+6 Resources.Other

Cadeias de caracteres Ctrl+1 Resources.Strings

Janela do editor de mesclagem: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado

Definir foco na janela Alt+1 TeamFoundationContextMenus.MergeContextMenu.SetFocusonLeftWindow


esquerda

Definir foco na janela Alt+2 TeamFoundationContextMenus.MergeContextMenu.SetFocusonResultWindow


de resultados

Definir foco na janela Alt+3 TeamFoundationContextMenus.MergeContextMenu.SetFocusonRightWindow


direita

Microsoft SQL Server Data Tools, Comparação de Esquemas: atalhos


específicos do contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado
Comandos Atalhos do ID de Comando
teclado

Comparação de esquema SSDT Shift+Alt+C SQL.SSDTSchemaCompareCompare

Geração de script de comparação de esquemas SSDT Shift+Alt+G SQL.SSDTSchemaCompareGenerateScript

Próxima alteração de comparação de esquema SSDT Shift+Alt+. SQL.SSDTSchemaCompareNextChange

Alteração anterior de comparação de esquema SSDT Shift+Alt+, SQL.SSDTSchemaComparePreviousChange

Para comparação de esquema SSDT Alt+Break SQL.SSDTSchemaCompareStop

Atualizações de escrita de comparação de esquema Shift+Alt+U SQL.SSDTSchemaCompareWriteUpdates


SSDT

Microsoft SQL Server Data Tools, Designer de tabelas: atalhos


específicos do contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Confirmar todas as edições Shift+Alt+U CommitAllEdits

Expandir caracteres curingas Ctrl+R, E SQL.ExpandWildcards

ou

Ctrl+R, Ctrl+E

Qualificar nomes totalmente Ctrl+R, Q SQL.FullyqualifyNames

ou

Ctrl+R, Ctrl+Q

Mover para esquema Ctrl+R, M SQL.MovetoSchema

ou

Ctrl+R, Ctrl+M

Renomear F2 SQL.Rename

ou

Ctrl+R, R

ou

Ctrl+R, Ctrl+R

Exibir arquivo no painel de script Shift+Alt+PgDn ViewFileInScriptPanel

Microsoft SQL Server Data Tools, Editor T-SQL: atalhos específicos do


contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Confirmar todas as edições Shift+Alt+U CommitAllEdits

Executar com depurador Alt+F5 SQL.ExecuteWithDebugger

Expandir caracteres curingas Ctrl+R, E SQL.ExpandWildcards

ou

Ctrl+R, Ctrl+E

Qualificar nomes totalmente Ctrl+R, Q SQL.FullyqualifyNames

ou

Ctrl+R, Ctrl+Q

Mover para esquema Ctrl+R, M SQL.MovetoSchema

ou

Ctrl+R, Ctrl+M

Renomear F2 SQL.Rename

ou

Ctrl+R, R

ou

Ctrl+R, Ctrl+R

Consulta de cancelamento do editor T SQL Alt+Break SQL.TSqlEditorCancelQuery

Consulta de execução do editor T SQL Ctrl+Shift+E SQL.TSqlEditorExecuteQuery

Resultados do editor T SQL como arquivo Ctrl+D, F SQL.TSqlEditorResultsAsFile

Resultados do editor T SQL como grade Ctrl+D, G SQL.TSqlEditorResultsAsGrid

Resultados do editor T SQL como texto Ctrl+D, T SQL.TSqlEditorResultsAsText

Mostrar plano estimado do editor T SQL Ctrl+D, E SQL.TSqlEditorShowEstimatedPlan

Plano de execução de alternância do editor T SQL Ctrl+D, A SQL.TSqlEditorToggleExecutionPlan

Painel de resultados de alternância do editor T SQL Ctrl+D, R SQL.TSqlEditorToggleResultsPane

Consulta de clone do editor T SQL Ctrl+Alt+N SQL.TSqlEditorCloneQuery

Combinação de banco de dados do editor T SQL Shift+Alt+PgDn SQL.TSqlEditorDatabaseCombo

Microsoft SQL Server Data Tools, Editor PDW T-SQL: atalhos


específicos do contexto
Os atalhos específicos desse contexto são:
Comandos Atalhos do teclado ID de Comando

Consulta de cancelamento do editor T SQL Alt+Break SQL.TSqlEditorCancelQuery

Consulta de execução do editor T SQL Ctrl+Shift+E SQL.TSqlEditorExecuteQuery

Resultados do editor T SQL como arquivo Ctrl+D, F SQL.TSqlEditorResultsAsFile

Resultados do editor T SQL como grade Ctrl+D, G SQL.TSqlEditorResultsAsGrid

Resultados do editor T SQL como texto Ctrl+D, T SQL.TSqlEditorResultsAsText

Mostrar plano estimado do editor T SQL Ctrl+D, E SQL.TSqlEditorShowEstimatedPlan

Plano de execução de alternância do editor T SQL Ctrl+D, A SQL.TSqlEditorToggleExecutionPlan

Painel de resultados de alternância do editor T SQL Ctrl+D, R SQL.TSqlEditorToggleResultsPane

Consulta de clone do editor T SQL Ctrl+Alt+N SQL.TSqlEditorCloneQuery

Consulta de clone do editor T SQL Shift+Alt+PgDn SQL.TSqlEditorCloneQuery

Inspetor de página: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Minimizar F12 PageInspector.Minimize

Designer de consultas: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Cancelar a recuperação de dados Ctrl+T QueryDesigner.CancelRetrievingData

Critérios Ctrl+2 QueryDesigner.Criteria

Diagrama Ctrl+1 QueryDesigner.Diagram

Executar SQL Ctrl+R QueryDesigner.ExecuteSQL

Linha Goto Ctrl+G QueryDesigner.GotoRow

Modo de junção Ctrl+Shift+J QueryDesigner.JoinMode

Resultados Ctrl+4 QueryDesigner.Results

Sql Ctrl+3 QueryDesigner.SQL

Resultados da consulta: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando


Comandos Atalhos do teclado ID de Comando

Nova linha dos resultados da consulta Alt+End SQL.QueryResultsNewRow

Atualização dos resultados da consulta Shift+Alt+R SQL.QueryResultsRefresh

Parar resultados da Consulta Alt+Break SQL.QueryResultsStop

Designer de relatórios: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Quebrar linha Enter Edit.BreakLine

Char à esquerda Seta para a esquerda Edit.CharLeft

Estender char para a esquerda Shift+Seta para a esquerda Edit.CharLeftExtend

Char à direita Seta para a direita Edit.CharRight

Estender char à direita Shift+Seta para a direita Edit.CharRightExtend

Guia Inserir Guia Edit.InsertTab

Uma linha abaixo Seta para Baixo Edit.LineDown

Extensão de linha para baixo Shift+Seta para baixo Edit.LineDownExtend

Uma linha acima Seta para Cima Edit.LineUp

Estender linha para cima Shift+Seta para cima Edit.LineUpExtend

Mover o controle para baixo Ctrl+Seta para baixo Edit.MoveControlDown

Mover o controle para a esquerda Ctrl+Seta para a esquerda Edit.MoveControlLeft

Mover o controle para a direita Ctrl+Seta para a direita Edit.MoveControlRight

Mover o controle para cima Ctrl+seta para cima Edit.MoveControlUp

Cancelar seleção Esc Edit.SelectionCancel

Dimensionar controle para baixo Ctrl+Shift+Seta para baixo Edit.SizeControlDown

Dimensionar o controle para a esquerda Ctrl+Shift+Seta para a esquerda Edit.SizeControlLeft

Dimensionar o controle para a direita Ctrl+Shift+Seta para a direita Edit.SizeControlRight

Dimensionar o controle para cima Ctrl+Shift+Seta para cima Edit.SizeControlUp

Tabulação à esquerda Shift+Tab Edit.TabLeft

dados de relatório Ctrl+Alt+D View.ReportData

Diagrama de sequência: atalhos específicos do contexto


Os atalhos específicos desse contexto são:
Comandos Atalhos do teclado ID de Comando

Navegar para código F12 ArchitectureDesigner.Sequence.NavigateToCode

Excluir Shift+Del Edit.Delete

Designer de configurações: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Editar célula F2 Edit.EditCell

Remover linha Ctrl+Delete Edit.RemoveRow

Cancelar seleção Esc Edit.SelectionCancel

Exibir Código F7 View.ViewCode

Gerenciador de soluções: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de ID de Comando


teclado

Exibir em inspetor de página Ctrl+K, ClassViewContextMenus.ClassViewProject.View.ViewinPageInspector


Ctrl+G

Adicionar rapidamente um novo Shift+F2 AddQuickFile


item ou classe

Team Explorer: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho do ID de Comando


Teclado

Excluir Excluir Edit.Delete

Renomear F2 File.Rename

Ir para Alt+Home TeamFoundationContextMenus.Commands.GoToTeamExplorerNavigation


navegação
do Team
Explorer

Ir para Alt+Seta TeamFoundationContextMenus.Commands.GoToTeamExplorerNextSectionContent


conteúdo para baixo
da
próxima
seção do
Team
Explorer
Comando Atalho do ID de Comando
Teclado

Ir para Alt+0 (zero) TeamFoundationContextMenus.Commands.GoToTeamExplorerPageContent


Conteúdo
da Página
do Team
Explorer

Ir para Alt+Up TeamFoundationContextMenus.Commands.GoToTeamExplorerPreviousSectionContent


Conteúdo Arrow
da Seção
Anterior
do Team
Explorer

Ir para Alt+1 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection1Content


conteúdo
da seção 1
do Team
Explorer

Ir para Alt+2 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection2Content


conteúdo
da seção 2
do Team
Explorer

Ir para Alt+3 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection3Content


conteúdo
da seção 3
do Team
Explorer

Ir para Alt+4 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection4Content


conteúdo
da seção 4
do Team
Explorer

Ir para Alt+5 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection5Content


conteúdo
da seção 5
do Team
Explorer

Ir para Alt+6 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection6Content


conteúdo
da seção 6
do Team
Explorer

Ir para Alt+7 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection7Content


conteúdo
da seção 7
do Team
Explorer
Comando Atalho do ID de Comando
Teclado

Ir para Alt+8 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection8Content


conteúdo
da seção 8
do Team
Explorer

Ir para Alt+9 TeamFoundationContextMenus.Commands.GoToTeamExplorerSection9Content


conteúdo
da seção 9
do Team
Explorer

Navegar Alt+Left TeamFoundationContextMenus.Commands.TeamExplorerNavigateBackward


para trás Arrow
no Team
Explorer

Navegar Alt+Right TeamFoundationContextMenus.Commands.TeamExplorerNavigateForward


para Arrow
frente no
Team
Explorer

Contexto Shift+Alt+C TeamFoundationContextMenus.MyWorkPageInProgress.TfsContextMyWorkPageCreateCopyWI


do TFS
minha
página de
trabalho
criar cópia
wi

Contexto Shift+Alt+L TeamFoundationContextMenus.MyWorkPageInProgress.TfsContextMyWorkPageNewLinkedWI


TFS minha
página de
trabalho
novo wi
vinculado

Atualizar F5 View.Refresh

Gerenciador de testes: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Abrir teste F12 TestExplorer.OpenTest

Editor de texto: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando


Comandos Atalhos do teclado ID de Comando

Quebrar linha Enter Edit.BreakLine

ou

Shift+Enter

Char à esquerda Seta para a Edit.CharLeft


esquerda

Estender char para Shift+Seta para a Edit.CharLeftExtend


a esquerda esquerda

Coluna de extensão Shift+Alt+Seta para Edit.CharLeftExtendColumn


esquerda char a esquerda

Char à direita Seta para a direita Edit.CharRight

Estender char à Shift+Seta para a Edit.CharRightExtend


direita direita

Coluna de extensão Shift+Alt+Seta para Edit.CharRightExtendColumn


à direita char a direita

Limpar indicadores Ctrl+K, Ctrl+L Edit.ClearBookmarks

Recolher todas as Ctrl+M, Ctrl+A Edit.CollapseAllOutlining


estruturas de
tópicos

Recolher a região Ctrl+M, Ctrl+S Edit.CollapseCurrentRegion


atual

Recolher marca Ctrl+M, Ctrl+T Edit.CollapseTag

Recolher para Ctrl+M, Ctrl+O (letra Edit.CollapseToDefinitions


definições "O")

Seleção de contrato Shift+Alt+- Edit.ContractSelection

Comentar seleção Ctrl+K, Ctrl+C Edit.CommentSelection

Completar a palavra Ctrl+Espaço Edit.CompleteWord

ou

Alt+Right Arrow

Copiar dica de Ctrl+Shift+Alt+C Edit.CopyParameterTip


parâmetro

Diminuir o nível de Alt+, Edit.DecreaseFilterLevel


filtro

Excluir para trás Backspace Edit.DeleteBackwards

ou

Shift+Bkspce
Comandos Atalhos do teclado ID de Comando

Excluir espaço em Ctrl+K, Ctrl+\ Edit.DeleteHorizontalWhiteSpace


branco horizontal

Fim do documento Ctrl+End Edit.DocumentEnd

Extensão final do Ctrl+Shift+End Edit.DocumentEndExtend


documento

Início do Ctrl+Home Edit.DocumentStart


documento.

Extensão de início Ctrl+Shift+Home Edit.DocumentStartExtend


do documento

Expandir todas as Ctrl+M, Ctrl+X Edit.ExpandAllOutlining


estruturas de
tópicos

Expandir a região Ctrl+M, Ctrl+E Edit.ExpandCurrentRegion


atual

Expandir seleção Shift+Alt+= Edit.ExpandSelection

Expandir a seleção Shift+Alt+] Edit.ExpandSelectiontoContainingBlock


para o bloco de
contenção

Formatar Ctrl+K, Ctrl+D Edit.FormatDocument


documento

Formatar seleção Ctrl+K, Ctrl+F Edit.FormatSelection

Goto para todos Ctrl+T Edit.GotoAll

ou

Ctrl+,

Chave goto Ctrl+] Edit.GotoBrace

Extensão da chave Ctrl+Shift+] Edit.GotoBraceExtend


goto

Goto recente Ctrl+T,R Edit.GotoRecent

Goto no próximo Alt+PgDn Edit.GotoNextIssueinFile


problema no
arquivo

Goto no problema Alt+PgUp Edit.GotoPreviousIssueinFile


anterior no arquivo

Ocultar seleção Ctrl+M, Ctrl+H Edit.HideSelection

Aumentar o nível Alt+. Edit.IncreaseFilterLevel


de filtro

Pesquisa Ctrl+I Edit.IncrementalSearch


incremental
Comandos Atalhos do teclado ID de Comando

Inserir sinais de Shift+Alt+; Edit.InsertCaretsatAllMatching


Interpolação em
todos os
correspondentes

Inserir próximo Shift+Alt+. Edit.InsertNextMatchingCaret


sinal de
interpolação
correspondente

Guia Inserir Guia Edit.InsertTab

Corte de linha Ctrl+L Edit.LineCut

Exclusão de linha Ctrl+Shift+L Edit.LineDelete

Uma linha abaixo Seta para Baixo Edit.LineDown

Extensão de linha Shift+Seta para Edit.LineDownExtend


para baixo baixo

Coluna de extensão Shift+Alt+Seta para Edit.LineDownExtendColumn


de linha para baixo baixo

Fim da linha End Edit.LineEnd

Extensão de fim da Shift+End Edit.LineEndExtend


linha

Coluna de extensão Shift+Alt+End Edit.LineEndExtendColumn


de fim da linha

Linha aberta acima Ctrl+Enter Edit.LineOpenAbove

Linha aberta abaixo Ctrl+Shift+Enter Edit.LineOpenBelow

Início da linha Início Edit.LineStart

Extensão do início Shift+Home Edit.LineStartExtend


da linha

Coluna de extensão Shift+Alt+Home Edit.LineStartExtendColumn


de início da linha

Transposição de Shift+Alt+T Edit.LineTranspose


linha

Uma linha acima Seta para Cima Edit.LineUp

Estender linha para Shift+Seta para Edit.LineUpExtend


cima cima

Alinhar coluna de Shift+Alt+Seta para Edit.LineUpExtendColumn


extensão Cima

Listar os membros Ctrl+J Edit.ListMembers

Colocar em Ctrl+U Edit.MakeLowercase


minúsculas
Comandos Atalhos do teclado ID de Comando

Colocar em Ctrl+Shift+U Edit.MakeUppercase


maiúsculas

Mover linhas Alt+Seta para baixo Edit.MoveSelectedLinesDown


selecionadas para
paixo

Mover linhas Alt+Up Arrow Edit.MoveSelectedLinesUp


selecionadas para
cima

Próxima referência Ctrl+Shift+Seta para Edit.NextHighlightedReference


realçada baixo

Modo de sobretipo Inserção Edit.OvertypeMode

Uma página abaixo PgDn Edit.PageDown

Extensão de página Shift+PgDn Edit.PageDownExtend


para baixo

Uma página acima PgUp Edit.PageUp

Extensão de página Shift+PgUp Edit.PageUpExtend


para cima

Informações de Ctrl+Shift+Barra de Edit.ParameterInfo


parâmetro espaços

Colar dica de Ctrl+Shift+Alt+P Edit.PasteParameterTip


parâmetro

Espiar para trás Ctrl+Alt+- Edit.PeekBackward

Inspecionar Alt+F12 Edit.PeekDefinition


Definição

Espiar para frente Ctrl+Alt+= Edit.PeekForward

Referência realçada Ctrl+Shift+Seta para Edit.PreviousHighlightedReference


anterior cima

Informações Ctrl+K, Ctrl+I Edit.QuickInfo


rápidas

Pesquisa Ctrl+Shift+I Edit.ReverseIncrementalSearch


incremental inversa

Rolar linha para Ctrl+Seta para baixo Edit.ScrollLineDown


baixo

Rolar linha para Ctrl+seta para cima Edit.ScrollLineUp


cima

Selecionar a palavra Ctrl+W Edit.SelectCurrentWord


atual

Cancelar seleção Escape Edit.SelectionCancel


Comandos Atalhos do teclado ID de Comando

Selecione para Ctrl+= Edit.SelectToLastGoBack


voltar pela última
vez

Mostrar menu de Ctrl+K, Ctrl+` Edit.ShowCodeLensMenu


lente de código

Mostrar menu de Alt+` Edit.ShowNavigateMenu


navegação

Interromper Ctrl+M, Ctrl+U Edit.StopHidingCurrent


ocultação atual

Interromper Ctrl+M, Ctrl+P Edit.StopOutlining


estrutura de tópicos

Trocar âncora Ctrl+K, Ctrl+A Edit.SwapAnchor

Tabulação à Shift+Tab Edit.TabLeft


esquerda

Ativar/Desativar Ctrl+M, Ctrl+L Edit.ToggleAllOutlining


estrutura de tópicos
para tudo

Ativar/desativar Ctrl+K, Ctrl+K Edit.ToggleBookmark


indicador

Alternar o modo de Ctrl+Alt+Space Edit.ToggleCompletionMode


conclusão

Ativar/Desativar Ctrl+M, Ctrl+M Edit.ToggleOutliningExpansion


Expansão da
Estrutura de
Tópicos

Alternar atalho da Ctrl+K, Ctrl+H Edit.ToggleTaskListShortcut


lista de tarefas

Ativar/desativar Ctrl+E, Ctrl+W Edit.ToggleWordWrap


quebra automática
de linha

Remover Ctrl+K, Ctrl+U Edit.UncommentSelection


Comentários da
Seleção

Exibir parte inferior Ctrl+PgDn Edit.ViewBottom

Extensão da Ctrl+Shift+PgDn Edit.ViewBottomExtend


exibição da parte
inferior

Exibir parte Ctrl+PgUp Edit.ViewTop


superior

Extensão exibição Ctrl+Shift+PgUp Edit.ViewTopExtend


da parte superior
Comandos Atalhos do teclado ID de Comando

Exibir espaço em Ctrl+R, Ctrl+W Edit.ViewWhiteSpace


branco

Excluir palavra até o Ctrl+Delete Edit.WordDeleteToEnd


fim

Excluir palavra até o Ctrl+Backspace Edit.WordDeleteToStart


início

Próxima palavra Ctrl+Seta para a Edit.WordNext


direita

Estender nova Ctrl+Shift+Seta para Edit.WordNextExtend


palavra a direita

Coluna estender Ctrl+Shift+Alt+Seta Edit.WordNextExtendColumn


próxima palavra para a Direita

Palavra anterior Ctrl+Seta para a Edit.WordPrevious


esquerda

Estender palavra Ctrl+Shift+Seta para Edit.WordPreviousExtend


anterior a esquerda

Coluna estender Ctrl+Shift+Alt+Seta Edit.WordPreviousExtendColumn


palavra anterior para a Esquerda

Transpor palavra Ctrl+Shift+T Edit.WordTranspose

Executar em Alt+Enter EditorContextMenus.CodeWindow.ExecuteInInteractive


Interativo

Executar linha em Alt+' EditorContextMenus.CodeWindow.ExecuteLineInInteractive


interativo

Exibir em inspetor Ctrl+K, Ctrl+G OtherContextMenus.HTMLContext.ViewinPageInspector


de página

Movimentação de Alt+PgDn TeamFoundationContextMenus.Annotate.TfsAnnotateMoveNextRegion


anotação do TFS na
próxima região

Movimentação de Alt+PgUp TeamFoundationContextMenus.Annotate.TfsAnnotateMovePreviousRegion


anotação TFS
região anterior

Diagrama de atividade UML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Excluir Shift+Del Edit.Delete

Diagrama de classe UML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:
Comando Atalho de teclado ID de Comando

Excluir do modelo Shift+Del Edit.DeleteFromModel

Diagrama de componente UML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Excluir do modelo Shift+Del Edit.DeleteFromModel

Diagrama de caso de uso UML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Excluir do modelo Shift+Del Edit.DeleteFromModel

Editor do Acelerador de VC: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Novo acelerador Inserção Edit.NewAccelerator

Próxima tecla digitada Ctrl+W Edit.NextKeyTyped

Editor de diálogo VC: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Mover o controle para baixo Seta para Baixo Edit.MoveControlDown

Mover o controle para a esquerda Seta para a esquerda Edit.MoveControlLeft

Mover o controle para a direita Seta para a direita Edit.MoveControlRight

Mover o controle para cima Seta para Cima Edit.MoveControlUp

Rolar coluna à esquerda Ctrl+Seta para a esquerda Edit.ScrollColumnLeft

Rolar coluna para a direita Ctrl+Seta para a direita Edit.ScrollColumnRight

Rolar linha para baixo Ctrl+Seta para baixo Edit.ScrollLineDown

Rolar linha para cima Ctrl+seta para cima Edit.ScrollLineUp

Dimensionar controle para baixo Shift+Seta para baixo Edit.SizeControlDown

Dimensionar o controle para a esquerda Shift+Seta para a esquerda Edit.SizeControlLeft


Comandos Atalhos do teclado ID de Comando

Dimensionar o controle para a direita Shift+Seta para a direita Edit.SizeControlRight

Dimensionar o controle para cima Shift+Seta para cima Edit.SizeControlUp

Alinhar partes inferiores Ctrl+Shift+Seta para baixo Format.AlignBottoms

Alinhar centros Shift+F9 Format.AlignCenters

Alinhar esquerdas Ctrl+Shift+Seta para a esquerda Format.AlignLefts

Alinhar meios F9 Format.AlignMiddles

Alinhar direitas Ctrl+Shift+Seta para a direita Format.AlignRights

Alinhar partes superiores Ctrl+Shift+Seta para cima Format.AlignTops

Parte inferior do botão Ctrl+B Format.ButtonBottom

Botão direito Ctrl+R Format.ButtonRight

Centralizar horizontalmente Ctrl+Shift+F9 Format.CenterHorizontal

Centralizar verticalmente Ctrl+F9 Format.CenterVertical

Verificar mnemônica Ctrl+M Format.CheckMnemonics

Dimensionar ao Conteúdo Shift+F7 Format.SizetoContent

Espaço de uma ponta a outra. Alt+Right Arrow Format.SpaceAcross

ou

Alt+Left Arrow

Espaço para baixo Alt+Up Arrow Format.SpaceDown

ou

Alt+Seta para baixo

Ordem de tabulação Ctrl+D Format.TabOrder

Testar caixa de diálogo Ctrl+T Format.TestDialog

Ativar/desativar guias Ctrl+G Format.ToggleGuides

Editor de imagem VC: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Ferramenta Airbrush Ctrl+A Image.AirbrushTool

Ferramenta de pincel Ctrl+B Image.BrushTool

Copiar e Contornar Seleção Ctrl+Shift+U Image.CopyandOutlineSelection

Desenhar Opaco Ctrl+J Image.DrawOpaque


Comandos Atalhos do teclado ID de Comando

Ferramenta de elipse ALT+P Image.EllipseTool

Ferramenta apagar Ctrl+Shift+I Image.EraseTool

Ferramenta de elipse preenchida Ctrl+Shift+Alt+P Image.FilledEllipseTool

Ferramenta de retângulo preenchido Ctrl+Shift+Alt+R Image.FilledRectangleTool

Ferramenta de retângulo arredondado Ctrl+Shift+Alt+W Image.FilledRoundedRectangleTool


preenchida

Ferramenta Preencher Ctrl+F Image.FillTool

Inverter Horizontalmente Ctrl+H Image.FlipHorizontal

Inverter Verticalmente Shift+Alt+H Image.FlipVertical

Pincel maior Ctrl+= Image.LargerBrush

Ferramenta de linha Ctrl+L Image.LineTool

Ferramenta de ampliação Ctrl+M Image.MagnificationTool

Ampliar Ctrl+Shift+M Image.Magnify

Novo tipo de imagem Inserção Image.NewImageType

Próxima cor Ctrl+] Image.NextColor

ou

Ctrl+Seta para a direita

Próxima cor à direita Ctrl+Shift+] Image.NextRightColor

ou

Ctrl+Shift+Seta para a
direita

Elipse com contorno Shift+Alt+P Image.OutlinedEllipseTool

Ferramenta de retângulo com contorno Shift+Alt+R Image.OutlinedRectangleTool

Ferramenta de retângulo arredondado com Shift+Alt+W Image.OutlinedRoundedRectangleTool


contorno

Ferramenta de lápis Ctrl+I Image.PencilTool

Cor anterior Ctrl+[ Image.PreviousColor

ou

Ctrl+Seta para a esquerda


Comandos Atalhos do teclado ID de Comando

Cor à direita anterior Ctrl+Shift+[ Image.PreviousRightColor

ou

Ctrl+Shift+Seta para a
esquerda

Ferramenta de seleção de retângulo Shift+Alt+S Image.RectangleSelectionTool

Ferramenta de retângulo ALT+R Image.RectangleTool

Girar 90 graus Ctrl+Shift+H Image.Rotate90Degrees

Ferramenta de retângulo arredondado ALT+W Image.RoundedRectangleTool

Mostrar grade Ctrl+Alt+S Image.ShowGrid

Mostrar grade de bloco Ctrl+Shift+Alt+S Image.ShowTileGrid

Pincel pequeno Ctrl+. Image.SmallBrush

Pincel menor Ctrl+- Image.SmallerBrush

Ferramenta de texto Ctrl+T Image.TextTool

Usar seleção como pincel Ctrl+U Image.UseSelectionasBrush

Ampliar Ctrl+Shift+. Image.ZoomIn

ou

Ctrl+seta para cima

Reduzir Ctrl+Shift+, Image.ZoomOut

ou

Ctrl+Seta para baixo

Editor de cadeia de caracteres VC: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Nova cadeia de caracteres Inserção Edit.NewString

Designer de exibição: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Cancelar a recuperação de dados Ctrl+T QueryDesigner.CancelRetrievingData

Critérios Ctrl+2 QueryDesigner.Criteria


Comandos Atalhos do teclado ID de Comando

Diagrama Ctrl+1 QueryDesigner.Diagram

Executar SQL Ctrl+R QueryDesigner.ExecuteSQL

Linha Goto Ctrl+G QueryDesigner.GotoRow

Modo de junção Ctrl+Shift+J QueryDesigner.JoinMode

Resultados Ctrl+4 QueryDesigner.Results

Sql Ctrl+3 QueryDesigner.SQL

Visual Studio: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comando Atalho de teclado ID de Comando

Ocultar painel de métodos Ctrl+1 OtherContextMenus.ORDesignerContext.HideMethodsPane

Designer de Formulários do Windows: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Quebrar linha Enter Edit.BreakLine

Char à esquerda Seta para a esquerda Edit.CharLeft

Estender char para a esquerda Shift+Seta para a esquerda Edit.CharLeftExtend

Char à direita Seta para a direita Edit.CharRight

Estender char à direita Shift+Seta para a direita Edit.CharRightExtend

Fim do documento End Edit.DocumentEnd

Extensão final do documento Shift+End Edit.DocumentEndExtend

Início do documento. Início Edit.DocumentStart

Extensão de início do documento Shift+Home Edit.DocumentStartExtend

Guia Inserir Guia Edit.InsertTab

Uma linha abaixo Seta para Baixo Edit.LineDown

Extensão de linha para baixo Shift+Seta para cima Edit.LineDownExtend

Uma linha acima Seta para Cima Edit.LineUp

Estender linha para cima Shift+Seta para baixo Edit.LineUpExtend

Mover o controle para baixo Ctrl+Seta para baixo Edit.MoveControlDown

Mover o controle para a esquerda Ctrl+Seta para a esquerda Edit.MoveControlLeft


Comandos Atalhos do teclado ID de Comando

Mover o controle para a direita Ctrl+Seta para a direita Edit.MoveControlRight

Mover o controle para cima Ctrl+seta para cima Edit.MoveControlUp

Cancelar seleção Escape Edit.SelectionCancel

Dimensionar controle para baixo Ctrl+Shift+Seta para baixo Edit.SizeControlDown

Dimensionar o controle para a esquerda Ctrl+Shift+Seta para a esquerda Edit.SizeControlLeft

Dimensionar o controle para a direita Ctrl+Shift+Seta para a direita Edit.SizeControlRight

Dimensionar o controle para cima Ctrl+Shift+Seta para cima Edit.SizeControlUp

Tabulação à esquerda Shift+Tab Edit.TabLeft

Editor de imagem de trabalho: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Criar Cópia do item de trabalho Shift+Alt+C Edit.CreateCopyofWorkItem

Atualizar item de trabalho F5 Edit.RefreshWorkItem

Novo item de trabalho vinculado Shift+Alt+L Team.NewLinkedWorkItem

Exibição de consulta de item de trabalho: atalhos específicos do


contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Criar Cópia do item de trabalho Shift+Alt+C Edit.CreateCopyofWorkItem

Recuar Shift+Alt+Seta para a direita Edit.Indent

Recuar para a esquerda Shift+Alt+Seta para a esquerda Edit.Outdent

Novo item de trabalho vinculado Shift+Alt+L Team.NewLinkedWorkItem

Atualizar F5 Team.Refresh

Alternar Shift+Alt+V Window.Toggle

Exibição de resultados de item de trabalho: atalhos específicos do


contexto
Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando


Comandos Atalhos do teclado ID de Comando

Criar Cópia do item de trabalho Shift+Alt+C Edit.CreateCopyofWorkItem

Recuar Shift+Alt+Seta para a direita Edit.Indent

Recuar para a esquerda Shift+Alt+Seta para a esquerda Edit.Outdent

Goto no próximo item de trabalho Shift+Alt+N Team.GotoNextWorkItem

Goto no item de trabalho anterior Shift+Alt+P Team.GotoPreviousWorkItem

Novo item de trabalho vinculado Shift+Alt+L Team.NewLinkedWorkItem

Atualizar F5 Team.Refresh

Alternar Shift+Alt+V Window.Toggle

Designer de fluxo de trabalho: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Completar a palavra Ctrl+K, W Edit.CompleteWord

ou

Ctrl+K, Ctrl+W

ou

Ctrl+Barra de espaços

ou

Alt+Right Arrow

Diminuir o nível de filtro Alt+, Edit.DecreaseFilterLevel

Aumentar o nível de filtro Alt+. Edit.IncreaseFilterLevel

Listar os membros Ctrl+K, L Edit.ListMembers

ou

Ctrl+K, Ctrl+L

ou

Ctrl+J
Comandos Atalhos do teclado ID de Comando

Informações de parâmetro Ctrl+K, P Edit.ParameterInfo

ou

Ctrl+K, Ctrl+P

ou

Ctrl+Shift+Barra de
espaços

Informações rápidas Ctrl+K, I Edit.QuickInfo

ou

Ctrl+K, Ctrl+I

Recolher Ctrl+E, Ctrl+C WorkflowDesigner.Collapse

ou

Ctrl+E, C

Recolher tudo ou WorkflowDesigner.CollapseAll

Conectar nós Ctrl+E, Ctrl+F WorkflowDesigner.ConnectNodes

ou

Ctrl+E, F

Criar variável Ctrl+E, Ctrl+N WorkflowDesigner.CreateVariable

ou

Ctrl+E, N

Expandir tudo Ctrl+E, Ctrl+X WorkflowDesigner.ExpandAll

ou

Ctrl+E, X

Expandir no local Ctrl+E, Ctrl+E WorkflowDesigner.ExpandInPlace

ou

Ctrl+E, E

Acessar pai Ctrl+E, Ctrl+P WorkflowDesigner.GoToParent

ou

Ctrl+E, P
Comandos Atalhos do teclado ID de Comando

Mover o foco Ctrl+E, Ctrl+M WorkflowDesigner.MoveFocus

ou

Ctrl+E, M

Navegar pelo designer Ctrl+Alt+F6 WorkflowDesigner.NavigateThroughDesigner

Restaurar Ctrl+E, Ctrl+R WorkflowDesigner.Restore

ou

Ctrl+E, R

Mostrar/ocultar o designer de Ctrl+E, Ctrl+A WorkflowDesigner.ShowHideArgumentDesigner


argumentos
ou

Ctrl+E, A

Mostra/ocultar o designer de Ctrl+E, Ctrl+I WorkflowDesigner.ShowHideImportsDesigner


importações
ou

Ctrl+E, I

Mostrar/ocultar o mapa de visão geral Ctrl+E, Ctrl+O (letra "O") WorkflowDesigner.ShowHideOverviewMap

ou

Ctrl+E, O

Mostrar/ocultar designer de variáveis Ctrl+E, Ctrl+V WorkflowDesigner.ShowHideVariableDesigner

ou

Ctrl+E, V

Alternar a seleção Ctrl+E, Ctrl+S WorkflowDesigner.ToggleSelection

ou

Ctrl+E, S

Ampliar Ctrl+Num + WorkflowDesigner.ZoomIn

Reduzir Ctrl+Num - WorkflowDesigner.ZoomOut

Designer de UI XML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Ajustar tudo Ctrl+0 (zero) Design.FitAll

Mostrar identificadores F9 Design.ShowHandles


Comandos Atalhos do teclado ID de Comando

Ampliar Ctrl+Alt+= Design.ZoomIn

Reduzir Ctrl+Alt+- Design.ZoomOut

Editar texto F2 Format.EditText

Tudo Ctrl+Shift+R Format.ResetLayout.All

Executar código do projeto Ctrl+F9 Design.RunProjectCode

Ocultar (somente Mesclagem) Ctrl+H Timeline.Hide (apenas Blend)

Bloquear (somente mesclagem) Ctrl+L Timeline.Lock (apenas Blend)

Mostrar (somente Mesclagem) Ctrl+Shift+H Timeline.Show (apenas Blend)

Desbloquear (somente mesclagem) Ctrl+Shift+L Timeline.Unlock (apenas Blend)

Mover borda esquerda para a esquerda Ctrl+Shift+, View.EdgeLeftMoveLeft

Mover borda esquerda para a direita Ctrl+Shift+. View.EdgeLeftMoveRight

Mover borda direita para a esquerda Ctrl+Shift+Alt+, View.EdgeRightMoveLeft

Mover borda direita para a direita Ctrl+Shift+Alt+. View.EdgeRightMoveRight

Mostrar menu de marcador de propriedade Ctrl+Barra de espaços View.ShowPropertyMarkerMenu

Para obter informações detalhadas, consulte Atalhos de teclado para atalhos de designer XAML e teclado
em Blend para Visual Studio.

Editor (de texto) XML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do teclado ID de Comando

Iniciar depuração XSLT Alt+F5 XML.StartXSLTDebugging

Iniciar XSLT sem depuração Ctrl+Alt+F5 XML.StartXSLTWithoutDebugging

Designer de esquema XML: atalhos específicos do contexto


Os atalhos específicos desse contexto são:

Comandos Atalhos do ID de Comando


teclado

De baixo para cima Alt+Up Arrow GraphView.BottomtoTop

Da esquerda para a direita Alt+Right Arrow GraphView.LefttoRight

Da direita para a esquerda Alt+Left Arrow GraphView.RighttoLeft

De cima para baixo Alt+Seta para GraphView.ToptoBottom


baixo
Comandos Atalhos do ID de Comando
teclado

Remover do espaço de trabalho Excluir OtherContextMenus.GraphView.RemovefromWorkspace

Mostrar exibição de modelo de Ctrl+2 XsdDesigner.ShowContentModelView


conteúdo

Mostrar exibição de gráfico Ctrl+3 XsdDesigner.ShowGraphView

Mostrar exibição inicial Ctrl+1 XsdDesigner.ShowStartView


Exibir hierarquia de chamada
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Ao exibir a hierarquia de chamadas para seu o código, você poderá navegar todas as
chamadas de, a às vezes para, um método, propriedade ou construtor selecionado. Isso
permite compreender melhor como o código flui, bem como avaliar os efeitos das
alterações no código. Você pode examinar vários níveis de código para exibir cadeias
complexas de chamadas de método e pontos de entrada adicionais para o código. Isso
permite que você explore todos os possíveis caminhos de execução.

No Visual Studio, você pode exibir uma hierarquia de chamada em tempo de design.
Isso significa que você não precisa definir um ponto de interrupção e iniciar o
depurador para exibir a pilha de chamadas de tempo de execução.

Usar a janela Hierarquia de Chamada


Para exibir a janela Hierarquia de Chamada, clique com o botão direito no editor de
código no nome de uma chamada de método, propriedade ou construtor e clique em
Exibir Hierarquia de Chamadas.

O nome do membro é exibido em um painel de modo de exibição de árvore na janela


Hierarquia de Chamada. Se você expandir o nó membro, os subnós Chamadas
paranome do membro e para C++, Chamadas denome do membro serão exibidos.

Para o código C++, você pode ver as chamadas de e para um membro:

Para código em C# e em Visual Basic, você pode ver as chamadas para um membro,
mas não chamadas de:
Se você expandir o nó Chamadas para, todos os membros que chamam o
membro selecionado serão exibidos.

Para C++, se você expandir o nó Chamadas de, todos os membros que são
chamados pelo membro selecionado serão exibidos.

Assim, você pode expandir cada membro que chama a fim de ver os nós Chamadas
para, e para C++, Chamadas de. Isso permite navegar pela pilha de chamadores,
conforme mostrado na imagem a seguir:

Para membros definidos como virtuais ou abstratos, um nó Substitui o nome do


método é exibido. Para membros de interface, um nó Implementa o nome do método
é exibido. Esses nós expansíveis aparecem no mesmo nível que os nós Chamadas para e
Chamadas de.

A caixa Escopo da Pesquisa na barra de ferramentas contém opções para Minha


Solução, Projeto Atual e Documento Atual.

Quando você seleciona um membro filho no painel do modo de exibição de árvore


Hierarquia de Chamada:

O painel de detalhes Hierarquia de Chamada exibe todas as linhas de código em


que esse membro filho é chamado pelo membro pai.

A janela de Definição de Código, se estiver aberta, exibe o código do membro


selecionado (apenas C++). Para saber mais sobre essa janela, confira Exibir a
estrutura do código.

7 Observação

O recurso Hierarquia de Chamadas não encontra referências do grupo ao método,


que incluem os locais a que um método é adicionado como manipulador de
eventos ou é atribuído a um representante. Para localizar todas as referências a um
método, você pode usar o comando Localizar Todas as Referências.

Itens do menu de atalho


A tabela a seguir descreve várias opções de menu de atalho que são disponibilizadas
quando você clica com o botão direito do mouse em um nó no painel do modo de
exibição de árvore.

Item de Descrição
menu de
contexto

Adicionar Adiciona o nó selecionado ao painel do modo de exibição de árvore como um


como Nova novo nó raiz. Isso permite concentrar sua atenção em uma subárvore específica.
Raiz

Remover Remove o nó raiz selecionado do painel do modo de exibição de árvore. Esta


Raiz opção está disponível somente de um nó raiz.

Você também pode usar o botão de barra de ferramentas Remover Raiz para
remover o nó raiz selecionado.

Ir para Executa o comando Ir para Definição no nó selecionado. Isso leva até a definição
definição original de uma chamada de membro ou definição de variável.

Para executar o comando Ir para Definição, você também pode clicar duas vezes
no nó selecionado ou pressionar F12 no nó selecionado.

Localizar Executa o comando Localizar Todas as Referências no nó selecionado. Isso localiza


Todas as todas as linhas de código em seu projeto que fazem referência a uma classe ou
Referências membro.

Também é possível usar SHIFT + F12 para executar o comando Localizar Todas as
Referências no nó selecionado.

Copy Copia o conteúdo do nó selecionado (mas não de seus subnós).

Atualizar Recolhe o nó selecionado de forma que expandi-lo novamente exibe informações


atualizadas.
Prompt de Comando do Desenvolvedor
do Visual Studio e PowerShell do
Desenvolvedor
Artigo • 11/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Visual Studio inclui dois shells de linha de comando para desenvolvedores, um


prompt de comando e uma instância do PowerShell, da seguinte maneira:

Prompt de Comando do Desenvolvedor do Visual Studio – um prompt de


comando padrão com determinadas variáveis de ambiente definidas para facilitar
o uso de ferramentas de desenvolvedor da linha de comando. Disponível desde o
Visual Studio 2015.

PowerShell do Desenvolvedor do Visual Studio - mais poderoso do que um


prompt de comando. Por exemplo, você pode passar a saída de um comando
(conhecido como um cmdlet) para outro cmdlet. Esse shell tem as mesmas
variáveis de ambiente definidas como Prompt de Comando do Desenvolvedor.
Disponível desde o Visual Studio 2019.
A partir do Visual Studio 2019 , o Visual Studio inclui um terminal integrado que pode
hospedar qualquer um desses shells (Prompt de Comando do Desenvolvedor e
PowerShell do Desenvolvedor). Você também pode abrir várias guias de cada shell. O
terminal do Visual Studio é criado com base em Terminal do Windows. Para abrir o
terminal no Visual Studio, selecione Exibir>Terminal.

 Dica

Essa página descreve como usar os shells de linha de comando no Visual Studio .
Se você estiver procurando o equivalente em Visual Studio Code , também
conhecido como VS Code, consulte Interface de Linha de Comando (CLI) e
Noções Básicas do Terminal .

Quando você abre um dos shells de desenvolvedor do Visual Studio, como um


aplicativo separado ou na janela Terminal, ele é aberto para o diretório da sua solução
atual (se você tiver uma solução carregada). Esse comportamento torna conveniente
executar comandos na solução ou em seus projetos.

Ambos os shells têm variáveis de ambiente específicas definidas que permitem que você
use ferramentas de desenvolvedor de linha de comando com mais facilidade. Depois de
abrir um desses shells, você pode inserir os comandos para utilitários diferentes sem
precisar saber onde eles estão localizados.
Comandos populares Descrição

MSBuild Compilar um projeto ou uma solução

clrver Uma ferramenta do .NET Framework para CLR

ildasm Uma ferramenta do .NET Framework para desmontador

dotnet Um comando da CLI do .NET

dotnet run Um comando da CLI do .NET

CL C/C++ compilar ferramenta

NMAKE C/C++ compilar ferramenta

LIB C/C++ ferramenta de compilação

DUMPBIN C/C++ ferramenta de compilação

Iniciar no Visual Studio


Siga estas etapas para abrir o Prompt de Comando do Desenvolvedor ou o PowerShell
do Desenvolvedor de dentro do Visual Studio:

1. Abra o Visual Studio.

2. Na barra de menus, selecione Ferramentas>Linha de comando>Prompt de


Comando do Desenvolvedorou PowerShell do Desenvolvedor.

Iniciar a partir do menu do Windows


Outra maneira de iniciar os shells é a partir do menu Iniciar. É possível que haja vários
prompts de comando, dependendo da versão do Visual Studio e quaisquer SDKs
adicionais e cargas de trabalho que você instalou.

Windows 11

1. Selecione Iniciar e, em seguida, na caixa de diálogo Digite aqui para pesquisar,


insira developer command prompt ou developer powershell .

2. Selecione o resultado do aplicativo associado ao texto da pesquisa.

Windows 10
1. Selecione Iniciar e, em seguida, role até a letra V.

2. Expanda a pasta Visual Studio 2019 ou Visual Studio 2022.

3. Se você estiver executando o Visual Studio 2019, selecione Prompt de Comando


do Desenvolvedor para VS 2019 ou PowerShell do Desenvolvedor para VS 2019.
Se você estiver executando o Visual Studio 2022, selecione Prompt de Comando
do Desenvolvedor para VS 2022 ou PowerShell do Desenvolvedor para VS 2022.

Como alternativa, você pode começar a digitar o nome do shell na caixa de


pesquisa na barra de tarefas e selecionar o resultado desejado à medida que a lista
de resultados começa a exibir as correspondências de pesquisa.
Windows 8.1
1. Vá para a tela Iniciar pressionando a tecla do logotipo do Windows no teclado,
por exemplo.

2. Na tela Iniciar, pressione Ctrl+Tab para abrir a lista de Aplicativos e pressione V.


Isso apresenta uma lista que inclui todos os prompts de comando do Visual Studio
instalados.

3. Se você estiver executando o Visual Studio 2019, selecione Prompt de Comando


do Desenvolvedor para VS 2019 ou PowerShell do Desenvolvedor para VS 2019.
Se você estiver executando o Visual Studio 2022, selecione Prompt de Comando
do Desenvolvedor para VS 2022 ou PowerShell do Desenvolvedor para VS 2022.

Windows 7
1. Selecione Iniciar e, em seguida, expanda Todos os Programas.

2. Selecione Visual Studio 2019>Ferramentas do Visual Studio>Prompt de


Comando do Desenvolvedor para VS 2019 ou PowerShell do Desenvolvedor para
VS 2019. (Se você estiver executando o Visual Studio 2022, procure os mesmos
itens que incluem "2022" em vez de "2019".)
Se houver outros SDKs instalados, como o SDK do Windows ou versões anteriores,
poderão ser exibidos outros prompts de comando. Consulte a documentação das
ferramentas individuais para determinar qual versão do prompt de comando você deve
usar.

Iniciar a partir do navegador de arquivos


Normalmente, os atalhos para os shells que você instalou serão colocados na pasta
Menu Iniciar do Visual Studio, como em %ProgramData%\Microsoft\Windows\Start
Menu\Programs\Visual Studio 2019\Visual Studio Tools. Porém, se a pesquisa do prompt
de comando não produzir os resultados esperados, você poderá tentar localizar
manualmente os arquivos em seu computador.

Prompt de Comando do Desenvolvedor


Pesquise pelo nome do arquivo do prompt de comando, que é VsDevCmd.bat, ou
acesse a pasta Ferramentas do Visual Studio, como %ProgramFiles%\Microsoft Visual
Studio\2022\Community\Common7\Tools (o caminho muda conforme seu local de
instalação, edição e versão do Visual Studio).
Depois de localizar o arquivo de prompt de comando, abra-o inserindo o seguinte
comando em uma janela regular do prompt de comando:

Prompt de comando do Windows

"%ProgramFiles%\Microsoft Visual
Studio\2022\Community\Common7\Tools\VsDevCmd.bat"

Ou insira o seguinte comando na caixa de diálogo Executar do Windows:

Prompt de comando do Windows

%comspec% /k "C:\Program Files\Microsoft Visual


Studio\2022\Community\Common7\Tools\VsDevCmd.bat"

 Dica

Certifique-se de editar o caminho para corresponder à versão ou edição do Visual


Studio que você está usando.

PowerShell do Desenvolvedor
Pesquise um arquivo de script do PowerShell chamado Launch-VsDevShell.ps1ou acesse
a pasta Ferramentas do Visual Studio, como %ProgramFiles(x86)%\Microsoft Visual
Studio\2019\Community\Common7\Tools. (O caminho é alterado de acordo com sua
versão, edição e local de instalação do Visual Studio.) Depois de localizar o arquivo do
PowerShell, execute-o inserindo o comando a seguir em um prompt do Windows
PowerShell ou do PowerShell 6.

Para Visual Studio 2019:

PowerShell

& 'C:\Program Files (x86)\Microsoft Visual


Studio\2019\Community\Common7\Tools\Launch-VsDevShell.ps1'

Para o Visual Studio 2022:

PowerShell

& 'C:\Program Files\Microsoft Visual


Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1'
Por padrão, o PowerShell do Desenvolvedor que inicia é configurado para a instalação
do Visual Studio cujo caminho de instalação é onde o arquivo Launch-VsDevShell.ps1
está localizado.

 Dica

A política de execução deve ser definida para que o cmdlet seja executado.

O script Launch-VsDevShell.ps1 funciona localizando o módulo


Microsoft.VisualStudio.DevShell.dll do PowerShell no caminho de instalação do

Visual Studio, carregando-o e invocando o cmdlet Enter-VsDevShell . Os atalhos


instalados, como os do menu Iniciar, carregam o módulo e invocam o cmdlet
diretamente. Launch-VsDevShell.ps1 é a maneira recomendada de inicializar o
PowerShell do Desenvolvedor interativamente ou para a automação de build de scripts.

Argumentos de linha de comando


Você pode usar argumentos de linha de comando para qualquer um dos shells, Prompt
de Comando do Desenvolvedor ou PowerShell do Desenvolvedor.

Arquitetura de destino e arquitetura de host


Para ferramentas de build, como o compilador C++, que criam saídas direcionadas a
arquiteturas de CPU específicas, os shells de desenvolvedor podem ser configurados
usando o argumento de linha de comando apropriado. A arquitetura dos binários da
ferramenta de build também pode ser configurada usando argumentos de linha de
comando. Isso é útil quando o computador de build é uma arquitetura diferente da
arquitetura de destino.

 Dica

A partir do Visual Studio 2022, msbuild será o padrão de um binário de


msbuild.exe de 64 bits, independentemente da Arquitetura do Host.

Shell Argumento

Prompt de Comando do Desenvolvedor -arch=<Arquitetura de destino>

Prompt de Comando do Desenvolvedor -host_arch=<Arquitetura do host>


Shell Argumento

PowerShell do Desenvolvedor -Arch <Arquitetura de destino>

PowerShell do Desenvolvedor -HostArch <Arquitetura do host>

) Importante

Os argumentos do PowerShell do Desenvolvedor -Arch e -HostArch só estão


disponíveis a partir do Visual Studio 2022 versão 17.1.

A tabela a seguir lista quais arquiteturas têm suporte e se elas podem ser usadas para
argumentos de arquitetura de destino ou de arquitetura do host.

Arquitetura Arquitetura de destino Arquitetura do Host

x86 Padrão Padrão

amd64 Sim Sim

arm Sim Não

arm64 Sim No

 Dica

Se você definir somente a Arquitetura de Destino, os shells tentarão fazer com que
a Arquitetura do Host seja correspondente. Isso pode resultar em erros quando
apenas a Arquitetura de Destino é definida como um valor que também não tem
suporte da Arquitetura do Host.

Exemplos
Inicie o Prompt de Comando do Desenvolvedor para Visual Studio 2019 Community
Edition em um computador de 64 bits, criando saídas de build direcionadas a 64 bits:

Prompt de comando do Windows

"%ProgramFiles(x86)%\Microsoft Visual
Studio\2019\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64

Inicie o Prompt de Comando do Desenvolvedor para Visual Studio 2019 Community


Edition em um computador de 64 bits, criando saídas de build direcionadas ao arm:
Prompt de comando do Windows

"%ProgramFiles(x86)%\Microsoft Visual
Studio\2019\Community\Common7\Tools\VsDevCmd.bat" -arch=arm -host_arch=amd64

Inicie o PowerShell do Desenvolvedor para a Community Edition do Visual Studio 2022


versão 17.1 ou posterior em um computador de 64 bits, criando saídas de build
direcionadas ao arm64:

PowerShell

& 'C:\Program Files\Microsoft Visual


Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1' -Arch arm64 -
HostArch amd64

SkipAutomaticLocation
Para o PowerShell do Desenvolvedor, o diretório inicial do shell é a Localização do
Projeto do Visual Studio. Essa localidade padrão substitui quaisquer outros caminhos,
como diretório de trabalho. Esse comportamento pode ser desativado usando o
argumento de linha de comando -SkipAutomaticLocation . Isso pode ser útil se você
quiser que o shell permaneça no diretório atual após a inicialização.

A Localização do Projeto pode ser ajustada em Ferramentas>Opções>Projetos &


Soluções>Localização do Projeto.

 Dica

Os argumentos da linha de comando -Arch , -HostArch e -SkipAutomaticLocation


têm suporte do script Launch-VsDevShell.ps1 e do cmdlet Enter-VsDevShell .

Confira também
Terminal do Windows
Ferramentas do .NET Framework
Usar o conjunto de ferramentas do Microsoft C++ na linha de comando
Janela Visualização de Alterações
Artigo • 13/01/2024

Ao usar diversas ações rápidas ou ferramentas de refatoração no Visual Studio,


geralmente é possível visualizar as alterações que serão feitas ao seu projeto antes de
aceitá-las. Isso é feito na janela Visualizar Alterações.

A metade superior da janela mostra as linhas específicas que serão alteradas, cada uma
com uma caixa de seleção. Você poderá marcar ou desmarcar cada caixa de seleção se
você quiser aplicar a refatoração seletivamente, apenas a linhas específicas.

A parte inferior da janela mostra o código formatado do projeto que será alterado, com
as áreas afetadas realçadas. Selecionar a linha específica na metade superior da janela
realçará a linha correspondente na metade inferior. Isso permite que você pule
rapidamente para a linha apropriada e veja o código ao redor.

Depois de revisar as alterações, clique no botão Aplicar para confirmar as alterações ou


clique no botão Cancelar para deixar as coisas como estavam.

Por exemplo, a captura de tela a seguir mostra a janela Visualizar Alterações contendo
o que será alterado durante uma refatoração de renomeação em um projeto C#:
Escolher itens da Caixa de Ferramentas,
Componentes do WPF
Artigo • 13/01/2024

Essa guia da caixa de diálogo Escolher Itens da Caixa de Ferramentas exibe uma lista
de controles do WPF (Windows Presentation Foundation) disponíveis no computador
local. Para exibir essa lista, selecione Escolher Itens da Caixa de Ferramentas no menu
Ferramentas para exibir a caixa de diálogo Escolher Itens da Caixa de Ferramentas e,
em seguida, selecione a guia Componentes do WPF. Para classificar os componentes
listados, selecione qualquer título de coluna.

Quando a caixa de seleção ao lado de um componente for selecionada, um ícone


desse componente será exibido na Caixa de ferramentas.

 Dica

Para adicionar um controle WPF a um documento de projeto aberto para


edição, arraste seu ícone Caixa de ferramentas para a superfície do modo de
exibição de Design. Uma marcação e um código padrão do componente são
inseridos no projeto, prontos para modificação. Para saber mais, confira Caixa
de Ferramentas.

Quando a caixa de seleção ao lado de um componente for desmarcada, o ícone


correspondente será removido da Caixa de Ferramentas.

7 Observação

Os componentes .NET instalados no computador permanecem disponíveis


independentemente de seus ícones serem exibidos na Caixa de ferramentas.

As colunas da guia Componentes do WPF contêm as seguintes informações:

Nome

Lista os nomes dos controles WPF para os quais existem entradas no Registro do
computador.

Namespace
Exibe a hierarquia do namespace API .NET que define a estrutura do componente.
Classifique essa coluna para listar os componentes disponíveis em cada namespace .NET
instalado no computador.

Nome do assembly

Exibe o nome do assembly .NET que inclui o namespace de cada componente.


Classifique essa coluna para listar os namespaces contidos em cada assembly .NET
instalado no computador.

Diretório

Exibe a localização do assembly .NET. O local padrão para todos os assemblies é o cachê
global de assemblies. Para saber mais sobre o Cache de Assembly Global, confira
Trabalhar com assemblies e o Cache de Assembly Global.

Lista de elementos de interface do usuário

Filtrar
Filtra a lista de controles WPF com base na cadeia de caracteres fornecida na caixa de
texto. Todas as correspondências de uma das quatro colunas são mostradas.

Limpar

Limpa a cadeia de caracteres de filtro.

Procurar

Abre a caixa de diálogo Abrir, que permite navegar para assemblies que contêm
controles WPF. Use isso para carregar assemblies que não estão localizados no Cache de
Assembly Global.

Idioma

Mostra o idioma localizado do assembly que contém o controle WPF selecionado.

Limitações
A adição de um controle personalizado ou um UserControl à caixa de ferramentas
apresenta as seguintes limitações:

Funciona somente para controles personalizados definidos fora do projeto atual.


Não atualize corretamente ao alterar a configuração de solução de Depuração
para Versão ou de Versão para Depuração. Isso ocorre porque a referência não é
uma referência de projeto, mas refere-se ao assembly no disco. Se o controle fizer
parte da solução atual, ao alterar de Depuração para Versão, o projeto continuará
referenciando a versão de Depuração do controle.

Além disso, se os metadados em tempo de design são aplicados ao controle


personalizado e esses metadados especificam que
Microsoft.Windows.Design.ToolboxBrowsableAttribute é definido como false , o
controle não é exibido na Caixa de Ferramentas.

É possível referenciar os controles diretamente no modo de exibição XAML, mapeando


o namespace e o assembly do controle.

Confira também
Caixa de Ferramentas
Introdução ao WPF
Seletor de snippet de código
Artigo • 15/01/2024

O Editor de Códigos do Visual Studio fornece um Seletor de Snippet de Código que


permite inserir blocos de código prontos no documento ativo com alguns cliques do
mouse.

O procedimento para exibir o Seletor de Snippet de Código varia de acordo com a


linguagem que você está usando.

Visual Basic – clique com o botão direito do mouse no local desejado no Editor de
Códigos para exibir o menu de atalho e selecione Inserir Snippet de Código.

C# – clique com o botão direito do mouse no local desejado no Editor de Códigos


para exibir o menu de atalho e selecione Inserir Snippet de Código ou Envolver
Com.

C++ – o Seletor de Snippet de Código não está disponível.

F# – o Seletor de Snippet de Código não está disponível.

JavaScript – clique com o botão direito do mouse no local desejado no Editor de


Códigos para exibir o menu de atalho e selecione Inserir Snippet de Código ou
Envolver Com.

XML – Clique com o botão direito do mouse no local desejado no Editor de


Códigos para exibir o menu de atalho e selecione Inserir Snippet ou Envolver
com.

HTML – Clique com o botão direito do mouse no local desejado no Editor de


Códigos para exibir o menu de atalho e selecione Inserir Snippet ou Envolver
com.

SQL – Clique com o botão direito do mouse no local desejado no Editor de


Códigos para exibir o menu de atalho e selecione Inserir Snippet.

Na maioria das linguagens de desenvolvimento do Visual Studio, é possível usar o


Gerenciador de Snippets de Código para adicionar pastas à lista de pastas que o
Seletor de Snippet de Código examina em busca de arquivos com snippet XML. Você
também pode criar seus próprios snippets para adicionar à lista. Para obter mais
informações, consulte Instruções passo a passo: criando um snippet de código.

Lista de elementos de interface do usuário


Nome do Item

Um campo de texto editável que exibe o nome do item selecionado na Lista de Itens.
Para executar uma pesquisa incremental do item que você deseja, comece digitando seu
nome neste campo. Continue adicionando letras até que o item desejado seja
selecionado na Lista de Itens.

Lista de Itens

Uma lista de snippets de código disponíveis para inserção ou uma lista de pastas que
contêm snippets de código. Para inserir um snippet ou expandir uma pasta, selecione o
item desejado e pressione Enter.

Confira também
Snippets de código
Melhores práticas para usar snippets de código
Configurando identificadores no código
Trechos de expansão e Trechos surround-with
Janela Comando
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A janela Comando é usada para executar comandos ou aliases diretamente no IDE


(ambiente de desenvolvimento integrado) do Visual Studio. Você pode executar tanto
comandos de menu quanto comandos que não aparecem em nenhum menu. Para exibir
a janela Comando, escolha Outras Janelas no menu Exibir e selecione Janela Comando.

Exibindo os valores de variáveis


Para verificar o valor de uma variável varA , use o Comando Imprimir:

Prompt de comando do Windows

>Debug.Print varA

O ponto de interrogação (?) é um alias para Debug.Print , portanto, esse comando


também pode ser escrito:

Prompt de comando do Windows

>? varA

As duas versões desse comando retornarão o valor da variável varA .

Inserindo comandos
O símbolo de maior que ( > ) é exibido na borda esquerda da janela Comando como um
prompt para novas linhas. Use as teclas de SETA PARA CIMA e SETA PARA BAIXO para
rolar os comandos emitidos anteriormente.

Tarefa Solução Exemplo

Avaliar uma expressão. Preceda a expressão com um ponto de ? myvar


interrogação ( ? ).

Mude para uma janela Imediata. Digite immed na janela, sem o sinal de immed
maior que (>)
Tarefa Solução Exemplo

Mude de volta para a janela Comando em Digite cmd na janela. >cmd


uma janela Imediata.

Os seguintes atalhos ajudarão a navegar no modo Comando.

Ação Local do cursor Keybinding

Percorra a lista de comandos inseridos Linha de entrada SETA PARA CIMA & SETA PARA
anteriormente. BAIXO

Role para cima na janela. Conteúdo da janela CTRL+SETA PARA CIMA


Comando

Role para baixo na janela. Conteúdo da janela SETA PARA BAIXO ou CTRL+SETA
Comando PARA BAIXO

 Dica

Você pode copiar todo ou parte de um comando anterior para a linha de entrada
rolando até ele, realçando todo ou parte dele e pressionando ENTER.

Modo de Marca
Quando você clica em qualquer linha anterior na janela Comando, você muda
automaticamente para o modo Marca. Isso permite selecionar, editar e copiar o texto de
comandos anteriores como você faria em qualquer editor de texto e colá-lo na linha
atual.

O sinal de igual (=)


A janela usada para inserir o comando EvaluateStatement determina se um sinal de
igual (=) é interpretado como um operador de comparação ou um operador de
atribuição.

Na janela Comando, um sinal de igual (=) é interpretado como um operador de


comparação. Você não pode usar operadores de atribuição na janela Comando. Dessa
forma, por exemplo, se os valores das variáveis varA e varB forem diferentes, o
comando >Debug.EvaluateStatement(varA=varB) retornará um valor igual a False .
Na janela Imediato, por outro lado, um sinal de igual (=) é interpretado como um
operador de atribuição. Portanto, por exemplo, o comando
>Debug.EvaluateStatement(varA=varB) atribuirá à variável varA o valor da variável varB .

Parâmetros, Opções e Valores


Alguns comandos do Visual Studio têm argumentos, opções e valores obrigatórios e
opcionais. Certas regras se aplicam ao lidar com esses comandos. A seguir está um
exemplo de um comando avançado para esclarecer a terminologia.

Prompt de comando do Windows

Edit.ReplaceInFiles /case /pattern:regex var[1-3]+ oldpar

Neste exemplo,

Edit.ReplaceInFiles é o comando

/case e /pattern:regex são opções (precedidas pelo caractere de barra invertida

[/])

regex é o valor da opção /pattern ; a opção /case não tem valor

var[1-3]+ e oldpar são parâmetros

7 Observação

Qualquer comando, parâmetro, opção ou valor que contenha espaços deve


ter aspas duplas em um dos lados.

A posição de opções e parâmetros pode ser trocada livremente na linha de comando,


com exceção do comando Shell, que exige uma ordem específica para opções e
parâmetros.

Quase todas as opções com suporte em um comando têm dois formatos: um formato
abreviado (um caractere) e um formato longo. Várias opções de formato curto podem
ser combinadas em um grupo. Por exemplo, /p /g /m pode ser expressos,
alternativamente, como /pgm .

Se opções de formato curto forem combinadas em um grupo e receberem um


determinado valor, esse valor se aplicará a todas as opções. Por exemplo, /pgm:123 é
igual a /p:123 /g:123 /m:123 . Um erro ocorrerá se alguma das opções no grupo não
aceitar um valor.

Caracteres de escape
Um caractere de acento circunflexo (^) em uma linha de comando significa que o
caractere imediatamente a seguir é interpretado literalmente, em vez de como um
caractere de controle. Isso pode ser usado para inserir aspas retas ("), espaços, barras
iniciais, acentos circunflexos ou quaisquer outros caracteres literais em um parâmetro
ou valor de opção, com a exceção de nomes de opção. Por exemplo,

Prompt de comando do Windows

>Edit.Find ^^t /regex

Um acento circunflexo funciona da mesma forma tanto dentro quanto fora das aspas.
Se um acento circunflexo for o último caractere na linha, ele será ignorado. O exemplo
mostrado aqui demonstra como pesquisar o padrão "^t".

Usar aspas para nomes de caminho com


espaços
Se, por exemplo, você quiser abrir um arquivo com um caminho que contenha espaços,
deverá colocar aspas duplas ao redor do caminho ou segmento do caminho que
contém espaços: C:\"Arquivos de Programas" ou "C:\Arquivos de Programas".

Confira também
Aliases de comando do Visual Studio
Comandos do Visual Studio
Porta do Visual Studio 2022, migrar e
atualizar projetos
Artigo22/01/2024

 Dica

Assista às gravações do evento de lançamento do Visual Studio 2022 para


saber mais sobre as novidades, ouvir dicas e truques e fazer o download de brindes
digitais gratuitos.

Developer Community | Roteiro do Visual Studio 2022 | Requisitos do sistema |


Compatibilidade | Código distribuível | Histórico do versões | Termos de licença |
Blogs | Problemas conhecidos da versão mais recente | O que há de novo no Visual
Studio Docs

Cada nova versão do Visual Studio dá suporte à maioria dos tipos de projetos, arquivos
e outros ativos. Você pode trabalhar com eles como sempre fez, desde que não
dependa de recursos mais recentes.

Tentamos preservar a compatibilidade com versões anteriores, como Visual Studio 2019,
Visual Studio 2017, Visual Studio 2015, Visual Studio 2013 e Visual Studio 2012. No
entanto, o suporte para alguns tipos de projeto muda ao longo do tempo. É possível
que uma versão mais recente do Visual Studio não dê suporte a determinados projetos
ou exija que você atualize um projeto para que deixe de ser compatível com versões
anteriores.

7 Observação

Para obter o status atual de problemas de migração, veja a Comunidade do


Desenvolvedor do Visual Studio . E para saber mais sobre quais recursos são
específicos para qual versão do Visual Studio, confira as Notas sobre a versão.

) Importante

Alguns tipos de projeto exigem cargas de trabalho específicas. Se a carga de


trabalho não estiver instalada, o Visual Studio relatará um tipo de projeto
desconhecido ou incompatível. Nesse caso, verifique as opções de instalação no
Instalador do Visual Studio e tente novamente. Para obter mais informações sobre
o suporte ao projeto no Visual Studio 2022, confira a página Direcionamento e
Compatibilidade da Plataforma.

Tipos de projeto
A lista a seguir descreve o suporte no Visual Studio 2022 para projetos que foram
criados em versões anteriores.

Se você não vir um projeto ou um tipo de arquivo que deveria estar listado aqui,
consulte a versão do Visual Studio 2019 deste artigo. Você também pode usar o botão
Enviar e conferir comentários sobre>Esta página, na parte inferior desta página para
fornecer detalhes do seu projeto. (Se você usar o controle anônimo "Esta página foi
útil?", não poderemos responder aos seus comentários.)

ノ Expandir a tabela

Tipo de projeto Suporte

Projetos do .NET Core Projetos criados com o Visual Studio 2015 usavam ferramentas de
(xproj) visualização que incluíam um arquivo de projeto xproj.

Visual Studio 2017: o formato xproj não é compatível, exceto quanto à


migração para o csproj. Ao abrir um arquivo xproj, você será solicitado
a migrar o arquivo para o formato csproj estilo SDK. (Um backup do
arquivo xproj será feito.) Não há suporte para projetos csproj no estilo
SDK no Visual Studio 2015 e anteriores.

Visual Studio 2019: na versão 16.3 e posterior, você não pode carregar
ou migrar projetos xproj. Para obter mais informações, consulte
Migrando projetos do .NET Core para o formato csproj.

Aplicativo Web ASP.NET Para cada usuário do Visual Studio, as informações de recurso são
Core e Aplicativo Web armazenadas no Registro por instância de usuário. Essas informações
ASP.NET Core com o serão usadas quando um usuário não tiver um projeto aberto e
Application Insights desejar pesquisar dados do Azure Application Insights. O Visual Studio
habilitado 2015 usa uma localização de Registro diferente do Visual Studio 2017,
Visual Studio 2019 e Visual Studio 2022 e não entra em conflito com
eles.

Quando um usuário cria um Aplicativo Web ASP.NET ou um Aplicativo


Web ASP.NET Core, os recursos são armazenados no arquivo .suo. O
usuário pode abrir o projeto no Visual Studio 2015, Visual Studio 2017,
Visual Studio 2019 ou Visual Studio 2022 e as informações de recurso
são usadas para cada um, desde que o Visual Studio dê suporte às
soluções e aos projetos usados nas duas versões. Os usuários devem
se autenticar uma vez em cada produto. Por exemplo, se um projeto
Tipo de projeto Suporte

for criado com o Visual Studio 2017 e aberto no Visual Studio 2022, o
usuário precisará se autenticar no Visual Studio 2022.

Formulário da Web ou É possível abrir o projeto no Visual Studio 2022, Visual Studio 2019,
Windows Form em Visual Studio 2017 e Visual Studio 2015.
C#/Visual Basic

Teste de UI codificado O teste de IU codificado para teste funcional controlado por interface
do usuário automatizado foi preterido no Visual Studio 2019.

O Visual Studio 2019 será a última versão para o teste de IU


codificado. Recomendamos usar o Selenium para testar aplicativos
Web e o Appium com o WinAppDriver para testar aplicativos UWP e
da área de trabalho.

Projetos de teste de Os projetos de teste de unidade de dados mais antigos são


unidade de banco de carregados no Visual Studio 2019, mas usam a versão do cache de
dados (csproj, .vbproj) assembly global das dependências. Para atualizar o projeto de teste de
unidade para usar as dependências mais recentes, clique com o botão
direito do mouse no projeto no Gerenciador de Soluções e selecione
Converter no Projeto de Teste de Unidade do SQL Server....

F# O Visual Studio 2019 pode abrir projetos criados no Visual Studio


2013, no Visual Studio 2015 e no Visual Studio 2017. A principal
diferença dos modelos mais antigos do Visual Studio para novos
projetos é que a versão do FSharp.Core agora sempre é um pacote
NuGet. O F# é instalado por padrão com qualquer Carga de Trabalho
do .NET.

InstallShield Projetos do instalador criados no Visual Studio 2010 podem ser


Instalação do MSI abertos em versões posteriores com a ajuda da extensão Projetos do
Instalador do Visual Studio . Consulte também o WiX Toolset Visual
Studio 2017 Extension (Extensão do Conjunto de Ferramentas WiX
do Visual Studio 2017). O InstallShield Limited Edition não está mais
incluído com o Visual Studio. Verifique com a Revenera sobre a
disponibilidade para o Visual Studio 2022.

LightSwitch Não há mais suporte para o LightSwitch no Visual Studio 2022, Visual
Studio 2019 nem no Visual Studio 2017. Os projetos criados com o
Visual Studio 2012 e anteriores abertos no Visual Studio 2013 ou no
Visual Studio 2015 serão atualizados e poderão ser abertos apenas no
Visual Studio 2013 ou no Visual Studio 2015 e posteriores.

Carregar Teste As funcionalidades de teste de carga e desempenho Web foram


preteridas no Visual Studio 2019.

O Visual Studio 2019 será a última versão do teste de carga. Use


ferramentas de teste de carga alternativas como Apache JMeter,
Akamai CloudTest e Blazemeter.
Tipo de projeto Suporte

Ferramentas do Para abrir esses tipos de projetos, primeiro instale o SDK do Azure
Microsoft Azure para para .NET e, em seguida, abra o projeto. Se necessário, o projeto
Visual Studio será atualizado.

Microsoft Test Manager O Microsoft Test Manager e o Feedback Client não são mais
fornecidos no Visual Studio, a partir do Visual Studio 2019.

Aproveite o Azure Test Plans (parte do Azure DevOps) para suas


necessidades de testes manuais e exploratórios.

Estrutura Modelo- Suporte para versões do MVC e para o Visual Studio:


Exibição-Controlador O Visual Studio 2010 SP1 dá suporte ao MVC 2 e MVC 3; o
(ASP.NET MVC) suporte MVC 4 é adicionado por meio do download do ASP.NET
4 MVC 4 para Visual Studio 2010 SP1
O Visual Studio 2012 dá suporte apenas ao MVC 3 e ao MVC 4
O Visual Studio 2013 dá suporte apenas ao MVC 4 e ao MVC 5
O Visual Studio 2019, o Visual Studio 2017 e o Visual Studio
2015 dão suporte ao MVC 4 (é possível abrir projetos existentes,
mas não criar projetos) e ao MVC 5

Atualizando versões do MVC:

Para obter informações sobre como atualizar automaticamente


do MVC 2 para o MVC 3, consulte Atualizador do aplicativo
ASP.NET MVC 3.
Para obter informações sobre como atualizar manualmente do
MVC 2 para o MVC 3, consulte Atualizando um projeto ASP.NET
MVC 2 para atualização de ferramentas do ASP.NET MVC 3.
Para obter informações sobre como atualizar manualmente do
MVC 3 para o MVC 4, consulte Atualizando um projeto ASP.NET
MVC 3 para o ASP.NET MVC 4. Se o projeto se destinar ao .NET
Framework 3.5 SP1, você deverá redirecioná-lo para usar o .NET
Framework 4.
Para obter informações sobre como atualizar manualmente do
MVC 4 para o MVC 5, consulte Como atualizar um projeto do
ASP.NET MVC 4 e API Web para o ASP.NET MVC 5 e API Web
2 .

Modelagem Se você permitir que o Visual Studio atualize o projeto


automaticamente, será possível abri-lo no Visual Studio 2015, Visual
Studio 2013 ou Visual Studio 2012.

O formato do projeto de modelagem não foi alterado desde o Visual


Studio 2015 e o projeto pode ser aberto e modificado nessas versões.
No entanto, há diferenças de comportamento do Visual Studio 2017 e
do Visual Studio 2019:
Tipo de projeto Suporte

Os projetos de modelagem agora são chamados de projetos de


“Validação de dependência” nos menus e modelos.
Não há mais suporte para diagramas UML no Visual Studio 2017
e no Visual Studio 2019. Os arquivos UML são listados no
Gerenciador de Soluções como antes, mas são abertos como
arquivos XML. Use o Visual Studio 2015 para exibir, criar ou
editar diagramas UML.
No Visual Studio 2019, a validação de dependências de
arquitetura não é mais executada quando o projeto de
modelagem é criado. Em vez disso, a validação é executada
durante a criação de cada projeto de código. Essa alteração não
afeta o projeto de modelagem, mas exige alterações nos
projetos de código que estão sendo validados. O Visual Studio
2019 pode fazer as alterações necessárias nos projetos de
código automaticamente.

Instalação MSI (vdproj) Confira a seção InstallShield desta página.

Office 2007 VSTO Exige uma atualização unidirecional para o Visual Studio 2022.

Office 2010 VSTO Se o projeto for destinado ao .NET Framework 4, será possível abri-lo
no Visual Studio 2010 SP1 e posterior. Todos outros projetos exigem
uma atualização unidirecional.

PCL (Biblioteca de Os PCLs (Bibliotecas de Classes Portátil) agora não têm suporte. O
Classes Portátil) Visual Studio 2019 ainda abrirá os projetos e os compilará, mas não
poderá criar projetos PCL. Recomendamos migrar o código de um
projeto PCL para um projeto .NET Standard.

O suporte ao PCL não será mais incluído por padrão, mas estará
disponível na guia "Componentes Individuais" do Visual Studio.

Carga de trabalho do O suporte para aplicativos do Python Windows IoT Core foi removido
Python no Visual Studio 2019. Como não há nenhum equivalente no Visual
Studio 2022, não há nenhum caminho de migração automática para
esses projetos.

Você pode continuar usando o Visual Studio 2017.

Ferramentas de R para o As Ferramentas do R para Visual Studio foram removidas da Carga de


Visual Studio Trabalho de Ciência de Dados no Visual Studio 2019.

Você pode continuar usando o Visual Studio 2017 ou alternativas


como o RStudio.

Service Fabric (sfproj) Os projetos de aplicativo do Service Fabric criados no Visual Studio
2017 ou no Visual Studio 2019 podem ser abertos no Visual Studio
2022 sem alterações.
Tipo de projeto Suporte

Os Projetos de Aplicativo do Service Fabric criados no Visual Studio


2022, sem usar a opção Otimizar layout de projeto para implantação
do ARM, podem ser abertos no Visual Studio 2019 16.5 ou posterior.
Os Projetos de Aplicativo do Service Fabric criados no Visual Studio
2022, usando a opção Otimizar layout de projeto para implantação
do ARM, podem ser abertos no Visual Studio 2019 16.10 ou posterior.

SharePoint 2010 Quando um projeto de solução do SharePoint for aberto com o Visual
Studio 2022, ele será atualizado para o SharePoint 2016 ou SharePoint
2019. A carga de trabalho "Desenvolvimento para Desktop do .NET"
deve ser instalada no Visual Studio para a atualização.

Para obter mais informações sobre como atualizar projetos do


SharePoint, confira Atualizar e atualizar o SharePoint.

SharePoint 2016 Projetos de Suplemento do SharePoint criados no Office Developer


Tools Preview 2 não podem ser abertos no Visual Studio 2022. Para
contornar essa limitação, atualize o MinimumVisualStudioVersion para a
versão 12.0 e o MinimumOfficeToolsVersion para a 12.2 no arquivo
csproj vbproj.

Silverlight Projetos do Silverlight não são compatíveis no Visual Studio 2022. Para
manter os aplicativos do Silverlight, continue a usar o Visual Studio
2015.

SQL – Redgate O SQL Change Automation Core (anteriormente chamado ReadyRoll


Core), o SQL Prompt Core e o SQL Search do Redgate não são mais
fornecidos no Instalador do Visual Studio.

Você pode continuar usando o Visual Studio 2017 para essas


funcionalidades. No Visual Studio 2019, você pode fazer a atualização
para os produtos pagos SQL Change Automation e SQL Prompt pagos
que estão disponíveis no SQL Toolbelt do Redgate.

SQL Server Reporting O suporte para esses tipos de projeto é fornecido por meio de duas
Services e SQL Server extensões na Galeria do Visual Studio: Projetos do Microsoft Analysis
Analysis Services (SSRS, Services e Projetos do Microsoft Reporting Services . Suporte do
SSDT, SSAS, MSAS) SSDT também está incluso com a carga de trabalho de Processamento
e Armazenamento de Dados no Visual Studio 2019. Para saber mais,
confira a página Baixar e instalar o SQL Server Data Tools (SSDT) para
Visual Studio.

O SQL Server O suporte ao Visual Studio 2019 está disponível. Para saber mais,
Integration Services confira a página Baixar e instalar o SQL Server Data Tools (SSDT) para
(SSIS) Visual Studio, o blog da equipe SQL Server Integration Services
(SSIS) e a página Projetos do SQL Server Integration Services no
Marketplace.
Tipo de projeto Suporte

Extensão da Janela de No Visual Studio 2019, algumas APIs de janela de teste que foram
Teste marcadas como públicas anteriormente, mas nunca foram
documentadas oficialmente, foram removidas. As APIs amplamente
visíveis foram marcadas como preteridas no Visual Studio 2017 para
fornecer um aviso antecipado aos mantenedores de extensão. Para o
nosso conhecimento, poucas extensões haviam criado uma
dependência dessas APIs. Para obter mais informações e atualizações,
veja a lista completa de APIs relacionadas a teste preteridas . Se isso
afetar seu cenário, informe-nos por meio do Visual Studio Developer
Community .

TypeScript O TypeScript SDK foi preterido no Visual Studio 2022 e não é mais
instalado por padrão em nenhuma carga de trabalho. Os projetos que
compilam o TypeScript devem instalar o pacote NuGet
Microsoft.TypeScript.MSBuild . Para dar suporte a projetos que não
podem ser atualizados imediatamente, o TypeScript SDK ainda está
disponível como componente opcional no instalador do Visual Studio,
bem como no Visual Studio Marketplace .

Visual C++ Você pode usar o Visual Studio 2022 para trabalhar em projetos
criados em versões anteriores do Visual Studio no Visual Studio 2010.
Quando você abre o projeto pela primeira vez, tem a opção de
atualizar para o compilador e o conjunto de ferramentas mais
recentes, ou continuar usando os originais. Se você optar por
continuar usando os originais, o Visual Studio 2022 não modificará o
arquivo de projeto e usará o conjunto de ferramentas da instalação
anterior do Visual Studio para compilar o projeto. Manter as opções
originais significa que você ainda pode abrir o projeto na versão
original do Visual Studio, se for necessário. Para obter mais
informações, consulte Usar a multiplataforma nativa no Visual Studio
para compilar projetos antigos.

Extensibilidade/VSIX do Os projetos com o MinimumVersion 14.0 ou inferior serão atualizados


Visual Studio para declarar a MinimumVersion 15.0, que impede que o projeto seja
aberto em versões anteriores do Visual Studio. Para permitir que um
projeto seja aberto em versões anteriores, defina MinimumVersion
como $(VisualStudioVersion) . Consulte também Como migrar
projetos de extensibilidade para o Visual Studio 2017.

Visual Studio Lab É possível usar o Microsoft Test Manager ou o Visual Studio 2010 SP1
Management e posterior para abrir ambientes criados em qualquer uma dessas
versões. No entanto, para o Visual Studio 2010 SP1, a versão do
Microsoft Test Manager deve corresponder à versão do Team
Foundation Server para que você possa criar ambientes. (Importante: o
Team Foundation Server, ou TFS, agora é conhecido como Azure
DevOps Server.)
Tipo de projeto Suporte

Ferramentas do Visual O suporte para o Apache Cordova foi removido no Visual Studio 2019.
Studio para Apache Como não há nenhum equivalente no Visual Studio 2022, não há
Cordova nenhum caminho de migração automática para esses projetos.

Você pode usar a extensão Ferramentas do Cordova para Visual Studio


Code (que fornece suporte para a última versão do Cordova) ou
continuar usando o Visual Studio 2017.

Implantação da Web O suporte para projetos da Implantação da Web foi removido no


(wdproj) Visual Studio 2012 com a adição do suporte ao perfil de publicação.
Como não há nenhum equivalente no Visual Studio 2022, não há
nenhum caminho de migração automática para esses projetos. Em vez
disso, abra o arquivo wdproj em um editor de texto e copie e cole as
personalizações em para o arquivo pubxml (perfil de publicação),
conforme descrito em StackOverflow .

Windows Abra esse projeto no Visual Studio 2022, Visual Studio 2019, Visual
Communication Studio 2017, Visual Studio 2015, Visual Studio 2013 e Visual Studio
Foundation, Windows 2012.
Workflow Foundation

Windows Presentation Abra esse projeto no Visual Studio 2022, Visual Studio 2019, Visual
Foundation Studio 2017, Visual Studio 2013, Visual Studio 2012 e Visual Studio
2010 SP1.

Aplicativos do Windows Não há suporte para projetos do Windows Phone no Visual Studio
Phone 2022.

Para manter os aplicativos do Windows Phone 8.x, use o Visual Studio


2015. Para manter os projetos do Windows Phone 7. x, use o Visual
Studio 2012.

aplicativos da Windows Não há suporte para Projetos Universais do Windows de JavaScript no


Store Visual Studio 2022. Para manter esses projetos, use o Visual Studio
2017.

Os SDKs do Windows 10 anteriores ao Windows 10 Fall Creators


Update (build 16299) foram removidos do instalador do Visual Studio
2019. Baixe os SDKs mais antigos manualmente ou redirecione seus
projetos para que eles usem os SDKs mais recentes.

Não há suporte para Projetos Universais do Windows usando


project.json. Recomendamos atualizar esses projetos para usar
referências de pacote. Como alternativa, adicione uma referência ao
Microsoft.NET.Test.Sdk versão 16.0.0.0 no arquivo project.json.

Não há suporte para projetos da Windows Store 8.1 e 8.0 no Visual


Tipo de projeto Suporte

Studio 2022. Para manter esses aplicativos, continue a usar o Visual


Studio 2015.

Xamarin A extensão Xamarin Live Player para Visual Studio e Visual Studio para
Mac foi removida. Isso remove qualquer integração e a tela de
emparelhamento. Em vez disso, use o Visualizador do Xamarin.Forms
interno.

O Emulador do Visual Studio para Android foi removido do Instalador


do Visual Studio. Em vez disso, use o novo suporte do Hyper-V no
Google Android Emulator.

Migrar um projeto
Embora tentemos manter a compatibilidade com as versões anteriores, pode haver
alterações que não são compatíveis com versões anteriores. Quando isso acontecer,
uma versão mais recente do Visual Studio não carregará o projeto nem oferecerá um
caminho de migração. Talvez seja necessário manter esse projeto em uma versão
anterior do Visual Studio. Para obter mais informações sobre os tipos de projeto
compatíveis com o Visual Studio 2022, confira a página Direcionamento e
Compatibilidade da Plataforma.

Às vezes, uma versão mais recente do Visual Studio poderá abrir um projeto, mas
precisará atualizar ou migrar o projeto, de forma que ele poderá se tornar incompatível
com versões anteriores. O Visual Studio usa os critérios a seguir para determinar se essa
migração é necessária:

Compatibilidade com as versões de destino das plataformas, até o Visual Studio


2013 RTM.

Compatibilidade de ativos de tempo de design com versões anteriores do Visual


Studio. (Nomeadamente diferentes canais do Visual Studio 2022, Visual Studio
2019, Visual Studio 2017, Visual Studio 2015 RTM e Atualização 3, Visual Studio
2013 RTM e Atualização 5, Visual Studio 2012 Atualização 4 e Visual Studio 2010
SP1.) O Visual Studio 2022 tem como objetivo falhar de forma controlada com
ativos de tempo de design obsoletos sem corrompê-los, de modo que versões
anteriores ainda possam abrir o projeto.

Se novos ativos de tempo de design interromperiam a compatibilidade com


versões anteriores até o Visual Studio 2013 RTM e Atualização 5.
A equipe de engenharia responsável pelo tipo de projeto examina esses critérios e toma
a decisão em termos de compatibilidade, suporte e migração. Novamente, tentamos
manter a compatibilidade entre as versões do Visual Studio para que, quando você criar
e modificar projetos em uma versão do Visual Studio, funcione apenas em outras
versões.

Às vezes, a compatibilidade não é possível. Então, o Visual Studio abre o assistente de


atualização para fazer as alterações unidirecionais necessárias. Essas alterações
unidirecionais podem envolver a alteração a propriedade ToolsVersion no arquivo de
projeto, que indica exatamente qual versão do MSBuild pode transformar o código-
fonte do projeto em artefatos executáveis e implantáveis que você deseja.

O que torna um projeto incompatível com versões anteriores do Visual Studio não é a
versão do Visual Studio, mas a versão do MSBuild, conforme determinado por
ToolsVersion . Se sua versão do Visual Studio contenha a cadeia de ferramentas do

MSBuild correspondente a ToolsVersion em um projeto, o Visual Studio poderá invocar


essa cadeia de ferramentas para compilar o projeto.

Para manter a compatibilidade com projetos criados em versões anteriores, o Visual


Studio 2022 inclui as cadeias de ferramentas do MSBuild necessárias para dar suporte a
ToolsVersion 15, 14, 12 e 4. Projetos que usam qualquer um desses valores
ToolsVersion devem resultar em um build bem-sucedido. (Sujeito, novamente, ao fato

de o Visual Studio 2022 dar suporte ao tipo de projeto, conforme descrito em


Direcionamento e Compatibilidade da Plataforma.)

Você pode estar tentado atualizar ou migrar manualmente um projeto para um valor
ToolsVersion mais recente. Não é necessário fazer essa alteração e provavelmente

geraria muitos erros e avisos que você deve corrigir para compilar o projeto novamente.
Além disso, se o Visual Studio não der suporte a um ToolsVersion específico no futuro,
o projeto disparará o processo de migração do projeto quando você abri-lo, porque o
valor ToolsVersion deve ser alterado.

Conteúdo relacionado
Diretrizes de ToolsVersion
Diretrizes de direcionamento de estrutura
Referência de migração e atualização de projeto do Visual Studio 2019
Suporte para versões mais antigas do Visual Studio
Janela Lista de Erros
Artigo • 15/01/2024

7 Observação

A Lista de Erros exibe informações sobre uma mensagem de erro específica. Copie
o número do erro ou o texto da cadeia de caracteres de erro da Janela de Saída.
Para exibir a Janela de Saída, pressione Ctrl+Alt+O. Confira Janela de Saída.

A janela Lista de Erros permite que você execute as seguintes tarefas:

Exibir os erros, os avisos e as mensagens produzidas durante a escrita do código.

Localizar erros de sintaxe observados pelo IntelliSense.

Localizar erros de implantação, determinados erros da Análise Estática e erros


detectados durante a aplicação de políticas de Modelo Empresarial.

Clicar duas vezes em uma entrada de mensagem de erro para abrir o arquivo em
que ocorre o problema e ir até o local do erro.

Filtrar quais entradas são exibidas e quais colunas de informações são exibidas
para cada entrada.

Pesquisar termos específicos e definir o escopo da pesquisa para apenas o projeto


ou o documento atual.

Para exibir a Lista de Erros, escolha Exibir>Lista de Erros ou pressione Ctrl+\+E.

É possível escolher as guias Erros, Avisos e Mensagens para ver níveis diferentes de
informações.

Para classificar a lista, clique em qualquer cabeçalho de coluna. Para classificar


novamente por uma coluna adicional, mantenha pressionada a tecla Shift e clique em
outro cabeçalho de coluna. Para selecionar quais colunas são exibidas e ocultadas,
escolha Mostrar Colunas no menu de atalho. Para alterar a ordem na qual as colunas
são exibidas, arraste qualquer cabeçalho de coluna para a esquerda ou para a direita.

Filtros da Lista de Erros


Há dois tipos de filtro em duas caixas suspensas, uma do lado direito da barra de
ferramentas e outra à esquerda da barra de ferramentas. A lista suspensa do lado
esquerdo da barra de ferramentas especifica o conjunto de arquivos de código a ser
usado (Solução Inteira, Documentos Abertos, Projeto Atual, Documento Atual).

É possível restringir o escopo da pesquisa para analisar e tomar decisões sobre grupos
de erros. Por exemplo, talvez você deseje se concentrar em erros básicos que estão
impedindo a compilação de um projeto. As opções de escopo incluem:

1. Documentos Abertos: mostre erros, avisos e mensagens para os documentos


abertos.

2. Projeto Atual: mostre erros, avisos e mensagens do projeto do documento


atualmente selecionado no Editor ou o projeto selecionado no Gerenciador de
Soluções.

7 Observação

A lista filtrada de erros, avisos e mensagens será alterada se o projeto do


documento selecionado atualmente for diferente do projeto selecionado no
Gerenciador de Soluções.

3. Documento Atual: mostre erros, avisos e mensagens para o documento


atualmente selecionado no Editor ou no Gerenciador de Soluções.

Se um filtro estiver aplicado no momento para o resultado da pesquisa, o nome do filtro


será exibido na barra de título Lista de Erros. Em seguida, os botões Erros, Avisos e
Mensagens exibem o número de itens filtrados mostrados junto com o número total de
itens. Por exemplo, os botões mostram "x de y Erros". Se nenhum filtro for aplicado, a
barra de título indicará apenas a “Lista de Erros”.

A lista no lado direito da barra de ferramentas especifica se serão mostrados os erros do


build (os erros resultantes de uma operação de build), do IntelliSense (erros detectados
antes da execução de um build) ou ambos.

Pesquisar
Use a caixa de texto Pesquisar Lista de Erros no lado direito da barra de ferramentas
Lista de Erros para encontrar erros específicos na lista de erros. É possível pesquisar em
qualquer coluna visível na lista de erros e os resultados da pesquisa são sempre
classificados de acordo com a coluna que tem a prioridade de classificação, em vez da
consulta ou do filtro aplicado. Se você escolher a tecla Esc enquanto o foco estiver na
Lista de Erros, será possível limpar o termo de pesquisa e os resultados da pesquisa
filtrados. Você também pode clicar no X no lado direito da caixa de texto para
desmarcá-la.

Salvar
É possível copiar a lista de erros e salvá-la em um arquivo. Selecione os erros que você
deseja copiar, clique com o botão direito do mouse na seleção e, em seguida, no menu
de contexto, selecione Copiar. Depois é possível colar os erros em um arquivo. Se você
colar os erros em uma planilha do Excel, os campos serão exibidos como colunas
diferentes.

Lista de elementos da interface de usuário


Gravidade

Exibe os diferentes tipos da entrada Lista de Erros (Erro, Mensagem, Aviso, Aviso
[ativo], Aviso [inativo]).

Código

Exibe o código de erro.

Descrição

Exibe o texto da entrada.

Projeto

Exibe o nome do projeto atual.

Arquivo

Exibe o nome do arquivo.

Linha

Exibe a linha em que ocorre o problema.

Detalhes

Exibe um ícone clicável para abrir a janela Detalhes do problema se essa entrada tiver
detalhes adicionais.
Propriedades de arquivo, JavaScript
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível usar propriedades de arquivo para indicar quais ações o sistema de projeto
deve executar nos arquivos. Por exemplo, é possível definir propriedades de arquivo
para indicar se um arquivo deve ser adicionado ao pacote como um arquivo de recurso.

É possível selecionar qualquer arquivo no Gerenciador de Soluções e, em seguida,


examinar suas propriedades na janela Propriedades. Os arquivos JavaScript têm quatro
propriedades: Copiar para Diretório de Saída, Ação do Pacote, Nome de Arquivo e
Caminho do Arquivo.

Propriedades do Arquivo
Esta seção descreve as propriedades comuns aos arquivos JavaScript.

Propriedade Copiar para Diretório de Saída


Esta propriedade especifica as condições sob as quais o arquivo de origem selecionado
será copiado para o diretório de saída. Selecione Não copiar se o arquivo nunca deve
ser copiado para o diretório de saída. Selecione Copiar sempre se o arquivo sempre
deve ser copiado para o diretório de saída. Selecione Copiar se for mais novo se o
arquivo deve ser copiado somente quando ele for mais recente que um arquivo
existente de mesmo nome no diretório de saída.

Ação do Pacote
A propriedade Ação do Pacote indica o que o Visual Studio faz com um arquivo quando
um build é executado. A Ação do Pacote pode ter um valor dentre vários:

Nenhum – O arquivo não está incluído no manifesto do pacote. Um exemplo é um


arquivo de texto que contém a documentação, como um arquivo Leiame.

Conteúdo – O arquivo está incluído no manifesto do pacote. Por exemplo, essa


configuração é o valor padrão para um arquivo .htm, .js, .css, de imagem, de áudio
ou de vídeo.

Manifesto – O arquivo não está incluído no manifesto do pacote. Em vez disso, o


arquivo é usado para entrada ao gerar o manifesto do pacote. Esse é o valor
padrão do arquivo package.appxmanifest.

Recurso – O arquivo não está incluído no manifesto do pacote. Em vez disso, o


conteúdo do arquivo é indexado no PRI (Índice de Recurso do Pacote) que entra
no manifesto do pacote. Normalmente, ele é usado para arquivos de recurso.

O valor padrão para Ação do Pacote depende da extensão do arquivo adicionado à


solução.

Propriedade Nome de Arquivo


Exibe o nome de arquivo como um valor somente leitura. Para renomear o arquivo, é
necessário clicar com o botão direito do mouse no Gerenciador de Soluções e
selecionar Renomear.

Propriedade do caminho completo


Exibe o caminho completo no arquivo como um valor somente leitura. Para alterar o
caminho do arquivo, é possível arrastar e soltar o arquivo no Gerenciador de Soluções.

Propriedades do arquivo de referência


Esta seção descreve as propriedades comuns a arquivos referenciados de um aplicativo
UWP compilado com JavaScript. Quando você seleciona uma referência como um
arquivo .winmd, uma referência de SDK, uma referência projeto a projeto ou uma
referência de assembly no Gerenciador de Soluções, outras propriedades podem ser
exibidas na janela Propriedades, de acordo com o tipo de arquivo.

Cultura
Exibe o idioma associado à referência.

Tipo de arquivo
Exibe o tipo de arquivo da referência.

Versão do Arquivo
Exibe a versão de arquivo da referência.
Identidade
Exibe a identidade da referência usada no projeto, armazenado no arquivo de projeto.

Pacote
Exibe o nome do manifesto do pacote associado à referência.

Caminho da resolução
Exibe o caminho da referência usada no projeto.

Caminho do SDK
Exibe o caminho para o arquivo do SDK referenciado.

Uri
Exibe o URI que deve ser incluído nos arquivos HTML ou JavaScript do projeto para
incluir o arquivo como um arquivo de origem.

Versão
Exibe a versão da referência.

Confira também
Gerenciando propriedades de solução e de projeto
Caixa de diálogo Ir para Linha
Artigo • 13/01/2024

A caixa de diálogo Ir Para Linha permite que você vá para uma linha específica no
documento ativo. Para acessar essa caixa de diálogo, abra um documento para edição e
selecione Editar>Ir Para>Ir Para Linha ou pressione Ctrl+G.

Número da linha (1 - <n>)


Na caixa Número da linha (1 - <n>), insira o número da linha no documento ativo para
a qual você deseja ir. O número inserido deve estar entre 1 e o número da última linha
no documento atual.

Confira também
Localizar código usando comandos Ir Para
Definir indicadores no código
Localizar e substituir texto
Recursos do editor de código
Comando Go To
Janela Imediata
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a janela Imediato para depurar e avaliar expressões, executar instruções e imprimir
valores de variáveis. A janela Imediato avalia expressões compilando e usando o projeto
atualmente selecionado.

Para exibir a janela Imediato, abra um projeto para edição, escolha


Depurar>Windows>Imediato ou pressione Ctrl+Alt+I. Você também pode inserir
Debug.Immediate na janela Comando.

A janela Imediato dá suporte ao IntelliSense.

Exibir os valores de variáveis


A janela Imediato é particularmente útil quando você está depurando um aplicativo. Por
exemplo, para verificar o valor de uma variável varA , use o comando Imprimir:

Prompt de comando do Windows

>Debug.Print varA

O ponto de interrogação (?) é um alias para Debug.Print , portanto, esse comando


também pode ser escrito:

Prompt de comando do Windows

? varA

As duas versões desse comando retornam o valor da variável varA .

 Dica

Para emitir um comando do Visual Studio na janela Imediato, você precisa


preceder o comando com um sinal de maior que (>). Para inserir vários comandos,
alterne para a janela Comando.

Avaliação de expressão de tempo de design


Você pode usar a janela Imediato para executar uma função ou sub-rotina em tempo de
design.

Executar uma função em tempo de design


1. Copie o seguinte código no aplicativo de console do Visual Basic:

VB

Module Module1

Sub Main()
MyFunction(5)
End Sub

Function MyFunction(ByVal input as Integer) As Integer


Return input * 2
End Function

End Module

2. No menu Depuração, escolha Windows>Imediato.

3. Digite ?MyFunction(2) na janela Imediato e pressione Enter.

A janela Imediato executa MyFunction e exibe 4 .

Se a função ou a sub-rotina contiverem um ponto de interrupção, o Visual Studio


interromperá a execução no ponto apropriado. Então, você poderá usar o depurador do
Windows para examinar o estado do programa. Para obter mais informações, consulte
Passo a passo: depuração em tempo de design.

Não é possível usar a avaliação de expressão em tempo de design em tipos de projetos


que exigem a inicialização de um ambiente de execução, incluindo projetos do Visual
Studio Tools para Office, projetos Web, projetos de Dispositivo Inteligente e projetos do
SQL.

Avaliação de expressão em tempo de design em soluções


multiprojeto
Ao estabelecer o contexto para a avaliação de expressão em tempo de design, o Visual
Studio referencia o projeto atualmente selecionado no Gerenciador de Soluções. Se
nenhum projeto estiver selecionado no Gerenciador de Soluções, o Visual Studio tentará
avaliar a função com relação ao projeto de inicialização. Se a função não puder ser
avaliada no contexto atual, você receberá uma mensagem de erro. Se você estiver
tentando avaliar uma função em um projeto que não é o projeto de inicialização da
solução e receber um erro, tente selecionar o projeto no Gerenciador de Soluções e
tente fazer a avaliação novamente.

Inserir comandos
Insira o sinal de maior que (>) ao emitir comandos do Visual Studio na janela Imediato.
Use as teclas Seta para cima e Seta para baixo para rolar pelos comandos usados
anteriormente.

Tarefa Solução Exemplo

Avaliar uma expressão. Preceda a expressão com um ? a+b


ponto de interrogação (?).

Entrar temporariamente no modo Comando Digite o comando >alias


enquanto está no modo Imediato (para executar um precedendo-o com um sinal
único comando). de maior que (>).

Mude para a janela Comando. Insira cmd na janela, >cmd


precedendo-o com um sinal
de maior que (>).

Mude para a janela Imediato. Insira immed na janela, sem o immed


sinal de maior que (>).

Modo de marca
Quando clica em qualquer linha anterior na janela Imediato, você muda
automaticamente para o modo de Marca. Isso permite selecionar, editar e copiar o texto
de comandos anteriores como você faria em qualquer editor de texto e colá-lo na linha
atual.

Exemplos
O exemplo a seguir mostra quatro expressões e seus resultados na janela Imediato para
um projeto do Visual Basic.

Prompt de comando do Windows

j = 2
Expression has been evaluated and has no value
? j
2

j = DateTime.Now.Day
Expression has been evaluated and has no value

? j
26

Notificações de exceção de primeira tentativa


Em algumas configurações, notificações de exceção de primeira tentativa são exibidas
na janela Imediato.

Ativar ou desativar notificações de exceção de primeira


tentativa na janela Imediato
1. No menu Exibir, clique em Outras Janelas e clique em Saída.

2. Clique com o botão direito do mouse na área de texto da Janela de Saída e


marque ou desmarque Mensagens de Exceção.

Confira também
Navegar pelo Código com o Depurador
Janela Comando
Introdução ao depurador
Passo a passo: depuração em tempo de design
Aliases de comando do Visual Studio
Usando expressões regulares no Visual Studio
Colar JSON ou XML como classes
Artigo • 13/01/2024

No Visual Studio, você pode copiar texto de arquivos JSON ou XML e colá-lo como
classes em seu código C# ou Visual Basic. Para fazer isso, selecione Editar>Colar
Especial e escolha Colar JSON como Classes ou Colar XML como Classes.

 Dica

Se você não vir a opção Colar Especial no menu Editar, verifique se você tem pelo
menos uma das seguintes cargas de trabalho instaladas: ASP.NET e
desenvolvimento na Web, desenvolvimento do Azure ou desenvolvimento de
área de trabalho do .NET. Em seguida, selecione o arquivo de programa para seu
aplicativo. Por exemplo, para um aplicativo C#, selecione o arquivo Program.cs no
Gerenciador de Soluções.

JSON (JavaScript Object Notation) e XML (eXtensible Markup Language) são


semelhantes no sentido em que ambos são usados para armazenar e transportar dados.
O JSON, no entanto, é menos detalhado e pode usar matrizes.

Exemplos
Antes de usar o comando Colar JSON como Classes ou Colar XML como Classes no
Visual Studio, crie um espaço reservado para o texto. Para um aplicativo C#, você pode
usar uma declaração de namespace vazia para fazer isso, conforme mostrado na
seguinte captura de tela:

Em seguida, cole o texto JSON ou XML dentro das chaves.

JSON
Este é um texto JSON de exemplo:

JSON

{
"Colors": [
{
"numberKey": 1,
"isPrimary": true,
"listColors": ["Red", "Blue", "Yellow"]
},

{
"numberKey": 2,
"isPrimary": false,
"listColors": ["Purple", "Green", "Orange"]
} ]
}

Aqui está uma captura de tela que mostra como o Visual Studio converte texto JSON
em classes:
XML
Aqui está um exemplo de texto XML:

XML

<root>
<color>
<id>01</id>
<name>red</name>
<type>primary</type>
</color>
<color>
<id>02</id>
<name>green</name>
<type>secondary</type>
</color>
</root>

Aqui está um exemplo de código que mostra como o Visual Studio converte o texto
XML em classes:

C#
using System;

namespace PasteDemo
{
// NOTE: Generated code may require at least .NET Framework 4.5 or .NET
Core/Standard 2.0.
/// <remarks/>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable =
false)]
public partial class root
{

private rootColor[] colorField;

/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("color")]
public rootColor[] color
{
get
{
return this.colorField;
}
set
{
this.colorField = value;
}
}
}

/// <remarks/>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class rootColor
{

private byte idField;

private string nameField;

private string typeField;

/// <remarks/>
public byte id
{
get
{
return this.idField;
}
set
{
this.idField = value;
}
}

/// <remarks/>
public string name
{
get
{
return this.nameField;
}
set
{
this.nameField = value;
}
}

/// <remarks/>
public string type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
}
}

Confira também
Recursos do editor de código
Dicas de introdução em Guia de produtividade do Visual Studio para
desenvolvedores de C#
Guia de produtividade para o Visual Studio
Arquivos diversos
Artigo • 15/01/2024

Talvez você queira usar o editor do Visual Studio para trabalhar de forma independente
nos arquivos de um projeto ou de uma solução. Enquanto você tiver uma solução
aberta, pode abrir e modificar arquivos sem adicioná-los a uma solução ou um projeto.
Os arquivos com os quais você deseja trabalhar independentemente são chamados de
arquivos diversos. Os arquivos diversos são externos às soluções e projetos, não estão
incluídos em builds e não podem ser incluídos com uma solução sob controle do
código-fonte.

Abrir arquivos independentemente de um projeto ou solução é útil para uma variedade


de razões. Você pode ter um arquivo que deseja exibir enquanto desenvolve uma
solução baseada em projeto, mas que não é parte integrante do desenvolvimento da
solução. Exemplos comuns incluem instruções ou anotações de desenvolvimento,
esquema de banco de dados e fragmentos de código. Além disso, você talvez queira
criar um arquivo autônomo.

O Gerenciador de Soluções poderá exibir uma pasta Arquivos Diversos para os arquivos
se as opções para a pasta estiverem habilitadas. As opções podem ser definidas em
Caixa de diálogo Documentos, Ambiente, Opções. Depois de fechar um arquivo diverso,
ele não é associado a nenhuma solução ou projeto específico, a menos que uma opção
seja habilitada para isso também.

A pasta Arquivos Diversos representa os arquivos como links. Embora essa pasta não
seja parte de uma solução, quando você abre uma solução, alguns ou todos os arquivos
diversos que estavam abertos quando a solução foi fechada pela última vez são
reabertos, dependendo das configurações da pasta.

7 Observação
Alguns dos arquivos que não aparecem na pasta Arquivos Diversos são arquivos
que você não pode modificar dentro do IDE, como arquivos .zip e arquivos .doc. O
IDE não rastreia arquivos que podem ser modificados apenas por um editor
externo.

Comandos disponíveis no IDE


Os menus, barras de ferramentas e os comandos que eles contêm mudam com base no
formato do arquivo aberto. Quando você abre um arquivo de texto, por exemplo, a
barra de ferramentas Editor de Texto aparece e seus comandos estão disponíveis. Se
você abrir um arquivo de Esquema XML, a barra de ferramentas Esquema XML será
exibida. Ao editar o Esquema XML, os comandos da barra de ferramentas Editor de
Texto (ou a barra de ferramentas em si) estão indisponíveis. O Esquema XML é a janela
ativa e como tal, tem contexto de seleção atual. Quando você muda entre um arquivo
de projeto e um arquivo diverso, todos os comandos relacionados ao projeto
desaparecem e somente aqueles que estão diretamente relacionados aos arquivos
diversos são exibidos.

Opções de exibição de pasta


Você pode definir opções de exibição para a pasta Arquivos Diversos para que ela seja
exibida mesmo que você não tenha aberto nenhum arquivo diverso. O arquivo de
solução não gerencia permanentemente uma lista de arquivos diversos. Ele usa um
recurso opcional que permite que ele se lembre uma lista de arquivos MRU
(recentemente usados) por usuário.

Confira também
Desenvolver código no Visual Studio sem projetos nem soluções
Soluções e projetos
Caixa de diálogo Documentos, Ambiente, Opções
Caixa de diálogo Opções (Visual Studio)
Artigo • 13/01/2024

A caixa de diálogo Opções permite que você configure o IDE (ambiente de


desenvolvimento integrado) para as suas necessidades. Por exemplo, estabelecer um
local de salvamento padrão para seus projetos, alterar a aparência e o comportamento
padrão das janelas e criar atalhos para os comandos mais usados. Também há opções
específicas para a sua plataforma e linguagem de desenvolvimento. Você pode acessar
Opções do menu Ferramentas.

Layout da caixa de diálogo Opções


A caixa de diálogo Opções é dividida em duas partes: um painel de navegação à
esquerda e uma área de exibição à direita. O controle de árvore no painel de navegação
inclui nós de pasta, como Ambiente, Editor de Texto, Projetos e Soluções e Controle do
Código-Fonte. Expanda qualquer nó da pasta para listar as páginas de opções que ele
contém. Quando você seleciona o nó para uma determinada página, suas opções
aparecem na área de exibição.

Opções para um recurso IDE não aparecem no painel de navegação até que o recurso
seja carregado na memória. Portanto, quando começa uma nova sessão, pode ser que
não sejam exibidas as mesmas opções que eram exibidas quando você terminou a
última. Quando você cria um projeto ou executa um comando que usa um aplicativo em
particular, nós para opções relevantes são adicionados à caixa de diálogo Opções. Essas
opções adicionadas então permanecerão disponíveis, desde que o recurso de IDE
permaneça na memória.

7 Observação

Algumas coleções de configurações definem o escopo do número de páginas que


aparecem no painel de navegação da caixa de diálogo Opções.

Como as opções são aplicadas


Clicar em OK na caixa de diálogo Opções salva todas as configurações em todas as
páginas. Clicar em Cancelar em qualquer página cancela todas as solicitações de
alteração, incluindo qualquer uma recém feita em outras páginas de Opções. Algumas
alterações nas configurações de opção, como aquelas feitas na Caixa de Diálogo Fontes
e Cores, Ambiente, Opções, apenas entrarão em vigor depois que você fechar e reabrir
o Visual Studio.

Confira também
Personalizando o editor
Configurações e preferências do Git
Caixa de diálogo Opções: Ambiente >
Geral
Artigo • 17/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use esta página para alterar temas de cores, configurações de barra de status e
associações de extensões de arquivo, entre outras coisas, para o IDE (ambiente de
desenvolvimento integrado). Você pode acessar a caixa de diálogo Opções abrindo o
menu Ferramentas, escolhendo Opções, abrindo a pasta Ambiente e, em seguida,
escolhendo a página Geral.

Experiência visual
Tema de cores

Escolha o tema de cor Azul, Azul (Contraste Extra), Escuro ou Claro para o IDE.

Você também pode optar por usar o tema que o Windows usa selecionando Usar
configuração do sistema.

Para instalar temas predefinidos adicionais e criar temas personalizados, baixe e instale
o Designer de Tema de Cores do Visual Studio para a versão que você está usando no
momento, da seguinte maneira:

Designer de Tema de Cores do Visual Studio 2022


Designer de Tema de Cores do Visual Studio 2019 .
Editor de Tema de Cores do Visual Studio 2017

Após instalar essa ferramenta, temas de cores adicionais aparecerão na caixa de


listagem Tema de Cor.

7 Observação

Quer ainda mais temas para escolher? Confira a ampla variedade de temas
personalizados no Visual Studio Marketplace . E para ver exemplos de novos
temas personalizados do Visual Studio 2022 com base no VS Code, confira a
postagem no blog Introdução a uma coleção de novos temas do Visual Studio .

Usar configurações de alto contraste do Windows


Por padrão, o Visual Studio usa as configurações de Alto Contraste do Windows. Você
pode desativar essa opção, mas deve reiniciar o computador.

Aplicar o estilo de capitalização de título à barra de menus

Os menus utilizam o estilo de capitalização de título como padrão. Desmarque essa


opção para usar o estilo de capitalização em todas as letras.

Otimizar a renderização de telas com diferentes densidades de pixel (requer


reinicialização)

Esta opção habilita ou desabilita o reconhecimento de DPI (pontos por polegada) por
monitor (ou PMA). Quando o PMA está habilitado, a interface de usuário do Visual
Studio é exibida com nitidez em qualquer fator de escala de exibição do monitor e
configuração de DPI, inclusive com a extensão a vários monitores. Para habilitar o PMA,
é necessária a atualização do Windows 10 de 10 de abril de 2018 ou posterior e o .NET
Framework 4.8 ou posterior. Essa opção aparecerá desativada se esses dois pré-
requisitos não forem atendidos.

 Dica

O Windows 10 tem uma configuração que diz Permitir que o Windows tente
corrigir aplicativos para que eles não fiquem desfocados. Ativar essa
configuração do Windows terá um efeito insignificante se a opção Otimizar
renderização para telas com densidades de pixel diferentes estiver marcada.
(Essa configuração não está disponível no Windows 11. Para obter mais
informações sobre o Windows 11, consulte Visão geral do Windows 11.)
O Windows 10 também inclui uma Solução de problemas de
compatibilidade de programas. Não é recomendável tentar corrigir a
aparência do Visual Studio usando essa solução de problemas. (Esse recurso
não está disponível no Windows 11. Para obter mais informações sobre o
Windows 11, consulte Visão geral do Windows 11.)

Ajustar automaticamente a experiência visual com base no desempenho do cliente

Especifica se o Visual Studio ajusta automaticamente a experiência visual ou se você a


ajusta de maneira explícita. Esse ajuste pode alterar a exibição de cores de gradientes
para cores simples ou pode restringir o uso de animações em menus ou janelas pop-up.

Habilitar experiência avançada do cliente


Habilita a experiência visual completa do Visual Studio, incluindo animações e
gradientes. Desmarque esta opção quando estiver usando conexões da Área de
Trabalho Remota ou adaptadores de gráficos mais antigos, uma vez que esses recursos
podem ter um desempenho ruim nesses casos. Essa opção fica disponível somente
quando você desmarca a opção Ajustar autom. a experiência visual com base no
desempenho do cliente.

Usar aceleração de elementos gráficos de hardware, se disponível

Usa aceleração de elementos gráficos de hardware se estiver disponível, em vez de


aceleração de software.

Outro
Itens a serem mostrados no menu Janela

Personaliza o número de janelas que aparecem na lista Janelas do menu Janela. Insira
um número entre 1 e 24. O valor padrão é 10.

Itens mostrados em listas usadas recentemente

Personaliza o número de projetos e arquivos usados mais recentemente que aparecem


no menu Arquivo. Insira um número entre 1 e 24. O valor padrão é 10. Esta é uma
maneira fácil de recuperar projetos e arquivos usados recentemente.

Mostrar barra de status

Exibe a barra de status. A barra de status fica localizada na parte inferior da janela do
IDE e exibe informações sobre o progresso das operações em andamento.

O botão Fechar afeta apenas a janela da ferramenta ativa

Especifica que, quando o botão Fechar é acionado, somente a janela da ferramenta que
está em foco é fechada, e não todas as janelas de ferramentas do conjunto encaixado.
Por padrão, essa opção é selecionada.

O botão Ocultar Automaticamente afeta apenas a janela da ferramenta ativa

Especifica que, quando o botão Ocultar Automaticamente é acionado, somente a janela


da ferramenta que está em foco é ocultada automaticamente, e não todas as janelas de
ferramentas do conjunto encaixado. Por padrão, essa opção não é selecionada.

Na inicialização, abra
Personaliza uma ação padrão diferente quando o Visual Studio é iniciado. Na lista Na
inicialização, abrir, escolha entre janela Iniciar (que permite abrir um projeto novo ou
existente), Solução mais recente ou Ambiente vazio.

Confira também
Personalizar layouts de janela e guias
Caixa de diálogo Contas, Ambiente,
Opções
Artigo • 13/01/2024

Use essa página para definir várias opções relacionadas às contas que você usa para
entrar no Visual Studio.

Conta de personalização

Sincronizar configurações em todos os dispositivos


Use essa opção para especificar se deseja sincronizar as configurações em vários
computadores. Para obter mais informações, confira Configurações sincronizadas.

Habilitar o fluxo de código do dispositivo


Quando essa opção é selecionada, o comportamento do Visual Studio é alterado
quando você seleciona Adicionar uma conta na página Arquivo>Configurações da
Conta. Em vez de ver a página Entrar em sua conta, você verá uma caixa de diálogo
com uma URL e um código para colar em um navegador da Web para entrar. Essa
opção é útil nos casos em que você não pode entrar no Visual Studio da maneira
normal, por exemplo, se você usa uma versão mais antiga do Internet Explorer ou se o
firewall restringe o acesso. Para obter mais informações, consulte Entrar no Visual
Studio.

Nuvens do Azure registradas


Esta seção mostra as instâncias de nuvem do Azure às quais você tem acesso por meio
de uma ou mais contas que você usa para entrar no Visual Studio. Por exemplo, talvez
você tenha acesso a uma instância particular do Azure no data center de sua empresa.
Ou talvez você tenha acesso a uma instância soberana ou governamental do Azure,
como o Azure China 21 Vianet ou o Azure U.S. Government. A instância de nuvem
global do Azure é exibida por padrão na lista e não pode ser removida.

Registre uma nuvem adicional do Azure escolhendo o botão Adicionar. A caixa de


diálogo Adicionar Nova Nuvem do Azure lista várias instâncias de nuvem do Azure
conhecidas às quais você pode se conectar ou você pode inserir a URL para um ponto
de extremidade particular do Azure.
Depois de registrar uma nuvem adicional do Azure, você pode escolher à qual nuvem
do Azure deseja se conectar quando entrar no Visual Studio.

Confira também
Sincronizar configurações em vários computadores
Entrar no Visual Studio
Trabalhar com várias contas de usuário
Configurações do ambiente
Caixa de diálogo AutoRecuperação,
Ambiente, Opções
Artigo • 13/01/2024

Use essa página da caixa de diálogo Opções para especificar se o backup automático
dos arquivos deve ser feito ou não. Especifique também se deseja restaurar os arquivos
modificados caso o Visual Studio seja desligado inesperadamente.

Para acessar essa caixa de diálogo, acesse


Ferramentas>Opções>Ambiente>AutoRecuperação.

Salvar informações de AutoRecuperação a cada [n] minutos

Use esta opção para personalizar a frequência com que um arquivo é salvo
automaticamente no editor. Para arquivos salvos anteriormente, o Visual Studio salva
uma cópia do arquivo em %LocalAppData%\Microsoft\VisualStudio\BackupFiles\
[projectname]. Se o arquivo for novo e você ainda não tiver salvado, o Visual Studio
salva automaticamente com um nome de arquivo gerado aleatoriamente.

Manter informações de AutoRecuperação por [n] dias

Use esta opção para especificar por quanto tempo o Visual Studio manterá arquivos
criados para AutoRecuperação.

Confira também
caixa de diálogo Opções
Caixa de diálogo Opções: Ambiente >
Documentos
Artigo • 13/01/2024

Use esta página da caixa de diálogo Opções para controlar a exibição de documentos
no IDE (ambiente de desenvolvimento integrado) e gerenciar alterações externas em
documentos e arquivos. Para acessar essa caixa de diálogo, clique em Opções, no menu
Ferramentas e selecione Ambiente>Documentos.

Detectar quando o arquivo foi alterado fora do ambiente

Quando essa opção é selecionada, uma mensagem notifica você imediatamente sobre
alterações em um arquivo aberto que foram feitas por um editor fora do IDE. A
mensagem permite recarregar o arquivo do armazenamento.

Recarregar arquivos modificados a menos que haja alterações não salvas

Quando Detectar quando o arquivo foi alterado fora do ambiente está selecionado e
um arquivo aberto no IDE é alterado fora do IDE, uma mensagem de aviso é gerada por
padrão. Se essa opção estiver habilitada, nenhum aviso será exibido e o documento será
recarregado no IDE para acompanhar alterações externas.

Permitir a edição de arquivos somente leitura; avisar ao tentar salvar

Quando essa opção está habilitada, você pode abrir e editar um arquivo somente
leitura. Ao terminar, você deverá usar o comando Salvar Como para salvar o arquivo
com um novo nome, se desejar salvar um registro de suas alterações.

Abrir arquivo usando o diretório do documento ativo no momento

Quando selecionada, essa opção especifica que a caixa de diálogo Abrir Arquivo deve
exibir o diretório do documento ativo. Quando essa opção está desmarcada, a caixa de
diálogo Abrir Arquivo exibe o diretório que foi usado para abrir um arquivo pela última
vez.

Verificar terminações de linha consistentes ao carregar

Selecione esta opção para que o editor verifique as terminações de linha em um arquivo
e exiba uma caixa de mensagem se forem detectadas inconsistências na forma como as
terminações de linha estão formatadas.

Exibir aviso quando a opção de desfazer global for modificar arquivos editados
Selecione esta opção para exibir uma caixa de mensagem quando o comando Desfazer
Global for reverter alterações de refatoração feitas em arquivos que também foram
alterados após a operação de refatoração. Retornar um arquivo ao seu estado pré-
refatoração pode descartar alterações feitas posteriormente no arquivo.

Mostrar arquivos diversos no Gerenciador de Soluções

Selecione esta opção para exibir o nó Arquivos Diversos no Gerenciador de Soluções.


Arquivos diversos são arquivos que não estão associadas um projeto ou solução, mas
podem aparecer no Gerenciador de Soluções por questões de conveniência.

7 Observação

Selecione esta opção para habilitar o comando Exibir no Navegador no menu


Arquivo para documentos da Web não incluídos no aplicativo Web ativo.

Itens salvos no projeto Arquivos diversos

Especifica o número de arquivos a persistir na pasta Arquivos diversos do Gerenciador


de Soluções. Esses arquivos são listados mesmo que não estejam mais abertos em um
editor. Você deve especificar qualquer número inteiro entre 0 e 99. O número padrão é
0.

Por exemplo, se você definir essa opção como 5 e tiver 10 arquivos diversos abertos,
quando você fechar todos os 10 arquivos, os 5 primeiros ainda aparecerão na pasta
Arquivos Diversos.

Salvar documentos como Unicode quando os dados não puderem ser salvos em
página de código

Selecione esta opção para fazer com que arquivos que contêm informações
incompatíveis com a página de código selecionada sejam salvos como Unicode por
padrão.

Salvar arquivos automaticamente quando o Visual Studio está em segundo plano

Selecione essa opção quando desejar que o Visual Studio, depois que ele perder o foco,
salve todos os arquivos no IDE. Isso inclui arquivos de projeto, arquivos de solução e até
mesmo arquivos diversos que não fazem parte do projeto ou da solução. A intenção é
que, quando você alterna para outra ferramenta, todas as alterações no Visual Studio
sejam confirmadas no disco.

Para saber mais, confira a postagem no blog Sofre de fadiga de Ctrl+S? Temos um
recurso para você .
Confira também
Arquivos diversos
Localizando e substituindo texto
Caixa de diálogo Opções: extensões de
ambiente >
Artigo • 13/01/2024

Use esta página para definir opções de como o Visual Studio executa atualizações e
como extensões são atualizadas e descobertas.

Procurar atualizações automaticamente


Quando esta opção é marcada, o Visual Studio verifica periodicamente se há
atualizações dele ou dos SDKs, ferramentas e extensões instaladas e exibe notificações
na barra de menus quando atualizações estiverem disponíveis. Para obter mais
informações, confira Atualizar o Visual Studio.

Atualizar extensões automaticamente


Quando esta opção é marcada, são feitas atualizações de extensões sem prompts. Para
obter mais informações, consulte Localizando e usando extensões do Visual Studio.

Carregar por extensões de usuário ao executar


como administrador
Para obter mais informações, consulte Localizando e usando extensões do Visual Studio.

Galerias de Extensões Adicionais


Um recurso do Enterprise que habilita o suporte para galerias de extensões
proprietárias. Saiba mais em Galerias privadas.
Caixa de diálogo Localizar e Substituir,
Ambiente, Opções
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use esta página da caixa de diálogo Opções para controlar caixas de mensagem e
outros aspectos de uma operação de localizar e substituir. Para acessar essa caixa de
diálogo no menu Ferramentas, selecione Opções, expanda Ambiente e selecione
Localizar e Substituir.

Exibir mensagens informativas

Selecione esta opção para exibir todas as mensagens informativas de Localizar e


Substituir que têm a opção Sempre mostrar esta mensagem. Por exemplo, se você tiver
optado por não exibir a mensagem "A localização atingiu o ponto inicial da pesquisa.",
selecionar essa opção faria com que essa mensagem informativa aparecesse novamente
quando você usasse Localizar e Substituir.

Se não quiser ver nenhuma mensagem informativa para Localizar e Substituir,


desmarque essa opção.

Quando você desmarcar a opção Sempre mostrar esta mensagem em algumas, mas
não em todas as mensagens informativas de Localizar e Substituir, a caixa de seleção
Exibir mensagens informativas parecerá estar preenchida, mas não selecionada. Para
restaurar todas as mensagens opcionais de Localizar e Substituir, desmarque essa
opção e selecione-a novamente.

7 Observação

Essa opção não afeta nenhuma mensagem informativa de Localizar e Substituir


que não exibe a opção Sempre mostrar esta mensagem.

Exibir mensagens de aviso

Selecione esta opção para exibir todas as mensagens de aviso de Localizar e Substituir
que têm a opção Sempre mostrar esta mensagem. Por exemplo, se você optar por não
exibir a mensagem de aviso de Substituir tudo que aparece quando você tenta fazer
substituições em arquivos que não estão abertos para edição, selecionar esta opção
faria com que a mensagem de aviso aparecesse novamente quando você tentasse
substituir tudo.
Se não quiser ver nenhuma mensagem de aviso para Localizar e Substituir, desmarque
essa opção.

Quando você desmarcar a opção Sempre mostrar esta mensagem em algumas, mas
não em todas as mensagens de aviso de Localizar e Substituir, a caixa de seleção Exibir
mensagens de aviso parecerá estar preenchida, mas não selecionada. Para restaurar
todas as mensagens opcionais de Localizar e Substituir, desmarque essa opção e
selecione-a novamente.

7 Observação

Essa opção não afeta nenhuma mensagem de aviso de Localizar e Substituir que
não exibe a opção Sempre mostrar esta mensagem.

Preencher automaticamente a opção Localizar no editor

Selecione esta opção para colar o texto de um dos lados do ponto de inserção atual do
editor no campo Localizar quando você selecionar qualquer modo de exibição da janela
Localizar e Substituir no menu Editar. Desmarque esta opção para usar o último padrão
de pesquisa da pesquisa anterior como a cadeia de caracteres para Localizar.

Limitar automaticamente a pesquisa à seleção

Selecione essa opção quando quiser definir o escopo da pesquisa como apenas do
código selecionado.

Se você não quiser pesquisar apenas o código selecionado, desmarque essa opção.

Usar a tela de fundo do editor na janela da ferramenta Localizar Todas as Referências

Selecione essa opção quando quiser que a janela de ferramentas Localizar Todas as
Referências use a mesma cor da tela de fundo que o editor. Isso será útil se você usar o
tema escuro ou um tema personalizado com a cor da tela de fundo escura. Para obter
mais informações sobre temas, consulte a página Alterar fontes, cores e temas no Visual
Studio.

Manter os resultados da pesquisa por padrão

Selecione essa opção quando preferir manter todos os resultados da pesquisa por
padrão em vez de selecionar o botão Manter Resultados após cada pesquisa. Para obter
mais informações sobre essa funcionalidade, consulte a seção "Manter resultados" da
página Localizar nos Arquivos.
Confira também
Localizar e substituir texto
Localizar em arquivos
Fontes e Cores, Ambiente, Caixa de
diálogo Opções
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A página Fontes e Cores da caixa de diálogo Opções permite estabelecer um esquema


de cores e fontes personalizado para vários elementos da interface do usuário no IDE
(ambiente de desenvolvimento integrado). Acesse essa caixa de diálogo clicando em
Ferramentas>Opções e, em seguida, selecionando Ambiente>Fontes e Cores.

As alterações no esquema de cores não são implementadas durante a sessão em que


foram feitas. É possível avaliar alterações de cores abrindo outra instância do Visual
Studio e produzindo as condições nas quais você espera aplicar essas alterações.

Mostrar configurações de

Lista todos os elementos da interface do usuário para os quais é possível alterar os


esquemas de fontes e cores. Depois de selecionar um item dessa lista, você pode
personalizar as configurações de cor do item selecionado em Itens de exibição.

Editor de Texto

Alterações nas configurações de vídeo de estilo, tamanho, e cor da fonte no Editor


de Texto afetam a aparência do texto em seu editor de texto padrão. Documentos
abertos em um editor de texto fora do IDE não serão afetados por essas
configurações.

Impressora e Recortar/Copiar

Alterações nas configurações de vídeo de estilo, tamanho, e cor da fonte da


impressora afetam a aparência do texto impresso em documentos.

7 Observação

Conforme for necessário, é possível selecionar uma fonte padrão para


impressão diferente daquela usada para exibição no editor de texto. Isso
pode ser útil ao imprimir códigos que contenham caracteres de um byte e
caracteres de dois bytes.

Conclusão de instrução
Altera o tamanho e o estilo da fonte do texto que aparece no pop-up de
preenchimento de declaração no editor.

Dica de ferramenta do Editor

Altera o tamanho e o estilo da fonte do texto que aparece em ToolTips exibidas no


editor.

Ambiente

Altera o tamanho e o estilo da fonte de todos os elementos de interface do


usuário do IDE que ainda não têm uma opção separada em Mostrar
configurações de.

[Todas as janelas de ferramentas de texto]

Alterações nas configurações de exibição de cor, tamanho e estilo da fonte deste


item afetam a aparência do texto nas janelas de ferramentas que têm painéis de
saída no IDE. Por exemplo, Janela de Saída, janela Comando, janela Imediato etc.

7 Observação

Alterações no texto de itens [Todas as janelas de ferramentas de texto] não


terão efeito durante a sessão em que forem feitas. É possível avaliar tais
alterações abrindo outra instância do Visual Studio.

Usar Padrões

Redefine os valores de fonte e cor do item de lista selecionado em Mostrar


configurações de. O botão Usar é exibido quando outros esquemas de exibição estão
disponíveis para seleção. Por exemplo, é possível escolher entre dois esquemas para a
impressora.

Fonte (em negrito indica fontes que têm largura fixa)

Exibe todas as fontes instaladas em seu sistema. Quando o menu suspenso aparece pela
primeira vez, a fonte atual do elemento selecionado no campo Mostrar configurações
de é realçada. Fontes fixas – que são mais fáceis de alinhar no editor – aparecem em
negrito.

Tamanho

Listas tamanhos de pontos disponíveis para a fonte realçada. Alterar o tamanho da


fonte afeta todos os Itens de exibição para a seleção Mostrar configurações de.
Itens de exibição

Exibe os itens cujas cores de primeiro plano e de plano de fundo você pode modificar.

7 Observação

Texto sem Formatação é o item de exibição padrão. Sendo assim, propriedades


atribuídas a PlainText serão substituídas por propriedades atribuídas a outros itens
de exibição. Por exemplo, se você atribuir a cor azul a PlainText e a cor verde a
Identificador, todos os identificadores serão exibidos em verde. Neste exemplo, as
propriedades de Identificador substituem as propriedades em PlainText.

Alguns dos itens de exibição incluem:

Item de Descrição
exibição

Texto sem Texto no editor.


Formatação

Texto Texto incluído na seleção atual quando o editor está em foco.


Selecionado

Texto Texto incluído na seleção atual quando o editor sai de foco.


Selecionado
Inativo

Margem de a margem à esquerda do Editor de Códigos em que os ícones dos pontos de


Indicadores interrupção e de indicador são exibidos.

Números de Números opcionais que aparecem ao lado de cada linha de código


Linha

Espaço em Espaços, tabulações e indicadores de quebra automática de linha


branco visível

Indicador Linhas com indicadores. O Indicador só ficará visível se a margem de


indicadores estiver desabilitada.

Correspondência Realce que normalmente tem formatação em negrito para chaves


de chaves correspondentes.
(Realce)

Correspondência Realce que normalmente é um retângulo cinza na tela de fundo.


de chaves
(Retângulo)
Item de Descrição
exibição

Ponto de Não usado.


Interrupção
(Desabilitado)

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção interrupção simples. Essa opção é aplicável somente se pontos de interrupção
(Habilitado) no nível da instrução estiverem ativos ou se a opção Realçar a linha de
origem inteira para pontos de interrupção e a declaração atual for
selecionada em Geral, Depuração, caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção interrupção em estado de erro. Aplicável somente se pontos de interrupção
(Erro) no nível da instrução estiverem ativos ou se a opção Realçar a linha de
origem inteira para pontos de interrupção e a declaração atual for
selecionada em Geral, Depuração, caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção interrupção em estado de aviso. Aplicável somente se pontos de interrupção
(Aviso) no nível da instrução estiverem ativos ou se a opção Realçar a linha de
origem inteira para pontos de interrupção e a declaração atual for
selecionada em Geral, Depuração, caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção condicionais desabilitados ou com contagem de ocorrências.
Avançado Aplicável somente se pontos de interrupção no nível da instrução estiverem
(Desabilitado) ativos ou se a opção Realçar a linha de origem inteira para pontos de
interrupção e a declaração atual for selecionada em Geral, Depuração, caixa
de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção condicionais ou com contagem de ocorrências. Aplicável somente
Avançado se pontos de interrupção no nível da instrução estiverem ativos ou se a opção
(Habilitado) Realçar a linha de origem inteira para pontos de interrupção e a declaração
atual for selecionada em Geral, Depuração, caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção condicionais ou com contagem de ocorrências que estão em
Avançado (Erro) estado de erro. Aplicável somente se pontos de interrupção no nível da
instrução estiverem ativos ou se a opção Realçar a linha de origem inteira
para pontos de interrupção e a declaração atual for selecionada em Geral,
Depuração, caixa de diálogo Opções.
Item de Descrição
exibição

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção condicionais ou com contagem de ocorrências que estão em
Avançado estado de aviso. Aplicável somente se pontos de interrupção no nível da
(Aviso) instrução estiverem ativos ou se a opção Realçar a linha de origem inteira
para pontos de interrupção e a declaração atual for selecionada em Geral,
Depuração, caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção mapeados desabilitados. Aplicável para a depuração de ASP ou
Mapeado ASP.NET somente se pontos de interrupção no nível da instrução estiverem
(Desabilitado) ativos ou se a opção Realçar a linha de origem inteira para pontos de
interrupção e a declaração atual for selecionada em Geral, Depuração, caixa
de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção mapeados. Aplicável para a depuração de ASP ou ASP.NET
Mapeado somente se pontos de interrupção no nível da instrução estiverem ativos ou
(Habilitado) se a opção Realçar a linha de origem inteira para pontos de interrupção e a
declaração atual for selecionada em Geral, Depuração, caixa de diálogo
Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção mapeados em estado de erro. Aplicável para a depuração de ASP
Mapeado (Erro) ou ASP.NET somente se pontos de interrupção no nível da instrução
estiverem ativos ou se a opção Realçar a linha de origem inteira para pontos
de interrupção e a declaração atual for selecionada em Geral, Depuração,
caixa de diálogo Opções.

Ponto de Especifica a cor de realce para instruções ou linhas que contêm pontos de
Interrupção – interrupção mapeados em estado de aviso. Aplicável para a depuração de
Mapeado (Aviso) ASP ou ASP.NET somente se pontos de interrupção no nível da instrução
estiverem ativos ou se a opção Realçar a linha de origem inteira para pontos
de interrupção e a declaração atual for selecionada em Geral, Depuração,
caixa de diálogo Opções.

Palavras-chave Uma constante dentro de um arquivo de código específico definido por meio
de usuário do da diretiva #define .
C/C++

Retorno de Especifica a cor de realce para instruções ou linhas de origem que indicam
Chamada pontos de retorno de chamada quando o contexto é alternado para um
registro de ativação não superior durante a depuração.

Campo Um campo que será atualizado quando o campo editável atual for
dependente de modificado.
snippet de
código
Item de Descrição
exibição

Campo de Campo editável quando um snippet de código está ativo.


Snippet de
Código

Texto Recolhível Um bloco de texto ou código que pode ser colocado e removido da exibição
no Editor de Código.

Comentário Comentários sobre o código.

Erro do Rabiscos azuis no editor que indicam um erro do compilador.


Compilador

Área Sem Código que não foi coberto por um teste de unidade.
Alcance de
Cobertura

Área Com Código que foi coberto parcialmente por um teste de unidade.
Alcance de
Cobertura
Parcial

Área de Código que foi coberto completamente por um teste de unidade.


Cobertura
Alcançada

Comentário CSS Um comentário em folhas de estilos em cascata. Por exemplo:

/* comment */

Palavra-chave Palavras-chave na folha de estilos em cascata.


CSS

Nome da O nome de uma propriedade, como Tela de Fundo.


Propriedade CSS

Valor da O valor atribuído a uma propriedade, como azul.


Propriedade CSS

Seletor de CSS Uma cadeia de caracteres que identifica a quais elementos a regra
correspondente se aplica. Um seletor pode ser um seletor simples, como
"H1", ou um seletor contextual, como "H1 B", que consiste em vários seletores
de simples.

Valor da Cadeia Uma cadeia de caracteres em folhas de estilos em cascata.


de Caracteres da
CSS
Item de Descrição
exibição

Localização Linha atual acessada em uma janela de ferramentas de lista, como a Janela de
Atual na Lista Saída ou a janela Localizar Resultados.

Instrução Atual Especifica a cor de realce para a linha ou a instrução de origem que indica a
posição da etapa atual durante a depuração.

Dados Alterados A cor do texto usado para exibir dados alterados dentro das janelas Registros
do Depurador e Memória.

Tela de fundo da A cor da tela de fundo da Janela de Definição de Código.


janela de
Definição

Correspondência A definição atual na Janela de Definição de Código.


atual na janela
de Definição

Nome do A cor do texto usado para exibir as quebras de nome de arquivo dentro da
Arquivo de janela Desmontagem.
Desmontagem

Origem de A cor do texto usado para exibir as linhas de origem dentro da janela
Desmontagem Desmontagem.

Símbolo de A cor do texto usado para exibir nomes de símbolos dentro da janela
Desmontagem Desmontagem.

Texto de A cor do texto usado para exibir dados e códigos de operação dentro da
Desmontagem janela Desmontagem.

Código Excluído Código que não deve ser compilado, de acordo com uma diretiva de pré-
processador condicional como #if .

Identificador Identificadores no código, como nomes de classes, nomes de métodos e


nomes de variáveis.

Palavra-chave Palavras-chave da linguagem específica que são reservadas. Por exemplo:


classe e namespace.

Endereço de A cor do texto usado para exibir a coluna de endereço dentro da janela
Memória Memória.

Memória A cor do texto usado para exibir dados alterados dentro da janela Memória.
Alterada

Dados da A cor do texto usada para exibir dados dentro da janela Memória.
Memória
Item de Descrição
exibição

Memória Ilegível A cor do texto usado para exibir áreas de memória ilegível dentro da janela
Memória.

Número Um número no código que representa um valor numérico real.

Operador Operadores, como +, - e !=.

Outro erro Outros tipos de erro que não são cobertos por outros rabiscos de erro.
Atualmente, inclui edições rudimentares em Editar e Continuar.

Palavra-chave Palavras-chave usadas pelo pré-processador, como #include.


do Pré-
processador

Região Somente Código que não pode ser editado. Por exemplo, código exibido na janela
Leitura Exibição de Definição de Código ou código que não pode ser modificado
durante Editar e Continuar.

Tela de fundo de Cor da tela de fundo da caixa de diálogo Visualizar Alterações.


refatoração

Campo atual de Cor da tela de fundo do elemento atual a ser refatorado na caixa de diálogo
refatoração Visualizar Alterações.

Campo Cor das referências do elemento a ser refatorado na caixa de diálogo


dependente de Visualizar Alterações.
refatoração

Dados do A cor do texto usado para exibir dados dentro da janela Registros.
Registro

NAT do Registro A cor do texto usado para exibir dados e objetos não reconhecidos dentro da
janela Registros.

Marcação Usado para indicar a estrutura de tópicos quando marcações inteligentes são
Inteligente invocadas.

Marcador DML Aplica-se ao editor de Transact-SQL. Por padrão, instruções DML neste editor
SQL são marcadas com uma caixa delimitadora azul.
Item de Descrição
exibição

Código Obsoleto Código obsoleto que aguarda atualização. Em alguns casos, Editar e
Continuar não pode aplicar alterações de código imediatamente, mas os
aplicará mais tarde enquanto você continua a depuração. Isso ocorre se você
editar uma função que deve chamar a função que está em execução ou se
você adicionar mais de 64 bytes de novas variáveis a uma função em espera
na pilha de chamadas. Quando isso acontece, o depurador exibe uma caixa
de diálogo "Aviso de Código Obsoleto", e o código obsoleto continua sendo
executado até que a função em questão termine e seja chamada novamente.
Editar e Continuar aplica as alterações de código nesse momento.

Cadeia de Literais de cadeia de caracteres.


caracteres

Cadeia de Literais de cadeia de caracteres em C# que são interpretadas de forma


caracteres (C# @ textual. Por exemplo:
Textual)
@"x"

Erro de Sintaxe Erros de análise.

Atalho da Lista Se um atalho de Lista de Tarefas for adicionado a uma linha e a margem de
de Tarefas indicadores for desabilitada, a linha será realçada.

Tracepoint Não usado.


(Desabilitado)

Tracepoint Especifica a cor de realce para instruções ou linhas que contêm tracepoints
(Habilitado) simples. Essa opção é aplicável somente se tracepoints no nível da instrução
estiverem ativos ou se a opção Realçar a linha de origem inteira para pontos
de interrupção e a declaração atual for selecionada em Geral, Depuração,
caixa de diálogo Opções.

Tracepoint (Erro) Especifica a cor de realce para instruções ou linhas que contêm tracepoints
em estado de erro. Essa opção é aplicável somente se tracepoints no nível da
instrução estiverem ativos ou se a opção Realçar a linha de origem inteira
para pontos de interrupção e a declaração atual for selecionada em Geral,
Depuração, caixa de diálogo Opções.

Tracepoint Especifica a cor de realce para instruções ou linhas que contêm tracepoints
(Aviso) em estado de aviso. Essa opção é aplicável somente se tracepoints no nível da
instrução estiverem ativos ou se a opção Realçar a linha de origem inteira
para pontos de interrupção e a declaração atual for selecionada em Geral,
Depuração, caixa de diálogo Opções.
Item de Descrição
exibição

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Avançado condicionais desabilitados ou com contagem de ocorrências. Essa opção é
(Desabilitado) aplicável somente se tracepoints no nível da instrução estiverem ativos ou se
a opção Realçar a linha de origem inteira para pontos de interrupção e a
declaração atual for selecionada em Geral, Depuração, caixa de diálogo
Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Avançado condicionais ou com contagem de ocorrências. Essa opção é aplicável
(Habilitado) somente se tracepoints no nível da instrução estiverem ativos ou se a opção
Realçar a linha de origem inteira para pontos de interrupção e a declaração
atual for selecionada em Geral, Depuração, caixa de diálogo Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Avançado (Erro) condicionais ou com contagem de ocorrências que estão em estado de erro.
Essa opção é aplicável somente se tracepoints no nível da instrução estiverem
ativos ou se a opção Realçar a linha de origem inteira para pontos de
interrupção e a declaração atual for selecionada em Geral, Depuração, caixa
de diálogo Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Avançado condicionais ou com contagem de ocorrências que estão em estado de aviso.
(Aviso) Essa opção é aplicável somente se tracepoints no nível da instrução estiverem
ativos ou se a opção Realçar a linha de origem inteira para pontos de
interrupção e a declaração atual for selecionada em Geral, Depuração, caixa
de diálogo Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Mapeado mapeados desabilitados. Aplicável para a depuração de ASP ou ASP.NET
(Desabilitado) somente se pontos de interrupção no nível da instrução estiverem ativos ou
se a opção Realçar a linha de origem inteira para pontos de interrupção e a
declaração atual for selecionada em Geral, Depuração, caixa de diálogo
Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Mapeado mapeados. Aplicável para a depuração de ASP ou ASP.NET somente se
(Habilitado) pontos de interrupção no nível da instrução estiverem ativos ou se a opção
Realçar a linha de origem inteira para pontos de interrupção e a declaração
atual for selecionada em Geral, Depuração, caixa de diálogo Opções.

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Mapeado (Erro) mapeados em estado de erro. Aplicável para a depuração de ASP ou ASP.NET
somente se pontos de interrupção no nível da instrução estiverem ativos ou
se a opção Realçar a linha de origem inteira para pontos de interrupção e a
declaração atual for selecionada em Geral, Depuração, caixa de diálogo
Opções.
Item de Descrição
exibição

Tracepoint – Especifica a cor de realce para instruções ou linhas que contêm tracepoints
Mapeado (Aviso) mapeados em estado de aviso. Aplicável para a depuração de ASP ou
ASP.NET somente se pontos de interrupção no nível da instrução estiverem
ativos ou se a opção Realçar a linha de origem inteira para pontos de
interrupção e a declaração atual for selecionada em Geral, Depuração, caixa
de diálogo Opções.

Marca de Linhas de código que foram modificadas desde que o arquivo foi aberto, mas
controle de são salvas em disco.
alterações
depois de salvar

Marca de Linhas de código que foram modificadas desde que o arquivo foi aberto, mas
controle de não são salvas em disco.
alterações antes
de salvar

Tipos de Usuário Tipos definidos pelos usuários.

Tipos de Usuário Cor do tipo para delegados.


(Representantes)

Tipos de Usuário Cor do tipo usada para enums.


(Enums)

Tipos de Usuário Cor do tipo para interfaces.


(Interfaces)

Tipos de Usuário Cor do tipo para tipos de valor, como structs em C#.
(Tipos de valor)

Marcador Um marcador específico do Visual Basic usado para designar EnC, como
Somente Leitura regiões de exceção, uma definição de método e quadros de chamada que
do Visual Basic não são folhas.

Aviso Avisos do compilador.

Caminho das Usado para linhas de aviso de Análise Estática.


linhas de aviso

Atributo XML Nomes de atributo.

Aspas do Os caracteres de aspas para atributos XML.


Atributo XML

Valor do Conteúdo de atributos XML.


Atributo XML
Item de Descrição
exibição

Seção Cdata Conteúdo de <![CDATA[...]]>.


XML

Comentário XML O conteúdo de <!-- -->.

Delimitador XML Delimitadores de sintaxe XML, incluindo <, <?, <!, <!--, -->, ?>, <![, ]]> e [, ].

Atributo de O valor de um atributo de documentação XML, como <param name="I">, em


Documento XML que o "I" é colorido.

Comentário da Os comentários incluídos nos comentários de documentação XML.


documentação
XML

Marcação de As marcações em comentários de documentos XML, como


Documento XML
/// <summary>.

Palavra-Chave Palavras-chave DTD, como CDATA, IDREF e NDATA.


XML

Nome XML Nomes de elementos e o nome de destino das Instruções de processamento.

Instrução de Conteúdo das Instruções de processamento, sem incluir o nome do destino.


Processamento
XML

Texto XML Conteúdo do elemento de texto sem formatação.

Palavra-Chave Nomes de elementos XSLT.


XSLT

Primeiro plano do item

Exibe as cores disponíveis que você pode escolher para o primeiro plano do item
selecionado em Itens de exibição. Como alguns itens estão relacionados e, portanto,
devem manter um esquema de exibição consistente, alterar a cor de primeiro plano do
texto também altera os padrões para elementos como Erro do Compilador, Palavra-
Chave ou Operador.

Automático

Os itens podem herdar a cor de primeiro plano de outros itens de exibição, como Texto
sem Formatação. Usando essa opção, quando você altera a cor de um item de exibição
herdado, a cor dos itens de exibição relacionados também é alterada automaticamente.
Por exemplo, se você selecionar o valor Automático para Erro do Compilador e
posteriormente alterar a cor de Texto sem Formatação para vermelho, Erro do
Compilador herdará automaticamente a cor vermelha.

Default

A cor exibida para o item na primeira vez que você abre o Visual Studio. Clicar no botão
Usar Padrões redefine para essa cor.

Custom

Exibe a caixa de diálogo Cor para permitir que você defina uma cor personalizada para o
item selecionado na lista de itens de Exibição.

7 Observação

Sua capacidade de definir cores personalizadas pode ser limitada pelas


configurações de cor de vídeo do seu computador. Por exemplo, se o computador
estiver configurado para exibir 256 cores e você selecionar uma cor personalizada
na caixa de diálogo Cor, o IDE assume como padrão a Cor básica mais próxima
disponível e exibe a cor preta na caixa de visualização Cor.

Plano de fundo do item

Fornece uma paleta de cores na qual você pode escolher uma cor da tela de fundo para
o item selecionado em Itens de exibição. Como alguns itens estão relacionados e,
portanto, devem manter um esquema de exibição consistente, alterar a cor da tela de
fundo do texto também altera os padrões para elementos como Erro do Compilador,
Palavra-Chave ou Operador.

Automático

Os itens podem herdar a cor da tela de fundo de outros itens de exibição, como Texto
sem Formatação. Usando essa opção, quando você altera a cor de um item de exibição
herdado, a cor dos itens de exibição relacionados também é alterada automaticamente.
Por exemplo, se você selecionar o valor Automático para Erro do Compilador e
posteriormente alterar a cor de Texto sem Formatação para vermelho, Erro do
Compilador herdará automaticamente a cor vermelha.

Default

A cor exibida para o item na primeira vez que você abre o Visual Studio. Clicar no botão
Usar Padrões redefine para essa cor.

Personalizado
Exibe a caixa de diálogo Cor para permitir que você defina uma cor personalizada para o
item selecionado na lista de itens de Exibição.

Negrito

Selecione esta opção para exibir o texto de Itens de exibição selecionados em negrito. É
mais fácil identificar texto em negrito no editor.

Amostra

Exibe uma amostra do esquema de cores, tamanho e estilo da fonte de Mostrar


configurações de e Itens de exibição selecionados. É possível usar essa caixa para
visualizar os resultados quando você testa diferentes opções de formatação.

Confira também
Caixa de diálogo Opções
Como alterar fontes e cores
Caixa de diálogo Opções: Ambiente >
Importar e Exportar Configurações
Artigo • 13/01/2024

Use esta página para especificar onde seu arquivo de configurações de usuário é salvo.
Para obter mais informações sobre as configurações, confira Personalizar o IDE do Visual
Studio.
Caixa de diálogo Opções: Ambiente >
Configurações Internacionais
Artigo • 13/01/2024

A página Configurações Internacionais permite alterar o idioma padrão quando você


tem mais de uma versão de idioma do IDE (ambiente de desenvolvimento integrado)
instalada em seu computador. Você pode acessar essa caixa de diálogo selecionando
Opções no menu Ferramentas e, em seguida, escolhendo Configurações Internacionais
na pasta Ambiente.

Idioma

Lista os idiomas disponíveis para as versões de idioma do produto instalado. Se vários


idiomas de produtos ou uma instalação de idioma misto dos produtos compartilhar o
ambiente, a seleção de idioma será alterada para Usar o idioma do Microsoft Windows.

U Cuidado

Em um sistema com vários idiomas instalados, as ferramentas de build do Visual


C++ (cl.exe, link.exe, nmake.exe, bscmake.exe e arquivos relacionados) não são
afetadas por essa configuração. Essas ferramentas usam a versão do último idioma
instalado. As ferramentas de build do idioma instalado anteriormente são
substituídas porque as ferramentas de build do Visual C++ não usam o modelo
DLL satélite.

Confira também
Instalar pacote de idiomas
Caixa de diálogo Opções: Ambiente >
Versão Prévia dos Recursos
Artigo • 13/01/2024

Use esta página da caixa de diálogo Opções para habilitar ou desabilitar versões prévias
de recursos no Visual Studio. A página de opções de Versões Prévias de Recursos é
alterada com frequência, já que versões prévias de recursos diferentes são
disponibilizadas no Visual Studio.

É possível acessar essa caixa de diálogo clicando em Opções no menu Ferramentas e


selecionando a página Ambiente>Versões Prévias de Recursos. Ou então insira versões
prévias de recursos na caixa Pesquisa do Visual Studio (pressione Ctrl+Q para mudar o
foco para a caixa Pesquisa).
Caixa de diálogo Opções: Ambiente >
Guias e Janelas
Artigo • 13/01/2024

Use essa caixa de diálogo para definir opções para guias e janelas no editor de código.
Para obter mais informações, consulte Personalizar layouts de janela e guias no Visual
Studio.
Confira também
Personalizar layouts de janela e guias
Caixa de diálogo Opções: Ambiente >
Lista de Tarefas
Artigo • 13/01/2024

Esta página Opções permite a você adicionar, excluir e alterar os tokens de comentário
que geram lembretes da Lista de Tarefas. Para exibir essas configurações, selecione
Opções no menu Ferramentas, expanda a pasta Ambiente e escolha Lista de Tarefas.

Tokens de Lista de Tarefas


Quando você inserir um comentário em seu código cujo texto começa com um token da
Lista de Tokens, a Lista de Tarefas exibirá seu comentário como uma nova entrada
sempre que o arquivo for aberto para edição. Clique na entrada Lista de Tarefas para ir
diretamente para a linha de comentário em seu código. Para obter mais informações,
consulte Usando a Lista de Tarefas.

Lista de Tokens
Exibe uma lista de tokens e permite que você adicione ou remova tokens
personalizados. Os tokens de comentário diferenciam maiúsculas de minúsculas no C# e
no C++, mas não no Visual Basic.

7 Observação

Se você não digitar o token desejado exatamente como ele é exibido na lista de
tokens, a tarefa de comentário não será exibida na Lista de Tarefas.

Prioridade
Define a prioridade das tarefas que usam o token selecionado (baixa, normal ou alta).
Os comentários de tarefa que começam com esse token recebem automaticamente a
prioridade designada na Lista de Tarefas.

Nome
Insira a cadeia de token aqui e, em seguida, clique em Adicionar para adicionar a cadeia
de caracteres na lista de tokens.

Adicionar
Habilitado quando você insere um novo Nome. Clique para adicionar uma nova cadeia
de caracteres do token usando os valores inseridos nos campos Nome e Prioridade.
Excluir
Clique para excluir o token selecionado da lista de tokens. Não é possível excluir o token
de comentário padrão.

Alteração
Clique para fazer alterações em um token existente usando os valores inseridos nos
campos Nome e Prioridade.

7 Observação

Não é possível renomear nem excluir o token de comentário padrão, mas é


possível alterar seu nível de prioridade.

Confira também
Usar a Lista de Tarefas
Configurar Identificadores no Código
Definir configurações de confiança de
arquivos e pastas
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

No Visual Studio 2022, renovamos a funcionalidadeConfigurações de Confiança para


mostrar um aviso sempre que o código não confiável é aberto no IDE.

Os desenvolvedores de software estão cada vez mais sendo alvo de malware. A nova
funcionalidade Configurações de Confiança visa aumentar a conscientização sobre os
riscos de lidar com códigos desconhecidos e ajuda a proteger contra atores mal-
intencionados que estão mirando em cenários que vão desde a abertura de conteúdo
(por exemplo, repositórios, soluções, projetos e arquivos) até a criação e execução de
aplicativos com o Visual Studio.

O recurso Locais confiáveis não está habilitado por padrão.

Habilitar locais confiáveis


Para habilitar o recurso Locais confiáveis, siga estas etapas:

1. Abra Ferramentas>Opções>Configurações de Confiança.

2. No painel Políticas de Confiança, selecione Exigir uma decisão de confiança antes


de abrir o conteúdo.
7 Observação

A opção Ignorar verificações de confiança em locais temporários que o Visual


Studio cria automaticamente está habilitada por padrão, mas não terá impacto se
a opção Exigir uma decisão de confiança antes de abrir a opção de conteúdo não
estiver habilitada também.

Depois de habilitada, o Visual Studio detecta se você está tentando abrir conteúdo que
não é designado como confiável e mostra um novo diálogo que avisa sobre as
implicações de segurança.
Gerenciar configurações de confiança
Veja como adicionar locais confiáveis e removê-los.

Adicionar locais confiáveis


Depois de habilitar o recurso, todo o conteúdo aberto com o Visual Studio 2022 é
considerado não confiável até ser adicionado à lista Locais confiáveis. Você pode
confiar em um local de pasta diretamente no diálogo Aviso. Este é o procedimento:

1. Escolha a pasta em que você deseja confiar (a pasta atual ou a pasta pai) na lista
suspensa Nível de confiança.
2. Selecione o botão Confiar e continuar no diálogo.

O Visual Studio adiciona o caminho da pasta à lista Locais confiáveis em


Ferramentas>Opções>Configurações de Confiança.

Você também pode adicionar pastas a Locais confiáveis no diálogo Configurações de


Confiança. Este é o procedimento:

1. Abra Ferramentas>Opções>Configurações de Confiança. Você também pode


abrir Configurações de Confiança selecionando Gerenciar configurações de
confiança no diálogo Aviso.

2. Selecione Adicionar uma Pasta no painel Políticas de Confiança à direita.

3. Navegue até a pasta que deseja adicionar à lista de confiança e adicione-o.

O caminho da pasta aparece na lista Locais confiáveis. Essa pasta que você
adicionou manualmente é listada como Confiável pelo Usuário Local.
7 Observação

Depois de habilitar o recurso Locais confiáveis, o caminho da pasta para um


conteúdo criado no Visual Studio será adicionado automaticamente à lista Locais
confiáveis. Esse caminho de pasta é listado como Confiável pelo Sistema.

Remover locais confiáveis


Para remover locais confiáveis, siga estas etapas:
1. Abra Ferramentas>Opções>Configurações de Confiança.

2. Selecione o caminho que gostaria de remover na lista Locais confiáveis e clique


em Remover.

 Dica

Para selecionar várias entradas, mantenha pressionada a tecla Shift enquanto


seleciona os caminhos.

Os caminhos selecionados são removidos da lista Locais Confiáveis.

Confira também
Criar um aplicativo no Visual Studio
Caixa de diálogo Opções: Ambiente >
Navegador da Web
Artigo • 13/01/2024

Define opções para o navegador da Web interno e o Internet Explorer. Para acessar essa
caixa de diálogo, clique em Opções no menu Ferramentas, expanda a pasta Ambiente e
selecione Navegador da Web.

) Importante

Esse recurso foi preterido no Visual Studio 2022 e não terá suporte no futuro.

Para obter mais informações sobre o Visual Studio 2022, confira nossas notas sobre
a versão e o roteiro do Visual Studio.

) Importante

Abrir determinados arquivos ou componentes da Web pode executar código no


computador.

7 Observação

As caixas de diálogo e os comandos de menu encontrados podem diferir daqueles


descritos na Ajuda, dependendo das configurações ativas ou edição. Para alterar
suas configurações, selecione Importar e Exportar Configurações no menu
Ferramentas . Para obter mais informações, confira Redefinir as configurações.

Página inicial
Define a página exibida ao abrir o Navegador da Web do IDE.

Página de pesquisa
Permite designar uma página de Pesquisa para o navegador da Web interno. Esse local
pode ser diferente da página de pesquisa usada pelas instâncias do Internet Explorer
iniciadas fora do IDE (ambiente de desenvolvimento integrado).
Exibir fonte em
Define o editor usado para abrir uma página da Web ao escolher Exibir Fonte na página
do navegador da Web interno.

Editor de origem Selecione para exibir a fonte no editor.

Editor de HTML Selecione para exibir a fonte no designer de HTML. Use essa
seleção para editar a página da Web em uma das duas exibições: modo de
exibição de Design ou a exibição de Fonte padrão baseada em texto.

Editor externo Selecione para exibir a fonte em outro editor. Especifique o


caminho de um editor escolhido, por exemplo, Notepad.exe.

Opções do Internet Explorer


Clique para alterar as opções do Internet Explorer na caixa de diálogo Propriedades da
Internet. As alterações feitas nessa caixa de diálogo afetam o navegador da Web interno
e as instâncias do Internet Explorer iniciadas fora do IDE do Visual Studio (por exemplo,
no menu Iniciar).

7 Observação

Use a caixa de diálogo Procurar com para substituir o navegador da Web interno
do Visual Studio por um navegador à sua escolha. Você pode acessar a caixa de
diálogo Procurar com ao clicar com o botão direito do mouse ou através do menu
de contexto de um arquivo HTML em seu projeto, por exemplo.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Designer de HTML
Janela de ferramentas Notificações
Artigo • 24/12/2023

A janela da ferramenta Notificações mostra mensagens relativas ao Visual Studio,


incluindo problemas críticos com sua licença e notificações informativas de atualizações
do Visual Studio ou de pacotes.

Um ícone de sino na parte inferior direita do IDE do Visual Studio mostra o número de
notificações. Clique no sino para abrir a janela da ferramenta Notificações.

Você também pode abrir a janela da ferramenta Notificações pelo item de menu
Ver>Notificações do Usuário**.

Para abrir a janela da ferramenta Notificações com o teclado, pressione a sequência de


teclas Ctrl+/, Ctrl+N.

Você também pode pressionar Ctrl+Q para abrir a Pesquisa de Recursos e digitar em
Notifications para localizar e abrir a janela.

A imagem a seguir mostra uma notificação de usuário típica, mostrando que uma nova
versão prévia está disponível para instalação:

Se você clicar no link Ver detalhes, o instalador do Visual Studio será aberto. Feche
qualquer outra instância do instalador antes de clicar no link. Para instalar mais tarde,
você pode clicar no link Atualizar ao fechar. O Visual Studio iniciará a atualização na
próxima vez que você fechar o IDE.

Ignore as notificações clicando no X ao lado da notificação ou clique em Ignorar Tudo


para ignorar todas as notificações.
Caixa de diálogo Opções: Projetos e
Soluções > Geral
Artigo • 27/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use esta página para definir o comportamento do Visual Studio relacionado a projetos e
soluções. Para acessar essas opções, selecione Ferramentas>Opções, expanda Projetos
e Soluções e, em seguida, selecione Geral.

As seguintes opções estão disponíveis na página Geral.

Sempre mostrar a Lista de Erros se o build for


concluído com erros
Abre a janela Lista de Erros após a conclusão do build, somente se houve falha de build
de um projeto. Os erros que ocorrem durante o processo de build são exibidos. Quando
essa opção estiver desmarcada, os erros ainda ocorrerão, mas a janela não será aberta
quando o build for concluído. Por padrão, essa opção é ativada.

Acompanhar item ativo no Gerenciador de


Soluções
Quando essa opção estiver selecionada, o Gerenciador de Soluções será aberto
automaticamente e o item ativo será selecionado. O item selecionado é alterado
conforme você trabalha com arquivos diferentes em um projeto ou uma solução, ou
com componentes diferentes em um designer. Quando essa opção estiver desmarcada,
a seleção no Gerenciador de Soluções não será alterada automaticamente. Por padrão,
essa opção é ativada.

 Dica

Se você desabilitar essa opção, uma maneira fácil de navegar até o documento
ativo no Gerenciador de Soluções será selecionar a opção Sincronizar com
Documento Ativo na barra de ferramentas do Gerenciador de Soluções.
Mostrar a Janela de Saída quando o build é
iniciado
Exibe automaticamente a Janela de Saída no IDE desde o início dos builds da solução.

Prompt antes de mover arquivos para um novo


local
Quando selecionada, o Visual Studio exibe uma caixa de mensagem de confirmação
antes que os locais de arquivos sejam alterados pelas ações no Gerenciador de
Soluções.

Permitir inicialização paralela do projeto


Quando selecionado, o Visual Studio carrega soluções grandes do .NET muito mais
rapidamente quando você recarrega a mesma solução. Para obter mais informações,
confira a seção "Carregamento paralelo de projeto" da postagem no blog Carregar
soluções mais rapidamente .

Reabrir documentos no carregamento da


solução
Quando selecionada, os documentos que foram deixados abertos na última vez em que
a solução foi fechada são abertos automaticamente quando a solução é aberta.
Reabrir certos tipos de arquivos ou designers pode atrasar o carregamento da solução.
Desmarque essa opção para melhorar o desempenho do carregamento da solução se
você não quiser restaurar o contexto de anterior da solução.

Restaurar o estado da hierarquia do projeto do


Gerenciador de Soluções após o carregamento
da solução
Quando selecionada, essa opção restaura o estado dos nós no Gerenciador de Soluções
com relação a se eles foram expandidos ou recolhidos na última vez em que a solução
foi aberta. Desmarque essa opção para diminuir o tempo de carregamento de soluções
grandes.

Abrir arquivos de projeto clicando duas vezes


ou usando a tecla Enter
Quando essa opção está marcada e você clica duas vezes em um nó de projeto no
Gerenciador de Soluções ou seleciona o nó de projeto e pressiona Enter, o arquivo de
projeto (por exemplo, arquivo *.csproj) é aberto no editor. Quando essa opção está
desmarcada, clicar duas vezes em um nó de projeto no Gerenciador de Soluções ou
selecioná-lo e pressionar Enter apenas expande ou recolhe o nó.

Se essa opção não estiver marcada e você quiser editar um arquivo de projeto, clique
com o botão direito do mouse sobre o nó do projeto no Gerenciador de Soluções e
selecione Editar Arquivo de Projeto.

Habilitar a renomeação simbólica ao renomear


arquivos
Quando selecionada, você pode renomear todas as referências de um projeto para
corresponder ao elemento de código.

Prompt para renomeação simbólica ao renomear


arquivos
Quando selecionada, o Visual Studio exibe uma caixa de mensagem perguntando se ele
também deve renomear todas as referências do projeto para corresponder ao elemento
de código.
Habilitar a atualização de namespace ao mover
arquivos
Quando selecionado, o Visual Studio ajusta automaticamente o namespace do arquivo
quando ele é movido para um novo local.

Solicitar para atualizar o namespace ao mover arquivos


Quando selecionado, o Visual Studio exibe uma caixa de mensagem perguntando se ele
deve ou não ajustar automaticamente o namespace do arquivo quando ele é movido
para um novo local.

Confira também
Caixa de diálogo Opções: Projetos e Soluções > Locais
Caixa de diálogo Opções, Projetos e Soluções, Compilar e Executar
Caixa de diálogo Opções, Projetos e Soluções, Projetos Web
Caixa de diálogo Opções: Projetos e
Soluções > Compilar e Executar
Artigo • 02/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Nessa caixa de diálogo, você poderá especificar o número máximo de projetos de C++
ou C# que podem ser compilados ao mesmo tempo, determinados comportamentos de
build padrão e algumas configurações de log de build. Para acessar essas opções,
selecione Ferramentas>Opções, expanda Projetos e Soluções e, em seguida, selecione
Compilar e Executar.

Número máximo de builds paralelos de projetos

Especifica o número máximo de projetos de C++ e de C# que podem ser compilados ao


mesmo tempo. Para otimizar o processo de build, o número máximo de compilações
paralelas de projetos é automaticamente definido como o número de CPUs do seu
computador. O máximo é 32.

Somente compilar dependências e projetos de inicialização ao Executar

Compila somente o projeto de inicialização e suas dependências quando você usa a


tecla F5, o comando de menu Depurar>Iniciar Depuração ou os comandos aplicáveis
no menu Compilar. Se ficar desmarcado, todos os projetos e dependências serão
compilados.

Ao Executar, quando os projetos estiverem desatualizados

Aplica-se somente a projetos de C++.

Ao executar um projeto com F5 ou com o comando Depurar>Iniciar Depuração, a


configuração padrão Avisar para compilar exibe uma mensagem se a configuração do
projeto estiver desatualizada. Selecione Compilar sempre para compilar o projeto
sempre que ele for executado. Selecione Nunca compilar para suprimir todos os builds
automáticos quando um projeto for executado.

Ao Executar, quando ocorrerem erros de build ou implantação

Aplica-se somente a projetos de C++.

Ao executar um projeto com F5 ou com o comando Depurar>Iniciar Depuração, a


configuração padrão Solicitar inicialização exibirá uma mensagem se o projeto precisar
ser executado mesmo que o build tenha falhado. Selecione Iniciar versão antiga para
iniciar automaticamente a última compilação boa, o que pode resultar em
incompatibilidades entre o código em execução e o código-fonte. Selecione Não iniciar
para suprimir a mensagem.

Para novas soluções, use o projeto selecionado atualmente como o projeto de


inicialização

Quando essa opção é definida, novas soluções usam o projeto selecionado atualmente
como o projeto de inicialização.

Detalhamento da saída de build do projeto no MSBuild

Determina a quantidade de informações do processo de build que é exibida na janela


Saída janela.

Detalhamento do arquivo de log de build do projeto no MSBuild

Aplica-se somente a projetos de C++.

Determina a quantidade de informação que é gravada no arquivo de log de build, que


está localizado em \<ProjectName>\Debug<>.log.

Executar build em prioridade de processo baixo

Instrui o Visual Studio a executar todos os processos de compilação e link na prioridade


"Abaixo do normal", conforme gerenciado pelo sistema operacional. Selecionar essa
opção aumenta a capacidade de resposta do computador durante a execução de um
build, mas aumenta o tempo necessário para concluir um build. Para obter informações
sobre como a prioridade do processo funciona no Windows, consulte Prioridades de
agendamento.

Confira também
Compilando e criando
Caixa de diálogo Opções, Projetos e Soluções
Caixa de diálogo Opções, Projetos e Soluções, Projetos Web
Caixa de diálogo Opções: Projetos e
Soluções > Locais
Artigo • 13/01/2024

Use esta página para definir locais padrão para projetos, modelos de projeto e modelos
de item. Para acessar essas opções, selecione Ferramentas>Opções, expanda Projetos e
Soluções e, em seguida, selecione Locais.

As seguintes opções estão disponíveis na página Locais.

Local dos projetos


Especifica o local padrão em que o Visual Studio cria novos projetos e pastas da
solução. Várias caixas de diálogo também usam o local definido nessa opção para os
pontos iniciais da pasta. Por exemplo, a caixa de diálogo Abrir Projeto usa esse local
para o atalho Meus Projetos.

Local dos modelos de projeto do usuário


Especifica o local padrão que é usado para procurar modelos de projeto criados pelo
usuário. Para obter mais informações, consulte Como localizar e organizar modelos.

Local de modelos de item do usuário


Especifica o local padrão que é usado para procurar modelos de item criados pelo
usuário. Para obter mais informações, consulte Como localizar e organizar modelos.

Confira também
Caixa de diálogo Opções: Projetos e Soluções > Geral
Caixa de diálogo Opções, Projetos e Soluções, Compilar e Executar
Caixa de diálogo Opções, Projetos e Soluções, Projetos Web
Caixa de diálogo Padrões do Visual
Basic, Projetos, Opções
Artigo • 13/01/2024

Especifica as configurações padrão para opções de projeto do Visual Basic. Quando um


novo projeto é criado, as instruções da opção especificada serão adicionadas ao
cabeçalho do projeto no Editor de Códigos. As opções se aplicam a todos os projetos
do Visual Basic.

Para acessar essa caixa de diálogo, no menu Ferramentas, clique em Opções, expanda a
pasta Projetos e Soluções e clique em Padrões de VB.

Opção Explícita

Define o padrão do compilador para que declarações explícitas de variáveis sejam


necessárias. Por padrão, Opção Explicit fica definido como Ativado. Para obter mais
informações, consulte /optionexplicit.

Opção Estrita

Define o padrão do compilador para que as conversões de estreitamento explícitas


sejam obrigatórias e as associações tardias não sejam permitidas. Por padrão, Opção
Strict fica definido como Desativado. Para obter mais informações, veja /optionstrict.

Opção Comparar

Define o padrão do compilador para comparações de cadeia de caracteres: binário


(diferencia maiúsculas de minúsculas) ou texto (não diferencia maiúsculas de
minúsculas). Por padrão, Opção Comparar é definido como Binário. Para obter mais
informações, consulte /optioncompare.

Opção Inferir

Define o padrão do compilador para inferência de tipo de variável local. Por padrão,
Opção Infer é definido como Ativado para projetos criados recentemente e como
Desativado para projetos migrados criados em versões anteriores do Visual Basic. Para
obter mais informações, consulte /optioninfer.

Confira também
Soluções e projetos
Caixa de diálogo Configurações do
Projeto do VC++, Projetos e Soluções,
Opções
Artigo • 13/01/2024

Esta caixa de diálogo permite que você defina o build de C++ e as configurações de
projeto relacionadas ao log, desempenho e tipos de arquivo de suporte.

Para acessar essa caixa de diálogo


1. No menu Ferramentas , clique em Opções.

2. Selecione Projetos e Soluções e, em seguida, selecione Configurações do Projeto


VC++.

Log de build
Sim

Ativa a geração de arquivo de log de build. Essa opção gera o BuildLog.htm, que pode
ser encontrado no diretório de arquivos intermediários do projeto. Cada novo build
substitui o arquivo BuildLog.htm anterior.

Não

Desativa a geração de arquivo de log de build.

Mostrar ambiente em log


Sim

Lista as variáveis de ambiente no arquivo de log de build. Essa opção específica o eco
para todas as variáveis de ambiente, durante os builds dos projetos C++, para o arquivo
de log de build.

Não

Exclua as variáveis de ambiente do arquivo de log de build.


Tempo de build
Sim

Ativa o tempo de build. Se selecionado, o tempo necessário para a conclusão do build é


publicado na Janela de Saída. Para obter mais informações, consulte Janela Saída.

Não

Desativa o tempo de build.

Máximo de compilações simultâneas C++


Especifica o número máximo de núcleos de CPU a serem usados para a compilação C++
paralela.

Extensões a serem incluídas


Especifica as extensões de nome de arquivo dos arquivos que podem ser portados em
seu projeto.

Extensões a serem ocultadas


Especifica as extensões de nome de arquivo dos arquivos que não serão exibidos no
Gerenciador de Soluções quando Mostrar Todos os Arquivos for habilitado.

Caminho de pesquisa de personalização do


build
Especifica a lista de diretórios que contêm arquivos de .rules, que o ajudarão a definir
regras de build para seus projetos.

Modo do Gerenciador de Soluções


Mostrar somente arquivos no projeto

Configura o Gerenciador de Soluções para exibir apenas os arquivos no projeto.

Mostrar todos os arquivos


Configura o Gerenciador de Soluções para mostrar os arquivos no projeto e nos
arquivos em disco na pasta do projeto.

Habilitar Cache de Projeto


Sim

Permite que o Visual Studio coloque em cache os dados do projeto, para que, quando
você abrir o projeto na próxima vez, ele possa carregar esses dados armazenados em
cache em vez de recalcular dos arquivos de projeto. Usar dados armazenados em cache
pode acelerar significativamente o tempo de carregamento do projeto.

Não

Não usar dados armazenados em cache do projeto. Analisar os arquivos de projeto cada
vez que o projeto é carregado.

Confira também
Compilando programas C/C++
Referência de build C/C++
Caixa de diálogo Opções, Projetos e
Soluções, Projetos Web
Artigo • 13/01/2024

Define o servidor Web que projetos Web usarão para desenvolvimento no Visual Studio.
Para acessar essas opções, selecione Ferramentas > Opções, expanda Projetos e
Soluções e selecione Projetos Web.

Por padrão, executar um projeto Web no Visual Studio usa o Visual Studio Development
Server. Para obter mais informações, consulte Servidores Web no Visual Studio para
projetos Web ASP.NET.

Configurações
Usar a versão de 64 bits do IIS Express para sites e projetos

Selecione esta opção para usar o IIS Express, em vez do Visual Studio Development
Server. Para obter mais informações, consulte Apresentando o IIS Express e visão
geral do IIS Express.

Avisar antes de executar aplicativos Web quando houver erros na lista de erros

Se essa opção estiver definida, você receberá um aviso se tentar executar o aplicativo
Web quando ele não for compilado sem erros.

Confira também
Caixa de diálogo Opções, Projetos e Soluções
Caixa de diálogo Opções, Projetos e Soluções, Compilar e Executar
Caixa de diálogo Opções: Editor de
Texto e Geral
Artigo • 14/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Essa caixa de diálogo permite alterar as configurações globais do editor de texto e


código do Visual Studio. Para exibir essa caixa de diálogo, selecione Opções no menu
Ferramentas, expanda a pasta Editor de Texto e selecione Geral.
Configurações
A seção Ferramentas>Opções>Editor de Texto>Geral inclui as opções a seguir.

Recurso de edição arrastar-e-soltar


Quando selecionada, essa configuração permite mover texto selecionando-o e
arrastando-o com o mouse para outro local no documento atual ou em qualquer outro
documento aberto.

Selecionar subpalavra ao clicar duas vezes


Quando você seleciona essa configuração, um clique duplo seleciona apenas uma
subpalavra em vez de uma palavra inteira. (Isso pode ser útil quando você está usando
maiúsculas mediais, por exemplo.)

Recortar ou Copiar a linha atual sem seleção


Ao selecionar essa configuração, você pode recortar ou copiar a linha atual em que o
cursor está posicionado sem precisar primeiro selecionar o texto ou o código nessa
linha.

Realce automático de delimitadores


Quando selecionado, os caracteres delimitadores que separam parâmetros ou pares de
valor do item, bem como as chaves correspondentes, são realçados.

Controle de alterações
Quando o editor de códigos é selecionado, uma linha amarela vertical aparece na
margem de seleção para marcar o código que foi alterado desde que o arquivo foi salvo
mais recentemente. Quando você salva as alterações, as linhas verticais ficam verdes.

Detecção automática de codificação UTF-8 sem


assinatura
Por padrão, o editor detecta a codificação procurando por marcas de ordem de byte ou
marcas de conjunto de caracteres. Se nenhuma for encontrada no documento atual, o
editor de códigos tentará detectar automaticamente a codificação UTF-8 examinando
sequências de bytes. Para desabilitar a detecção automática da codificação, desmarque
essa opção.

Seguir as convenções de codificação do projeto


Quando selecionada, todas as configurações de estilo de código específicas do projeto
especificadas em um arquivo EditorConfig adicionadas ao projeto substituem as
configurações de estilo de código local especificadas na caixa de diálogo Opções
selecionando Editor de Texto>Linguagem, por exemplo, C#>Estilo de Código>Geral.

 Dica

Para saber mais sobre as convenções de codificação e como elas são aplicadas,
confira a página Criar configurações de editor portáteis e personalizadas com a
página EditorConfig.

Habilitar indicações de áudio


Quando selecionado, o Visual Studio reproduz uma indicação de áudio quando o cursor
no editor chega em uma linha com um erro, ponto de interrupção ou aviso. Quando
você exibe um arquivo no modo de exibição Diff, o Visual Studio também executa uma
indicação quando o cursor chega em uma linha que foi adicionada ou removida.

7 Observação

Você também pode habilitar ou modificar individualmente essas indicações de


áudio usando o Painel de Controle de Som no Windows.

Habilitar clique do mouse a fim de executar Ir para


Definição
Com essa opção estiver selecionada, você poderá pressionar Ctrl e passar o mouse
sobre um elemento ao clicar com o mouse. Isso leva você até a definição do elemento
selecionado. Você também pode escolher Alt ou Ctrl + Alt no menu suspenso Usar
tecla modificadora.

Abrir definição na exibição de espiada


Marque a caixa de seleção para exibir a definição do elemento selecionado em uma
janela sem sair do local atual no editor de código. Para obter mais informações, confira
Como exibir e editar códigos usando Espiar Definição.

Rolagem Autoadesiva
A seção Rolagem Autoadesiva de Ferramentas>Opções>Editor de Texto>Geral inclui as
opções a seguir.

Agrupar os escopos atuais em uma região rolável da


janela do editor
Marque esta caixa de seleção para habilitar a Rolagem Autoadesiva para colar escopos
na parte superior do editor para que eles estejam sempre em exibição enquanto você
rola pelo código. Os escopos incluem namespaces, classes, métodos, instruções de
inicialização de loop e condicionais. Introduzida pela primeira vez no Visual Studio 2022
versão 17.5, linguagens de programação e formatos de código com suporte para
Rolagem Autoadesiva incluem C#, C++, XAML e JSON.

Máximo de linhas autoadesivas


Definido para um padrão de 5, você pode aumentar ou diminuir o número de linhas
que deseja ver na área de cabeçalho da Rolagem Autoadesiva.

Quando o número de escopos excede o máximo


O padrão é Preferir escopos externos, que mostra escopos de nível superior. Você pode
alterá-lo para Preferir escopos internos, que empurra os escopos de nível superior à
medida que você rola pelo código profundamente aninhado. Para obter mais
informações, confira a seção "Escopos internos e externos" da página O que é a
Rolagem Autoadesiva para Visual Studio .

Exibir
A seção Mostrar de Ferramentas>Opções>Editor de Texto>Geral inclui as opções a
seguir.

Exibir espaço em branco


Quando selecionado, você pode visualizar espaços e guias.

Exibir caracteres de controle de texto bidirecional


Quando selecionado, todos os caracteres de controle de texto bidirecional são
renderizados como espaços reservados no editor de código.

U Cuidado

Essa opção é selecionada por padrão para impedir uma exploração potencialmente
mal-intencionada que permite que o código seja representado incorretamente.

Confira o seguinte snippet de código para obter um exemplo de caracteres de controle


bidirecional:

C#

/// <summary>
/// Bidirectional control characters can invert text direction,
/// which can be exploited to craft malicious code that looks benign.
/// </summary>
/// <example>
/// transferBalance(5678,6776, 4321, "USD");
/// </example>
internal readonly ImmutableArray<char> BiDiControlCharacters =
ImmutableArray.CreateRange(new[] {
'\u061c', // ALM: Arabic letter mark
'\u200e', // LRM: Left-to-right mark
'\u200f', // RLM: Right-to-left mark
'\u202a', // LRE: Left-to-right embedding
'\u202b', // RLE: Right-to-left embedding
'\u202c', // PDF: Pop directional formatting
'\u202d', // LRO: Left-to-right override
'\u202e', // RLO: Right-to-left override
'\u2066', // LRI: Left-to-right isolate
'\u2067', // RLI: Right-to-left isolate
'\u2068', // FSI: First strong isolate
'\u2069', // PDI: Pop directional isolate
});

Exibir caracteres de largura zero


Quando selecionado, os caracteres de largura zero são renderizados no editor de
código.
Confira o seguinte snippet de código para obter um exemplo de caracteres de largura
zero:

C#

/// <summary>
/// Zero-width characters can be exploited to craft identifiers
/// that look like other identifiers, but are in fact distinct.
/// </summary>
/// <example>
/// ab‌
c‍
de
⁠fg
/// </example>
internal readonly ImmutableArray<char> ZeroWidthCharacters =
ImmutableArray.CreateRange(new[] {
'\u200b', // ZWSP: Zero width space
'\u200c', // ZWNJ: Zero width non-joiner
'\u200d', // ZWJ: Zero width joiner
'\u2060', // WJ: Word joiner
'\u206f', // Nominal Digit Shapes
'\ufeff', // BOM: Zero width no-break space
});

Habilitar Colorização do par de chaves


Quando selecionadas, as chaves são correspondidas por cores para que você possa
distinguir visualmente cada conjunto de chaves de abertura e fechamento em seu
código. A colorização de chaves facilita a visualização do escopo do código ou a
localização de chaves ausentes. Lançada no Visual Studio 2022 versão 17.6, a
colorização do par de chaves tem suporte para C#, C++, TypeScript, JavaScript, Visual
Basic e Razor.

Margem de seleção
Quando selecionado, exibe uma margem vertical ao longo da borda esquerda da área
de texto do editor. Você pode clicar nessa margem para selecionar uma linha de texto
inteira ou clicar e arrastar para selecionar linhas consecutivas de texto.

ノ Expandir a tabela

Margem de seleção ativada Margem de seleção desativada

Margem de indicadores
Quando selecionado, exibe uma margem vertical fora da borda esquerda da área de
texto do editor. Quando você clica nesta margem, um ícone e uma dica de ferramenta
relacionados ao texto aparecem. Por exemplo, atalhos da lista de tarefas ou de pontos
de interrupção aparecem na margem de indicadores. Informações da Margem de
Indicadores não são impressas.

Realçar linha atual


Quando selecionado, exibe uma caixa cinza ao redor da linha de código na qual o
cursor está localizado.

Mostrar diretrizes de estrutura


Quando essa opção estiver selecionada, as linhas verticais serão exibidas no editor,
alinhadas aos blocos de código estruturado, o que permite que você identifique
facilmente os blocos individuais de código.

Mostrar rabiscos de erro


Quando selecionados, sublinhados ondulados de cores diferentes, conhecidos como
rabiscos, aparecem em seu código. (Rabiscos vermelhos indicam erros de sintaxe, azul
indica erros de compilador, verde indica avisos e roxo indica outros tipos de erros.)

Mostrar correspondências de seleção


Quando selecionado, o Visual Studio realça automaticamente as cadeias de caracteres
correspondentes depois que você seleciona o texto no editor. Mais especificamente,
sempre que uma única linha de texto de 100 caracteres ou menos for selecionada, todas
as correspondências serão imediatamente realçadas.
Mostrar indicador de integridade do arquivo
Quando selecionada, uma barra de status do indicador de integridade do arquivo (erros,
avisos), com opções de limpeza de código, é exibida no canto inferior esquerdo do
editor.

Espaçamento entre linhas


Use esse controle para alterar o espaçamento de linha padrão de 1.0 para o incremento
desejado, a fim de incluir 1,15, 1,5, 2,0, 2,5 e 3,0.

Mostrar contexto de edição no editor


Use esse controle para alternar completamente as configurações de contexto de edição
ou personalizar de acordo com sua preferência selecionando entre as seguintes
configurações:

Linha/Col
Seleções
Inserir/Substituir
Tabulação/Espaço
Terminações de linha

Confira também
Opções, Editor de Texto, Todas as Linguagens
Opções, Editor de Texto, Todas as Linguagens, Guias
Opções, Editor de Texto, Extensão de Arquivo
Identificando e personalizando atalhos de teclado
Personalizando o editor
Usando o IntelliSense
Caixa de diálogo Opções: Editor de
Texto > Avançado
Artigo • 15/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível usar a caixa de diálogo Avançado para alterar as configurações globais do


editor de texto e do Visual Studio. Para exibir a caixa de diálogo, selecione Ferramentas
na barra de menus e, em seguida, selecione Opções>Editor de Texto>Avançado.

Modo de exibição de diferença


A opção Linha inteira é selecionada por padrão. As opções que você pode escolher
permitem personalizar o realce e a estrutura de tópicos exibidos no Visualizador de
Diferença ao adicionar, remover ou modificar linhas de texto. Especificamente, as
opções fornecem as seguintes experiências de exibição:
Linha inteira: as diferenças de linha devem ser exibidas para que elas assumam
toda a largura do visor.
Contorno de código: as diferenças de linha devem ser exibidas apenas para o
último caractere em cada linha.
Estrutura de tópicos de bloco: as diferenças de linha e palavra são mostradas
como retângulos descritos.
Estrutura de tópicos mista: as diferenças de linha são mostradas como retângulos
descritos e diferenças de palavras são mostradas como retângulos coloridos.

Mostrar a margem de visão geral de diferença


Selecionada por padrão, essa opção adiciona uma exibição de margem ao lado da barra
de rolagem que mostra a diferença entre confirmações do Git. A cor vermelha indica
uma exclusão e a cor verde indica uma adição.

Preenchimento de código responsivo


Selecionada por padrão, essa opção permite que o editor sugira possíveis conclusões
para seu código com base em seu contexto e semântica de idioma. Alterne para
desativar o modo de preenchimento automático.

Clique para espiar na margem


A configuração Clique único é selecionada por padrão. As configurações escolhidas
permitem personalizar como Espiar Definição funciona quando você a usa para exibir as
diferenças entre confirmações do Git. Você pode alterar a configuração padrão de
Clique único para Clique duplo ou selecionar Nenhum para desativar a Interface do
usuário de Espiar Diferença.

Sugestões baseadas em palavras em arquivos


administrados pelas gramáticas de TextMate
O Visual Studio fornece suporte à linguagem de programação alternativa e colorização
no editor usando gramáticas de TextMate . Quando habilitada, a funcionalidade de
preenchimento automático do Visual Studio se baseia em palavras digitadas em vez de
código. Alterne para desativar.

 Dica
Para saber mais sobre gramáticas de TextMate, confira Adicionar suporte ao editor
do Visual Studio para outros idiomas.

Modo de preenchimento padrão do


IntelliSense
Escolha de uma das seguintes configurações de modo de preenchimento:

Automático, a configuração padrão, que preenche com pontuação e caracteres


especiais.
Somente guia, que é preenchido somente na guia.
Usado pela última vez, que preserva a última configuração usada com
Ctrl+Alt+Space.

Permitir que o CodeLens desloque a linha do


cursor
Por padrão, informações do CodeLens aparecem em uma linha de código. Alterne para
mostrar informações do CodeLens diretamente em sua linha de código na posição atual
do cursor.

Usar _a seleção de caixa


Selecione esta opção para desabilitar o novo comportamento de seleção de vários
cursores no Visual Studio 2022, que inclui o seguinte:

Adapta a "seleção de blocos" da mesma forma que a funcionalidade de vários


cursores no VS Code .
Dá suporte à cópia e à colagem de uma seção diferente de texto com cada cursor,
em vez de apenas uma única seção em forma de bloco de texto.
Move cada cursor quando você pressiona as teclas de direção e não descarta a
seleção de bloco.

7 Observação

Quando selecionada, a opção aplica o comportamento de seleção de caixa que


estava disponível no Visual Studio 2019 e em versões anteriores. Especificamente, a
opção permite que você selecione uma seção retangular de itens quando você
pressiona Alt e arrasta o mouse para selecionar o texto (ou pressiona
Shift+Alt+Esquerda/Para cima/Direita/Para baixo para selecionar o texto). Essa
opção é limitada, pois quando você pressiona uma tecla de direção, o Visual Studio
descarta a seleção da caixa e retorna a um único cursor.

Usar a formatação adaptável


Com base no arquivo atualizado mais recentemente, o Visual Studio reconhece se você
prefere usar guias ou espaços para recuar código. A opção de formatação adaptável
está selecionada por padrão. Quando não estiver, o Visual Studio usará as configurações
em Ferramentas>Opções>Editor de Texto>Todos os Idiomas>Guias.

 Dica

Você também pode alterar como o Visual Studio gerencia seu estilo de recuo
preferido usando um arquivo .editorconfig. Para obter mais informações, confira
Criar configurações portáteis do editor personalizado com o EditorConfig.

Suporte de fallback para navegação de


símbolos GoTo em C#, C++, Java e TypeScript
Selecione essa opção para desabilitar o suporte de fallback do TextMate para a pesquisa
de símbolos, o que pode ajudar a melhorar o desempenho do sistema. (Disponível
apenas no Visual Studio 2022 versão 17.0 a 17.3.)

Copiar rich text em copiar/recortar


Selecionada por padrão, a opção copia o texto que inclui cores e ligaturas. Alterne para
copiar texto simples.

 Dica

Desmarcar essa opção melhora a capacidade de resposta e o desempenho do


Visual Studio durante uma operação de cópia/colagem. A cópia avançada pode
causar atrasos na interface do usuário e travamentos temporários.

Comprimento máximo
Use essa opção para aumentar ou diminuir a contagem máxima de caracteres de rich
text que você pode copiar ou recortar do código. O padrão é definido como 10240.
(Além desse limite, o texto ainda é copiado, mas como texto sem formatação em vez de
rich text.)

Usar a classificação precisa


Alterne essa caixa de seleção para permitir a colorização semântica. Uma caixa de
diálogo de "espera" pode aparecer após alguns segundos. (Há colorização sintática, que
é rápida de copiar, e a colorização semântica, que é mais lenta de copiar. As
informações semânticas permitem uma colorização mais rica e precisa.)

Cancelar automaticamente operações auxiliares


de execução prolongada na digitação
Selecionada por padrão, essa opção permite que o Visual Studio interrompa as tarefas
em segundo plano ao digitar no editor de texto. Em outras palavras, ela controla o
quanto o Visual Studio age com agressividade com relação ao cancelamento do
trabalho que possa congelar temporariamente a interface do usuário enquanto você
digita.

Ajustar automaticamente o máximo permitido de latência


de digitação
Selecionada por padrão, essa opção ajusta a latência máxima de digitação que um
recurso ou extensão pode causar à digitação antes de ser cancelada pelo Visual Studio.

Latência de digitação máxima permitida em


milissegundos
Selecione essa opção se preferir definir a latência máxima que o Visual Studio aplica ao
digitar no editor de texto.

Sensibilidade de rolagem
Use essa opção para melhorar o desempenho de rolagem no Visual Studio.

Sensibilidade _de rolagem vertical (linhas por rolagem)


Use essa opção para ajustar quantas linhas verticais você deseja rolar em cada ação de
interface do usuário. O padrão é definido como 3.

Sensibilidade _de rolagem horizontal (caracteres por


rolagem)
Use essa opção para ajustar quantos caracteres você deseja rolar em cada ação de
interface do usuário. O padrão é definido como 1.

Método de formatação de texto


O padrão é Automático. Você pode escolher uma dentre duas opções adicionais, Ideal
ou Exibir. Escolha a opção que melhor permite ajustar a formatação de texto no editor,
com base em seu hardware específico.

Para saber mais, confira TextFormattingMode.

Método de renderização de texto


O padrão é Automático. Você pode escolher uma dentre três opções adicionais,
ClearType, Greyscale ou Aliased. Escolha a opção que melhor permite ajustar a
renderização de texto no editor, com base em seu hardware específico.

Para saber mais, confira TextRenderingMode.

Confira também
Caixa de diálogo Opções: Editor de Texto > Geral
Opções, Editor de Texto, Extensão de
Arquivo
Artigo • 13/01/2024

A caixa de diálogo Opções permite especificar como todos os arquivos com


determinadas extensões de arquivo serão manipulados pelo IDE (ambiente de
desenvolvimento integrado) do Visual Studio. Para cada Extensão que inserir, você pode
selecionar uma Experiência de Edição. Isso permite escolher o editor ou o designer do
IDE no qual os documentos de um determinado tipo serão abertos. Para exibir essas
opções, escolha Opções no menu Ferramentas, expanda o nó Editor de Texto e
selecione Extensão de Arquivo.

Quando você selecionar uma opção "com codificação", uma caixa de diálogo será
exibida sempre que você abrir um documento do tipo em questão que permitir
selecionar um esquema de codificação para o documento. Isso pode ser útil se você
estiver preparando versões dos documentos do projeto para uso em diferentes
plataformas ou em diferentes linguagens de destino.

Lista de elementos de interface do usuário


Extensão

Digite a extensão de arquivo cuja Experiência de Edição no IDE você deseja definir.

Editor

Selecione o editor ou o designer do IDE em que documentos com essa extensão de


arquivo serão abertos. Quando você selecionar uma opção "com codificação", uma caixa
de diálogo será exibida sempre que você abrir um documento desse tipo que permite a
seleção de um esquema de codificação.

Adicionar

Adiciona uma entrada que inclui a Extensão e a Experiência de Edição especificadas à


Lista de extensões.

Remover

Exclui a entrada selecionada da Lista de Extensões.

Lista de extensões
Lista todas as extensões para as quais uma Experiência de Edição foi especificada.

Mapear arquivos sem extensão para

Selecione esta opção se você quiser especificar como arquivos sem extensão serão
tratados pelo IDE.

Opções de arquivos sem extensão

Fornece a mesma lista que o Editor. Selecione o editor ou o designer do IDE em que
documentos sem extensão de arquivo serão abertos.

Confira também
Como gerenciar modos do editor
Caixa de diálogo Opções: Editor de
Texto > Todas as Linguagens
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Esta caixa de diálogo permite alterar o comportamento padrão do Editor de Código.


Essas configurações também se aplicam a outros editores baseados no Editor de
código, como o modo de exibição de Fonte do Designer de HTML. Para abrir essa caixa
de diálogo, selecione Opções no menu Ferramentas. Dentro da pasta Editor de Texto,
expanda a subpasta Todos os Idiomas e, em seguida, escolha Geral.

U Cuidado

Esta página define opções padrão para todas as linguagens de desenvolvimento.


Lembre-se de que redefinir uma opção nessa caixa de diálogo redefinirá as opções
Geral em todas as linguagens, não importa quais opções sejam selecionadas aqui.
Para alterar as opções do Editor de Texto para apenas uma linguagem, expanda a
subpasta para aquela linguagem e selecione suas páginas de opções.

Uma marca de seleção esmaecida é exibida quando uma opção tiver sido selecionada
nas páginas de opções Geral para algumas linguagens de programação, mas não para
outras.
Conclusão de instrução
Listar membros automaticamente

Quando selecionadas, listas pop-up de membros, propriedades, valores ou métodos


disponíveis são exibidas pelo IntelliSense conforme você digita no editor. Escolha
qualquer item na lista pop-up para inserir o item em seu código. Selecionar essa opção
habilita a opção Ocultar membros avançados.

Ocultar membros avançados

Quando selecionada, diminui listas de preenchimento de declaração pop-up exibindo


somente os itens mais usados. Os outros itens são filtrados da lista.

Informações sobre parâmetros

Quando selecionada, a sintaxe completa para a declaração ou procedimento atual é


exibida sob o ponto de inserção no editor, com todos os seus parâmetros disponíveis. O
próximo parâmetro que você pode atribuir é exibido em negrito.

Configurações
Habilitar espaço virtual
Quando esta opção está selecionada e a caixa de seleção Quebra automática de linha
está desmarcada, você pode clicar em qualquer lugar além do final de uma linha no
Editor de Códigos e digitar. Esse recurso pode ser usado para posicionar comentários
em um ponto consistente ao lado do seu código.

Quebra automática de linha

Quando selecionada, qualquer parte de uma linha que se estenda horizontalmente além
da área visível do editor é exibida automaticamente na próxima linha. Selecionar essa
opção habilita a opção Mostrar glifos visuais para quebra automática de linha.

7 Observação

O recurso Espaço Virtual é desativado enquanto Quebra automática de linha está


ativada.

Mostrar glifos visuais para quebra automática de linha

Quando selecionada, um indicador de seta d retorno é exibido no ponto em que uma


linha longa quebra-se para uma segunda linha.

Desmarque esta opção se preferir não exibir esses indicadores.

7 Observação

Essas setas de lembrete não são adicionadas ao seu código, e não imprimem. Eles
são somente para referência.

Números de linha

Quando selecionada, um número de linha aparece ao lado de cada linha de código.

7 Observação

Esses números de linha não são adicionados ao seu código e não são impressos.
Eles são somente para referência.

Habilitar navegação de URL com um só clique


Quando selecionada, o cursor do mouse muda para uma mão apontando conforme
passa sobre uma URL no editor. Você pode clicar no URL para exibir a página indicada
no seu navegador da Web.

Barra de navegação

Quando selecionada, exibe a Barra de navegação na parte superior do editor de código.


Suas listas suspensas Objetos e Membros permitem escolher um objeto específico no
código, selecionar entre seus membros e navegar para a declaração do membro
selecionado no Editor de Códigos.

Preenchimento automático de chaves

Quando selecionado, o Visual Studio fornece um parêntese de fechamento quando um


parêntese de abertura é digitado.

Aplicar comandos Recortar ou Copiar a linhas em branco quando não houver


nenhuma seleção

Esta opção define o comportamento do editor quando você coloque o ponto de


inserção em uma linha em branco, não seleciona nada e então Copia ou Corta.

Quando essa opção está selecionada, a linha em branco é copiada ou cortada. Se


você então Colar, uma nova linha em branco será inserida.

Quando essa opção está desmarcada, o comando Cortar remove linhas em branco.
No entanto, os dados na Área de Transferência são preservados. Portanto, se você
usar o comando Colar, o conteúdo copiado mais recentemente para a Área de
Transferência será colado. Se nada foi copiado anteriormente, nada será colado.

Essa configuração não tem efeito sobre o Copiar ou Cortar quando uma linha não está
em branco. Se nada for selecionado, a linha inteira será copiada ou recortada. Se você
então Colar, o texto da linha inteira e seu caractere de fim de linha serão colados.

 Dica

Para exibir indicadores para espaços, tabulações e fins de linha, e assim distinguir
linhas recuadas de linhas totalmente em branco, selecione Avançado no menu
Editar e escolha Exibir Espaço em Branco.

Confira também
Opções, Editor de Texto, Todas as Linguagens, Guias
Caixa de diálogo Geral, Ambiente, Opções
Usando o IntelliSense
Opções, Editor de Texto, Todas as
Linguagens, Barras de Rolagem
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Essa caixa de diálogo permite alterar o comportamento padrão da barra de rolagem do


editor de código. Para exibir essas opções, selecione Opções do menu Ferramentas. Na
pasta Editor de Texto, expanda a subpasta Todas as Linguagens e, em seguida, escolha
Barras de Rolagem.

U Cuidado

Esta página define opções padrão para todas as linguagens de desenvolvimento. A


redefinição de uma opção nessa caixa de diálogo redefinirá as opções das Barras
de Rolagem em todas as linguagens em relação às opções selecionadas aqui. Para
alterar as opções do Editor de Texto para apenas uma linguagem, expanda a
subpasta para aquela linguagem e selecione suas páginas de opções.

Mostrar barra de rolagem horizontal


Quando selecionada, exibe uma barra de rolagem horizontal, que permite rolar de um
lado para o outro para exibir os elementos que estão fora da área de exibição do Editor.
Se barras de rolagem horizontais não estiverem disponíveis, você poderá usar as teclas
de cursor para rolar.

Mostrar barra de rolagem vertical


Quando selecionada, exibe uma barra de rolagem vertical que permite rolar para cima e
para baixo para exibir os elementos que estão fora da área de exibição do Editor. Se
barras de rolagem verticais não estiverem disponíveis, você poderá usar Page Up, Page
Down e teclas do cursor para rolar.

Exibir

Mostrar anotações sobre a barra de rolagem vertical


Selecione se a barra de rolagem vertical mostra as anotações a seguir:

alterações
marcas
erros
posição do cursor

 Dica

A opção Exibir marcas inclui pontos de interrupção e indicadores.

Experimente abrir um arquivo de código grande e substituir algumas partes do texto


que ocorrem em vários locais no arquivo. A barra de rolagem mostra o efeito das
substituições, de modo que você pode desfazer suas alterações se tiver substituído algo
que não deveria.

Veja a postagem no blog da Barra de rolagem avançada sobre o que as várias cores e
símbolos significam ao editar código.

Comportamento
A barra de rolagem tem dois modos: o modo de barra e o modo de mapa.

Use o modo de barra para barra de rolagem vertical


O modo de barra exibe indicadores de anotação na barra de rolagem. Clicando na barra
de rolagem é possível rolar a página para cima ou para baixo, mas não ir para aquele
local no arquivo.

Use o modo de mapa para barra de rolagem vertical


No modo de mapa, quando você clica em um local na barra de rolagem, o cursor vai
para aquele local no arquivo em vez de simplesmente rolar para cima ou para baixo em
uma página. As linhas de código são mostradas em miniatura na barra de rolagem. É
possível escolher a largura da coluna do mapa selecionando um valor em Visão geral
do Código-fonte. Para habilitar uma visualização maior do código quando você parar o
ponteiro no mapa, selecione a opção Mostrar Dica de Ferramenta de Visualização. As
regiões recolhidas ficam sombreadas de forma diferente e são expandidas quando você
clica duas vezes nelas.
 Dica

Você pode desabilitar a exibição de código em miniatura no modo de mapa


definindo a opção Visão geral do código-fonte como Desabilitada. Se a opção
Mostrar Dica de Ferramenta de Visualização estiver selecionada, você ainda verá
uma visualização do código nesse local ao passar o ponteiro do mouse sobre a
barra de rolagem e, o cursor ainda o levará para esse local no arquivo quando você
clicar.

Confira também
Como personalizar a barra de rolagem
Opções, Editor de Texto, Todos os
Idiomas, Guias
Artigo • 13/01/2024

Esta caixa de diálogo permite alterar o comportamento padrão do Editor de Código.


Essas configurações também se aplicam a outros editores baseados no Editor de
código, como o modo de exibição de Fonte do Designer de HTML. Para exibir essas
opções, selecione Opções do menu Ferramentas. Na pasta Editor de Texto, expanda a
subpasta Todos os Idiomas e, em seguida, escolha Guias.

U Cuidado

Esta página define opções padrão para todas as linguagens de desenvolvimento.


Lembre-se de que redefinir uma opção nessa caixa de diálogo redefinirá as opções
Guias em todas as linguagens para quaisquer opções selecionadas aqui. Para
alterar as opções do Editor de Texto para apenas uma linguagem, expanda a
subpasta para aquela linguagem e selecione suas páginas de opções.

Se forem selecionadas configurações diferentes nas páginas de opções Guias para


linguagens de programação específicas, a mensagem “As configurações de recuo para
formatos de texto individuais estão em conflito entre si” será exibida para diferentes
opções de Recuo, e a mensagem “As configurações de guia para formatos de texto
individuais estão em conflito entre si” será exibida para diferentes opções de Guia. Por
exemplo, esse lembrete será exibido se a opção Recuo inteligente for selecionada para
Visual Basic, mas Bloquear recuo estiver selecionado para Visual C++.

Recuo
Nenhum

Quando selecionada, novas linhas não serão recuadas. O ponto de inserção é colocado
na primeira coluna de uma linha nova.

Bloquear

Quando selecionada, novas linhas serão recuadas automaticamente. O ponto de


inserção é colocado no mesmo ponto de partida que a linha anterior.

Inteligente
Quando selecionada, novas linhas serão posicionadas para caber no o contexto do
código, conforme as configurações de formatação do outro código e as convenções do
IntelliSense para sua linguagem de desenvolvimento. Essa opção não está disponível
para todas as linguagens de desenvolvimento.

Por exemplo, as linhas incluídas entre uma chave de abertura ({) e uma chave de
fechamento (}) podem ser recuadas automaticamente em uma parada de tabulação
extra da posição das chaves alinhadas.

Tabulações
Tamanho da tabulação

Define a distância em espaços entre paradas de tabulação. O padrão é quatro espaços.

Tamanho do recuo

Define o tamanho em espaços de um recuo automático. O padrão é quatro espaços.


Caracteres de tabulação, caracteres de espaço ou ambos serão inseridos para preencher
o tamanho especificado.

Inserir espaços

Quando selecionadas, as operações de recuo inserirão apenas caracteres de espaço, não


caracteres de TABULAÇÃO. Se o Tamanho do recuo estiver definido como 5, por
exemplo, cinco caracteres de espaço serão inseridos sempre que você pressionar a tecla
TAB ou o botão Aumentar Recuo na barra de ferramentas de Formatação.

Manter tabulações

Quando estiverem selecionadas, as operações de recuo inserirão tantos caracteres de


TABULAÇÃO quantos forem possíveis. Cada caractere de TABULAÇÃO preenche o
número de espaços especificado em Tamanho da tabulação. Se o Tamanho do recuo
não for um múltiplo par do Tamanho da tabulação, os caracteres de espaço serão
adicionados para preencher a diferença.

 Dica

A formatação adaptável pode substituir as configurações de guias personalizadas.


Você pode desativar a formatação adaptável alternando a opção Usar formatação
adaptável em Editor de texto>Avançado. Você também pode alterar como o
Visual Studio gerencia seu estilo de recuo preferido usando um arquivo
.editorconfig.
Confira também
Opções, Editor de Texto, Todas as Linguagens
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, Basic (Visual
Basic), Avançado
Artigo • 13/01/2024

A página de propriedades Específico do VB, na pasta Visual Basic da pasta Editor de


Texto da caixa de diálogo Opções (menu Ferramentas) inclui as seguintes propriedades:

Análise
Executar análise de código em segundo plano para...

Escolha uma das opções a seguir.

ノ Expandir a tabela

Opção descrição

Nenhum Todos os analisadores e correções de código correspondentes estão


desabilitados.

O diagnóstico do compilador e as correções de código


correspondentes estão habilitados em todos os documentos abertos.

Documento atual Todos os analisadores são executados apenas no documento ativo no


(padrão) momento.

Os diagnósticos do compilador estão habilitado em todos os


documentos abertos.

Documentos Todos os analisadores e diagnósticos do compilador estão habilitado


abertos em todos os documentos abertos.

Solução inteira Todos os analisadores e diagnósticos do compilador estão habilitados


em todos os documentos da solução, estejam eles abertos ou
fechados.

Usando diretivas
Colocar as diretivas “System” primeiro ao classificar os usos

Quando selecionado, o comando Remover e classificar usos no menu de clique


com o botão direito do mouse classifica as diretivas using e coloca os namespaces
"System" no topo da lista.
Separar usando grupos de diretivas

Quando selecionado, o comando Remover e classificar usos no menu de clique


com o botão direito do mouse separa as diretivas using inserindo uma linha vazia
entre os grupos de diretivas que têm o mesmo namespace de raiz.

Sugerir usos para tipos em assemblies de referência

Sugerir usos para tipos em pacotes NuGet

Quando essas opções estiverem selecionadas, uma Ação Rápida estará disponível
para instalar um pacote NuGet e para adicionar uma diretiva using para tipos não
referenciados.

Realçar
Habilitar realce de referências e palavras-chave

O editor de texto pode realçar todas as instâncias de um símbolo ou todas as palavras-


chave em uma cláusula como If..Then , While...End While ou Try...Catch...Finally .
Você pode navegar entre referências ou palavras-chave realçadas pressionando Ctrl +
Shift + Seta para baixo ou Ctrl + Shift + Seta para cima.

Estrutura de tópicos
Habilitar modo de estrutura de tópicos

Ao abrir um arquivo no editor de código, você pode exibir o documento no modo de


estrutura de tópicos. Consulte Estrutura de Tópicos para obter mais informações.
Quando essa opção é selecionada, o recurso de estrutura de tópicos é ativado quando
você abre um arquivo.

Mostrar separadores de linha do procedimento

O editor de texto indica o escopo visual dos procedimentos. Uma linha é desenhada nos
arquivos de origem .vb do seu projeto nos locais listados na tabela a seguir:

ノ Expandir a tabela

Local no arquivo de origem .vb Exemplo de local da linha

Após o encerramento de um – No final de uma classe, estrutura, módulo, interface ou


constructo de declaração de enumeração
bloco – Depois de uma propriedade, função ou sub
– Não entre cláusulas get e set em uma propriedade

Depois de um conjunto de – Depois das instruções de importação, antes de uma


constructos de linha única definição de tipo em um arquivo de classe
– Depois de variáveis declaradas em uma classe, antes de
qualquer procedimento

Depois de declarações de linha – Após instruções de importação, instruções de herança,


única (declarações de nível não declarações de variáveis, declarações de eventos, declarações
de bloco) de delegação e instruções de declaração DLL

Guias de estrutura de bloco


Quando essa opção estiver selecionada, as linhas verticais serão exibidas no editor,
alinhadas aos blocos de código estruturado, o que permite que você identifique
facilmente os blocos individuais de código. Por exemplo, você verá uma linha entre Sub
e EndSub em uma instrução Sub .

Ajuda do Editor
Dicas de nome de parâmetro embutido quando selecionadas, inserem dicas para
instanciações de literais, literais convertidas e objetos antes de cada argumento nas
chamadas de função.
Reformatação automática do código O editor de texto reformata seu código conforme
o necessário. Quando essa opção é selecionada, o editor de códigos:

Alinhará seu código com a posição correta de guia

Redefinirá as maiúsculas e minúsculas de palavras-chave, variáveis e objetos para o


formato correto

Adicionará um Then ausente a uma instrução If...Then

Adicionará parênteses a chamadas de função

Adicionará aspas finais faltando a cadeias de caracteres

Reformatará notação exponencial

Reformatará datas

Inserção automática de constructos finais

Quando você digita, por exemplo, a primeira linha de uma declaração de procedimento
Sub Main , e pressiona Enter, o editor de texto adiciona uma linha End Sub

correspondente. Da mesma forma, se você adicionar um loop For, o editor de texto


adicionará uma instrução Next correspondente. Quando essa opção é selecionada, o
editor de código adiciona automaticamente o constructo final.

Inserção automática de membros Interface e MustOverride

Quando você confirma uma instrução Implements ou uma instrução Inherits para uma
classe, o editor de texto insere protótipos para os membros que devem ser
implementados ou substituídos, respectivamente.

Habilitar sugestões para correção de erros

O editor de texto pode sugerir soluções para erros comuns e permitir selecionar a
correção apropriada, que então é aplicada ao seu código.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, Todas as Linguagens, Guias
Preferências de estilo de código
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode definir as configurações de estilo do código por projeto usando um arquivo
EditorConfig ou para todo o código que editar no Visual Studio na página Opções do
editor de texto. Para o código C#, também é possível configurar o Visual Studio para
aplicar essas preferências de estilo de código usando os comandos Limpeza de código
(Visual Studio 2019, Visual Studio 2022) e Formatar documento (Visual Studio 2017).

7 Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac,
confira Comportamento do editor no Visual Studio para Mac.

Estilos de código em arquivos EditorConfig


As configurações de estilo de código para .NET podem ser especificadas com a adição
de um EditorConfig ao seu projeto. Os arquivos EditorConfig são associados a uma base
de códigos em vez de uma conta de personalização do Visual Studio. As configurações
em um arquivo EditorConfig têm precedência sobre os estilos de código que são
especificados na caixa de diálogo Opções. Use um arquivo EditorConfig quando quiser
impor estilos de codificação para todos os fatores que contribuem para o seu
repositório ou projeto.

Você pode preencher manualmente o arquivo EditorConfig ou gerar automaticamente


um arquivo com base nas configurações de estilo de código definidas na caixa de
diálogo Opções do Visual Studio. Essa página de opções está disponível em
Ferramentas>Opções>Editor de texto> [C# ou Visual Basic] >Estilo de código>Geral.
Clique em Gerar arquivo .editorconfig das configurações para gerar automaticamente
um arquivo .editorconfig de estilo de codificação com base nas configurações na página
Opções.
Estilos de código na caixa de diálogo Opções
As preferências de estilo de código podem ser definidas para todos os seus projetos C#
e do Visual Basic abrindo a caixa de diálogo Opções no menu Ferramentas. Na caixa de
diálogo Opções, selecione Editor de Texto> [C# ou Visual Basic] >Estilo de
código>Geral.

Cada item na lista mostra uma versão prévia da preferência quando selecionada:

As opções definidas nessa janela são aplicáveis à sua conta de personalização do Visual
Studio e não estão associadas a um determinado projeto ou base de códigos. Além
disso, elas não são impostas no tempo de compilação, inclusive em builds de CI
(integração contínua). Se você quiser associar as preferências de estilo de código ao seu
projeto e ter os estilos impostos durante a criação, especifique as preferências em um
arquivo .editorconfig que foi associado ao projeto.

Preferência e gravidade
Em cada configuração de estilo de código nessa página, é possível definir os valores de
Preferência e Gravidade usando as listas suspensas de cada linha. A gravidade pode ser
definida como Somente Refatoração, Sugestão, Aviso ou Erro. Se você quiser habilitar
Ações Rápidas para um estilo de código, verifique se a configuração de Gravidade está
definida como algo diferente de Somente Refatoração. O ícone de lâmpada Ações
Rápidas, lâmpada de erro ou chave de fenda aparece quando um estilo
não preferencial é usado. É possível escolher uma opção na lista Ações Rápidas para
reescrever o código automaticamente no estilo preferencial.

Impor estilo de código na compilação


A partir do Visual Studio 2019 versão 16.8, que inclui o SDK do .NET 5.0 RC2, é possível
impor as convenções de codificação do .NET na compilação para todos os projetos do
.NET. No momento da compilação, as violações de estilo de código aparecem como
avisos ou erros com o prefixo "IDE". Assim, você pode impor estritamente estilos de
código de acordo com sua base de código.

Aplicar estilos de código


Para arquivos de código C#, o Visual Studio tem um botão Limpeza de código na parte
inferior do editor (teclado: Ctrl+K, Ctrl+E) para aplicar estilos de código de um arquivo
EditorConfig ou da página opções estilo de código. Se um arquivo .editorconfig existir
para o projeto, essas serão as configurações com precedência.

 Dica

As regras configuradas com uma gravidade de Nenhum não participam da limpeza


de código, mas podem ser aplicadas individualmente por meio do menu Ações
rápidas e refatorações.

Primeiramente, configure quais estilos de código deseja aplicar (em um dos dois perfis)
na caixa de diálogo Configurar limpeza de código. Para abrir essa caixa de diálogo,
clique na seta de expansão ao lado do ícone de vassoura de limpeza de código e, em
seguida, escolha Configurar limpeza de código.
Depois que tiver configurado a limpeza de código, você poderá clicar no ícone de
vassoura ou pressionar Ctrl+K, Ctrl+E para executar a limpeza de código. Você também
pode fazer a limpeza de código em todo o projeto ou em toda a solução. Clique com o
botão direito do mouse no nome do projeto ou da solução no Gerenciador de
Soluções, selecione Análise e Limpeza de Código e selecione Executar Limpeza de
Código.

Configurações de limpeza de código


A maioria das configurações de limpeza de código é mapeada para um ou mais estilos
de código .NET compatível com .editorconfig. Para obter exemplos que mostram os
efeitos das configurações, use os links da tabela a seguir.
Configuração ID da regra ou opção de estilo

Remover Importações ou IDE0005


usos desnecessários

Aplicar preferências de file_header_template


cabeçalho de arquivo

Remover variáveis não IDE0051


utilizadas

Aplicar preferências de visual_basic_style_prefer_simplified_object_creation


criação de objeto

Aplicar preferências de IsNot visual_basic_style_prefer_isnot_expression

Adicionar a qualificação IDE0003-IDE0009


“este” ou “Eu”

Adicionar modificadores de dotnet_style_require_accessibility_modifiers


acessibilidade

Modificadores de ordem IDE0036

Tornar campo “somente dotnet_style_readonly_field


leitura”

Remover conversões IDE0004


desnecessárias

Aplicar parâmetros de dotnet_style_object_initializer


inicialização de
objeto/coleção)

Aplicar preferências de uso csharp_using_directive_placement


de posicionamento de
diretiva

Aplicar preferências de IDE0047-IDE0048


parênteses

Aplicar preferências de valor IDE0058


não utilizadas

Aplicar preferências de tipo IDE0049


de linguagem/estrutura

Remover supressões não dotnet_remove_unnecessary_suppression_exclusions


utilizadas
Configuração ID da regra ou opção de estilo

Aplicar simplificar dotnet_style_prefer_simplified_boolean_expressions


preferências de expressão
booliana

Aplicar preferências de dotnet_style_prefer_simplified_interpolation


interpolação de cadeia de
caracteres

Remover parâmetros não dotnet_code_quality_unused_parameters


usados

Aplicar preferências de dotnet_style_prefer_auto_properties


propriedade automática

Aplicar preferências de dotnet_style_prefer_compound_assignment


atribuição composta

Aplicar preferências de dotnet_style_coalesce_expression


expressão de união

Aplicar preferências de dotnet_style_prefer_conditional_expression_over_assignment


expressão condicional dotnet_style_prefer_conditional_expression_over_return

Aplicar preferências de nome dotnet_style_explicit_tuple_names


de tupla dotnet_style_prefer_inferred_tuple_names

Aplicar preferências de dotnet_style_prefer_inferred_anonymous_type_member_names


nomes de membros do tipo
anônimo inferido

Aplicar preferências de dotnet_style_prefer_is_null_check_over_reference_equality_method


verificação nula

Aplicar preferências de dotnet_style_null_propagation


propagação nula

Aplicar preferências de “var” IDE0007-IDE0008

Adicionar as chaves csharp_prefer_braces


necessárias para as
instruções de controle de
linha única

Aplicar preferências de corpo Membros aptos para expressão


de expressão/bloco

Aplicar preferências de csharp_style_inlined_variable_declaration


variáveis 'out' embutidas
Configuração ID da regra ou opção de estilo

Aplicar preferências de Preferências de padrões correspondentes


padrões correspondentes

Aplicar preferências de csharp_style_conditional_delegate_call


chamada de delegado
condicional

Aplicar preferências de csharp_prefer_static_local_function


função local estática

Aplicar preferências de csharp_style_deconstructed_variable_declaration


desconstrução

Aplicar preferências csharp_prefer_simple_default_expression


padrão(T)

Aplicar novas() preferências csharp_style_implicit_object_creation_when_type_is_apparent

Aplicar preferências de csharp_style_prefer_range_operator


intervalo

Aplicar preferências de csharp_style_pattern_local_over_anonymous_function


função locais em vez de
anônimas

Aplicar preferências nulas de Preferências de verificação nula


parâmetro

Aplicar preferências de uso csharp_prefer_simple_using_statement


de instrução

Aplicar preferências de csharp_style_throw_expression


expressão throw

Se você quiser que as configurações de estilo de código sejam aplicadas sempre que
salvar um arquivo, acesse Opções>Editor de texto>Limpeza de código e selecione
Executar perfil de Limpeza de Código ao salvar.

Confira também
Ações Rápidas
Configurações de convenção de codificação do .NET para o EditorConfig
Comportamento do editor (Visual Studio para Mac)
IntelliSense para arquivos de código do
Visual Basic
Artigo • 13/01/2024

O editor de código-fonte do Visual Basic oferece os seguintes recursos de IntelliSense:

Dicas de sintaxe
Dicas de sintaxe são exibidas na sintaxe da instrução que você está digitando. Isso é útil
para instruções de como Declare.

Conclusão automática
Conclusão em várias palavras-chave

Por exemplo, se você digitar goto e um espaço, o IntelliSense exibirá uma lista dos
rótulos definidos em um menu suspenso. Outras palavras-chave com suporte
incluem Exit , Implements , Option e Declare .

Conclusão em Enum e Boolean

Quando uma instrução fizer referência a um membro de uma enumeração, o


IntelliSense exibirá uma lista dos membros de Enum . Quando uma instrução fizer
referência a um Boolean , o IntelliSense exibirá um menu suspenso de verdadeiro
ou falso.

A conclusão pode ser desativada por padrão desmarcando Listar membros


automaticamente na página de propriedades Geral na pasta Visual Basic.

Você pode invocar manualmente a conclusão invocando Listar Membros, Completar


Palavra ou Alt+Seta para a Direita. Para obter mais informações, confira Usar o
IntelliSense.

IntelliSense por Zona


O IntelliSense por Zona ajuda desenvolvedores de Visual Basic que precisam implantar
aplicativos por meio do ClickOnce e que estão restritos a configurações de confiança
parcial. Este recurso:

Permite escolher as permissões com que o aplicativo será executado.


Exibe APIs na Zona escolhida como disponíveis em Listar Membros e exibe APIs
que requerem permissões adicionais como não disponíveis.

Para obter mais informações, consulte Segurança de acesso do código para aplicativos
ClickOnce.

Listas de preenchimento filtradas


No Visual Basic, as listas de conclusão do IntelliSense têm dois controles de guia
localizados na parte inferior das listas. A guia Comum, que é selecionada por padrão,
exibe itens que são usados com maior frequência para completar a instrução que você
está escrevendo. A guia Todos exibe todos os itens disponíveis para preenchimento
automático, incluindo aqueles que também estão na guia Comum.

Conteúdo relacionado
Usar o IntelliSense
Opções, Editor de Texto, C#, Avançado
Artigo • 13/01/2024

Use a página de opções Avançado para modificar as configurações de formatação do


editor, de refatoração de código e de comentários da documentação XML para C#. Para
acessar essa página de opções, escolha Ferramentas>Opções e, em seguida, Editor de
Texto>C#>Avançado.

7 Observação

É possível que nem todas as opções estejam listadas aqui.

Análise
Executar análise de código em segundo plano para...

Escolha uma das opções a seguir.

ノ Expandir a tabela

Opção descrição

Nenhum Todos os analisadores e correções de código correspondentes estão


desabilitados.

O diagnóstico do compilador e as correções de código


correspondentes estão habilitados em todos os documentos abertos.

Documento atual Todos os analisadores são executados apenas no documento ativo no


(padrão) momento.

Os diagnósticos do compilador estão habilitado em todos os


documentos abertos.

Documentos Todos os analisadores e diagnósticos do compilador estão habilitado


abertos em todos os documentos abertos.

Solução inteira Todos os analisadores e diagnósticos do compilador estão habilitados


em todos os documentos da solução, estejam eles abertos ou
fechados.

Usando diretivas
Colocar as diretivas “System” primeiro ao classificar os usos

Quando selecionado, o comando Remover e classificar usos no menu de clique


com o botão direito do mouse classifica as diretivas using e coloca os namespaces
"System" no topo da lista.

Antes da classificação:

C#

using AutoMapper;
using FluentValidation;
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json;
using System;

Após a classificação:

C#

using System;
using System.Collections.Generic;
using System.Linq;
using AutoMapper;
using FluentValidation;
using Newtonsoft.Json;

Separar usando grupos de diretivas

Quando selecionado, o comando Remover e classificar usos no menu de clique


com o botão direito do mouse separa as diretivas using inserindo uma linha vazia
entre os grupos de diretivas que têm o mesmo namespace de raiz.

Antes da classificação:

C#

using AutoMapper;
using FluentValidation;
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json;
using System;

Após a classificação:
C#

using AutoMapper;

using FluentValidation;

using Newtonsoft.Json;

using System;
using System.Collections.Generic;
using System.Linq;

Sugerir usings para tipos nos assemblies do .NET Framework

Sugerir usos para tipos em pacotes NuGet

Quando essas opções estiverem selecionadas, uma Ação Rápida estará disponível
para instalar um pacote NuGet e para adicionar uma diretiva using para tipos não
referenciados.

Adicionar diretivas using ausentes quando colar

Quando essa opção está selecionada, as diretivas using são adicionadas


automaticamente ao código quando você cola um tipo em um arquivo.

Realçar
Realçar referências a símbolo sob o cursor

Quando o cursor é posicionado em um símbolo, ou ao clicar em um símbolo,


todas as instâncias desse símbolo no arquivo de código são realçadas.
Estrutura de tópicos
Entrar no modo de estrutura de tópicos quando os arquivos forem abertos

Quando selecionado, descreve o arquivo de código automaticamente, o que cria


blocos de código recolhíveis. Na primeira vez que um arquivo é aberto, blocos
#regions e blocos de códigos inativos são recolhidos.

Mostrar separadores de linha de procedimento

O editor de texto indica o escopo visual dos procedimentos. Uma linha é


desenhada nos arquivos de origem .cs do seu projeto nos locais listados na tabela
a seguir:

ノ Expandir a tabela

Local no arquivo de origem Exemplo de local da linha


.cs

Após o encerramento de um – No final de uma classe, estrutura, módulo, interface ou


constructo de declaração de enumeração
bloco – Depois de uma propriedade, função ou sub
– Não entre cláusulas get e set em uma propriedade

Depois de um conjunto de – Depois das instruções de importação, antes de uma


constructos de linha única definição de tipo em um arquivo de classe
– Depois de variáveis declaradas em uma classe, antes de
qualquer procedimento

Depois de declarações de linha – Após instruções de importação, instruções de herança,


única (declarações de nível não declarações de variáveis, declarações de eventos,
de bloco) declarações de delegação e instruções de declaração DLL

Guias de estrutura de bloco


Marque essas caixas de seleção para exibir linhas verticais pontilhadas entre chaves ({})
em seu código. Isso permite que você veja facilmente blocos individuais de código para
o seu nível de declaração e construções no nível do código.

Comentários
Gerar comentários da documentação XML para ///
Quando selecionado, insere os elementos XML dos comentários da documentação
XML depois que você digita a introdução de comentário /// . Para obter mais
informações sobre a documentação XML, confira Comentários da documentação
XML (Guia de Programação em C#).

Extrair Método
Não colocar ref nem out no struct personalizado

Desmarque essa caixa de seleção para evitar clonagem potencialmente não


intencional de structs referenciando objetos struct existentes ao extrair uma
expressão em uma chamada de método.

Exemplo
Suponha que as seguintes class e struct existam em seu código:

C#

public struct CustomStruct


{
private int Count;

public int Bump => ++Count;


}

public class CustomClass


{
public void DoIt()
{
CustomStruct cs = new CustomStruct();
int i = 0;

i += cs.Bump; // select this line


}
}

Se a opção "Não colocar ref ou out no struct personalizado" estiver desmarcada, o


recurso "Extrair método" gerará o seguinte:

C#

public class CustomClass


{
public void DoIt()
{
CustomStruct cs = new CustomStruct();
int i = 0;

NewMethod(ref cs, ref i);


}

private static void NewMethod(ref CustomStruct cs, ref int i)


=> i += cs.Bump;
}

Se a opção "Não colocar ref ou out no struct personalizado" estiver marcada, o


recurso "Extrair método" gerará o seguinte:

C#

public class CustomClass


{
public void DoIt()
{
CustomStruct cs = new CustomStruct();
int i = 0;

i = NewMethod(cs, i);
}

private static int NewMethod(CustomStruct cs, int i)


{
i += cs.Bump;
return i;
}
}

Dicas Embutidas
Dicas de Nome de Parâmetro Embutido

Quando selecionadas, inserem dicas de nome de parâmetro literais, conversão de


literais e instanciações de objetos antes de cada argumento em chamadas de
função.
Dicas de tipo embutidas

Quando selecionadas, insere dicas de tipo embutidas para variáveis com tipos
inferidos e tipos de parâmetro lambda.

Margem de herança
Quando selecionada, adiciona ícones às margens que representam as
implementações e substituições do código. Clicar nos ícones de margem de
herança exibirá as opções de herança que você pode selecionar para navegar.

Confira também
Como inserir comentários XML para geração de documentação
Documentar o código com comentários XML (guia do C#)
Definir opções do editor específicas a um idioma
C# IntelliSense
Caixa de diálogo de Opções: Editor de
Texto> C# > Estilo de Código >
Formatação
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página de opções de Formatação e suas subpáginas (Recuo, Novas Linhas,


Espaçamento e Encapsulamento) para definir opções de formatação de código no
editor de código.

Para acessar essa página de opções, escolha Ferramentas>Opções na barra de menus.


Na caixa de diálogo Opções, escolha Editor de Texto>C#>Estilo de
Código>Formatação.

 Dica

As subpáginas Recuo, Novas Linhas, Espaçamento e Quebra Automática exibem


uma janela de visualização na parte inferior que mostra o efeito de cada opção.
Para usar a janela de visualização, selecione uma opção de formatação. A janela de
visualização mostra um exemplo da opção selecionada. Quando você altera uma
configuração selecionando um botão de opção ou marcando uma caixa de seleção,
a janela de visualização é atualizada para mostrar o efeito da nova configuração.

Página Formatação (Geral)

Configurações gerais
Essas configurações afetam quando o editor de códigos aplica opções de formatação ao
código.

Rótulo Descrição

Formatar Quando estiver desmarcada, as opções formatar instrução em ; e formatar


automaticamente bloco em } estarão desabilitadas.
ao digitar
Rótulo Descrição

Formatar instrução Quando selecionada, formata as instruções na conclusão de acordo com as


automaticamente opções de formatação selecionadas para o editor.
em ;

Formatar bloco Quando selecionada, formata blocos de código de acordo com as opções
automaticamente de formatação selecionadas para o editor assim que você conclui o bloco
em } de código.

Formatar Quando selecionada, formata o texto quando Enter é pressionado, de


automaticamente acordo com as opções de formatação selecionadas para o editor.
na devolução

Formatar Quando selecionada, formata o texto que é colado no editor de acordo


automaticamente com as opções de formatação selecionadas para o editor.
ao colar

Página Recuo
As opções de recuo nessa página se aplicam quando o código é formatado
automaticamente. Um exemplo de quando o código é formatado automaticamente é
quando você cola o código no arquivo e a opção Formatar automaticamente ao colar
está selecionada. (A opção Formatar automaticamente ao colar está sob
Formatação>Geral.)

 Dica
Também há opções de recuo na página de opções Editor de Texto>C#>Guias.
Essas opções determinam apenas onde o editor de códigos coloca o cursor quando
você pressiona Enter no final de uma linha.

Página Novas Linhas


Use as opções de novas linhas nesta página para controlar se você quer chaves,
palavras-chave ou expressões apareçam em novas linhas no editor de código.

) Importante

As configurações nesta página podem ser substituídas pelo arquivo .editorconfig.


Para saber mais, consulte Criar configurações de editor personalizado e portátil
com o EditorConfig.
Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, C#, IntelliSense
Artigo • 13/01/2024

Use a página de opções IntelliSense para modificar as configurações que afetam o


comportamento do IntelliSense para C#. Para acessar essa página de opções, escolha
Ferramentas>Opções e, em seguida, Editor de Texto>C#>IntelliSense.

As opções do IntelliSense contém as seguintes seções:

Listas de Conclusão
Mostrar lista de conclusão depois que um caractere for digitado*

Quando essa opção estiver selecionada, o IntelliSense exibirá automaticamente a


lista de preenchimento quando você começar a digitar. Quando essa opção não
estiver selecionada, o preenchimento do IntelliSense ainda estará disponível no
menu IntelliSense ou pressionando Ctrl+Espaço.

Mostrar lista de conclusão depois que um caractere for excluído

Realçar partes correspondentes de itens da lista de conclusão

Mostrar itens de filtro de conclusão

Comportamento de snippets
Nunca incluir snippets

Quando essa opção estiver selecionada, o IntelliSense nunca adicionará aliases de


snippets de código C# à lista de conclusão.

Sempre incluir snippets

Quando essa opção estiver selecionada, o IntelliSense adicionará aliases de


snippets de código C# à lista de preenchimento. Caso o alias do snippet de código
seja igual a uma palavra-chave, por exemplo, classe, a palavra-chave será
substituída pelo atalho. Para saber mais, consulte Snippets de código C#.

Incluir snippets quando ?-Tab for digitado após um identificador

Quando essa opção estiver selecionada, o IntelliSense adicionará aliases de


snippets de código C# à lista de conclusão quando ?+Tab for pressionado após
um identificador
Comportamento da tecla Enter
Nunca adicionar uma nova linha ao pressionar Enter

Especifica que uma nova linha nunca será adicionada automaticamente depois de
selecionar um item na lista de conclusão e pressionar Enter.

Apenas adicionar uma nova linha ao pressionar Enter após o final de uma palavra
totalmente digitada

Especifica que, se você digitar todos os caracteres de uma entrada na lista de


conclusão e, em seguida, pressionar Enter, uma nova linha será adicionada
automaticamente e o cursor será movido para a nova linha.

Por exemplo, se você digitar else e, em seguida, pressionar Enter, o seguinte será
exibido no editor:

else

| (local do cursor)

No entanto, se você digitar apenas el e, em seguida, pressionar Enter, o seguinte


será exibido no editor:

else| (local do cursor)

Sempre adicionar uma nova linha ao pressionar Enter

Especifica que, se você digitar qualquer um dos caracteres de uma entrada na lista
de conclusão e depois pressionar Enter, uma nova linha será adicionada
automaticamente e o cursor passará para a nova linha.

Mostrar sugestões de nome


Executa a conclusão automática do nome de objeto dos membros que você selecionou
recentemente.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Usando o IntelliSense
Opções, Editor de Texto, C/C++,
Avançado
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Ao alterar essas opções, você pode alterar o comportamento relacionado ao IntelliSense


e ao banco de dados de navegação quando estiver programando em C ou C++.

Para acessar essa página, na caixa de diálogo Opções, no painel esquerdo, expanda
Editor de Texto, expanda C/C++ e escolha Avançado.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio nas instruções a seguir. A
edição do Visual Studio que você possui e as configurações que você usa
determinam esses elementos. Consulte Personalizar o IDE do Visual Studio.

Preenchimento de chaves
Adicionar ponto e vírgula para tipos

Os sinais de ponto-e-vírgula serão inseridos após fechar chaves para tipos.

Parênteses completos em literais de cadeia de caracteres brutos

Se um parêntese aberto for digitado em um literal de cadeia de caracteres bruta, ele


será concluído com um parêntese de fechamento.

Concluir comentários em várias linhas

Os comentários em várias linhas (comentários que começam com /* ) serão concluídos.

Fallback do banco de dados de navegação


A localização de fallback é onde os arquivos de suporte SDF e IntelliSense (por exemplo,
iPCH) são colocados quando a localização principal (mesmo diretório que a solução)
não é usado. Essa situação pode ocorrer se o usuário não tem as permissões para gravar
no diretório da solução ou o diretório da solução está em um dispositivo lento. A
localização de fallback padrão é no diretório temporário do usuário.

Sempre Utilizar Localização de Fallback

Indica que os arquivos do IntelliSense e do banco de dados de navegação de código


devem sempre ser armazenados em uma pasta especificada como “Localização de
Fallback”, não próximo ao arquivo .sln. O IDE nunca tentará colocar os arquivos SDF ou
iPCH próximos ao diretório da solução e sempre tentará usar a localização de fallback.

Não Avisar Se Localização De Fallback É Utilizada

Você não será informado ou avisado se a opção ‘Localização de Fallback’ for usada.
Normalmente, o IDE informará se precisar usar a localização de fallback. Esta opção
desativa esse aviso.

Localização de Fallback

Esse valor é usado como uma localização secundária para armazenar arquivos do
IntelliSense ou banco de dados de navegação de código. Por padrão, o diretório
temporário é o local de fallback. O IDE criará um subdiretório no caminho especificado
(ou no diretório temporário) que inclui o nome da solução junto com um hash do
caminho completo para a solução, o que evita problemas com nomes de solução serem
idênticos.

Navegação
Você nunca deve escolher essas opções, exceto no caso raro em que uma solução é tão
grande que a atividade de banco de dados consome uma quantidade inaceitável de
recursos do sistema.

Desabilitar Banco de Dados

Qualquer uso do banco de dados de navegação de código (SDF), todas as outras


opções de Navegação e todos os recursos do IntelliSense exceto por #include Auto
Complete são desabilitados.

Desabilitar Atualizações de Banco de Dados

O banco de dados será aberto no modo somente leitura e não serão realizadas
atualizações conforme os arquivos forem editados. A maioria dos recursos ainda
funcionará. No entanto, como são feitas edições, os dados ficarão obsoletos e você
obterá resultados incorretos.
Desabilitar Auto Atualização de Banco de Dados

O banco de dados de navegação de origem não será atualizado automaticamente


quando os arquivos de origem são modificados. No entanto, se você abrir o
Gerenciador de Soluções, abra o menu de atalho do projeto e escolha Examinar
Novamente a Solução, todos os arquivos desatualizados serão verificados e o banco de
dados será atualizado.

Desabilitar Arquivos Implícitos

O banco de dados de navegação de código não coleta dados para arquivos que não
estiverem especificados em um projeto. Um projeto contém arquivos de origem e
arquivos de cabeçalho que são especificados explicitamente. Os arquivos implícitos são
incluídos por arquivos explícitos (por exemplo, afxwin.h, windows.h e atlbase.h).
Normalmente, o sistema localiza esses arquivos e também os indexa para vários
recursos de navegação (incluindo Navegar Até). Se você escolher essa opção, esses
arquivos não serão indexados e alguns recursos não estarão disponíveis para eles. Se
você escolher essa opção, as opções "Desabilitar Limpeza Implícita" e "Desabilitar
Dependências Externas" também serão escolhidas implicitamente.

Desabilitar Limpeza Implícita

O banco de dados de navegação de código não limpa arquivos implícitos que não são
mais referenciados. Essa opção impede que arquivos implícitos sejam removidos do
banco de dados quando não são mais usados. Por exemplo, se você adicionar um a
diretiva #include que referencia mapi.h a um dos seus arquivos de origem, mapi.h será
encontrado e indexado. Se você, em seguida, remover o #include e o arquivo não for
referenciado em outro lugar, as informações sobre ele eventualmente serão removidas a
menos que você escolha essa opção. (Consulte a opção Verificar novamente intervalo
de solução). Essa opção é ignorada quando você verifica novamente a solução de modo
explícito.

Desabilitar Pastas de Dependências Externas

A pasta de Dependências Externas para cada projeto não é criada ou atualizada. No


Gerenciador de Soluções, cada projeto contém uma pasta de Dependências Externas,
que contém todos os arquivos implícitos daquele projeto. Se você escolher essa opção,
essa pasta não desaparece.

Recriar Banco de Dados

Recrie o banco de dados de navegação de código do nada na próxima vez em que a


solução for carregada. Se você escolher essa opção, o arquivo de banco de dados SDF
será excluído na próxima vez em que você carregar a solução, fazendo assim com que o
banco de dados seja recriado e todos os arquivos sejam indexados.

Verificar Novamente Intervalo da Solução

Um trabalho do tipo 'Examinar Novamente a Solução Agora' será agendado para o


intervalo que você especificar. Você deve especificar entre 0 e 5000 minutos. O valor
padrão é 60 minutos. Enquanto a solução é verificada novamente, os carimbos de
data/hora do arquivo são verificados para determinar se o arquivo foi alterado fora do
IDE. (As alterações feitas no IDE são controladas automaticamente e os arquivos são
atualizados.) Os arquivos incluídos implicitamente são verificados para determinar se
todos eles ainda são referenciados.

Desabilitar a verificação atualizada da navegação

Desabilita a espera para que o banco de dados de navegação de código esteja


atualizado ao executar operações de navegação.

Desabilitar seleção de item atual

Desabilita a visualização do elemento de código selecionado na janela da ferramenta


Propriedades e em outros lugares.

Exibir regiões ignoradas para arquivos externos

Inclua regiões ignoradas de arquivos externos ao exibir erros de banco de dados de


navegação.

Análise de Código
Desabilitar a Experiência de Análise de Código do C++

Desabilita a Experiência de Análise de Código do C++ : o que dá suporte a rabiscos de


análise de código, análise de código em segundo plano e outros recursos para os
arquivos do C++.

Desabilitar a análise de código em segundo plano

Desabilita a execução da Análise de Código do C++ em segundo plano quando os


arquivos forem abertos ou salvos.

Desabilitar os rabiscos de análise de código

Desabilita os rabiscos dos avisos da Análise de Código do C++. Os erros continuarão a


ser mostrados na lista de erros. Isso afeta apenas as janelas recém-abertas.
Diagnostic Logging
Essas opções são fornecidas no caso de a Microsoft solicitar a coleta de informações
avançadas para diagnosticar um problema. As informações de log não são úteis para os
usuários e é recomendável deixá-las desabilitadas.

Habilitar Registro em Log

Habilita o registro em log do diagnóstico para a janela de saída.

Nível de Log

Defina o detalhamento do log, de 0 a 5.

Filtro de Log

Filtra os tipos de evento exibidos usando uma bitmask.

Defina usando uma soma de qualquer uma das seguintes opções:

0 – Nenhum

1 – Geral

2 – Ocioso

4 – WorkItem

8 – IntelliSense

16 – ACPerf

32 – ClassView

IntelliSense
Informações Rápidas Automático

Habilita as dicas de ferramenta de QuickInfo quando você move o ponteiro sobre o


texto.

Desabilitar IntelliSense

Desabilita todos os recursos do IntelliSense. O IDE não cria processos VCPkgSrv.exe para
atender a solicitações do IntelliSense e nenhum recurso do IntelliSense funcionará
(QuickInfo, Lista de Membros, Preenchimento Automático, Ajuda de Parâmetro). A
colorização semântica e o realce de referência também são desabilitados. Essa opção
não desabilita recursos de navegação que dependem exclusivamente do banco de
dados (incluindo a Barra de Navegação, ClassView e janela Propriedade).

Desabilitar Auto Atualização

A atualização do IntelliSense será adiada até uma solicitação real para o IntelliSense ser
feita. Esse atraso pode resultar em um tempo de execução maior da primeira operação
do IntelliSense em um arquivo, mas pode ser útil definir esta opção em computadores
muito lentos ou com recursos limitados. Se escolher essa opção, você também
escolherá as opções “Desabilitar Relatório de Erros” e “Desabilitar Rabiscos”
implicitamente.

Desabilitar Relatório de Erros

Desabilita o relatório de erros do IntelliSense através de rabiscos e da janela Lista de


Erros. Também desabilita a análise em segundo plano que está associada ao relatório de
erros. Se escolher essa opção, você também escolherá a opção “Desabilitar Rabiscos”
implicitamente.

Desabilitar Rabiscos

Desabilita os rabiscos de erro do IntelliSense. Os “rabiscos” vermelhos não serão


exibidos na janela do editor, mas o erro ainda aparecerá na janela Lista de Erros.

Ajustar automaticamente o máximo de unidades de tradução armazenadas em cache

O número máximo de unidades de tradução que serão mantidas ativas a qualquer


momento para solicitações de IntelliSense, com base na memória RAM disponível no
sistema.

Para obter mais informações sobre as unidades de translação, consulte Fases de


translação.

Desabilitar Auto Complementação #include

Desabilita o preenchimento automático de instruções #include .

Usar barra “/” em #include Auto Complete

Dispara o preenchimento automático de instruções #include quando "/" é usado. O


delimitador padrão é a barra invertida. O compilador pode aceitar qualquer um, então
use esta opção para especificar o que sua base de código usa.

Desabilitar Lista de Membros Agressivos


A lista de membros não aparece enquanto você digita o nome de um tipo ou variável. A
lista é exibida somente depois que você digita um dos caracteres de confirmação,
conforme definido na opção Caracteres de Confirmação de Lista de Membros.

Desabilitar Palavras-Chave da Lista de Membros

Palavras-chave da linguagem como void , class e switch não aparecem em sugestões


de lista de membros.

Desabilitar Snippets de Código da Lista de Membros

Os snippets de código não aparecem em sugestões de lista de membros.

Modo de Filtro da Lista de Membros

Define o tipo de algoritmo de correspondência. Difuso localiza as correspondências


mais possíveis porque usa um algoritmo semelhante a um verificador ortográfico para
localizar correspondências semelhantes, mas não idênticas. Filtragem inteligente
corresponde subcadeias de caracteres, mesmo que não estejam no início de uma
palavra. Prefixo corresponde apenas em subcadeias de caracteres idênticas que
começam no início da palavra.

Desabilitar Colorização Semântica

Desativa toda a colorização de código, exceto palavras-chave da linguagem, cadeias de


caracteres e comentários.

Caracteres de Confirmação de Lista de Membros

Especifica os caracteres que fazem com que a sugestão Lista de Membros atualmente
realçada a ser confirmada. Você pode adicionar ou remover caracteres desta lista.

Confirmação de Lista de Membro Inteligente

Adiciona uma linha quando você escolhe a tecla Enter no final de uma palavra
totalmente digitada.

Confirmação agressiva da lista de membros

Os 'Caracteres de Confirmação da Lista de Membros' estão ativos durante a Lista de


Membros 'invocada agressivamente'.

Usar a Listagem Agressiva de Membros na Lista Automática de Membros

Quando estiver habilitada e for mostrada a Lista automática de membros, não conclua
usando caracteres de Confirmação de Lista de Membros.
Usar Tab para confirmar na Listagem Agressiva de Membros

Quando a Listagem Agressiva de Membros estiver habilitada e for mostrada, trate a


tecla Tab como um caractere de Confirmação de Lista de Membros.

Usar Tab para inserir um snippet

Quando habilitada, a palavra-chave snippet é expandida quando a tecla Tab é


pressionada (a menos que a tecla de atalho seja atribuída a
Edit.InvokeSnippetFromShortcut ) independentemente de a lista de membros ser
mostrada.

Desabilitar módulos

Desabilitar vários recursos do IDE de Módulos do C++20, como a compilação


automática dos módulos necessários para o IntelliSense.

Filtro de Lista de Membros inacessível

Não exiba itens inacessíveis nas Listas de Membros.

Desabilitar o IntelliSense nas plataformas inativas

Desabilite todos os recursos do IntelliSense nas plataformas inativas em pastas e


Projetos de Ativos Compartilhados.

Habilitar a lista de membros de ponto para seta

Substitui '.' por '->' quando aplicável na lista de membros.

Desabilitar o IntelliSense HLSL

Desabilite todos os recursos do IntelliSense HLSL.

Desabilitar cabeçalho pré-compilado automático

O cabeçalho pré-compilado automático pode acelerar algumas operações do


IntelliSense à custa de um cache de disco rígido por solução.

Cota automática de cache de cabeçalho pré-compilado

O tamanho máximo do cache por solução em megabytes; o uso real pode flutuar em
torno desse valor.

Limite inativo do IntelliSense da Plataforma

Número máximo de plataformas inativas que serão processadas para o IntelliSense. O


valor precisa estar entre 1 e 16.
Habilitar IntelliSense de modelo

Quando o cursor está ativo no corpo de um modelo, exiba uma barra no editor para
configurar o IntelliSense do modelo.

Habilitar o Link de Ajuda em Informações Rápidas

Habilita o link para pesquisas online na dica da ferramenta Informações Rápidas.

Usar a Pesquisa na web no Link de Ajuda das Informações Rápidas

Inicia uma pesquisa na web com o provedor de pesquisa especificado como a ação para
pesquisas online na dica da ferramenta Informações Rápidas. Quando desabilitado, o
recurso usa a Ajuda F1.

Habilitar o Link de Ajuda nas Dicas da Ferramenta de Erro do IntelliSense

Habilita o link para pesquisas online nas dicas da ferramenta de erro do IntelliSense.

Provedor de Pesquisa

URL usada para encontrar ajuda online em caso de erros, {0} é substituído pelo erro

IntelliSense e navegação para arquivos que não


são de projeto
Habilitar arquivo único avançado

Habilita o IntelliSense, a navegação e outros recursos para arquivos autônomos que não
fazem parte de um projeto existente.

Habilitar os rabiscos do IntelliSense

Habilita rabiscos nos arquivos autônomos no modo Arquivo Único Avançado.

Mostrar erros do IntelliSense na lista de erros

Controla se os erros do IntelliSense dos arquivos autônomos são exibidos na Lista de


Erros.

Suspender novos arquivos durante a depuração

Suspender a habilitação do IntelliSense nos arquivos recém-abertos durante a


depuração.
Refatoração
Desabilitar a criação de lâmpadas de declaração/definição

Não ofereça sugestões para criar uma declaração ou definição ausente em uma função.

Referências
Desabilitar Resolução

Por questões de desempenho, ‘Localizar Todas as Referências’ mostra os resultados


brutos da pesquisa textual por padrão em vez de usar o IntelliSense para verificar cada
candidato. Você pode desmarcar essa caixa de seleção para obter resultados mais
precisos em todas as operações de pesquisa. Para filtrar por pesquisa, abra o menu de
atalho para a lista de resultados e, em seguida, escolha "Resolver Resultados".

Ocultar Não Confirmados

Oculte itens não confirmados nos resultados de ‘Localizar Todas as Referências’. Se


remover definição da opção "Desabilitar Resolução", você poderá usar essa alternativa
para ocultar itens não confirmados nos resultados.

Desabilitar Realce de Referência

Por padrão, quando você seleciona um texto, todas as instâncias do mesmo texto são
realçadas automaticamente no documento atual. Você pode desabilitar esse recurso
definindo Desabilitar Realce de Referência como True.

Editor de Texto
Habilitar a opção de colocar entre chaves

Se habilitado, você poderá colocar o texto selecionado entre chaves digitando ‘{’ no
editor de texto.

Habilitar a opção de colocar entre parênteses

Se habilitado, você poderá colocar o texto selecionado entre parênteses digitando ‘(’ no
editor de texto.

Confira também
Configurando opções do editor específicas a um idioma
Opções, Editor de Texto, C/C++,
Experimental
Artigo • 13/01/2024

Ao alterar essas opções, você pode alterar o comportamento relacionado ao IntelliSense


e ao banco de dados de navegação quando estiver programando em C ou C++. Essas
funcionalidades são realmente experimentais e podem ser modificadas ou removidas do
Visual Studio em uma versão futura.

Para acessar esta página de propriedades, pressione Ctrl+Q para ativar a caixa de
pesquisa e, em seguida, digite experimental. A Pesquisa encontra a página após as
primeiras letras. Acesse-a também escolhendo Ferramentas>Opções e expandindo
Editor de Texto, em seguida, C/C++ e escolhendo Experimental.

Essas funcionalidades estão disponíveis em uma instalação do Visual Studio.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio nas instruções a seguir. A
edição do Visual Studio que você possui e as configurações que você usa
determinam esses elementos. Consulte Personalizar o IDE do Visual Studio.

Habilitar IntelliSense Preditivo


O IntelliSense Preditivo limita o número de resultados exibidos na lista suspensa do
IntelliSense para que você veja apenas os resultados relevantes no contexto. Por
exemplo, se você digitar int x = e invocar a lista suspensa do IntelliSense, verá apenas
inteiros ou funções que retornam inteiros. O IntelliSense Preditivo está desativado por
padrão.

Confira também
Configurando opções do editor específicas a um idioma
Refatoração em C++ (VC Blog)
Opções, Editor de Texto, C/C++,
Formatação
Artigo • 15/01/2024

Use essas páginas de propriedades para alterar o comportamento padrão do editor de


código ao programar em C ou C++.

Para acessar essa página, na caixa de diálogo Opções, no painel esquerdo, expanda
Editor de Texto, expanda C/C++ e clique em Formatação.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio nas instruções a seguir. A
edição do Visual Studio que você possui e as configurações que você usa
determinam esses elementos. Para obter mais informações, confira Personalizar o
IDE do Visual Studio.

Página Geral
Esta página contém as opções de formatação de instruções e de blocos conforme você
os digita.
A página também tem opções para configurar o suporte para o ClangFormat versão
5.0. O ClangFormat é um utilitário que facilita a definição do estilo e a formatação do
código com base em um conjunto de regras que pode ser configurado em um arquivo
.clang-format ou _clang-format.

Configurando as opções de ClangFormat


O suporte a ClangFormat está habilitado por padrão. Você pode escolher quais dessas
convenções de formatação comuns serão aplicadas a todos os seus projetos: LLVM,
Google, Chromium, Mozilla ou WebKit. Você também pode criar um arquivo .clang-
format ou _clang-format de definição de formato personalizado. Quando esse arquivo
está presente em uma pasta de projeto, o Visual Studio o usa para formatar todos os
arquivos de código-fonte nessa pasta e em suas subpastas.

Por padrão, o Visual Studio executa o clang-format.exe em segundo plano e aplica a


formatação à medida que você digita. Você também pode especificar que ele seja
executado somente para comandos de formatação invocados manualmente Formatar
Documento (Ctrl + K, Ctrl + D) ou Formatar Seleção (Ctrl + K, Ctrl + F).

Páginas de Recuo, Novas Linhas, Disposição de


Espaçamento
Essas páginas habilitam várias personalizações de formatação, mas que são ignoradas
quando ClangFormat está habilitado.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Usando o IntelliSense
Opções, Editor de Texto, C/C++,
Exibição
Artigo • 13/01/2024

Use essas páginas de propriedades para alterar o comportamento padrão do editor de


código ao programar em C ou C++.

Para acessar essa página de propriedades, escolha Ferramentas>Opções e expanda


Editor de Texto e C/C++ e, em seguida, escolha Exibir.

Linhas ondulantes de código


É possível habilitar ou desabilitar as seguintes configurações para gerenciar a maneira
como o editor de texto trata as linhas ondulantes de código para C e C++:

Macros em regiões de navegação ignorada – define como realçar macros que


estão dentro de regiões ignoradas no banco de dados de navegação, como as
macros cujas definições incluem chaves.

Macros conversíveis em constexpr – define como realçar definições de macro que


podem ser convertidas em definições do constexpr .

Código inativo
Mostrar blocos inativos – os blocos inativos do pré-processador são coloridos de
maneira diferente.

Desabilitar opacidade de cor inativa – uma cor sólida, em vez de opacidade, é


usada para blocos de códigos inativos.

Percentual de opacidade de código inativo – o percentual de opacidade para


blocos de códigos inativos.

Sugestões de Correção de Erros do IntelliSense


Habilitar Sugestões de Correção de Erros do IntelliSense – habilite as correções
sugeridas para erros do IntelliSense.

Máximo de Threads de Sugestões de Correção de Erros do IntelliSense – o


número máximo de threads simultâneos a serem usados para pesquisar sugestões
de correção de erros do IntelliSense.

Máximo de Erros na Correção de Erros do IntelliSense – o número máximo de


erros do IntelliSense para procurar correções.

Diversos
Enumerar tarefas de comentário – Examinar arquivos de software livre para tokens
do VS e relate-os na janela Lista de Tarefas.

Realçar tokens correspondentes – Realçar chaves de fechamento ou a sintaxe que


corresponde ao local em que o cursor está posicionado.

Esquema de Cores – vários esquemas de cores padrão para as cores


personalizáveis específicas do C/C++.

Estrutura de tópicos
Habilitar estrutura de tópicos – Entrar no modo de estrutura de tópicos quando
um arquivo é aberto.

Estruturar Regiões Pragma – Estruturar automaticamente blocos de regiões


#pragma .

Estruturar Blocos de Instrução – Estruturar automaticamente blocos de instrução.

Confira também
Configurando opções do editor específicas a um idioma
Refatoração em C++ (VC Blog)
Opções, Editor de Texto, F#, Avançado
Artigo • 13/01/2024

Use a página de opções Avançado para modificar algumas configurações do editor de


texto para F#. Para acessar essa página de opções, escolha Ferramentas>Opções e, em
seguida, Editor de Texto>F#>Avançado.

Guias de estrutura de bloco


Quando essa opção estiver selecionada, as linhas verticais serão exibidas no editor,
alinhadas aos blocos de código estruturado, o que permite que você identifique
facilmente os blocos individuais de código.

Estrutura de tópicos
Marque essa caixa de seleção para colocar o arquivo de código automaticamente em
estrutura de tópicos, o que cria blocos de código recolhíveis.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, Todas as Linguagens, Guias
Opções, Editor de Texto > F# >
Correções de Código
Artigo • 13/01/2024

Use a página de opções Correções de Código para especificar as configurações que


podem ajudar a identificar erros de código e oferecer soluções. Para acessar essa página
de opções, escolha Ferramentas>Opções e, em seguida, Editor de Texto>F#>Correções
de Código.

Correções de Código
Simplificar nomes (remover qualificadores desnecessários)

Se essa caixa de seleção estiver marcada, os nomes totalmente qualificados serão


simplificados quando as qualificações não forem necessárias, por exemplo, para
um membro de um namespace usado com frequência.

Sempre colocar instruções abertas no nível superior

Se essa caixa de seleção estiver marcada e você digitar uma instrução open no
código, ela será colocada no nível superior.

Remover instruções abertas não utilizadas

Se esta caixa de controle estiver selecionada, os documentos serão analisados ​para


localizar instruções open não utilizadas e será exibida uma lâmpada de Ação
Rápida com uma ação para remover todas as instruções open não utilizadas.

Analisar e sugerir correções para valores não usados

Se essa caixa de seleção for selecionada, a ferramenta reconhecerá um valor que


não está sendo usado no código. Depois, se você passar o mouse sobre o valor
não usado, ele recomendará maneiras de uso do valor.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Localizar alterações de código e outro histórico com o CodeLens
Opções, Editor de texto,F#, CodeLens
Artigo • 15/01/2024

Use a página de opções CodeLens para modificar as configurações de CodeLens do


editor de texto para F#. Para acessar essa página de opções, escolha
Ferramentas>Opções e, em seguida, Editor de Texto>F#>CodeLens.

CodeLens
Habilitar CodeLens (Experimental)

Quando essa opção estiver selecionada, anotações interativas aparecerão no


código e permitirão a localização fácil de referências e alterações em seu código,
bugs vinculados, itens de trabalho, revisões de código e testes de unidade.

Usar cores em anotações

Marque essa caixa de seleção para exibir as anotações do CodeLens em cores para
diferenciar facilmente os itens reportados pelo CodeLens.

Mostrar anotações à direita, em vez de acima da linha

Por padrão, as anotações de CodeLens aparecem sobre uma linha de código.


Marque essa caixa de seleção para que as anotações apareçam à direita do código
em vez de acima dela.

Prefixo de anotação

Você pode alterar o prefixo padrão usado nas anotações.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Localizar alterações de código e outro histórico com o CodeLens
Opções, Editor de Texto, F#, IntelliSense
Artigo • 15/01/2024

Use a página de opções IntelliSense para modificar algumas configurações do editor de


texto para F#. Para acessar essa página de opções, escolha Ferramentas>Opções e, em
seguida, Editor de Texto>F#>IntelliSense.

Listas de Conclusão
Mostrar lista de preenchimento depois que um caractere é digitado

Quando essa opção estiver selecionada, o IntelliSense exibirá automaticamente a


lista de preenchimento quando você começar a digitar. Se você não selecionar
essa opção, o preenchimento do IntelliSense ainda ficará disponível no menu
IntelliSense ou pressionando Ctrl + Espaço.

Mostrar lista de conclusão depois que um caractere for excluído

Quando essa opção estiver selecionada, o IntelliSense exibirá automaticamente a


lista de conclusão relevante quando você começar a digitar caracteres em seu
código.

Mostrar símbolos em namespaces não abertos

Quando essa opção estiver selecionada, o IntelliSense exibirá automaticamente a


lista de conclusão quando você começar a digitar e incluir itens de namespaces
não abertos.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Usando o IntelliSense
Opções, Editor de Texto, HTML (Web
Forms), Formatação
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página de opções de Formatação para definir opções do projeto em HTML para
formatação de códigos no Editor de Códigos. Para acessar essa página, na barra de
menus, escolha Ferramentas>Opções e expanda Editor de Texto>HTML (Web
Forms>Formatação.

Uso de maiúsculas
Quando essas opções são selecionadas, a exibição e editores XML de origem aplicam
um formato padrão dos casos os nomes de elementos e atributos quando os elementos
são criados durante o primeiro e formatação automática. As configurações de Aplicar
Formatação Automática determinam o horário da reformatação automática.

2 Aviso

XML diferencia maiúsculas de minúsculas. Definir casos padrão pode afetar


analisadores XML.

Lista de elementos de interface do usuário


Marca de servidor, Atributos do servidor

Essas opções especificam como a marcação para controles de servidor Web é


capitalizada.

Opção Resultado

Como inserido A capitalização do elemento fica exatamente como foi inserida.

Maiúsculas Nomes de elementos são reformatados para maiúsculas.

Letras Nomes de elementos são reformatados para minúsculas.


minúsculas

Definição do A capitalização do elemento é determinada pelo modo como o elemento é


assembly definido na classe de tipo correspondente.
Marca de cliente, Atributos do cliente

Essas opções especificam se a formatação automática altera os nomes dos atributos e


das propriedades HTML para maiúsculas ou minúsculas, ou se os mantêm como foram
inseridos.

Opção Resultado

Como inserido A capitalização do atributo fica exatamente como foi inserida.

Maiúsculas Os nomes de atributo são reformatados para maiúsculas.

Letras minúsculas Os nomes de atributo são reformatados para minúsculas.

Opções de formatação automática


Essas opções fazem com que o Editor de exibição do código-fonte adicione ou remova
quebras de linha física durante a formatação automática. Você também pode especificar
se o editor adiciona aspas aos atributos.

7 Observação

Essas configurações não alteram o espaço em branco na marcação XML.

Lista de elementos de interface do usuário


Inserir aspas ao valor do atributo ao digitar

Quando essa opção está selecionada, o editor coloca automaticamente aspas ao


redor dos atributos quando você está digitando (por exemplo: ID="Select1").
Desmarque esta opção se você preferir manualmente inserir aspas na marcação.

7 Observação

Se esta opção está selecionada, qualquer aspas existente - as marcas na


marcação são retidas; aspas são removidas nunca.

Inserir aspas ao valor do atributo ao formatar

Quando essa opção está selecionada, a formatação automática adiciona aspas ao


redor de valores de atributo (por exemplo: ID="Select1").
7 Observação

Se esta opção está selecionada, qualquer aspas existente - as marcas na


marcação são retidas.

Inserir automaticamente a marca de fechamento

Quando essa opção está selecionada, o editor cria automaticamente uma marca de
fechamento (por exemplo </b>) quando você fecha a marca de abertura.

Quebra automática de marca


Essas opções determinam se o editor quebrará marcas em linhas se elas excederem um
certo tamanho.

Lista de elementos de interface do usuário


Quebrar marcas ao exceder o comprimento especificado

Quando esta opção está selecionada, o editor quebrará marcas nas linhas se a
marca exceder o comprimento especificado na caixa de texto Comprimento. Essa
ação ocorre apenas ao formatar a marca, não ao digitar uma nova marca.

7 Observação

O valor que você especifica é usado como um valor mínimo. O editor não
divide atributos individuais.

Comprimento

Especifica o número de caracteres para exibir em uma linha antes que envolva.
Essa caixa de entrada fica desabilitada a menos que a caixa Quebrar marcas ao
exceder o comprimento especificado esteja marcada.

Opções Específicas à Marca

Exibe a caixa de diálogo Opções Específicas à Marca, que permite a definição de


opções de formatação para marcas individuais ou grupos de marcas.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, HTML (Web
Forms), Diversos
Artigo • 15/01/2024

Use a página de opções Diversos para definir as preferências de como o editor de HTML
lida com elementos colados na página. Para acessar essa página, na barra de menus,
escolha Ferramentas>Opções e expanda Editor de Texto>HTML (Web
Forms>Diversos.

Opções de HTML diversas


Formatar HTML ao colar

Quando essa caixa de seleção está marcada, o editor formata novamente os


elementos colados na página usando as regras de formatação definidas
atualmente. Se essa caixa de seleção não estiver marcada, o editor colará os
elementos usando a formatação exata do elemento original.

Exigir "<" para disparar janela de conclusão de marca

Quando essa caixa de seleção estiver marcada, a janela de conclusão de marca


será exibida quando você digitar o caractere menor que ("<").

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, HTML (Web
Forms), Validação
Artigo • 13/01/2024

Use a página de opções Validação para definir preferências de como o editor de HTML
verifica a sintaxe de marcação HTML em seu documento. Para acessar essa página, na
barra de menus, escolha Ferramentas>Opções e expanda Editor de Texto>HTML (Web
Forms>Validação.

Validação
Use o doctype para detecção do esquema de validação

Um esquema determina quais elementos, atributos e capitalização são válidos


nesse esquema. Também determina as marcas e os atributos que estarão
disponíveis no IntelliSense.

Selecione esta opção se você deseja que o Visual Studio use o conteúdo da
declaração <!DOCTYPE> da página e o elemento html para determinar o
esquema. Por exemplo, se você selecionar esta opção e a página contiver a
declaração <!DOCTYPE html> , o Visual Studio usará o esquema HTML5. No entanto,
se a marca html tiver um atributo xmlns, como <html
xmlns="http://www.w3.org/1999/xhtml"> , o Visual Studio usará o esquema XHTML5.

Destino quando nenhum doctype for encontrado

Escolha o esquema para validação quando não houver uma declaração


<!DOCTYPE> na página.

Mostrar erros

Marque a caixa de seleção para habilitar a validação. Se a caixa de seleção não


estiver marcada, o editor não marcará erros de validação.

As outras caixas de seleção permitem que você ajuste a validação especificando


tipos de erro individuais que você deseja que o editor marque.

7 Observação

Alguns esquemas não oferecem opções marcar tipos individuais de erros.


Por exemplo, se você escolher XHTML 1.1 como o esquema de destino,
todas as caixas de seleção de opção serão desabilitadas. Nesse caso, todos
os tipos de erros serão marcados.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Caixa de diálogo Opções: Editor de
Texto > JavaScript/TypeScript >
Validação de Código
Artigo • 13/01/2024

Use a página Validação de Código da caixa de diálogo Opções para modificar as


configurações que afetam a maneira como o JavaScript trata os erros. É possível acessar
a página Validação de Código escolhendo Ferramentas>Opções na barra de menus e
expandindo Editor de Texto>JavaScript/TypeScript>Validação de Código.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

A página Validação de código contém as seguintes seções:

Erros do JavaScript
Você pode usar essas opções para definir preferências de como o editor JavaScript
valida a sintaxe no seu documento.

Lista de elementos de interface do usuário


Habilitar erros de JavaScript

Quando definido como True, o editor de código JavaScript mostra erros para arquivos
JavaScript e JSX. Os erros aparecem na Lista de Erros com um prefixo (JS). Exibir esses
erros será útil se você estiver trabalhando com código que não escreveu e não
pretender corrigir erros de sintaxe.

Mostrar erros como avisos

Quando definido como True, os erros JavaScript são mostrados como avisos, em vez de
erros na Lista de Erros.
Confira também
JavaScript IntelliSense
Caixa de diálogo Opções: Editor de
Texto > JavaScript > Formatação
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Formatação da caixa de diálogo Opções para definir opções para formatar
código no Editor de Código. Para acessar essa página, na barra de menus, escolha
Ferramentas>Opções e expanda Editor de Texto>JavaScript/TypeScript>Formatação.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Formatação automática
Essas opções determinam quando ocorre a formatação na exibição Fonte.

Lista de elementos de interface do usuário

Opção Descrição

Formatar Quando essa opção é selecionada, o Editor de Código formata automaticamente a


linha linha quando você escolhe a tecla Enter.
completa ao
pressionar
Enter

Formatar Quando essa opção é selecionada, o Editor de Código formata automaticamente a


instrução linha quando você escolhe a tecla de ponto-e-vírgula.
concluída
em ;

Formatar Quando essa opção é selecionada, o Editor de Código formata automaticamente a


bloco linha quando você escolhe a tecla de chave de abertura.
aberto em {
Opção Descrição

Formatar Quando essa opção é selecionada, o Editor de Código formata automaticamente a


bloco linha quando você escolhe a tecla de chave de fechamento.
concluído
em }

Formatar ao Quando essa opção é selecionada, o Editor de Código reformata o código quando
colar você o cola no editor. O editor usa as regras de formatação definidas no
momento. Se essa opção não estiver selecionada, o editor usará a formatação
original do código colado.

Novas Linhas
Essas opções determinam se o Editor de Código coloca uma chave de abertura para
funções e blocos de controle em uma nova linha.

Lista de elementos de interface do usuário

Opção Descrição

Colocar chave de Quando essa opção é selecionada, o Editor de Código move a chave
abertura em nova linha de abertura associada a uma função para uma nova linha.
para funções

Colocar chave de Quando essa opção é selecionada, o Editor de Código move a chave
abertura na nova linha de abertura associada a um bloco de controle (por exemplo, os blocos
para blocos de controle de controle if e while ) para uma nova linha.

Espaçamento
Essas opções determinam como os espaços são inseridos na exibição do Código-fonte.

Lista de elementos de interface do usuário

Opção Descrição

Inserir espaço após Quando essa opção é selecionada, o Editor de Código adiciona um
delimitador de vírgula espaço depois dos delimitadores de vírgulas.

Inserir espaço após Quando essa opção é selecionada, o Editor de Código adiciona um
ponto e vírgula nas espaço depois de cada ponto-e-vírgula na primeira linha de um loop
instruções "for" for .
Opção Descrição

Inserir espaço antes e Quando essa opção é selecionada, o Editor de Código adiciona um
depois de operadores espaço antes e depois de operadores binários (por exemplo, +, -, &&,
binários ||).

Inserir espaço após Quando essa opção é selecionada, o Editor de Código adiciona um
palavras-chaves em espaço depois das palavras-chave JavaScript nas instruções de fluxo
instruções de fluxo de de controle.
controle

Inserir espaço após a Quando essa opção é selecionada, o Editor de Código adiciona um
palavra-chave de espaço após a palavra-chave function para funções anônimas.
função para funções
anônimas

Inserir espaço após a Quando essa opção é selecionada, o Editor de Código adicionará um
abertura e antes de espaço após o parêntese de abertura e antes do parêntese de
fechar parênteses não fechamento se houver caracteres não vazios dentro dos parênteses.
vazios

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Caixa de diálogo Opções: Editor de
Texto > JavaScript > IntelliSense
Artigo • 13/01/2024

Use a página IntelliSense da caixa de diálogo Opções para modificar as configurações


que afetam o comportamento do IntelliSense para JavaScript. É possível acessar a
página IntelliSense escolhendo Ferramentas>Opções na barra de menus e, em seguida,
expandindo Editor de texto>JavaScript/TypeScript>IntelliSense>Geral.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

A página IntelliSense contém as seguintes seções:

Conclusão de instrução
Você pode usar essas opções para alterar o comportamento do preenchimento de
declaração do IntelliSense.

Lista de elementos de interface do usuário


Usar apenas Tab ou Enter para confirmar

Quando você marca essa caixa de seleção, o editor de código do JavaScript acrescenta
instruções com itens selecionados na lista de conclusão somente após você escolher a
tecla Tab ou Enter. Quando você desmarca essa caixa de seleção, outros caracteres,
como ponto, vírgula, dois-pontos, parênteses de abertura e chave de abertura ({),
também podem acrescentar instruções com os itens selecionados.

Confira também
JavaScript IntelliSense
Caixa de diálogo Opções: Editor de
Texto > JavaScript/TypeScript > Linting
Artigo • 13/01/2024

Use a página Linting da caixa de diálogo Opções para definir opções para analisar o
código no Editor de Código (observe que você pode substituir essas opções em alguns
tipos de projeto, como os modelos de projeto React autônomos). Para acessar essa
página, na barra de menus, escolha Ferramentas>Opções e expanda Editor de
Texto>JavaScript/TypeScript>Linting.

Configurações de ESLint
Essas opções permitem que você habilite a análise de código JavaScript e TypeScript
estático e escolha quais arquivos são analisados. Para saber mais sobre ESLint, confira
ESLint.org .

Lista de elementos de interface do usuário

ノ Expandir a tabela

Opção Descrição

Habilitar ESLint Quando essa opção estiver selecionada, o Editor de Códigos permitirá a
análise estática no código.

Arquivos de Essas opções permitem que você configure quais extensões de arquivo
extensão de devem ser linted. Por exemplo, se "Arquivos Lint TypeScript" estiver
arquivo Lint selecionado, os documentos com uma extensão de arquivo .ts serão linted.

Confira também
Efetuar o lint do JavaScript no Visual Studio
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, JavaScript,
Projeto
Artigo • 13/01/2024

Use a página Projeto da caixa de diálogo Opções para especificar opções de projeto
JavaScript e TypeScript no Editor de Código. Para acessar essa página, na barra de
menus, escolha Ferramentas>Opções e expanda Editor de
Texto>JavaScript/TypeScript>Projeto.

Opções de análise do projeto


Essas opções determinam como o editor analisa os projetos, relata diagnósticos e
sugere melhorias. Marque ou desmarque as opções para especificar como o editor lida
com essas situações.

Lista de elementos de interface do usuário


Analisar apenas os projetos que contêm arquivos abertos no editor
Reportar apenas os diagnósticos para arquivos abertos no editor
Sugerir possíveis aprimoramentos que não são correções

Projetos virtuais no Gerenciador de Soluções


Essas opções permitem que você escolha se deseja exibir Projetos Virtuais quando uma
Solução é carregada ou não carregada.

Compilar ao salvar
Essas opções determinam se os arquivos TypeScript que não fazem parte do projeto são
compilados automaticamente. O Visual Studio compila usando a versão mais recente do
TypeScript instalada em C:\Program Files (x86)\Microsoft SDKs\TypeScript.

Marque a caixa de seleção e, em seguida, escolha o tipo de geração de código a ser


usado.

Lista de elementos de interface do usuário


Usar geração de código do AMD para módulos que não fazem parte de um
projeto
Usar geração de código CommonJS para módulos que não fazem parte de um
projeto
Usar geração de código UMD para módulos que não fazem parte de um projeto
Usar geração de código do Sistema para módulos que não fazem parte de um
projeto
Usar geração de código ES2015 para módulos que não fazem parte de um
projeto

Versão ECMAScript para arquivo que não fazem


parte de um projeto
Essas opções permitem que você selecione a versão do ECMAScript para arquivos que
não fazem parte de um projeto. Você pode escolher entre ECMAScript 3, ECMAScript 5
ou ECMAScript 6.

Emissão JSX para arquivos TSX que não fazem


parte de um projeto
Essas opções determinam como o editor trata arquivos TypeScript que não fazem parte
de um projeto.

Lista de elementos de interface do usuário

ノ Expandir a tabela

Opção Descrição

React Quando essa opção estiver selecionada, o Editor de Códigos emitirá uma
Framework extensão de arquivo .js.

Preserve Quando essa opção estiver selecionada, o Editor de Códigos manterá o JSX
como parte da saída e emitirá uma extensão de arquivo .jsx.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, U-SQL,
Formatação
Artigo • 13/01/2024

Use a página de opções Formatação para definir opções para formatar o código no
editor de códigos. Para acessar essa página de opções, escolha Ferramentas>Opções.
Na caixa de diálogo Opções, escolha Editor de Texto>U-SQL>Formatação.

Página Geral

Configurações gerais
Essas configurações afetam quando o editor de códigos aplica opções de formatação ao
código.

Formatar automaticamente a instrução concluída ao inserir ponto-e-vírgula

Quando essa opção estiver selecionada, as instruções serão formadas quando você
escolher a tecla de ponto-e-vírgula, de acordo com as opções de formatação
selecionadas para o editor.

Formatar automaticamente ao colar

Quando selecionada, formata o texto que é colado no editor de acordo com as


opções de formatação selecionadas para o editor.

Janelas de visualização
As subpáginas Recuo, Novas Linhas e Espaçamento exibem uma janela de visualização
na parte inferior. A janela de visualização mostra o efeito de cada opção. Para usar a
janela de visualização, selecione uma opção de formatação. A janela de visualização
mostra um exemplo da opção selecionada. Quando você altera uma configuração
marcando uma caixa de seleção, a janela de visualização é atualizada para mostrar o
efeito da nova configuração.

Comentários de recuo
As opções de recuo nas páginas Guias de cada linguagem determinam apenas onde o
editor de códigos coloca o cursor quando você pressiona Enter no final de uma linha. As
opções de recuo em Formatação se aplicam quando o código é formatado
automaticamente, por exemplo:

Quando você cola o código no arquivo enquanto Formatar automaticamente ao


colar está selecionada
Quando o bloco que está sendo formatado é digitado manualmente

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções, Editor de Texto, U-SQL,
IntelliSense
Artigo • 13/01/2024

Use a página de opções IntelliSense para modificar algumas configurações do editor de


texto para U-SQL. Para acessar essa página de opções, escolha Ferramentas>Opções e,
em seguida, Editor de Texto>U-SQL>IntelliSense.

Configurações do IntelliSense
Marque uma caixa de seleção para habilitar Informações Rápidas ou Intellisense.
Informação Rápida exibe a declaração completa quando você passa o cursor do mouse
sobre uma variável.

Listas de Conclusão
Mostrar lista de preenchimento depois que um caractere é digitado

Quando essa opção estiver selecionada, o IntelliSense exibirá automaticamente a


lista de preenchimento quando você começar a digitar. Quando essa opção não
estiver selecionada, o preenchimento do IntelliSense ainda estará disponível no
menu IntelliSense ou pressionando Ctrl + Barra de espaços.

Colocar palavras-chave em listas de preenchimento

Quando essa opção estiver selecionada, o IntelliSense incluirá palavras-chave na


lista de conclusão.

Colocar snippets de código em listas de preenchimento

Quando essa opção estiver selecionada, o IntelliSense incluirá snippets de código


na lista de conclusão.

Seleção em listas de conclusão


Confirmar digitando os caracteres a seguir

Esse campo mostra os caracteres que fazem com que a sugestão da lista de
conclusão realçada no momento seja confirmada. Você pode adicionar ou remover
caracteres desta lista.
Confirmar pressionando a Barra de espaços

Quando essa opção estiver selecionada, você poderá confirmar a sugestão de lista
de conclusão realçada pressionando a Barra de espaços.

Adicionar uma nova linha ao final de uma palavra totalmente digitada ao


pressionar Enter

Quando essa opção estiver selecionada, uma nova linha será adicionada
automaticamente e o cursor irá para a nova linha quando você digitar todos os
caracteres de uma sugestão de lista de conclusão.

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Usando o IntelliSense
Opções, Editor de Texto, XAML,
Formatação
Artigo • 13/01/2024

Use a página de propriedades Formatação para especificar como elementos e atributos


são formatados nos documentos XAML. Para abrir a caixa de diálogo Opções, clique no
menu Ferramentas e clique em Opções. Para acessar a página de propriedades
Formatação, expanda o nó Editor de Texto>XAML>Formatação.

Eventos de Formatação Automática


A formatação automática poderá ocorrer quando qualquer um dos eventos a seguir for
detectado.

Preenchimento de uma marcação de fim ou de uma marcação simples.

Preenchimento de uma marcação de início.

Colando da área de transferência.

Comandos de teclado de formatação.

É possível especificar quais eventos causam formatação automática.

Ao preencher a marcação de fim ou der marca simples

A formatação automática ocorre quando você termina de digitar uma marca de fim ou
uma marca simples. Uma marcação simples não tem atributos, por exemplo <Button /> .

Ao preencher uma marcação de início

A formatação automática ocorre quando você termina de digitar uma marca de início.

Ao colar da área de transferência

A formatação automática ocorre quando você cola o XAML da área de transferência na


exibição XAML.

Estilo de Aspas
Essa configuração indica se os valores de atributo são colocados entre aspas simples ou
duplas. O formatador automático e o preenchimento automático IntelliSense usam essa
configuração.

Ao definir essa opção, apenas atributos subsequentemente adicionados usando o


designer ou manualmente na exibição XAML são afetados.

Aspas duplas (")

Valores de atributos são colocados entre aspas duplas. <Button


Name="button1">Hello</Button>

Aspas simples (')

Valores de atributos são colocados entre aspas simples. <Button


Name='button1'>Hello</Button>

Automática de marca
Você pode especificar um comprimento de linha para disposição de marcação. Quando
a disposição de marcação está habilitada, qualquer XAML adicionado posteriormente
usando o designer será disposto adequadamente.

Encapsular marcações que excedam o comprimento especificado

Especifica se as linhas são dispostas no comprimento de linha especificado por


Comprimento.

Comprimento

O número de caracteres que uma linha pode conter. Se necessário, algumas linhas
XAML poderão exceder o comprimento de linha especificado.

Espaçamento de Atributos
Use essa configuração para controlar como os atributos são organizados no documento
XAML

Preservar novas linhas e espaços entre atributos

Novas linhas e espaços entre atributos não são afetados por formatação automática.

XML

<Button Height="23" Name="button1"


Width="75">Hello</Button>
Inserir um espaço único entre os atributos

Atributos ocupam uma linha, com um espaço separando atributos adjacentes.


Configurações de disposição de marcação são aplicadas.

XML

<Button Height="23" Name="button1" Width="75">Hello</Button>

Posicionar cada atributo em uma linha separada

Cada atributo ocupa sua própria linha, que é útil quando muitos atributos estão
presentes.

XML

<Button
Height="23"
Name="button1"
Width="75">Hello</Button>

Posicionar primeiro atributo na mesma linha que a marcação de início

Quando essa opção está marcada, o primeiro atributo aparece na mesma linha que a
marcação de início do elemento.

XML

<Button Height="23"
Name="button1"
Width="75">Hello</Button>

Espaçamento de Elementos
Use essa configuração para controlar como os elementos são organizados no
documento XAML.

Preservar novas linhas no conteúdo

Linhas vazias no conteúdo do elemento não são removidas.

XML

<Grid>
<Button Name="button1">Hello</Button>

</Grid>

Recolher várias linhas vazias no conteúdo para uma linha única

Linhas vazias no conteúdo do elemento são recolhidas em uma única linha.

XML

<Grid>

<Button Name="button1">Hello</Button>

</Grid>

Remover linhas vazias no conteúdo

Todas as linhas vazias no conteúdo do elemento são removidas.

XML

<Grid>
<Button Name="button1">Hello</Button>
</Grid>

Confira também
XAML na WPF
Opções, Editor de texto, XAML, Diversos
Artigo • 13/01/2024

Use a página de propriedades Diversos para especificar como elementos e atributos são
formatados nos documentos XAML. Para abrir a caixa de diálogo Opções, clique no
menu Ferramentas e clique em Opções. Para acessar a página de propriedades
Diversos, expanda o nó Editor de texto>XAML>Diversos.

Inserir automaticamente
Use essa configuração para controlar quando marcas e aspas são geradas
automaticamente.

ノ Expandir a tabela

Nome Descrição

Marcas de fechamento Especifica se a marcação de fechamento de um elemento é


gerada automaticamente ao você fechar a marcação de abertura
com o caractere de maior que (>).

Citações de atributo Especifica se as aspas de fechamento são geradas quando um


valor de atributo é selecionado na lista suspensa de
preenchimento de declaração.

Chaves de fechamento para Especifica se uma chave de fechamento (}) de uma extensão de
MarkupExtensions marcação é gerada automaticamente ao digitar o caractere de
chave de abertura ({).

Vírgulas para separar Especifica se vírgulas são geradas quando você digita mais de
parâmetros MarkupExtension um parâmetro em uma extensão de marcação.

Erros e avisos
Use essa configuração para controlar quando os erros e avisos são gerados
automaticamente. Para obter mais informações, confira Avisos e erros de XAML.

Confira também
XAML na WPF
Opções, Editor de texto, XML,
Formatação
Artigo • 13/01/2024

Use a página de opções de Formatação para especificar como elementos e atributos


são formatados nos documentos XML. Para acessar as opções de formatação de XML,
escolha Ferramentas>Opções>Editor de texto>XML e, em seguida, escolha
Formatação.

Atributos
Preservar formatação manual de atributos

Não reformate os atributos. Esta é a configuração padrão.

7 Observação

Se os atributos estiverem em linhas múltiplas, o editor recua cada linha de atributos


para corresponder ao recuo do elemento pai.

Alinhar cada atributo em uma linha separada

Alinha o segundo e os atributos subsequentes verticalmente para corresponder ao


recuo do primeiro atributo. O texto XML a seguir é um exemplo de como os atributos
seriam alinhados:

XML

<item id = "123-A"
name = "hammer"
price = "9.95">
</item>

Reformatação Automática
Ao colar da área de transferência

Reformata o texto XML colado da área de transferência.

Ao concluir a marca final


Reformata o elemento quando a marca final é concluída.

Conteúdo Misto
Formatar conteúdo misto por padrão.

Tenta reformatar conteúdo misto, exceto quando o conteúdo encontra-se em um


escopo xml:space="preserve" . Esta é a configuração padrão.

Se um elemento contiver uma mistura de texto e marcação, os conteúdos serão


considerados de conteúdo misto. A seguir há um exemplo de um elemento com
conteúdo misto.

XML

<dir>c:\data\AlphaProject\
<file readOnly="false">test1.txt</file>
<file readOnly="false">test2.txt</file>
</dir>

Confira também
Opções de XML – Diversos
Ferramentas XML no Visual Studio
Opções, Editor de texto, XML, Diversos
Artigo • 13/01/2024

Use a página de opções Diversos para alterar as configurações de preenchimento


automático e de esquema para o Editor XML. Para acessar as opções de XML diversas,
escolha Ferramentas>Opções>Editor de texto>XML e, em seguida, escolha Diversos.

Inserir automaticamente
Fechar marcas

O editor de texto adiciona marcas de fechamento ao criar elementos XML. Se uma


marca de início de elemento for selecionada, o editor insere a marca íntima
correspondente, incluindo um prefixo de namespace correspondente. Esta caixa de
seleção fica marcada por padrão.

Citações de atributo

Ao criar atributos XML, o editor insere os caracteres =" e " e posiciona o acento
circunflexo (^) dentro de aspas duplas. Esta caixa de seleção fica marcada por padrão.

Declarações de namespace

O editor insere declarações de namespace automaticamente onde quer elas sejam


necessárias. Esta caixa de seleção fica marcada por padrão.

Outra remarcação (Comentários, CDATA)

Comentários, CDATA, DOCTYPE, instruções de processamento e outra remarcação e


autocompletada. Esta caixa de seleção fica marcada por padrão.

Rede
Carregar automaticamente DTDs e esquemas

Esquemas e DTDs (definições de tipo de documento) são baixados automaticamente de


locais HTTP. Esse recurso usa System.Net com detecção de servidor de autoproxy
habilitada. Esta caixa de seleção fica marcada por padrão.

Estrutura de tópicos
Entrar no modo de estrutura de tópicos quando os arquivos forem abertos

Ativa o recurso de estrutura de tópicos quando um arquivo é aberto. Esta caixa de


seleção fica marcada por padrão.

Cache
Esquemas

Especifica o local do cache de esquema. O botão Procurar abre a localização do cache


do esquema atual em uma nova janela. O local padrão é %VsInstallDir%\xml\Schemas.

Confira também
Opções de XML – Formatação
Ferramentas XML no Visual Studio
Caixa de diálogo Opções: Designer de
Formulários do Windows
Artigo • 13/01/2024

A página de opções do Designer de Formulários do Windows possibilita definir


preferências para as grades e outros recursos no Visual Studio. Abra a caixa de diálogo
Opções no menu Ferramentas.

.NET Core
Tempo limite de conexão (segs)
Controla o tempo limite de conexão do designer fora do processo do Windows Forms,
medido em segundos. O valor mínimo é de 120 segundos.

Nível de Log
Controla o nível de registros em log do designer fora do processo do Windows Forms.
As opções incluem Nenhum, Informativo, Avisos, Erros e Detalhado.

Configurações de geração de código


Geração de Código Otimizada
Permite a geração de código otimizada. Alguns controles podem não ser compatíveis
com esse modo. Para que essa alteração tenha efeito, o Visual Studio deve ser fechado e
reaberto.

Suporte a DPI alto


Notificações de Ajuste de DPI
Mostrar uma mensagem no Designer de Formulários do Windows que pode reiniciar o
Visual Studio com 100% de ajuste.

Configurações de layout
Tamanho da Célula de Grade Padrão
Define o espaçamento, em pixels, entre linhas de grade horizontais e verticais no
designer. O tamanho padrão é 8, 8. O tamanho máximo é 200, 200.
Modo de Layout
Especifica o sistema de alinhamento a ser usado para o layout. Você pode escolher
SnapToGrid ou Snaplines.

Mostrar Grade
Especifica se os designers exibem a grade de dimensionamento. Por padrão, a grade
está ativada.

Ajustar à Grade
Determina se os designers encaixam objetos e controles à grade. Em outras palavras, o
redimensionamento e o movimento de elementos no designer são restritos ao
incremento GridSize quando esse recurso está ativado. Com o SnapToGrid ativado, é
mais fácil alinhar os diversos aspectos da interface do usuário com precisão, mas isso
limita a liberdade com a qual é possível encaixar controles. Por padrão, o SnapToGrid
está ativado.

Configurações de Marcas Inteligentes


Associadas a Objetos
Abrir Automaticamente as Marcas Inteligentes
Determina se os controles e componentes exibem marcas inteligentes. Nem todos os
controles e componentes dão suporte a marcas inteligentes.

Refatoração
Habilitar Refatoração ao Renomear
Quando definida como true , uma operação de refatoração de renomeação é executada
ao renomear um componente da janela Propriedades ou da janela Estrutura de Tópicos
do Documento.

Caixa de Ferramentas
Preencher Automaticamente a Caixa de Ferramentas
Determina se a janela Caixa de Ferramentas é preenchida automaticamente com
componentes e controles criados pelo projeto.
Caixa de diálogo Opções: Designer de
Formulários do Windows >
Personalização da Interface do Usuário
de Dados
Artigo • 13/01/2024

Essa caixa de diálogo define quais controles aparecem na lista de controles disponíveis
para itens na janela Fontes de Dados. Para abri-la, selecione Ferramentas>Opções e, em
seguida, selecione Designer de Formulários do Windows>Personalização da Interface
do Usuário de Dados.

É possível selecionar um controle de um item na janela Fontes de Dados antes de


arrastá-lo para o formulário em um aplicativo do Windows Forms. Os controles
disponíveis são determinados pelo tipo de dados do item. Cada tipo de dados possui
uma lista de controles associados válidos, conforme definido nessa caixa de diálogo,
incluindo um controle padrão. Ao arrastar um item da janela Fontes de Dados para um
formulário sem selecionar um controle, o controle padrão para o tipo de dados do item
selecionado é adicionado ao formulário.

Personalize a lista de controles associados, marcando e desmarcando as caixas de


seleção dos controles disponíveis para cada tipo de dados. Para adicionar um controle à
lista, adicione um controle que implemente o atributo de associação de dados
DefaultBindingPropertyAttribute ou ComplexBindingPropertiesAttribute à Caixa de
Ferramentas. Em seguida, o controle aparece na lista de controles para o tipo de dados.
Para obter mais informações, confira Como adicionar controles personalizados à janela
Fontes de Dados.

Tipo de dados
Exibe uma lista de tipos aos quais você associa controles. As tabelas são representadas
como o tipo de dados [List] . As colunas são representadas como o tipo de dados real
da coluna no armazenamento de dados subjacente.

Controles associados
Exibe uma lista de controles associados ao tipo de dados selecionado. Marque ou
desmarque a caixa de seleção ao lado do controle para associá-la ou desassociá-la. Os
controles selecionados aparecem na janela Fontes de Dados de uma coluna do banco
de dados vinculada ao tipo de dados associado.

Definir Padrão
Atribui o tipo de controle selecionado para ser o padrão para o tipo de dados
selecionado. O controle padrão aparece como a primeira seleção no menu de atalho
para uma coluna do banco de dados na janela Fontes de Dados. Ao arrastar um item da
janela Fontes de Dados para um formulário sem selecionar um controle, o controle
padrão para o tipo de dados do item selecionado é adicionado ao formulário.

Somente um tipo de controle pode ser atribuído como padrão para um tipo de dados.

Limpar Padrão
Remove a designação de um controle como padrão para o tipo de dados selecionado.
Se não há um padrão para o tipo de dados selecionado, [None] aparece como a
primeira seleção no menu de atalho para uma coluna do banco de dados desse tipo.
Página de opções do Designer XAML
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página de opções do Designer XAML para especificar como os elementos e


atributos são formatados nos documentos XAML. Para abrir essa página, escolha o
menu Ferramentas e, em seguida, Opções. Para acessar a página de propriedades
XAML Designer, escolha o nó XAML Designer. As configurações para o XAML Designer
são aplicadas quando você abre o documento. Portanto, se você alterar as
configurações, será necessário fechar e reabrir o Visual Studio para ver as alterações.

7 Observação

As caixas de diálogo e os comandos de menu encontrados podem diferir daqueles


descritos na Ajuda, dependendo das configurações ativas ou edição. Para alterar
suas configurações, selecione Importar e Exportar Configurações no menu
Ferramentas . Para obter mais informações, confira Redefinir as configurações.

Habilitar o XAML Designer


Quando selecionada, essa configuração habilita o XAML Designer. O XAML Designer
fornece uma área de trabalho visual para editar documentos XAML. Algumas
funcionalidades no Visual Studio, como o IntelliSense para associação de dados e
recursos, exigem que o XAML Designer seja habilitado.

As configurações a seguir aplicam-se somente quando o XAML Designer está habilitado.


Se você alterar esta opção, será necessário reiniciar o Visual Studio para que a
configuração entre em vigor.

Exibição de documento padrão


Use essa configuração para controlar se o modo de exibição de Design aparece quando
documentos XAML são carregados.

Nome Descrição

Modo de Especifica se somente a fonte de XAML aparece no modo de exibição XAML. Isso é
Exibição de útil ao carregar documentos grandes.
Fonte
Nome Descrição

Modo de Especifica se apenas um XAML Designer visual aparece no modo de exibição


exibição de XAML.
Design

Modo Especifica se o XAML Designer visual e a fonte de XAML aparecem próximos um


Divisão do outro no modo de exibição XAML (local com base na configuração Orientação
de Divisão).

Orientação de Divisão
Use essa configuração para controlar quando e como o XAML Designer aparece ao
editar um documento XAML. Essas configurações aplicam-se somente quando a
Exibição do documento padrão está definida como Modo Divisão.

Nome Descrição

Vertical A fonte de XAML aparece no lado esquerdo do modo de exibição XAML e o XAML
Designer aparece no outro lado.

Horizontal O XAML Designer aparece na parte superior do modo de exibição XAML e a fonte
de XAML aparece abaixo dele.

Default O documento XAML usa a orientação de divisão recomendada para a plataforma de


destino do projeto do documento. Para a maioria das plataformas, isso é
equivalente a Horizontal.

Aplicar zoom usando


Use essa configuração para determinar o funcionamento de aplicar zoom ao editar um
documento XAML.

Nome Descrição

Botão de rolagem do Ampliar o XAML Designer ao rolar o botão de rolagem do mouse.


mouse

CTRL + botão de Ampliar o Designer XAML pressionando a tecla CTRL ao mesmo tempo
rolagem do mouse em que rola o botão de rolagem do mouse.

Alt + botão de Ampliar o Designer XAML pressionando a tecla ALT ao mesmo tempo
rolagem do mouse em que rola o botão de rolagem do mouse.
Essas configurações determinam o comportamento do Designer ao editar um
documento XAML.

Configuração padrão de zoom


Use essa configuração para determinar o valor padrão do zoom para exibir o
documento XAML.

Nome Descrição

Última Use o último valor de zoom utilizado para todos os documentos XAML por padrão.
Utilização Quando um documento XAML for aberto pela primeira vez, ele usará a configuração
"Ajustar Tudo" apenas na primeira vez.

Ajustar Use essa opção para definir o valor do zoom como "Ajustar Tudo" no designer XAML.
Tudo Quando um documento XAML for fechado e reaberto, o último valor definido
persistirá nessa sessão, mas em sessões diferentes "Ajustar Tudo" será usado por
padrão.

Essas configurações determinam o comportamento do Designer ao editar um


documento XAML.

Nome Descrição

Nomear Especifica se um nome padrão é fornecido para um novo elemento interativo


automaticamente ao adicioná-lo no Designer.
os elementos
interativos na
criação

Inserir Especifica se as propriedades de layout são fornecidas a um novo elemento


automaticamente ao adicioná-lo no Designer. As propriedades de layout são aquelas que
as propriedades afetam o layout de um controle, por exemplo, VerticalAlignment ou Margin.
de layout na O XAML a seguir mostra como criar um botão com e sem essa opção
criação de selecionada:
elemento <Button Content="Button" HorizontalAlignment="Left" Margin="245,56,0,0"
Grid.Row="1" VerticalAlignment="Top" Width="75"/>
<Button Content="Button" Grid.Row="1"/>

Usar layout Especifica se o controle atualmente selecionado alinha-se às bordas do


baseado em contêiner pai mais próximas. Se essa caixa de seleção estiver desmarcada, os
quadrantes alinhamentos de controle não se alteram durante uma operação de
movimentação ou criação.
Nome Descrição

Popular Especifica se os controles de usuário e os controles personalizados na


automaticamente solução atual são mostrados automaticamente na caixa de ferramentas.
os itens da caixa
de ferramentas

Configurações (Somente Blend)


Use essas opções para determinar as configurações ao editar arquivos XAML usando o
Blend.

Nome Descrição

Aplicar Ampliar o Designer XAML ao rolar o botão de rolagem do mouse ou ao pressionar a


zoom tecla CTRL ou ALT ao mesmo tempo em que rola o botão de rolagem do mouse.
usando

Digitar Especifica se as medidas no designer são baseadas em pontos ou pixels. Como os


unidades Aplicativos Universais do Windows não oferecem suporte a pontos, as unidades serão
automaticamente convertidas em pixels se Pontos estiver selecionado.

Prancheta (Somente Blend)


Use essas configurações para determinar o comportamento do XAML Designer ao
editar documentos XAML no Blend.

Ajustando

Nome Descrição

Mostrar grade Quando essa opção é selecionada, as linhas de grade aparecem no designer
de ajuste para ajudá-lo a alinhar os controles. Os controles adicionados ao designer
ajustam-se a essas linhas de grade quando a opção Ajustar às linhas de grade
está selecionada.

Ajustar às Quando os controles são adicionados ou movidos no designer, eles se


linhas de encaixam às linhas de grade.
grade

Espaçamento Especifica o espaçamento entre linhas de grade em pixels ou pontos (conforme


da linha de determinado pela configuração Digitar unidades).
grade
Nome Descrição

Ajustar-se às Especifica se os controles ajustam-se às guias de alinhamento.


guias de
alinhamento

Margem Quando Ajustar-se às guias de alinhamento está habilitado, especifica o


padrão espaçamento entre as guias de alinhamento e o controle em pixels ou pontos
(conforme determinado pela configuração Digitar unidades).

Preenchimento Quando Ajustar-se às guias de alinhamento está habilitado, especifica o


padrão espaçamento adicional entre as guias de alinhamento e o controle em pixels ou
pontos (conforme determinado pela configuração Digitar unidades).

Animação
Use essa configuração para determinar se um aviso é exibido quando animações
dependentes (não aceleradas) estão habilitadas no Blend.

Efeitos
Use essas configurações para determinar se efeitos são renderizados ao editar arquivos
XAML no XAML Designer usando o Blend.

Nome Descrição

Renderizar Especifica se efeitos renderizam ao editar arquivos XAML no XAML Designer usando
efeitos o Blend.

Limite de Especifica o percentual de ampliação com a qual os efeitos são renderizados


zoom quando a caixa de seleção Renderizar efeitos está selecionada. Se você aplicar
zoom além dessa configuração os efeitos não serão mais renderizados no XAML
Designer.

Confira também
XAML na WPF
Passo a passo: Meu primeiro aplicativo da área de trabalho do WPF
janela Saída
Artigo • 14/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A Janela de Saída exibe mensagens de status para vários recursos no IDE (ambiente de
desenvolvimento integrado). Para abrir a Janela de Saída, na barra de menus, escolha
Exibir>Saída ou pressione Ctrl+Alt+O.

Barra de ferramentas
Os seguintes controles são mostrados na barra de ferramentas da Janela de Saída.

Mostrar saída de
Exibe um ou mais painéis de saída a serem exibidos. Vários painéis de informações
podem estar disponíveis, dependendo de quais ferramentas no IDE usaram a Janela de
Saída para entregar mensagens ao usuário.

Localizar mensagem no código


Move o ponto de inserção no editor de código para a linha que contém o erro de build
selecionado.

Ir para a mensagem anterior


Altera o foco na Janela de Saída para o erro de build anterior e move o ponto de
inserção no editor de código para a linha que contém o erro de build.

Ir para a próxima mensagem


Altera o foco na Janela de Saída para o próximo erro de build e move o ponto de
inserção no editor de código para a linha que contém o erro de build.

Limpar tudo
Limpa todo o texto do painel Saída.

Ativar/Desativar Quebra Automática de Linha


Ativa e desativa o recurso Quebra Automática de Linha no painel Saída. Quando a
Quebra Automática de Linha estiver ativada, um texto em entradas maiores que se
estende além da área de exibição será mostrado na próxima linha.

Painel de saída
O painel Saída selecionado na lista Mostrar saída de exibe a saída da fonte indicada.

Rotear mensagens para a Janela de Saída


Para exibir a Janela de Saída sempre que você criar um projeto, na caixa de diálogo
Opções na página Projetos e Soluções>Geral, selecione Mostrar Janela de Saída ao
iniciar o build. Em seguida, com um arquivo de código aberto para edição, escolha Ir
para a Próxima Mensagem e Ir para a Mensagem Anterior na barra de ferramentas da
Janela de Saída para selecionar as entradas no painel Saída. Conforme você faz isso, o
ponto de inserção no editor de código salta para a linha de código em que ocorre o
problema selecionado.

Determinados recursos e comandos do IDE invocados na janela Comando fornecem sua


saída para a janela de Saída. A saída de ferramentas externas como arquivos .bat e .com,
que normalmente é exibida na janela de comando, é roteada para um painel de Saída
quando você seleciona a opção Usar Janela de Saída em Gerenciar ferramentas
externas. Muitos outros tipos de mensagens também podem ser exibidos em painéis
Saída. Por exemplo, quando a sintaxe Transact-SQL em um procedimento armazenado é
verificada em um banco de dados de destino, os resultados são exibidos na Janela de
Saída.

Você também pode programar seus próprios aplicativos para gravar mensagens de
diagnóstico em tempo de execução em um painel Saída. Para fazer isso, use membros
da classe Debug ou Trace no namespace System.Diagnostics da API .NET. Os membros
da classe Debug exibem a saída quando você compila as configurações de Depuração
da solução ou do projeto; os membros da classe Trace exibem a saída quando você
compila as configurações de Depuração ou de Versão. Para obter mais informações,
confira Mensagens de diagnóstico na Janela de Saída.

No C++, é possível criar etapas de build e eventos de build personalizados cujos avisos
e erros são exibidos e contados no painel de Saída. Pressionando F1 em uma linha de
saída, você pode exibir um tópico da Ajuda apropriado. Para obter mais informações,
confira Formatar a saída de uma etapa de build personalizada.
Comportamento de rolagem
Se você usar a rolagem automática na Janela de Saída e, em seguida, navegar usando o
mouse ou as teclas de seta, a rolagem automática será interrompida. Para retomar a
rolagem automática, pressione Ctrl+End.

Diagnóstico estruturado
Projetos do MSBuild do C++ podem emitir diagnósticos estruturados. O nível de recuo
de um diagnóstico na janela Saída representa a estrutura aninhada das informações.
Habilite ou desabilite o recuo com a opção Projeto>Propriedades>Avançado>Habilitar
Saída Estruturada MSVC. Você pode afetar vários projetos criando um arquivo
Directory.Build.props com a propriedade UseStructuredOutput definida como true ou
false.

Confira também
Mensagens de diagnóstico na Janela de Saída
Como controlar a Janela de Saída
Compilar e criar
Noções sobre configurações de build
Visão geral da biblioteca de classes
Janela Detalhes do problema
Artigo • 15/11/2023

A janela Detalhes do problema mostra diagnósticos estruturados emitidos pelo


compilador MSVC ou análise de código para C/C++.

Selecione as entradas na janela Lista de Erros que mostram um ícone na coluna


Detalhes para abrir a janela Detalhes do Problema. A janela Detalhes do problema
mostra o diagnóstico estruturado para a entrada selecionada.

Dois cenários produzem esses diagnósticos:

Compilações C++ usando MSBuild e o compilador MSVC podem emitir


diagnósticos estruturados.
Os avisos de análise de código que dão suporte a dados de eventos-chave
emitem diagnósticos estruturados.

Abra a janela Detalhes do problema seguindo um destes procedimentos:

Enquanto a entrada estiver realçada, clique duas vezes nela ou pressione Enter.
Desabilite esse comportamento com Ferramentas>Opções>Editor de
texto>C/C++>Avançado>Mostrar detalhes do problema com duplo clique.
Selecione o ícone na coluna Detalhes.
Abra o menu de atalho da entrada e selecione a opção Abrir detalhes do
problema.

Por padrão, a janela Detalhes do problema é aberta no mesmo local que a janela Lista
de Erros. Altere onde a janela Detalhes do problema é aberta movendo-a para a
posição desejada.

A janela Detalhes do problema exibe informações estruturadas que podem ser


aninhadas. Quando a janela é aberta, todas as entradas que têm filhos aninhados
começam a ser recolhidas.
Expanda uma entrada para exibir os filhos dela selecionando a seta no lado esquerdo de
uma entrada ou pressionando Direita com a entrada realçada.

Habilite ou desabilite o diagnóstico estruturado com a opção


Projeto>Propriedades>Avançado>Habilitar Saída Estruturada MSVC. Você pode afetar
vários projetos criando um arquivo Directory.Build.props com a propriedade
UseStructuredOutput definida como true ou false.
O que é o Designer de Projeto do .NET?
Artigo • 16/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Designer de Projeto no Visual Studio é uma caixa de diálogo que você pode usar para
especificar configurações e propriedades de aplicativos para um projeto .NET. O
Designer de Projeto inclui várias páginas de propriedades de projeto diferentes com as
quais interagir. O que você vê depende do tipo de projeto do .NET, da plataforma e da
linguagem de programação.

O Designer de Projeto aparece após você selecionar um nó de projeto no Gerenciador


de Soluções e, em seguida, use o menu de contexto de clique com o botão direito do
mouse para selecionar Propriedades.

) Importante

As propriedades de projeto que você pode acessar usando o Designer de Projeto


do .NET diferem das propriedades que você pode acessar usando a janela
Propriedades no Gerenciador de Soluções.

A captura de tela a seguir mostra um exemplo das propriedades do projeto do .NET


para um projeto de console C# no Designer de Projeto.
A captura de tela a seguir mostra um exemplo das propriedades do projeto do .NET
para um projeto de console do Visual Basic no Designer de Projeto. Observe que o .NET
Framework 4.7.2 aparece como a estrutura de destino.

Propriedades do projeto no Designer de


Projeto do .NET
Propriedade Linguagem/plataforma Descrição

Aplicativo C#, F#, Visual Basic, UWP, Especifique as configurações de aplicativo e as


WPF propriedades de um projeto.

Build C#, F#, WPF Especifique as propriedades de configuração de


build de um projeto.

Eventos de C#, Visual Basic, WPF Especifique as instruções de configuração de


compilação build.

Análise de C#, F#, Visual Basic, WPF Configure a ferramenta de análise de código.
Código
Propriedade Linguagem/plataforma Descrição

Compilar Visual Basic Especificar propriedades de compilação

Minhas Visual Basic Gerencie extensões de Meu Namespace.


Extensões

Pacote C#, F#, Visual Basic Gere um pacote NuGet no build.

Publicar Visual Basic, WPF Configure propriedades para o ClickOnce.

Referências Visual Basic Gerencie as referências usadas por um projeto.

Caminhos de WPF Gerencie caminhos de referência para um projeto.


Referência

Recursos C#, F#, Visual Basic, WPF Acesse o arquivo RESX de Gerenciador de
Soluções para um projeto C#, crie um arquivo de
recursos padrão para um projeto do Visual Basic
ou adicione recursos a um projeto do WPF.

Serviços Visual Basic, WPF, Habilite serviços do aplicativos cliente.


Windows Forms

Configurações C#, F#, Visual Basic, WPF Especifique as configurações de aplicativo de um


projeto.

Assinando Visual Basic, WPF Assine manifestos do aplicativo e de implantação


e assine o assembly. (Para um projeto do Visual
Basic, a assinatura de manifesto do ClickOnce para
projetos do .NET agora está em
Compilar>Publicar.)

Segurança Visual Basic, WPF Defina as configurações de segurança de acesso


do código para aplicativos implantados usando a
implantação do ClickOnce.

Confira também
O que são soluções e projetos no Visual Studio?
Conheça o Gerenciador de Soluções
Página de propriedades do aplicativo
(projetos UWP)
Artigo • 13/01/2024

Use a propriedade da página Aplicativo para especificar informações de assembly e


pacote do projeto UWP (Plataforma Universal do Windows) e definir como destino o
Windows 10 e posterior.

Para acessar a página Aplicativo, escolha um nó do projeto Gerenciador de Soluções.


Em seguida, escolha Projeto>Propriedades na barra de menus. As páginas de
propriedades são abertas na guia Aplicativo.

Seção geral
Nome do assembly – especifica o nome do arquivo de saída que conterá o manifesto
do assembly.

Para acessar essa propriedade de forma programática, consulte AssemblyName.

Namespace padrão – especifica o namespace base para os arquivos adicionados ao


projeto. Para saber mais sobre namespaces, confira Namespaces (guia programação em
C#), Namespaces (Visual Basic) ou Namespaces (C++).

Para acessar essa propriedade de forma programática, consulte RootNamespace.


Informações do assembly – escolher este botão exibe a caixa de diálogo Informações
do assembly.

Manifesto do pacote – escolher este botão abre o designer de manifesto. O designer de


manifesto também pode ser acessado escolhendo o arquivo Package.appxmanifest no
Gerenciador de Soluções. Para saber mais, confira Configurar um pacote com o
designer de manifesto.

Seção de direcionamento
Você pode definir a versão de destino e a versão mínima do Windows 10 para seu
aplicativo usando as listas suspensas nesta seção. Recomendamos que você direcione
para a versão mais recente do Windows 10, e se você estiver desenvolvendo um
aplicativo empresarial, que também ofereça suporte a uma versão mínima mais antiga.
Para saber mais sobre qual versão do Windows 10 e posteriores escolher, confira
Escolher uma versão da UWP.

Para obter informações sobre o direcionamento de plataforma no Visual Studio, confira


Direcionamento de plataforma.

Confira também
Criar seu primeiro aplicativo UWP
Escolher uma versão do UWP
Página de Aplicativo, Designer de
Projeto (Visual Basic)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Aplicativo do Designer de Projeto para especificar as propriedades e


configurações de aplicativo de um projeto.

Para acessar a página Aplicativo, escolha um nó de projeto (não o nó Solução) no


Gerenciador de Soluções. Em seguida, escolha Projeto>Propriedades na barra de
menus. Quando o Designer de Projeto for exibido, selecione a guia Aplicativo.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Configurações gerais de aplicativos


As opções a seguir permitem definir as configurações gerais para um aplicativo.

Nome do assembly
Especifica o nome do arquivo de saída que conterá o manifesto do assembly. Se você
alterar essa propriedade, a propriedade Nome de Saída também será alterada.

Também é possível especificar o nome do arquivo de saída em um prompt de comando


usando a opção de compilador entrada/saída (Visual Basic).

Para obter informações sobre como acessar esta propriedade de forma programática,
consulte AssemblyName.

Namespace raiz
Especifica o namespace base para todos os arquivos no projeto. Por exemplo, se você
configurasse o Namespace raiz para Project1 e tivesse um Class1 fora de qualquer
namespace em seu código, seu namespace seria Project1.Class1 . Se você tivesse um
Class2 em um namespace Order no código, seu namespace seria
Project1.Order.Class2 .

Se você desmarcar Namespace raiz, será possível especificar a estrutura do namespace


do seu projeto no código.

7 Observação

Se você usar a palavra-chave Global em uma Instrução Namespace, será possível


definir um namespace fora do namespace raiz do seu projeto. Se você desmarcar a
Namespace raiz, Global se tornará o namespace de nível superior, que acaba com
a necessidade da palavra-chave Global em uma instrução Namespace . Para obter
mais informações, consulte "Palavra-chave nas declarações de Namespace global"
em Namespaces no Visual Basic.

Para obter informações sobre como criar namespaces no seu código, consulte Instrução
Namespace.

Para obter mais informações sobre a propriedade de namespace raiz, consulte


/rootnamespace.

Para obter informações sobre como acessar esta propriedade de forma programática,
consulte RootNamespace.

Estrutura de destino (todas as configurações)


Especifica a versão do .NET direcionada pelo aplicativo. Essa opção pode ter valores
diferentes dependendo de quais versões do .NET estão instaladas no computador.

Para projetos .NET Framework, o valor padrão corresponde à estrutura de destino que
você especificou quando criou o projeto.

7 Observação

Os pacotes de pré-requisitos listados na Caixa de diálogo Pré-requisitos são


definidos automaticamente quando você abre a caixa de diálogo pela primeira vez.
Se você alterar posteriormente a estrutura de destino do projeto, será necessário
especificar os pré-requisitos manualmente para corresponder à nova estrutura de
destino.
Para obter mais informações, confira Visão geral do direcionamento de estrutura.

Tipo de aplicativo
Especifica o tipo de aplicativo a ser compilado. Os valores são diferentes dependendo
do tipo de projeto. Por exemplo, para um projeto do Aplicativo do Windows Forms, é
possível especificar o Aplicativo do Windows Forms, a Biblioteca de Classes, o
Aplicativo de Console, o Serviço Windows ou a Biblioteca de Controles da Web.

Para um projeto de aplicativo Web, é necessário especificar Biblioteca de Classes.

Para obter mais informações sobre a propriedade Tipo de aplicativo, consulte /target
(Visual Basic). Para obter informações sobre como acessar essa propriedade de forma
programática, consulte OutputType.

Gerar redirecionamentos de associação automaticamente


Os redirecionamentos da associação serão adicionados ao seu projeto se o aplicativo ou
seus componentes referenciarem mais de uma versão do mesmo assembly. Se você
desejar definir manualmente os redirecionamentos de associação no arquivo de projeto,
desmarque Gerar Redirecionamentos de Associação Automaticamente.

Para obter mais informações sobre o redirecionamento, confira Redirecionando versões


de assembly.

Formulário de inicialização/ objeto de inicialização/ URI


de inicialização
Especifica o formulário de inicialização ou ponto de entrada do aplicativo.

Se Habilitar estrutura de aplicativo estiver selecionado (o padrão), essa lista será


denominada Formulário de inicialização e mostrará somente formulários, porque a
estrutura de aplicativo dá suporte somente a formulários de inicialização, não objetos.

Se o projeto for um Aplicativo de Navegador do WPF, essa lista será denominada URI
de inicialização e o padrão será Page1.xaml. A lista URI de inicialização permite que
você especifique o recurso de interface do usuário (um elemento XAML) que o
aplicativo exibe quando o ele é iniciado. Para obter mais informações, consulte
StartupUri.

Se Habilitar estrutura de aplicativo estiver desmarcado, essa lista se tornará Objeto de


inicialização e mostrará os formulários e classes ou módulos com um Sub Main .
Objeto de inicialização define o ponto de entrada a ser chamado quando o aplicativo é
carregado. Geralmente, isso é definido como o principal formulário em seu aplicativo ou
como o procedimento Sub Main que deve ser executado quando o aplicativo é iniciado.
Como as bibliotecas de classe não têm um ponto de entrada, sua única opção para essa
propriedade é (Nenhum). Para obter mais informações, consulte /main. Para acessar
essa propriedade de forma programática, consulte StartupObject.

ícone
Define o arquivo .ico que você deseja usar como o ícone do programa. Selecione
<Procurar...> para procurar um gráfico existente. Consulte -win32icon (ou -win32icon
(opções do compilador C#)) para obter mais informações. Para acessar essa propriedade
de forma programática, consulte ApplicationIcon.

Informações do assembly
Clique neste botão para exibir a Caixa de diálogo de Informações do Assembly.

Habilitar estrutura do aplicativo


Especifica se um projeto usará a estrutura de aplicativo. A configuração dessa opção
afeta as opções disponíveis em Formulário de inicialização/Objeto de inicialização.

Se essa caixa de seleção estiver selecionada, seu aplicativo usará o padrão Sub Main .
Marcar essa caixa de seleção habilita os recursos na seção Propriedades da estrutura
dos aplicativos do Windows e também exige que você selecione um formulário de
inicialização.

Se essa caixa de seleção estiver desmarcada, seu aplicativo usará o Sub Main
personalizado que você especificou no Formulário de inicialização. Nesse caso, é
possível especificar um objeto de inicialização (um Sub Main personalizado em um
método ou em uma classe) ou um formulário. Além disso, as opções na seção
Propriedades da estrutura dos aplicativos do Windows ficam indisponíveis.

Exibir configurações do Windows


Clique neste botão para gerar e abrir o arquivo app.manifest. O Visual Studio usa esse
arquivo para gerar dados de manifesto do aplicativo. Em seguida, defina o nível de
execução solicitado pelo UAC modificando a tag <requestedExecutionLevel> no
app.manifest da seguinte maneira:
<requestedExecutionLevel level="asInvoker" />

O ClickOnce funciona com um nível de asInvoker ou no modo virtualizado (não há


geração de manifesto). Para especificar o modo virtualizado, remova toda a marcação
de app.manifest.

Para obter mais informações sobre a geração de manifesto, consulte Implantação do


ClickOnce no Windows Vista.

Propriedades da estrutura do aplicativo do


Windows
As seguintes configurações estão disponíveis na seção Propriedades da estrutura dos
aplicativos do Windows. Essas opções estarão disponíveis somente se a caixa de
seleção Habilitar estrutura de aplicativo estiver selecionada.

 Dica

A seção depois desta descreve as configurações Propriedades da estrutura do


aplicativos do Windows específicas para aplicativos WPF (Windows Presentation
Foundation).

Habilitar estilos visuais do XP


Habilita ou desabilita os estilos visuais do Windows XP, também conhecidos como
Temas do Windows XP. Os estilos visuais do Windows XP habilitam, por exemplo,
controles com cantos arredondados e cores dinâmicas. O padrão é habilitado.

Criar um aplicativo de instância única


Marque esta caixa de seleção para impedir que usuários executem várias instâncias do
aplicativo. A configuração padrão para essa caixa de seleção é desmarcada, o que
permite que várias instâncias do aplicativo sejam executadas. Para saber mais, confira o
evento StartupNextInstance.

Salvar My.Settings no desligamento


Marque esta caixa de seleção para especificar que as configurações My.Settings do
aplicativo são salvas quando os usuários desligam seus computadores. A configuração
padrão é habilitado. Se essa opção estiver desabilitada, será possível salvar as
configurações do aplicativo manualmente chamando My.Settings.Save .

Modo de autenticação
Selecione Windows (o padrão) para especificar o uso da autenticação do Windows para
identificar o usuário conectado no momento. É possível recuperar essas informações no
tempo de execução usando o objeto My.User . Selecione Definido pelo aplicativo se
você for fornecer seu próprio código para autenticar usuários em vez de usar os
métodos de autenticação padrão do Windows.

Modo de desligamento
Selecione Quando o formulário de inicialização fechar (o padrão) para especificar que
o aplicativo saia quando o formulário definido como o formulário de inicialização for
fechado, mesmo se outros formulários estiverem abertos. Selecione Quando o último
formulário fechar para especificar que o aplicativo saia quando o último formulário for
fechado ou quando a instrução My.Application.Exit ou End for chamada
explicitamente.

Selecione No desligamento explícito para especificar que o aplicativo saia quando você
chamar explicitamente Shutdown .

Selecione No fechamento da última janela para especificar que o aplicativo saia


quando a última janela for fechada ou quando você chamar explicitamente Shutdown .
Essa é a configuração padrão.

Selecione No fechamento da janela principal para especificar que o aplicativo saia


quando a janela principal for fechada ou quando você chamar explicitamente Shutdown .

Tela inicial
Selecione o formulário que você deseja usar como uma tela inicial. É necessário ter
criado anteriormente uma tela inicial usando um formulário ou modelo. O padrão é
(Nenhum).

Exibir eventos de aplicativo


Clique neste botão para exibir um arquivo de código de eventos no qual você pode
gravar eventos para os eventos de estrutura do aplicativo Startup , Shutdown ,
UnhandledException , StartupNextInstance e NetworkAvailabilityChanged . Também é
possível substituir determinados métodos de estrutura do aplicativo. Por exemplo, é
possível alterar o comportamento de exibição da tela inicial substituindo OnInitialize .

Propriedades de estrutura do aplicativo do


Windows para aplicativos WPF (Windows
Presentation Foundation)
As seguintes configurações estarão disponíveis na seção Propriedades da estrutura do
aplicativo do Windows quando o projeto for um aplicativo WPF (Windows Presentation
Foundation). Essas opções estarão disponíveis somente se a caixa de seleção Habilitar
estrutura de aplicativo estiver selecionada. As opções listadas nesta tabela estão
disponíveis somente para aplicativos WPF ou aplicativos de navegador WPF. Elas não
estão disponíveis para bibliotecas de controle de usuário ou de controle personalizado
WPF.

Modo de desligamento
Esta propriedade é aplicável somente a aplicativos WPF (Windows Presentation
Foundation).

Selecione No desligamento explícito para especificar que o aplicativo saia quando você
chamar explicitamente Shutdown.

Selecione No fechamento da última janela para especificar que o aplicativo saia


quando a última janela for fechada ou quando você chamar explicitamente Shutdown.
Essa é a configuração padrão.

Selecione No fechamento da janela principal para especificar que o aplicativo saia


quando a janela principal for fechada ou quando você chamar explicitamente Shutdown.

Para obter mais informações sobre como usar essa configuração, consulte Shutdown

Editar XAML
Este botão abre o arquivo de definição de aplicativo (Application.xaml) no editor XAML.
Quando você clicar neste botão, Application.xaml será aberto no nó de definição de
aplicativo. Talvez seja necessário editar esse arquivo para executar determinadas tarefas,
como a definição de recursos. Se o arquivo de definição de aplicativo não existir, o
Designer de Projeto criará um.
Exibir eventos de aplicativo
Este botão abre o arquivo de classe Application (Application.xaml.vb) em um editor de
código. Se o arquivo não existir, o Designer de Projeto criará um com o namespace e o
nome de classe apropriado.

O objeto Application gera eventos quando ocorrem determinadas alterações no estado


do aplicativo (por exemplo, na inicialização ou no desligamento do aplicativo). Para
obter uma lista completa dos eventos que essa classe expõe, consulte Application. Esses
eventos são manipulados na seção de código do usuário da classe parcial Application .
Caixa de diálogo Informações do
Assembly
Artigo • 13/01/2024

A caixa de diálogo Informações do Assembly é usada para especificar os valores dos


atributos de assembly global do .NET Framework, que são armazenados no arquivo
AssemblyInfo criado automaticamente com o projeto. No Gerenciador de Soluções, o
arquivo AssemblyInfo está localizado no nó Meu Projeto para projetos do Visual Basic
(clique em Mostrar todos os arquivos para exibi-lo). Para projetos do C#, está
localizado em Propriedades. Para saber mais, confira Atributos (C#).

Para acessar essa caixa de diálogo, selecione um nó do projeto no Gerenciador de


Soluções e, no menu Projeto, selecione Propriedades. Na página Aplicativo, selecione o
botão Informações do Assembly.

Lista de elementos de interface do usuário


Título
Especifica um título para o manifesto do assembly. Corresponde ao
AssemblyTitleAttribute.

Descrição
Especifica uma descrição opcional para o manifesto do assembly. Corresponde ao
AssemblyDescriptionAttribute.

Empresa
Especifica um nome de empresa para o manifesto do assembly. Corresponde ao
AssemblyCompanyAttribute.

É possível definir ou alterar o valor padrão de Empresa no registro. Procure pelo valor
RegisteredOrganization na chave
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows
NT\CurrentVersion ou
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion, dependendo da sua versão do Windows.

Product
Especifica um nome de produto para o manifesto do assembly. Corresponde ao
AssemblyProductAttribute.
Direitos autorais
Especifica uma notificação de direitos autorais para o manifesto do assembly.
Corresponde ao AssemblyCopyrightAttribute.

Marca Registrada
Especifica uma marca registrada para o manifesto do assembly. Corresponde ao
AssemblyTrademarkAttribute.

Versão do Assembly
Especifica a versão do assembly. Corresponde ao AssemblyVersionAttribute.

Versão do Arquivo
Especifica um número de versão que instrui o compilador a usar uma versão específica
do recurso de versão de arquivo do Win32. Corresponde ao
AssemblyFileVersionAttribute.

GUID
Um GUID exclusivo que identifica o assembly. Ao criar um projeto, o Visual Studio gera
um GUID para o assembly. Corresponde ao Guid.

Linguagem Neutra
Especifica a qual cultura o assembly dá suporte. Corresponde ao
NeutralResourcesLanguageAttribute. O padrão é (Nenhum).

Tornar assembly visível usando COM


Especifica se os tipos no assembly estarão disponíveis para o COM. Corresponde ao
ComVisibleAttribute.

7 Observação

Para obter mais informações sobre como definir essas propriedades ao gerar um
pacote NuGet em uma biblioteca de classes .NET Framework, consulte Configurar
propriedades do projeto para o pacote. E para obter mais informações sobre
licenciamento e expressões relacionadas a um pacote NuGet, consulte
licenses.nuget.org.

Confira também
Página de Aplicativo, Designer de Projeto (Visual Basic)
Atributos
Página Aplicativo, Designer de Projeto
(C#)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Aplicativo do Designer de Projeto para especificar as propriedades e


configurações de aplicativo do projeto.

Para acessar a página Aplicativo, escolha um nó de projeto (não o nó Solução) no


Gerenciador de Soluções. Em seguida, escolha Projeto>Propriedades na barra de
menus. Quando o Designer de Projeto for exibido, clique na guia Aplicativo.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Configurações Gerais de Aplicativos


As opções a seguir permitem definir as configurações gerais para o aplicativo.

Nome do assembly

Especifica o nome do arquivo de saída que guardará o manifesto do assembly. Alterar


essa propriedade também altera a propriedade Nome de saída.

Também é possível fazer essa alteração na linha de comando usando /out (opções do
compilador C#).

Para acessar essa propriedade de forma programática, consulte AssemblyName.

Namespace padrão

Especifica o namespace base para arquivos adicionados ao projeto.

Consulte namespace para obter mais informações sobre a criação de namespaces em


seu código.

Para acessar essa propriedade de forma programática, consulte RootNamespace.


Estrutura de Destino

Especifica a versão do .NET direcionada pelo aplicativo. Essa opção pode ter valores
diferentes dependendo de quais versões do .NET estão instaladas no computador.

Para projetos .NET Framework, o valor padrão corresponde à estrutura de destino que
você especificou quando criou o projeto.

Em um projeto direcionado ao .NET Core, as versões disponíveis poderão ser exibidas


da seguinte maneira:

7 Observação
Os pacotes de pré-requisitos listados na Caixa de diálogo Pré-requisitos são
definidos automaticamente na primeira vez em que a caixa de diálogo é aberta. Se
você alterar posteriormente a estrutura de destino do projeto, será necessário
selecionar os pré-requisitos manualmente para corresponder à nova estrutura de
destino.

Para obter mais informações, confira Visão geral do direcionamento de estrutura.

Tipo de saída

Especifica o tipo de aplicativo a ser compilado. Os valores são diferentes dependendo


do tipo de projeto. Por exemplo, para um projeto do Aplicativo de Console, é possível
especificar Aplicativo do Windows, Aplicativo de Console ou Biblioteca de Classes
como o tipo de saída.

Para um projeto de aplicativo Web, é necessário especificar Biblioteca de Classes.

Para obter mais informações sobre a propriedade Tipo de saída, confira /target (Opções
do compilador do C#).

Para obter informações sobre como acessar esta propriedade de forma programática,
consulte OutputType.

Gerar redirecionamentos de associação automaticamente

Os redirecionamentos da associação serão adicionados ao seu projeto se o aplicativo ou


seus componentes referenciarem mais de uma versão do mesmo assembly. Se você
desejar definir manualmente os redirecionamentos de associação no arquivo de projeto,
desmarque Gerar Redirecionamentos de Associação Automaticamente.

Para obter mais informações sobre o redirecionamento, confira Redirecionando versões


de assembly.

Objeto de inicialização

Define o ponto de entrada a ser chamado quando o aplicativo é carregado. Geralmente,


isso é definido como o principal formulário em seu aplicativo ou como o procedimento
Main que deve ser executado quando o aplicativo é iniciado. Como as bibliotecas de

classes não têm um ponto de entrada, sua única opção para essa propriedade é (Não
definido).

Por padrão, em um projeto do aplicativo WPF, esta opção é definida como (Não
definido). A outra opção é [projectname].App. Em um projeto do WPF, é necessário
definir o URI de inicialização para carregar um recurso de interface do usuário quando o
aplicativo é iniciado. Para fazer isso, abra o arquivo Application.xaml em seu projeto e
defina a propriedade StartupUri como um arquivo .xaml em seu projeto, como
Window1.xaml. Para obter uma lista dos elementos raiz aceitáveis, consulte StartupUri.
Também é necessário definir um método public static void Main() em uma classe no
projeto. Essa classe será exibida na lista Objeto de inicialização como
ProjectName.ClassName. Em seguida, é possível selecionar a classe como o objeto de
inicialização.

Consulte /main (Opções do compilador do C#) para obter mais informações. Para
acessar essa propriedade de forma programática, consulte StartupObject.

Informações do assembly

Esse botão abre a caixa de diálogo Informações do assembly.

Recursos
As opções Recursos ajudam a definir as configurações de recursos para seu aplicativo.

Ícone e manifesto

Por padrão, este botão de opção é selecionado e as opções Ícone e Manifesto são
habilitadas. Isso permite selecionar seu próprio ícone ou diferentes opções de geração
de manifesto. Deixe esse botão de opção selecionado, a menos que você esteja
fornecendo um arquivo de recurso para o projeto.

Ícone

Define o arquivo .ico que você deseja usar como seu ícone do programa. Clique em
Procurar para procurar um gráfico existente ou digite o nome do arquivo que você
deseja. Consulte -win32icon (Opções do compilador do C#) para obter mais
informações.

Para acessar essa propriedade de forma programática, consulte ApplicationIcon.

Para obter informações sobre como criar um ícone, confira Editor de imagens para
ícones.

Manifesto

Seleciona uma opção de geração de manifesto quando o aplicativo é executado no


Windows no UAC (Controle de Conta de Usuário). Essa opção pode ter os seguintes
valores:
Inserir manifesto com configurações padrão. Dá suporte à maneira típica como o
Visual Studio funciona no Windows, que é inserir as informações de segurança no
arquivo executável do aplicativo, especificando que requestedExecutionLevel seja
AsInvoker . Essa é a opção padrão.

Criar aplicativo sem um manifesto. Esse método é conhecido como virtualização.


Use essa opção para compatibilidade com aplicativos anteriores.

Properties\app.manifest. Essa opção é necessária para aplicativos implantados


pelo ClickOnce ou COM sem registro. Se você publicar um aplicativo usando a
implantação do ClickOnce, Manifesto será definido automaticamente como essa
opção.

Arquivo de recurso

Selecione esse botão de opção quando você estiver fornecendo um arquivo de recurso
para o projeto. Selecionar essa opção desabilita as opções Ícone e Manifesto.

Insira um nome de caminho ou use o botão Procurar (... ) para adicionar um arquivo de
recurso Win32 ao projeto.

Para obter mais informações, confira Criar arquivos de recurso para aplicativos .NET.

Confira também
Interface do usuário das propriedades renovadas do projeto
Página Eventos de Build, Designer de
Projeto (C#)
Artigo • 13/01/2024

Use a página Eventos de Build do Designer de Projeto para especificar as instruções de


configuração de build. Você também pode especificar as condições sob as quais eventos
pós-build são executados. Para obter mais informações, consulte Como: especificar
eventos de build (C#) e Como: especificar eventos de build (Visual Basic).

Lista de elementos de interface do usuário


Configuration

Esse controle não é editável nesta página. Para obter uma descrição desse controle,
consulte Página de Build, Designer de Projeto (C#).

Plataforma

Esse controle não é editável nesta página. Para obter uma descrição desse controle,
consulte Página de Build, Designer de Projeto (C#).

Linha de comando de evento de pré-compilação

Especifica comandos serem executados antes do início do build. Para digitar comandos
longos, clique em Editar Pré-Build para exibir a Caixa de Diálogo Linha de Comando de
Evento de Pré-Build/Evento de Pós-Build.

7 Observação

Eventos de pré-build não serão executados se o projeto estiver atualizado e


nenhum build será disparado.

Linha de comando de eventos pós-compilação

Especifica comandos a serem executados após o fim do build. Para digitar comandos
longos, clique em Editar Pós-Build para exibir a Caixa de Diálogo Linha de Comando
de Evento de Pré-Build/Evento de Pós-Build.

7 Observação
Adicione uma instrução call antes de todos os comandos pós-build que executam
arquivos .bat. Por exemplo, call C:\MyFile.bat ou call C:\MyFile.bat call
C:\MyFile2.bat .

Executar o evento pós-compilação

Especifica as condições a seguir para o evento de pós-build ser executado, conforme


mostrado na tabela a seguir.

ノ Expandir a tabela

Opção Resultado

Always O evento de pós-build será executado independentemente de o build ser


bem-sucedido.

Na compilação O evento de pós-build será executado se o build for bem-sucedido. Assim,


bem-sucedida o evento será executado mesmo para um projeto atualizado, desde que o
build seja bem-sucedido.

Quando o build O evento de pós-build só será executado quando o arquivo de saída do


atualizar a saída do compilador (.exe ou .dll) for diferente do arquivo de saída anterior do
projeto compilador. Portanto, um evento de pós-build não será executado se um
projeto for atualizado.

No arquivo de projeto
Em versões anteriores do Visual Studio, quando você altera a configuração
PreBuildEvent ou PostBuildEvent no IDE, o Visual Studio adiciona uma propriedade
PreBuildEvent ou PostBuildEvent ao arquivo de projeto. Portanto, por exemplo, se a

configuração da linha de comando PreBuildEvent no IDE for a seguinte:

input

"$(ProjectDir)PreBuildEvent.bat" "$(ProjectDir)..\" "$(ProjectDir)"


"$(TargetDir)"

então, a configuração do arquivo de projeto será:

XML

<PropertyGroup>
<PreBuildEvent>"$(ProjectDir)PreBuildEvent.bat" "$(ProjectDir)..\"
"$(ProjectDir)" "$(TargetDir)" />
</PropertyGroup>

Para projetos do .NET Core, o Visual Studio 2019 (e o Visual Studio 2017 em
atualizações mais recentes) adiciona um destino do MSBuild chamado PreBuild ou
PostBuild para configurações de PreBuildEvent e PostBuildEvent. Esses destinos usam

os atributos BeforeTargets e AfterTargets, os quais o MSBuild reconhece. Por exemplo,


para o exemplo anterior, o Visual Studio agora gera o seguinte código:

XML

<Target Name="PreBuild" BeforeTargets="PreBuildEvent">


<Exec Command="&quot;$(ProjectDir)PreBuildEvent.bat&quot;
&quot;$(ProjectDir)..\&quot; &quot;$(ProjectDir)&quot;
&quot;$(TargetDir)&quot;" />
</Target>

Para um evento pós-build, use o nome PostBuild e defina o atributo AfterTargets


como PostBuildEvent .

XML

<Target Name="PostBuild" AfterTargets="PostBuildEvent">


<Exec Command="echo Output written to $(TargetDir)" />
</Target>

7 Observação

Essas alterações de arquivo de projeto foram feitas para dar suporte a projetos no
estilo SDK. Se você estiver migrando um arquivo de projeto do formato antigo para
o formato de estilo SDK manualmente, deverá excluir as propriedades
PreBuildEvent e PostBuildEvent e substituí-las por destinos PreBuild e PostBuild ,

conforme mostrado no código anterior. Para saber se o projeto é um projeto no


estilo SDK, confira Verificar o formato do projeto.

Confira também
Como especificar eventos de build (Visual Basic)
Como especificar eventos de build (C#)
Referência de Propriedades do Projeto
Compilando e criando
Caixa de diálogo da linha de comando
do evento de pré-build/evento de pós-
build
Artigo • 13/01/2024

Você pode digitar eventos de pré ou de pós-build para a Página de Eventos de Build,
Designer de Projeto (C#) diretamente na caixa Editar, ou pode selecionar macros pré e
pós-build em uma lista de macros disponíveis.

7 Observação

Eventos de pré-build não serão executados se o projeto estiver atualizado e


nenhum build será disparado.

Lista de elementos da interface de usuário


Caixa de edição de linha de comando

Contém os eventos a serem executados para pré ou pós-build.

7 Observação

Adicione uma instrução call antes de todos os comandos pós-build que executam
arquivos .bat. Por exemplo, call C:\MyFile.bat ou call C:\MyFile.bat call
C:\MyFile2.bat .

Macros

Expande a caixa de edição para exibir uma lista de macros para inserir na caixa de
edição de linha de comando.

Tabela de macros

Lista as macros disponíveis e o valor delas. Consulte Macros abaixo para obter uma
descrição de cada uma. Você pode selecionar somente uma macro por vez para inserir
na caixa de edição de linha de comando.

Inserção
Insere na caixa de edição de inserções na linha de comando a macro selecionada na
tabela de macros.

Macros
Você pode usar qualquer uma dessas macros para especificar locais de arquivos ou
obter o nome real do arquivo de entrada no caso de várias seleções. Essas macros não
diferenciam maiúsculas de minúsculas.

ノ Expandir a tabela

Macro Descrição

$(ConfigurationName) O nome da configuração do projeto atual, por exemplo, “Depurar”.

$(OutDir) Caminho para o diretório do arquivo de saída com relação ao diretório


do projeto. Isso é resolvido para o valor da propriedade Diretório de
Saída. Inclui a barra invertida '\'.

$(DevEnvDir) O diretório de instalação do Visual Studio (definido com a unidade e o


caminho); inclui a barra invertida '\' à direita.

$(PlatformName) O nome da plataforma de destino atual. Por exemplo, "AnyCPU".

$(ProjectDir) O diretório do projeto (definido com a unidade e o caminho); inclui a


barra invertida '\' à direita.

$(ProjectPath) O nome de caminho absoluto do projeto (definido com a unidade, o


caminho, o nome de base e a extensão de arquivo).

$(ProjectName) O nome de base do projeto.

$(ProjectFileName) O nome de arquivo do projeto (definido com a extensão de arquivo e


nome de base).

$(ProjectExt) A extensão de arquivo do projeto. Inclui o “.” antes da extensão de


arquivo.

$(SolutionDir) O diretório da solução (definido com a unidade e o caminho); inclui a


barra invertida '\' à direita.

$(SolutionPath) O nome de caminho absoluto da solução (definido com a unidade, o


caminho, o nome de base e a extensão de arquivo).

$(SolutionName) O nome de base da solução.

$(SolutionFileName) O nome de arquivo da solução (definido com a extensão de arquivo e


nome de base).
Macro Descrição

$(SolutionExt) A extensão de arquivo da solução. Inclui o “.” antes da extensão de


arquivo.

$(TargetDir) O diretório do arquivo de saída primária para o build (definido com a


unidade e o caminho). Inclui a barra invertida '\'.

$(TargetPath) O nome de caminho absoluto do arquivo de saída primária do build


(definida com unidade, caminho, nome de base e extensão de arquivo).

$(TargetName) O nome base do arquivo de saída primária para o build.

$(TargetFileName) O nome do arquivo de saída primária do build (definido como nome de


base e extensão de arquivo).

$(TargetExt) A extensão de arquivo do arquivo de saída primária para o build. Inclui o


“.” antes da extensão de arquivo.

Confira também
Especificando eventos de build personalizados no Visual Studio
Página Eventos de Build, Designer de Projeto (C#)
Como especificar eventos de build (Visual Basic)
Como especificar eventos de build (C#)
Página de Build, Designer de Projeto
(C#)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Compilar do Designer de Projeto para especificar as propriedades de


configuração de build do projeto. Essa página se aplica somente a projetos do Visual
C#.

Para acessar a página Build, escolha um nó do projeto (não o nó Solução) no


Gerenciador de Soluções. Em seguida, escolha Exibir, Páginas de Propriedade no
menu. Quando o Designer de Projeto for exibido, escolha a guia Build.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Configuração e plataforma
As opções a seguir permitem selecionar a configuração e a plataforma a ser exibida ou
modificada.

7 Observação

Com configurações de build simplificadas, o sistema do projeto determina se é


necessário compilar uma versão de depuração ou de liberação. Portanto, essas
opções não são exibidas. Para saber mais, consulte Como definir configurações de
depuração e versão.

Configuration

Especifica quais definições de configuração exibir ou modificar. As configurações podem


ser Ativa (Depuração) (esse é o padrão), Depuração, Versão ou Todas as
Configurações.
Plataforma

Especifica quais configurações de plataforma exibir ou modificar. A configuração padrão


é Ativo (Qualquer CPU). É possível alterar a plataforma ativa usando o Configuration
Manager. Para obter mais informações, consulte Como criar e editar configurações.

Geral
As opções a seguir permitem definir várias configurações do compilador do C#.

Símbolos de compilação condicional

Especifica símbolos nos quais a compilação condicional é executada. Separe os símbolos


com um ponto-e-vírgula (";"). Para obter mais informações, consulte /define (opções do
compilador C#).

Definir a constante DEBUG

Define DEBUG como um símbolo em todos os arquivos de código-fonte do aplicativo.


Selecionar essa opção equivale a usar a opção de linha de comando /define:DEBUG .

Definir a constante TRACE

Define TRACE como um símbolo em todos os arquivos de código-fonte do aplicativo.


Selecionar essa opção equivale a usar a opção de linha de comando /define:TRACE .

Destino da plataforma

Especifica o processador de destino do arquivo de saída. Escolha x86 para qualquer


processador compatível com Intel de 32 bits, x64 para qualquer processador compatível
com Intel de 64 bits, ARM para processadores ARM ou Qualquer CPU para especificar
que qualquer processador é aceitável. Qualquer CPU é o valor padrão para projetos,
pois permite que o aplicativo seja executado em uma ampla variedade de hardwares.

Para obter mais informações, consulte /platform (opções do compilador C#).

Permite valor nulo

Especifica o contexto anulável em C# em todo o projeto. Essa opção de interface do


usuário foi introduzida no Visual Studio 16.5 e só está habilitada para projetos que usam
o C# 8.0 ou posterior.

Para obter mais informações, confira Contextos anuláveis.

Preferir 32 bits
Se a caixa de seleção Preferir 32 bits estiver marcada, o aplicativo será executado como
um aplicativo de 32 bits em versões de 32 e 64 bits do Windows. Se a caixa de seleção
estiver desmarcada, o aplicativo será executado como um aplicativo de 32 bits em
versões de 32 bits do Windows e como um aplicativo de 64 bits em versões de 64 bits
do Windows.

Se você executar um aplicativo como um aplicativo de 64 bits, o ponteiro duplicará de


tamanho e poderão ocorrer problemas de compatibilidade com outras bibliotecas que
são exclusivamente de 32 bits. É útil executar um aplicativo de 64 bits somente se ele
precisa de mais de 4 GB de memória ou se as instruções de 64 bits fornecem uma
melhoria de desempenho significativa.

Essa caixa de seleção estará disponível somente se todas as seguintes condições forem
verdadeiras:

Na Página Build, a lista Destino da plataforma é definida com Qualquer CPU.

Na Página Aplicativo, a lista Tipo de saída especifica que o projeto é um


aplicativo.

Na Página Aplicativo, a lista Estrutura de destino especifica o .NET Framework 4.5.

Permitir código não seguro

Permite a compilação do código que usa a palavra-chave unsafe. Para obter mais
informações, consulte /unsafe (opções do compilador C#).

Otimizar código

Habilita ou desabilita as otimizações executadas pelo compilador para tornar o arquivo


de saída menor, mais rápido e mais eficiente. Para obter mais informações, consulte
/optimize (opções do compilador C#).

Erros e avisos
As configurações a seguir são usadas para configurar as opções de erro e de aviso para
o processo de build.

Nível de aviso

Especifica o nível a ser exibido para avisos do compilador. Para obter mais informações,
consulte /warn (opções do compilador C#).

Suprimir avisos
Bloqueia a capacidade do compilador de gerar um ou mais avisos. Separe vários
números de aviso com uma vírgula ou um ponto-e-vírgula. Para obter mais
informações, consulte /nowarn (opções do compilador C#).

Tratar Avisos como Erros


As configurações a seguir são usadas para especificar quais avisos são tratados como
erros. Selecione uma das opções a seguir para indicar em quais condições um erro é
retornado quando o build recebe um aviso. Para obter mais informações, consulte
/warnaserror (opções do compilador C#).

Nenhum – Não trata nenhum aviso como erro.

Todos – Trata todos os avisos como erros.

Avisos específicos – Trata os avisos especificados como erros. Separe vários números de
aviso com uma vírgula ou um ponto-e-vírgula.

 Dica

Se você não quiser que os avisos de análise de código sejam tratados como erros,
confira Perguntas frequentes sobre análise de código.

Saída
As configurações a seguir são usadas para configurar as opções de saída para o
processo de build.

Caminho de saída

Especifica o local dos arquivos de saída para a configuração deste projeto. Insira o
caminho da saída do build nessa caixa ou escolha o botão Procurar para especificar um
caminho. O caminho é relativo; se você inserir um caminho absoluto, ele será salvo
como relativo. O caminho padrão é bin\Debug ou bin\Release\.

Com configurações de build simplificadas, o sistema do projeto determina se é


necessário compilar uma versão de depuração ou de liberação. O comando Build do
menu Depurar (F5) colocará o build no local de depuração, independentemente do
Caminho de saída você especificar. No entanto, o comando Build do menu Build o
coloca no local especificado. Para obter mais informações, consulte Understanding Build
Configurations (Noções básicas sobre configurações de build).
Arquivo de documentação XML

Especifica o nome de um arquivo no qual os comentários da documentação serão


processados. Para obter mais informações, consulte /doc (opções do compilador C#).

Registrar para interoperabilidade COM

Indica que o aplicativo gerenciado exporá um objeto COM (um COM Callable Wrapper)
que permite que um objeto COM interaja com o aplicativo gerenciado. A propriedade
Tipo de saída da página Aplicativo do Designer de Projeto desse aplicativo deve ser
definida como Biblioteca de Classes para que a propriedade Registrar para a
interoperabilidade COM esteja disponível. Para obter uma classe de exemplo que pode
ser incluída no aplicativo Visual C# e exposta como um objeto COM, confira Classe COM
de exemplo.

Gerar assembly de serialização

Especifica se o compilador usará a ferramenta Gerador de Serializador XML (Sgen.exe)


para criar assemblies de serialização XML. Os assemblies de serialização poderão
melhorar o desempenho da inicialização de XmlSerializer se você tiver usado essa classe
para serializar os tipos no código. Por padrão, essa opção é definida como Automático,
que especifica que os assemblies de serialização serão gerados apenas se você tiver
usado XmlSerializer para codificar tipos no código em XML. Desativado especifica que
os assemblies de serialização nunca devem ser gerados, independentemente de o
código usar XmlSerializer. Ativado especifica que os assemblies de serialização sempre
devem ser gerados. Os assemblies de serialização são chamados
TypeName .XmlSerializers.dll. Para obter mais informações, consulte Ferramenta Gerador

de Serializador XML (Sgen.exe).

Avançado

Clique para exibir a caixa de diálogo Configurações de Build Avançadas (C#).

Confira também
Referência de Propriedades do Projeto
Opções do compilador de C#
Caixa de diálogo Configurações de Build
Avançadas (C#)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a caixa de diálogo Configurações de Build Avançadas do Designer de Projeto para


especificar as propriedades de configuração de build avançadas do projeto. Essa caixa
de diálogo se aplica somente a projetos C#.

Geral
As opções a seguir permitem definir configurações gerais avançadas.

Versão da Linguagem

Links para /langversion (opções do compilador C#), que fornece informações sobre
como uma versão de linguagem padrão é escolhida com base na estrutura de destino
de um projeto.

Relatório de erros do compilador interno

Especifica se os erros do compilador são relatados à Microsoft. Se for definido como


prompt (o padrão), você receberá um prompt se ocorrer um erro interno do
compilador, fornecendo a opção de enviar um relatório de erro eletronicamente à
Microsoft. Se for definido como send, um relatório de erros será enviado
automaticamente. Se for definido como queue, relatórios de erros serão colocados na
fila. Se for definido como none, o erro será relatado somente na saída de texto do
compilador. Para obter mais informações, consulte /errorreport (opções do compilador
C#).

Verificar estouro/estouro negativo aritmético

Especifica se uma instrução de aritmética de números inteiros, que não está no escopo
das palavras-chave marcadas ou desmarcadas e que resulta em um valor fora do
intervalo do tipo de dados, causará uma exceção de tempo de execução. Para obter
mais informações, consulte /checked (opções do compilador C#).

Não referenciar mscorlib.dll

Especifica se mscorlib.dll será importado para o programa, definindo todo o namespace


System. Marque essa caixa se desejar definir ou criar seus próprios objetos e namespace
System. Para obter mais informações, consulte /nostdlib (opções do compilador C#).

Saída
As opções a seguir permitem especificar opções de saída avançadas.

Informações de depuração

Especifica o tipo de informações de depuração geradas pelo compilador. Para obter


informações sobre como configurar o desempenho de depuração de um aplicativo,
consulte Facilitando a depuração de uma imagem. Essa configuração tem as seguintes
opções:

nenhum

Especifica que nenhuma informação de depuração será gerada.

completo

Permite anexar um depurador ao programa em execução.

pdbonly

Permite a depuração de código-fonte quando o programa é iniciado no


depurador, mas apenas exibirá o assembler quando o programa em execução
estiver anexado ao depurador.

portátil

Produz um arquivo PDB, um arquivo de símbolo portátil e não específico da


plataforma que fornece outras ferramentas, especialmente depuradores,
informações sobre o que está no arquivo executável principal e como ele foi
produzido. Consulte PDB portátil para obter mais informações.

inserido

Incorpora informações de símbolo portátil no assembly. Nenhum arquivo PDB


externo é produzido.

Para obter mais informações, consulte /debug (opções do compilador C#).

Alinhamento de Arquivo

Especifica o tamanho das seções no arquivo de saída. Os valores válidos são 512, 1024,
2048, 4096 e 8192. Esses valores são medidos em bytes. Cada seção será alinhada em
um limite que é um múltiplo desse valor, afetando o tamanho do arquivo de saída. Para
obter mais informações, consulte /filealign (opções do compilador C#).

Endereço básico da biblioteca

Especifica o endereço básico preferencial no qual uma DLL será carregada. O endereço
básico padrão de uma DLL é definido pelo Common Language Runtime do .NET
Framework. Para obter mais informações, consulte /baseaddress (opções do compilador
C#).

Confira também
Opções do compilador do C#
Página de build, Designer de Projeto (C#)
Análise de Código, Designer de Projeto
Artigo • 13/01/2024

Contém a ferramenta de análise de código que você pode optar por executar em seu
código. A ferramenta relata informações sobre os assemblies, como violações das regras
de programação e design estabelecidas nas Diretrizes de Design do Microsoft .NET.

Lista de elementos de interface do usuário


Habilitar Análise de Código
Habilita ou desabilita a análise de código para seu projeto.

Regras de Design
Habilita ou desabilita as regras de design. Você também pode expandir essa entrada
para habilitar ou desabilitar regras individuais.

Regras de Globalização
Habilita ou desabilita as regras de globalização. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de Interoperabilidade
Habilita ou desabilita as regras de interoperabilidade. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de Facilidade de Manutenção


Habilita ou desabilita as regras de facilidade de manutenção. Você também pode
expandir essa entrada para habilitar ou desabilitar regras individuais.

Regras de Mobilidade
Habilita ou desabilita as regras de mobilidade. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de nomenclatura
Habilita ou desabilita as regras de nomenclatura. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de desempenho
Habilita ou desabilita as regras de desempenho. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de portabilidade
Habilita ou desabilita as regras de portabilidade. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de Confiabilidade
Habilita ou desabilita as regras de confiabilidade. Você também pode expandir essa
entrada para habilitar ou desabilitar regras individuais.

Regras de Segurança
Habilita ou desabilita as regras de segurança. Você também pode expandir essa entrada
para habilitar ou desabilitar regras individuais.

Regras de Utilização
Habilita ou desabilita as regras de uso. Você também pode expandir essa entrada para
habilitar ou desabilitar regras individuais.

Confira também
Avisos da análise de código para código gerenciado
Visão geral da análise de código para código gerenciado
Instruções passo a passo: analisando código gerenciado em busca de defeitos de
código
Página de Compilação, Designer de
Projeto (Visual Basic)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Compilar do Designer de Projeto para especificar instruções de


compilação. Você também pode especificar opções avançadas do compilador e eventos
de pré ou pós-build nessa página.

Para acessar a página Compilar, escolha um nó de projeto (não o nó Solução) no


Gerenciador de Soluções. Em seguida, escolha Projeto, Propriedades na barra de
menus. Quando o Designer de Projeto for exibido, clique na guia Compilar.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Configuração e plataforma
As configurações a seguir permitem selecionar a configuração e a plataforma a exibir ou
modificar.

7 Observação

Com configurações de build simplificadas, o sistema do projeto determina se é


necessário compilar uma versão de depuração ou de liberação. Portanto, as listas
Configuração e Plataforma não são exibidas.

Configuration

Especifica quais definições de configuração exibir ou modificar. As configurações são


Depurar (padrão), Versão ou Todas as Configurações. Para saber mais, consulte Noções
básicas das configurações de build e Como criar e editar configurações.

Plataforma
Especifica quais configurações de plataforma exibir ou modificar. Você pode especificar
Qualquer CPU (padrão), x64 ou x86.

Opções de configuração do compilador


As configurações a seguir permitem definir as opções de configuração do compilador.

Caminho de saída da compilação

Especifica o local dos arquivos de saída para a configuração deste projeto. Digite o
caminho da saída de build nesta caixa ou clique no botão Procurar para selecionar um
caminho. Observe que o caminho é relativo; se você inserir um caminho absoluto, ele
será salvo como relativo. O caminho padrão é bin\Debug ou bin\Release\.

Com configurações de build simplificadas, o sistema do projeto determina se é


necessário compilar uma versão de depuração ou de liberação. O comando Build do
menu Depurar (F5) colocará o build no local de depuração, independentemente do
Caminho de saída você especificar. No entanto, o comando Build do menu Build o
coloca no local especificado.

Opção explícita

Especifica se a declaração implícita de variáveis deve ser permitida. Selecione Ativar


para exigir a declaração explícita de variáveis. Isso faz o compilador relatar erros se
variáveis não forem declaradas antes de serem usadas. Selecione Desativar para permitir
a declaração implícita de variáveis.

Essa configuração corresponde à opção do compilador /optionexplicit.

Se um arquivo de código-fonte contiver uma Instrução Explícita de Opção, o valor On


ou Off na instrução substituirá a configuração Opção Explícita na página Compilar.

Quando você cria um novo projeto, a configuração Opção Explícita na página Compilar
é definida como o valor da configuração Opção Explícita na caixa de diálogo Opções.
Para exibir ou alterar a configuração nesta caixa de diálogo, no menu Ferramentas,
clique em Opções. Na caixa de diálogo Opções, expanda Projetos e Soluções e, em
seguida, clique em Padrões de VB. A configuração padrão inicial de Opção Explícita em
Padrões de VB é Ativada.

Configurar Opção Explícita como Off geralmente não é uma boa prática. Você poderia
digitar incorretamente um nome de variável em um ou mais locais, o que levaria a
resultados inesperados na execução do programa.

Opção estrita
Especifica se semântica do tipo estrito deve ser imposta. Quando Opção Estrita está
Ativada, as seguintes condições causam um erro em tempo de compilação:

Conversões de estreitamento implícitas

Associação tardia

Digitação implícita que resulta em um tipo Object

Erros de conversão de redução implícita ocorrerem quando há uma conversão de tipo


de dados implícita que é uma conversão de redução. Para obter mais informações,
consulte Instrução Opção Estrita, Conversões Explícitas e Implícitas e Conversões de
Expansão e Redução.

Um objeto tem associação tardia quando é atribuído a uma propriedade ou a um


método de uma variável declarada como sendo do tipo Object . Para obter mais
informações, consulte Instrução Opção Estrita e Associação Antecipada e Tardia.

Erros de tipo de objeto implícitos ocorrem quando um tipo apropriado não pode ser
inferido de uma variável declarada, portanto, um tipo de Object é inferido. Isso ocorre
principalmente quando você usa uma instrução Dim para declarar uma variável sem usar
uma cláusula As e Option Infer está desativado. Para obter mais informações, consulte
Instrução Opção Explícita, Instrução Opção Inferir e Especificação de Linguagem Visual
Basic.

A configuração Opção Estrita corresponde à opção do compilador /optionstrict.

Se um arquivo de código-fonte contiver uma Instrução Opção Explícita, o valor On ou


Off na instrução substituirá a configuração Opção Explícita na página Compilar.

Quando você cria um projeto, a configuração Opção Estrita na página Compilar é


definida como o valor da configuração Opção Estrita na caixa de diálogo Opções. Para
exibir ou alterar a configuração nesta caixa de diálogo, no menu Ferramentas, clique em
Opções. Na caixa de diálogo Opções, expanda Projetos e Soluções e, em seguida,
clique em Padrões de VB. A configuração padrão inicial de Opção Estrita em Padrões
do VB é Desativada.

Avisos individuais da Opção Estrita

A seção Configurações de Aviso da página Compilar tem configurações que


correspondem às três condições que causam um erro em tempo de compilação quando
Option Strict está ativado. A seguir estão estas configurações:

Conversão implícita
Associação tardia; a chamada poderia falhar no tempo de execução

Tipo implícito; objeto assumido

Quando você define Opção Estrita como Ativada, todas estas três definições de
configuração de aviso são definidas como Erro. Quando você define Opção Estrita
como Desativada, todas as três configurações são definidas como Nenhum.

Você pode alterar individualmente cada definição de configuração de aviso como


Nenhum, Aviso ou Erro. Se todas as três definições de configuração de aviso estiverem
definidas como Erro, On aparecerá na caixa Option strict . Se todas as três estiverem
definidas como Nenhum, Off será exibido nessa caixa. Para qualquer outra combinação
dessas configurações, (personalizado) será exibido.

Opção comparar

Especifica o tipo de comparação de cadeias de caracteres a usar. Selecione Binário para


instruir o compilador a usar comparações de cadeias de caracteres binárias com
diferenciação de maiúsculas e minúsculas. Selecione Texto usar comparações de cadeias
de caracteres de texto específicas da localidade sem diferenciação de maiúsculas e
minúsculas.

Essa configuração corresponde à opção do compilador /optioncompare.

Se um arquivo de código-fonte contiver uma Instrução Opção Comparar, o valor Binary


ou Text na instrução substituirá a configuração Opção Comparar na página Compilar.

Ao criar um projeto, a configuração Opção Comparar na página Compilar é definida


como o valor da configuração Opção Comparar na caixa de diálogo Opções. Para exibir
ou alterar a configuração nesta caixa de diálogo, no menu Ferramentas, clique em
Opções. Na caixa de diálogo Opções, expanda Projetos e Soluções e, em seguida,
clique em Padrões de VB. A configuração inicial padrão de Opção Comparar em
Padrões do VB é Binário.

Opção inferir

Especifica se você deve permitir inferência de tipo de variável local nas declarações de
variável. Selecione Ativado para permitir o uso de inferência de tipo de variável local.
Selecione Desativado para bloquear a inferência de tipo de variável local.

Essa configuração corresponde à opção do compilador /optioninfer.

Se um arquivo de código-fonte contiver uma Instrução Opção Inferir, o valor On ou Off


na instrução substituirá a configuração Opção Inferir na página Compilar.
Quando você cria um projeto, a configuração Opção Inferir na página Compilar é
definida como o valor da configuração Opção Inferir na caixa de diálogo Opções. Para
exibir ou alterar a configuração nesta caixa de diálogo, no menu Ferramentas, clique em
Opções. Na caixa de diálogo Opções, expanda Projetos e Soluções e, em seguida,
clique em Padrões de VB. A configuração padrão inicial da Opção Inferir em Padrões
do VB é Ativada.

CPU de Destino

Especifica o processador de destino do arquivo de saída. Especifique x86 para qualquer


processador compatível com Intel de 32 bits, x64 para qualquer processador compatível
com Intel de 64 bits, ARM para qualquer processador ARM ou Qualquer CPU para
especificar que qualquer processador é aceitável. Qualquer CPU é o valor padrão para
novos projetos, pois permite que o aplicativo seja executado no maior número de tipos
de hardware.

Para obter mais informações, consulte /platform (Visual Basic).

Preferir 32 bits

Se a caixa de seleção Preferir 32 bits estiver marcada, o aplicativo será executado como
um aplicativo de 32 bits em versões de 32 e 64 bits do Windows. Caso contrário, o
aplicativo será executado como um aplicativo de 32 bits em versões de 32 bits do
Windows e como um aplicativo de 64 bits em versões de 64 bits do Windows.

Executar como um aplicativo de 64 bits duplica o tamanho do ponteiro e pode causar


problemas de compatibilidade com bibliotecas exclusivamente de 32 bits. Fará sentido
executar um aplicativo de 64 bits somente se ele for executado consideravelmente mais
rápido ou precisar de mais de 4 GB de memória.

Essa caixa de seleção estará disponível somente se todas as seguintes condições forem
verdadeiras:

Na Página Compilar, a lista CPU de destino está definida como Qualquer CPU.

Na Página Aplicativo, a lista Tipo de aplicativo especifica que o projeto é um


aplicativo.

Na Página Aplicativo, a lista Estrutura de destino especifica o .NET Framework 4.5.

Configurações de aviso

Esta tabela lista condições de build e o nível de notificação correspondente de Nenhum,


Aviso ou Erro para cada um.
Por padrão, todos os avisos do compilador são adicionados à Lista de Tarefas durante a
compilação. Selecione Desabilitar todos os avisos para instruir o compilador a não
enviar avisos ou erros. Selecione Tratar todos os avisos como erros se você desejar que
o compilador trate avisos como erros que devem ser corrigidos.

Desabilitar todos os avisos

Especifica se o compilador deve poder emitir notificações conforme especificado na


tabela Condição e Notificação descrita anteriormente neste documento. Por padrão,
essa caixa de seleção é desmarcada. Marque esta caixa de seleção para instruir o
compilador a não emitir avisos ou erros.

Essa configuração corresponde à opção do compilador /nowarn.

Tratar todos os avisos como erros

Especifica como tratar avisos. Por padrão, essa caixa de seleção está desmarcada, de
modo que todas as notificações de aviso permanecem definidas como Aviso. Marque
essa caixa de seleção para alterar todas as notificações de aviso para Erro.

Essa opção estará disponível somente se Desabilitar todos os avisos estiver


desmarcada.

Gerar arquivo de documentação XML

Especifica se devem ser geradas informações sobre a documentação. Por padrão, essa
caixa de seleção está marcada, instruindo o compilador a gerar informações sobre a
documentação e incluí-las em um arquivo XML. Desmarque esta caixa de seleção para
instruir o compilador a não criar documentação.

Essa configuração corresponde à opção do compilador /doc.

Registrar para interoperabilidade COM

Especifica se o seu aplicativo gerenciado exibirá um objeto COM (um wrapper que pode
ser chamado por COM) que permite a um objeto COM interagir com o aplicativo.

Por padrão, essa caixa de seleção está desmarcada, o que especifica que o aplicativo
não permitirá interoperabilidade COM. Marque essa caixa de seleção para permitir a
interoperabilidade COM.

Essa opção não está disponível para projetos de Aplicativos do Windows ou Aplicativo
de Console.

Eventos de Compilação
Clique nesse botão para acessar a caixa de diálogo Eventos de Build. Use essa caixa de
diálogo para especificar as instruções de configuração de pré e de pós-build para o
projeto. Essa caixa de diálogo aplica-se a somente projetos Visual Basic. Para obter mais
informações, consulte Caixa de diálogo Eventos de Build(Visual Basic).

Opções compiladas avançadas

Clique neste botão para acessar a caixa de diálogo Configurações Avançadas do


Compilador. Use a caixa de diálogo Configurações Avançadas do Compilador para
especificar as propriedades avançadas de configuração de build de um projeto. Essa
caixa de diálogo aplica-se a somente projetos Visual Basic. Para obter mais informações,
consulte Caixa de diálogo Configurações Avançadas do Compilador (Visual Basic).

Confira também
Como especificar eventos de build (Visual Basic)
Compilador de linha de comando do Visual Basic
Como criar e editar configurações
Caixa de diálogo Configurações de
Compilador Avançadas (Visual Basic)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a caixa de diálogo Configurações Avançadas do Compilador do Designer de


Projeto para especificar as propriedades avançadas de configuração de build do
projeto. Essa caixa de diálogo aplica-se a somente projetos Visual Basic.

Para acessar essa caixa de diálogo


1. No Gerenciador de Soluções, escolha um nó do projeto (não o nó Solução).

2. No menu Projeto , clique em Propriedades. Quando o Designer de Projeto for


exibido, clique na guia Compilar.

3. Na Página Compilar, Designer de Projeto (Visual Basic), selecione a Configuração e


a Plataforma. Nas configurações de build simplificadas, as listas Configuração e
Plataforma não são exibidas. Para saber mais, consulte Como definir configurações
de depuração e versão.

4. Clique em Opções Avançadas de Compilação.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

Otimizações
As opções a seguir especificam otimizações que podem, em alguns casos, diminuir um
arquivo de programa, fazer um programa executar mais rapidamente ou acelerar o
processo de build.

Remover verificações de estouro de inteiro


Por padrão, essa caixa de seleção está desmarcada para habilitar a verificação de
estouro de inteiro. Marque essa caixa de seleção para remover a verificação de estouro
de inteiro. Se você marcar essa caixa de seleção, os cálculos de inteiro poderão ser mais
rápidos. No entanto, se você remover a verificação de estouro e as capacidades de tipo
de dados estourarem, resultados incorretos poderão ser armazenados sem gerar um
erro.

Se as condições de estouro estiverem marcadas e uma operação de inteiro estourar,


uma exceção OverflowException será lançada. Se as condições de estouro não forem
verificadas, os estouros de operação de inteiro não gerarão uma exceção.

Habilitar otimizações

Por padrão, essa caixa de seleção está desmarcada para desabilitar as otimizações do
compilador. Marque essa caixa de seleção para habilitar otimizações do compilador.
Otimizações do compilador tornam o arquivo de saída menor, mais rápido e mais
eficiente. No entanto, uma vez que otimizações causam reorganização de código no
arquivo de saída, as otimizações do compilador podem dificultar a depuração.

Endereço básico de DLL

Essa caixa de texto exibe o endereço básico de DLL padrão em formato hexadecimal. Em
projetos de Biblioteca de Classes e Biblioteca de Controle, você pode usar essa caixa de
texto para especificar o endereço básico a ser usado quando a DLL é criada.

Gerar informações de depuração

Selecione Nenhum, Completo ou Somente pdb na lista. Nenhum especifica que


nenhuma informação de depuração deve ser gerada. Completo especifica que
informações de depuração completas devem ser geradas e Somente pdb especifica que
apenas as informações de depuração de PDB devem ser geradas. O valor padrão desta
opção é Completo.

Constantes de Compilação
Constantes de compilação condicional têm um efeito semelhante ao de usar uma
diretiva de pré-processador #Const em um arquivo de origem, exceto que constantes
definidas são públicas e aplicam-se a todos os arquivos no projeto. Você pode usar
constantes de compilação condicionais junto com a diretiva #If... Then... #Else para
compilar os arquivos de origem condicionalmente. Consulte Compilação Condicional.

Definir a constante DEBUG


Por padrão, essa caixa de seleção é marcada, especificando que uma constante DEBUG
deve ser definida.

Definir a constante TRACE

Por padrão, essa caixa de seleção é marcada, especificando que uma constante TRACE
deve ser definida.

Constantes personalizadas

Insira quaisquer constantes personalizadas para seu aplicativo nessa caixa de texto. As
entradas devem ser delimitadas por vírgulas usando este formato:
Name1="Value1",Name2="Value2",Name3="Value3".

Outras configurações
Gerar assemblies de serialização

Essa configuração especifica se o compilador criará os assemblies de serialização XML.


Os assemblies de serialização poderão melhorar o desempenho da inicialização de
XmlSerializer se você tiver usado essa classe para serializar os tipos no código. O valor
padrão dessa opção é Automático. Automático especifica que os assemblies de
serialização serão gerados apenas se você tiver usado XmlSerializer para codificar tipos
no código em XML. Desativado especifica que os assemblies de serialização nunca
devem ser gerados, independentemente de o código usar XmlSerializer. Ativado
especifica que os assemblies de serialização sempre devem ser gerados. Os assemblies
de serialização são chamados TypeName .XmlSerializers.dll.

Confira também
Página de Compilação, Designer de Projeto (Visual Basic)
Caixa de diálogo de Eventos de Build
(Visual Basic)
Artigo • 13/01/2024

Use a caixa de diálogo Eventos de Build para especificar as instruções de configuração


de build. Você também pode especificar as condições sob as quais eventos de pré-build
ou de pós-build são executados. Para obter mais informações, consulte Como
especificar eventos de build (Visual Basic).

Linha de comando de evento de pré-compilação

Especifica comandos serem executados antes do início do build. Para digitar comandos
longos, clique em Editar Pré-Build para exibir a Caixa de Diálogo Linha de Comando de
Evento de Pré-Build/Evento de Pós-Build.

7 Observação

Eventos de pré-build não serão executados se o projeto estiver atualizado e


nenhum build será disparado.

Linha de comando de eventos pós-compilação

Especifica comandos a serem executados após o fim do build. Para digitar comandos
longos, clique em Editar Pós-Build para exibir a caixa de diálogo Linha de Comando de
Evento de Pré-Build/Evento de Pós-Build.

7 Observação

Adicione uma instrução call antes de todos os comandos pós-build que executam
arquivos .bat. Por exemplo, call C:\MyFile.bat ou call C:\MyFile.bat call
C:\MyFile2.bat .

Executar o evento pós-compilação

Especifica as condições para o evento de pós-build ser executado, conforme mostrado


na tabela a seguir.

ノ Expandir a tabela
Opção Resultado

Always O evento de pós-build será executado independentemente de o build ser


bem-sucedido.

Na compilação O evento de pós-build será executado se o build for bem-sucedido. O


bem-sucedida evento será executado mesmo para um projeto atualizado, desde que o
build seja bem-sucedido. Essa é a configuração padrão.

Quando o build O evento de pós-build só será executado quando o arquivo de saída do


atualizar a saída do compilador (.exe ou .dll) for diferente do arquivo de saída anterior do
projeto compilador. Um evento de pós-build não será executado se um projeto for
atualizado.

Confira também
Página de Compilação, Designer de Projeto (Visual Basic)
Como especificar eventos de build (Visual Basic)
Caixa de diálogo da linha de comando do evento de pré-build/evento de pós-
build
Página de Depuração, Designer de
Projeto
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Depurar do Designer de Projeto para definir as propriedades do


comportamento de depuração em um projeto do Visual Basic ou C#.

Para acessar a página Depurar, selecione um nó do projeto no Gerenciador de


Soluções. No menu Projeto, escolha <ProjectName> Propriedades. Quando o
Designer de Projeto for exibido, clique na guia Depurar.

7 Observação

Este tópico não se aplica a aplicativos UWP. Confira Iniciar uma sessão de
depuração (VB, C#, C++ e XAML) para aplicativos UWP.

Configuração e plataforma
As opções a seguir permitem selecionar a configuração e a plataforma a ser exibida ou
modificada.

Configuration

Especifica quais definições de configuração exibir ou modificar. As configurações podem


ser Depurar (padrão), Versão ou Todas as Configurações.

Plataforma

Especifica quais configurações de plataforma exibir ou modificar. As opções podem


incluir Qualquer CPU (padrão), x64 e x86.

Iniciar ação
Iniciar ação indica o item a ser iniciado quando o aplicativo for depurado: o projeto, um
programa personalizado, uma URL ou nada. Por padrão, essa opção é definida como
Iniciar projeto. A configuração Iniciar ação na página Depurar determina o valor da
propriedade StartAction .
Iniciar projeto

Escolha esta opção para especificar que o executável (para projetos de aplicativos do
Windows e aplicativos de console) deve ser iniciado quando o aplicativo for depurado.
Essa opção é habilitada por padrão.

Iniciar programa externo

Escolha esta opção para especificar que um programa específico deve ser iniciado
quando o aplicativo for depurado.

Iniciar navegador com URL

Escolha esta opção para especificar que uma URL específica deve ser acessada quando o
aplicativo for depurado.

Opções de inicialização
Argumentos de linha de comando

Nesta caixa de texto, digite os argumentos de linha de comando a serem usados para
depuração.

Diretório de trabalho

Nesta caixa de texto, insira o diretório do qual o projeto será inicializado. Ou clique no
botão Procurar (...) para escolher um diretório.

Usar computador remoto

Para depurar o aplicativo de um computador remoto, marque esta caixa de seleção e


insira o caminho para o computador remoto na caixa de texto.

Mecanismos do depurador
Habilitar depuração de código nativo

Esta opção especifica se a depuração de código nativo tem suporte. Marque esta caixa
de seleção se você estiver fazendo chamadas para objetos COM ou se iniciar um
programa personalizado escrito em código nativo que chama o seu projeto e você
precisar depurar o código nativo. Desmarque esta caixa de seleção para desabilitar a
depuração de código não gerenciado. Essa caixa de seleção é desmarcada por padrão.

Habilitar depuração do SQL Server


Marque ou desmarque esta caixa de seleção para habilitar ou desabilitar a depuração de
procedimentos SQL de seu aplicativo do Visual Basic. Essa caixa de seleção é
desmarcada por padrão.

Confira também
Introdução ao depurador
Definições do projeto para configurações de depuração do C#
Definições do projeto para uma configuração de depuração do Visual Basic
Proteger aplicativos ClickOnce
Como criar e editar configurações
Página Minhas Extensões, Designer de
Projeto (Visual Basic)
Artigo • 13/01/2024

Use a página Minhas Extensões do Designer de Projeto para gerenciar My extensões do


namespace em seu projeto. Extensões do namespace My permitem personalizar o
namespace My para adicionar seus próprios membros personalizados. Para obter
informações sobre a criação de extensões personalizadas do namespace My , consulte
Estendendo Meu Namespace no Visual Basic.

Para acessar a página Minhas Extensões, clique duas vezes em Meu Projeto para o nó
do projeto no Gerenciador de Soluções. Quando o Designer de Projeto aparecer, clique
na guia Minhas Extensões.

Lista de elementos de interface do usuário


As opções a seguir permitem adicionar ou remover extensões do namespace My em seu
projeto. Uma extensão do namespace My deve ser instalada primeiro como um modelo
de item do Visual Studio para estar disponível para ser adicionada. Para obter
informações sobre a publicação e a instalação de extensões do namespace My , consulte
Empacotando e implantando Minhas Extensões personalizadas.

Minhas Extensões do Namespace

Esta lista mostra todas as extensões do namespace My instaladas no projeto.

Adicionar Extensão

Clique nesse botão para adicionar uma extensão do namespace My instalada a seu
projeto. Uma lista de todas as possíveis extensões do namespace My é exibida.
Selecione a extensão do namespace My que você deseja adicionar ao seu projeto e
clique em OK para adicioná-la.

Remover Extensão

Selecione uma ou mais referências na lista Minhas extensões do namespace e, em


seguida, clique nesse botão para remover a extensão do namespace My do projeto.

Confira também
Estendendo o Meu Namespace no Visual Basic
Como empacotar e implantar extensões personalizadas de My
Estendendo o modelo de aplicativo do Visual Basic
Como personalizar quais objetos estão disponíveis em My
Página de Publicação, Designer de
Projeto
Artigo • 13/01/2024

A página Publicar do Designer de Projeto é usada para configurar as propriedades de


implantação do ClickOnce.

Para acessar a página Publicar, selecione um nó do projeto no Gerenciador de Soluções


e, em seguida, no menu Projeto, clique em Propriedades. Quando o Designer de
Projeto for exibido, clique na guia Publicar.

7 Observação

No ClickOnce para .NET Core 3.1 e .NET 5 ou posterior, você define propriedades
de implantação usando a ferramenta Publicar, em vez do Assistente de Publicação,
e a página Publicar do Designer de Projeto. Para obter mais informações, confira
Implantar um aplicativo .NET do Windows usando ClickOnce e ClickOnce para
.NET.

7 Observação

Algumas das propriedades do ClickOnce descritas aqui também podem ser


definidas no PublishWizard, disponível no menu Build ou clicando no botão
PublishWizard nesta página.

Lista de elementos de interface do usuário


Local da Pasta de Publicação

Especifica o local em que o aplicativo é publicado. Pode ser um caminho de unidade


( C:\deploy\myapplication ), um compartilhamento de arquivo ( \\server\myapplication )
ou um servidor FTP ( ftp://ftp.microsoft.com/myapplication ). Observe que o texto deve
estar presente na caixa Local de Publicação para o botão de procurar (... ) funcionar.

URL da Pasta de Instalação

Opcional. Especifica um site que os usuários acessam para instalar o aplicativo. Isso é
necessário apenas quando ele difere do Local de Publicação, por exemplo, quando o
aplicativo for publicado em um servidor de preparo.
Configurações e Modo de Instalação

Determina se o aplicativo é executado diretamente do Local de Publicação (quando O


aplicativo está disponível somente online está selecionado) ou é instalado e
adicionado ao menu Iniciar e ao item Adicionar ou Remover Programas no Painel de
Controle (quando O aplicativo está disponível também offline é selecionado).

Para Aplicativos do Navegador da Web WPF, a opção aplicativo está disponível


também offline está desabilitada, pois esses aplicativos estão disponíveis somente
online.

Arquivos de Aplicativo

Abre a caixa de diálogo Arquivos do Aplicativo, que é usada para especificar como e o
local em que os arquivos individuais são instalados.

Pré-requisitos

Abre a caixa de diálogo de Pré-Requisitos, que é usada para especificar os componentes


de pré-requisito, como o .NET Framework, a serem instalados junto com o aplicativo.

Atualizações

Abre a caixa de diálogo Atualizações do Aplicativo, que é usada para especificar o


comportamento da atualização para o aplicativo. Não disponível quando O aplicativo
está disponível apenas online está selecionado.

Opções

Abre a caixa de diálogo Opções de Publicação, que é usada para especificar mais
opções de publicação avançadas.

Versão da Publicação

Define o número de versão da publicação para o aplicativo; quando o número de versão


é alterado, o aplicativo é publicado como uma atualização. Cada parte da versão de
publicação (Principal, Secundária, Build, Revisão) pode ter um valor máximo de 65355
(MaxValue), o máximo permitido pelo Version.

Ao instalar mais de uma versão de um aplicativo usando o ClickOnce, a instalação


moverá as versões anteriores do aplicativo para uma pasta chamada Arquivo, no local
de publicação especificado. O arquivamento de versões anteriores dessa maneira
mantém o diretório de instalação livre de pastas da versão anterior.

Incrementar revisão automaticamente a cada publicação


Opcional. Quando essa opção é selecionada (padrão), a parte de Revisão do número de
versão de publicação é incrementada em uma unidade toda vez que o aplicativo é
publicado. Isso faz o aplicativo ser publicado como uma atualização.

Assistente de Publicação

Abre o Assistente de Publicação. Concluir o Assistente de Publicação tem o mesmo


efeito que executar o comando Publicar no menu Build.

Publicar Agora

Publica o aplicativo usando as configurações atuais. Equivalente ao botão Concluir no


PublishWizard.

Confira também
Publicando aplicativos ClickOnce
Como publicar um Aplicativo ClickOnce usando o Assistente de Publicação
Como especificar onde o Visual Studio copiará os arquivos
Como especificar o local de onde os usuários finais instalarão
Como especificar um link para suporte técnico
Como especificar o modo de instalação offline ou online do ClickOnce
Como habilitar o AutoStart para instalações por CD
Como definir a versão da publicação do ClickOnce
Como incrementar a versão da publicação do ClickOnce automaticamente
Como especificar os arquivos a serem publicados pelo ClickOnce
Como instalar pré-requisitos com um aplicativo ClickOnce
Como gerenciar atualizações para um aplicativo ClickOnce
Como alterar o idioma de publicação para um aplicativo ClickOnce
Como especificar um nome no menu Iniciar para um aplicativo ClickOnce
Como especificar uma página de publicação para um aplicativo ClickOnce
Segurança e implantação do ClickOnce
Caixa de diálogo Pré-requisitos
Artigo • 13/01/2024

A caixa de diálogo Pré-requisitos especifica quais componentes de pré-requisito são


instalados, como eles são instalados e em qual ordem os pacotes são instalados.

Para acessar a caixa de diálogo, selecione um nó do projeto no Gerenciador de


Soluções e, em seguida, selecione Projeto>Propriedades. Quando o Designer de
Projeto for exibido, selecione a guia Publicar e, em seguida, selecione Pré-requisitos.
Para projetos de Instalação, no menu Projeto, clique em Propriedades. Quando a caixa
de diálogo Páginas de Propriedades for exibida, clique em Pré-requisitos.

7 Observação

No ClickOnce para .NET Core 3.1 e .NET 5 ou posterior, você define propriedades
de implantação usando a ferramenta Publicar, em vez do Assistente de Publicação,
e a página Publicar do Designer de Projeto. Para obter mais informações, confira
Implantar um aplicativo .NET do Windows usando ClickOnce e ClickOnce para
.NET.
Lista de elementos de interface do usuário
ノ Expandir a tabela

Elemento Descrição

Criar programa de Inclui os componentes de pré-requisito no programa de instalação


instalação para instalar do aplicativo (Setup.exe) para que eles sejam instalados antes do
os componentes de pré- aplicativo, na ordem de dependência. Por padrão, essa opção é
requisitos selecionada. Se ela não for selecionada, não será criado nenhum
Setup.exe.

Escolher quais pré- Especifica se componentes, como bibliotecas de runtime do .NET


requisitos serão Framework e do C++, devem ser instalados.
instalados
Por exemplo, ao marcar a caixa de seleção ao lado de SQL Server
2012 Express, você especifica que o programa de instalação precisa
verificar se esse componente está instalado no computador de
destino e instalá-lo caso não esteja.

Para obter informações detalhadas sobre cada pacote de pré-


requisitos, confira Informações de pré-requisitos.

Baixar os pré-requisitos Especifica que os componentes de pré-requisitos são instalados por


no site do fornecedor do meio do site do fornecedor. Essa é a opção padrão.
componente

Baixar os pré-requisitos Especifica que os componentes de pré-requisitos são instalados por


no mesmo local do meu meio do mesmo local que o aplicativo. Isso copia todos os pacotes
aplicativo de pré-requisitos no local de publicação. Para que essa opção
funcione, os pacotes do pré-requisito devem estar no computador
de desenvolvimento.

Baixar os pré-requisitos Especifica que os componentes de pré-requisitos são instalados pelo


no seguinte local local inserido. É possível usar o botão Procurar para selecionar um
local.

7 Observação

Para obter informações sobre onde colocar os pré-requisitos, confira Criar pacotes
de bootstrapper.

Informações de pré-requisitos
Os componentes de pré-requisitos exibidos na caixa de diálogo Pré-requisitos podem
ser diferentes daqueles da lista a seguir. Os pacotes de pré-requisitos listados na Caixa
de diálogo Pré-requisitos são definidos automaticamente na primeira vez em que a
caixa de diálogo é aberta. Se você alterar a estrutura de destino do projeto mais tarde,
será necessário selecionar os pré-requisitos manualmente para corresponder à nova
estrutura de destino.

ノ Expandir a tabela

Elemento Descrição

.NET Esse pacote instala o seguinte:


Framework 3,5
SP1 - .NET Framework versões 2.0, 3.0 e 3.5
- Suporte para todas as versões do .NET Framework em sistemas operacionais
de 32 bits (x86) e 64 bits (x64).
- Pacotes de idiomas para cada versão do .NET Framework que é instalada com
o pacote.
- Service packs para o .NET Framework 2.0 e 3.0.

O .NET Framework 3.0 está incluído no Windows Vista e o .NET Framework 3.5
está incluído no Visual Studio. O .NET Framework 3.5 é necessário para todos
os projetos do Visual Basic e C# que são compilados para sistemas
operacionais de 32 bits e para quais a estrutura de destino é definida como
.NET Framework 3.5, bem como para projetos do Visual Basic e C# compilados
para sistemas operacionais de 64 bits. (IA64 não é compatível). Observe que os
projetos do Visual Basic e do C# são compilados para qualquer arquitetura de
CPU, por padrão. Para obter mais informações, confira Visão geral do
direcionamento de estrutura e Pré-requisitos de implantação para aplicativos
de 64 bits.

Microsoft .NET Esse pacote instala o .NET Framework 4.x para as plataformas x86 e x64.
Framework 4.x

Microsoft Este pacote instala o Microsoft System CLR Types para SQL Server 2014 para
System CLR x64 ou x86.
Types para SQL
Server 2014
(x64 e x86)

SQL Server Esse pacote instala o Microsoft SQL Server 2008 R2 Express, uma edição
2008 R2 gratuita do Microsoft SQL Server 2008 R2, um banco de dados ideal para
Express aplicativos Web, de servidor ou de área de trabalho pequenos. Pode ser usado
gratuitamente para desenvolvimento e produção.

SQL Server Este pacote instala o Microsoft SQL Server 2012 Express.
2012 Express
Elemento Descrição

SQL Server Este pacote instala o Microsoft SQL Server 2012 Express LocalDB.
2012 Express
LocalDB

Bibliotecas de Esse pacote instala as bibliotecas em tempo de execução Visual C++ para a
Runtime do arquitetura Itanium, que fornecem rotinas de programação para o sistema
Visual C++ "14" operacional Microsoft Windows. Essas rotinas automatizam muitas tarefas
(ARM) comuns de programação que não são fornecidas pelas linguagens C e C++.

Para obter mais informações, consulte Referência da biblioteca em tempo de


execução C.

Bibliotecas de Esse pacote instala as bibliotecas em tempo de execução Visual C++ para os
Runtime do sistemas operacionais x64, que fornecem rotinas de programação para o
Visual C++ "14" sistema operacional Microsoft Windows. Essas rotinas automatizam muitas
(x64) tarefas comuns de programação que não são fornecidas pelas linguagens C e
C++.

Para obter mais informações, consulte Referência da biblioteca em tempo de


execução C.

Bibliotecas de Esse pacote instala as bibliotecas em tempo de execução Visual C++ para os
Runtime do sistemas operacionais x86, que fornecem rotinas de programação para o
Visual C++ "14" sistema operacional Microsoft Windows. Essas rotinas automatizam muitas
(x86) tarefas comuns de programação que não são fornecidas pelas linguagens C e
C++.

Para obter mais informações, consulte Referência da biblioteca em tempo de


execução C.

Confira também
Página de Publicação, Designer de Projeto
Pré-requisitos de implantação de aplicativos
Implantando pré-requisitos para aplicativos de 64 bits
Visão geral do direcionamento de estrutura
Página Referências, Designer de Projeto
(Visual Basic)
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Referências do Designer de Projeto para gerenciar referências, referências


Web e namespaces importados em seu projeto. Os projetos podem conter referências a
componentes COM, serviços Web XML, assemblies ou bibliotecas .NET ou outras
bibliotecas de classes. Para obter mais informações sobre o uso de referências, consulte
Gerenciando referências em um projeto.

Para acessar a página Referências, escolha um nó de projeto (não o nó Solução) no


Gerenciador de Soluções. Em seguida, escolha Projeto, Propriedades na barra de
menus. Quando o Designer de Projeto for exibido, clique na guia Referências.

Lista de elementos de interface do usuário


As opções a seguir permitem selecionar ou remover referências e namespaces
importados em seu projeto.

Caminhos de Referência

Clique neste botão para acessar a caixa de diálogo Caminhos de Referência.

7 Observação

Quando o sistema do projeto encontra uma referência de assembly, o sistema


resolve a referência examinando os seguintes locais, na seguinte ordem:

1. A pasta do projeto. Os arquivos da pasta do projeto aparecem no


Gerenciador de Soluções quando Mostrar Todos os Arquivos não está em
vigor.
2. Pastas especificadas na caixa de diálogo Caminhos de Referência.
3. Pastas que exibem arquivos na caixa de diálogo Adicionar Referência.
4. A pasta obj do projeto. (Quando você adiciona uma referência COM a seu
projeto, um ou mais assemblies podem ser adicionados à pasta obj do
projeto.)
Referências

Esta lista mostra todas as referências no projeto, utilizadas ou não utilizadas.

Adicionar

Clique neste botão para adicionar uma referência ou uma referência Web à lista
Referências.

Escolha Referência para adicionar uma referência ao seu projeto usando a caixa de
diálogo Adicionar Referência.

Escolha Referência Web para adicionar uma referência Web ao seu projeto usando a
caixa de diálogo Adicionar Referência Web.

Remover

Selecione uma ou mais referências na lista Referências e clique nesse botão para excluí-
las.

Atualizar Referência Web

Selecione uma referência Web na lista Referências e clique nesse botão para atualizá-la.

Namespaces importados

Você pode digitar seu próprio namespace nesta caixa e clicar em Adicionar Importação
de Usuário para adicioná-lo à lista de namespaces.

Você pode criar aliases para namespaces importados pelo usuário. Para fazer isso, digite
o alias e o namespace no formato alias=namespace. Isso é útil se você estiver usando
namespaces longos, por exemplo: Http=
MyOrg.ObjectLib.Internet.WebRequestMethods.Http .

Adicionar Importação de Usuário

Clique neste botão para adicionar o namespace especificado na caixa Namespaces


importados à lista de namespaces importados. O botão fica ativo somente se o
namespace especificado ainda não estiver na lista.

Lista de namespaces

Esta lista mostra todos os namespaces disponíveis. As caixas de seleção dos namespaces
incluídos em seu projeto são selecionadas.

Atualizar Importação de Usuário


Selecione um namespace especificado pelo usuário na lista de namespaces, digite o
nome com o qual deseja substituí-lo na caixa Namespaces importados e, em seguida,
clique neste botão para alterar para o novo namespace. O botão fica ativo somente se o
namespace selecionado for aquele que você adicionou à lista usando o botão Adicionar
Importação de Usuário. Você pode adicionar:

Classes ou namespaces, como System.Math.

Importações com alias, como VB=Microsoft.VisualBasic .

Namespaces XML, como <xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> .

Confira também
Gerenciando referências em um projeto
Como adicionar ou remover namespaces importados (Visual Basic)
Instrução Imports (namespace XML)
Página Segurança, Designer de Projeto
Artigo • 13/01/2024

A página Segurança do Designer de Projeto é usada para definir configurações de


segurança de acesso do código para aplicativos implantados usando a implantação do
ClickOnce. Para obter mais informações, consulte Segurança de acesso do código para
aplicativos ClickOnce.

Para acessar a página Segurança, clique em um nó do projeto no Gerenciador de


Soluções e, em seguida, no menu Projeto, clique em Propriedades. Quando o Designer
de Projeto for exibido, clique na guia Segurança.

Configurações de segurança
Habilitar configurações de segurança do ClickOnce

Determina se as configurações de segurança estão habilitadas no tempo de design.


Quando esta opção estiver desmarcada, todas as outras opções na página Segurança
não ficarão disponíveis.

7 Observação

Quando você publica um aplicativo usando o assistente Publicar, essa opção fica
habilitada automaticamente.

Quando seleciona a opção, você tem a escolha de selecionar um de dois botões de


opção: Este é um aplicativo de confiança total ou Este é um aplicativo de confiança
parcial.

Por padrão, para projetos de Aplicativo de navegador da Web do WPF, essa opção fica
selecionada.

Por padrão, para todos os outros tipos de projeto, a opção fica desmarcada.

Este é um aplicativo de confiança total

Se você selecionar essa opção, o aplicativo solicitará permissões de Confiança Total


quando for instalado ou executado em um computador cliente. Evite usar a Confiança
Total, se possível, porque o aplicativo receberá acesso irrestrito a recursos como o
sistema de arquivos e o Registro.
Por padrão, para projetos de Aplicativo de navegador da Web do WPF, essa opção fica
definida como Confiança parcial.

Por padrão, para todos os outros tipos de projeto, a opção fica definida como Confiança
Total.

Este é um aplicativo de confiança parcial

Se você selecionar essa opção, o aplicativo solicitará permissões de Confiança parcial


quando for instalado ou executado em um computador cliente. Confiança parcial
significa que somente as ações permitidas de acordo com as permissões de segurança
de acesso de código solicitadas serão executadas. Para obter mais informações sobre
como configurar permissões de segurança, consulte Segurança de acesso do código
para aplicativos ClickOnce.

Você pode especificar as configurações de segurança de Confiança parcial configurando


as opções na área Permissões de Segurança do ClickOnce.

Permissões de Segurança do ClickOnce


Zona por meio da qual seu aplicativo será instalado

Especifica um conjunto padrão de permissões de segurança de acesso de código.


Escolha Internet ou Intranet Local para um conjunto de permissões restritas, ou escolha
(Personalizado) para configurar um conjunto de permissões personalizadas. Se o
aplicativo solicitar mais permissões do que aquelas que são concedidas em uma zona,
um prompt de confiança do ClickOnce será exibido para o usuário final conceder as
permissões adicionais. Para obter mais informações sobre como configurar permissões
de segurança, consulte Segurança de acesso do código para aplicativos ClickOnce.

Por padrão, para projetos de Aplicativo de navegador da Web do WPF, essa opção fica
definida como Internet.

Editar XML de Permissões

Abre o modelo de manifesto do aplicativo (app.manifest) para configurar as permissões


para o conjunto de permissões (Personalizado).

Avançado

Abre o Caixa de diálogo Configurações de Segurança Avançadas, que é usada para


definir configurações para depurar o aplicativo com permissões restritas. Essas
configurações são verificadas durante a depuração, e exceções de permissão indicam
que seu aplicativo pode precisar de mais permissões do que as que foram definidas em
uma zona.

Confira também
WebBrowserPermission
MediaPermission
Segurança de acesso do código para aplicativos ClickOnce
Como habilitar configurações de segurança do ClickOnce
Como definir uma zona de segurança para um aplicativo ClickOnce
Como definir permissões personalizadas para um aplicativo ClickOnce
Proteger aplicativos ClickOnce
Segurança e implantação do ClickOnce
Referência de Propriedades do Projeto
Caixa de diálogo Configurações de Segurança Avançadas
Caixa de diálogo Configurações de
Segurança Avançadas
Artigo • 13/01/2024

Essa caixa de diálogo permite especificar configurações de segurança relacionadas à


depuração na zona.

Para acessar essa caixa de diálogo, selecione um nó do projeto no Gerenciador de


Soluções e, no menu Projeto, clique em Propriedades. Quando o Designer de Projeto
aparecer, clique na guia Segurança. Na página Segurança, selecione Habilitar
Configurações de Segurança do ClickOnce, clique em Este é um aplicativo de
confiança parcial e em Avançado.

Lista de elementos de interface do usuário


Conceder ao aplicativo acesso ao site de origem

Se você marcar esta caixa de seleção, o aplicativo poderá acessar o site da Web ou o
compartilhamento do servidor no qual ele é publicado. Por padrão, essa opção é
selecionada.

Depurar este aplicativo como se ele tivesse sido baixado da seguinte URL

Se você precisar permitir que o aplicativo acesse o site ou o compartilhamento do


servidor correspondente à URL de Instalação especificada na página Publicar, insira a
URL aqui. Essa opção está disponível apenas quando Conceder ao aplicativo acesso ao
site de origem está selecionado.

Confira também
Página Segurança, Designer de Projeto
Página Serviços, Designer de Projeto
Artigo • 13/01/2024

Os serviços de aplicativo cliente fornecem acesso simplificado ao logon, às funções e


aos serviços de perfil do Microsoft Ajax por meio dos aplicativos Windows Forms e
Windows Presentation Foundation (WPF). Você pode usar a página Serviços do
Designer de Projeto para habilitar e configurar serviços de aplicativo cliente para seu
projeto.

Com os serviços de aplicativo cliente, você pode usar um servidor centralizado para
autenticar usuários, determinar a função ou as funções atribuídas a cada usuário e
armazenar configurações de aplicativo por usuário que você pode compartilhar pela
rede. Para obter mais informações, consulte Serviços de aplicativo cliente.

Para acessar a página Serviços, selecione um nó do projeto no Gerenciador de


Soluções e, em seguida, clique em Propriedades no menu Projeto. Quando o Designer
de Projeto for exibido, clique na guia Serviços.

Lista de Tarefas
Como configurar serviços de aplicativo cliente

Lista de elementos de interface do usuário


Configuration

Esse controle não é editável nesta página. Para obter uma descrição desse controle,
consulte Página de compilação, Designer de Projeto (Visual Basic) ou Página de Build,
Designer de Projeto (C#).

Plataforma

Esse controle não é editável nesta página. Para obter uma descrição desse controle,
consulte Página de compilação, Designer de Projeto (Visual Basic) ou Página de Build,
Designer de Projeto (C#).

Habilitar serviços do aplicativo cliente

Selecione para habilitar serviços do aplicativo cliente. Você deve especificar locais de
serviço na página Serviços para usar serviços de aplicativo cliente.

Usar a autenticação do Windows


Indica que o provedor de autenticação usará a autenticação baseada em Windows, ou
seja, a identidade fornecida pelo sistema operacional Windows.

Usar autenticação de Formulários

Indica que o provedor de autenticação usará a autenticação de formulários. Isso


significa que seu aplicativo deve fornecer uma interface do usuário para logon. Para
obter mais informações, consulte Como implementar o logon do usuário com os
serviços de aplicativo cliente.

Local do serviço de autenticação

Utilizado somente com autenticação de formulários. Especifica o local do serviço de


autenticação.

Opcional: provedor de credenciais

Utilizado somente com autenticação de formulários. Indica a implementação


IClientFormsAuthenticationCredentialsProvider que o serviço de autenticação usará para
exibir uma caixa de diálogo de logon quando o aplicativo chamar o método
static System.Web.Security.Membership.ValidateUser e passar cadeias de caracteres

vazias ou null para os parâmetros. Se deixar essa caixa em branco, você deverá passar
um nome de usuário válido e uma senha para o método
System.Web.Security.Membership.ValidateUser. Você deve especificar o provedor de
credenciais como um nome de tipo qualificado pelo assembly. Para obter mais
informações, consulte System.Type.AssemblyQualifiedName e Assembly Names (Nomes
de assembly). Em sua forma mais simples, um nome de tipo qualificado pelo assembly é
semelhante ao exemplo a seguir: MyNamespace.MyLoginClass, MyAssembly

Local do serviço de funções

Especifica o local do serviço de funções.

Local do serviço de configurações da Web

Especifica o local do serviço de perfil (configurações da Web).

Avançado

Abre Configurações Avançadas para a Caixa de Diálogo Serviços, que você pode usar
para substituir o comportamento padrão. Por exemplo, você pode usar essa caixa de
diálogo para especificar um banco de dados para armazenamento offline, em vez de
usar o sistema de arquivos local. Para obter mais informações, consulte Configurações
Avançadas para a Caixa de Diálogo Serviços.
Confira também
Serviços de aplicativo cliente
Caixa de diálogo Configurações Avançadas para Serviços
Como configurar serviços de aplicativo cliente
Página de Compilação, Designer de Projeto (Visual Basic)
Página de Build, Designer de Projeto (C#)
Caixa de diálogo Configurações
Avançadas para Serviços
Artigo • 10/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os serviços de aplicativo cliente fornecem acesso simplificado ao logon, às funções e


aos serviços de perfil do Microsoft Ajax por meio dos aplicativos Windows Forms e
Windows Presentation Foundation (WPF). É possível usar a página Serviços no Designer
de Projeto para configurar serviços de aplicativo cliente. Para obter mais informações
sobre a página Serviços, consulte Página Serviços, Designer de Projeto.

Use a caixa de diálogo Configurações Avançadas para Serviços da página Serviços no


Designer de Projeto para definir configurações avançadas para serviços de aplicativo
cliente. Ao usar essas configurações, é possível substituir alguns comportamentos
padrão do serviço de aplicativo para habilitar cenários menos comuns. Para obter mais
informações, consulte Serviços de aplicativo cliente.

Para acessar a caixa de diálogo Configurações Avançadas para Serviços, selecione um


nó do projeto no Gerenciador de Soluções e, em seguida, clique em Propriedades no
menu Projeto. Quando o Designer de Projeto for exibido, clique na guia Serviços e, em
seguida, no botão Avançado. Esse botão só será desabilitado quando você habilitar os
serviços de aplicativo cliente.

Lista de Tarefas
Como configurar serviços de aplicativo cliente

Lista de elementos de interface do usuário


Salvar hash de senha localmente para habilitar logon offline Especifica se um formato
criptografado da senha do usuário será armazenado em cache localmente para permitir
que o usuário faça logon quando o aplicativo estiver no modo offline. Essa opção é
habilitada por padrão.

Exigir que os usuários façam logon novamente sempre que o cookie do servidor
expirar Especifica se os usuários já autenticados serão reautenticados automaticamente
quando o aplicativo acessar as funções ou o serviço de perfil e o cookie de autenticação
do servidor tiver expirado. Selecione essa opção para negar acesso aos serviços de
aplicativo e exigir a reautenticação explícita depois que o cookie expirar. Isso é útil para
aplicativos implantados em locais públicos, para garantir que os usuários que deixam o
aplicativo em execução após o uso não permanecerão autenticados por tempo
indefinido. Essa opção é desmarcada por padrão.

Tempo limite do cache de serviço de função Especifica o tempo de duração em que o


provedor de função do cliente usará os valores de função armazenados em cache em
vez de acessar o serviço de funções. Defina esse intervalo de tempo como um valor
pequeno quando as funções forem atualizadas com frequência ou como um valor maior
quando as funções forem raramente atualizadas. O valor padrão é um dia.

O provedor de função acessa os valores de função em cache ou o serviço de funções


quando você chama o método IsInRole. Para limpar o cache de forma programática e
forçar esse método a acessar o serviço remoto, chame o método ResetCache.

Usar cadeia de conexão personalizada Especifica se os provedores de serviço do cliente


usarão um armazenamento de dados personalizado para o cache local. Por padrão, os
provedores de serviço usarão o sistema de arquivos local para o cache. A seleção desta
opção populará automaticamente a caixa de texto com uma cadeia de conexão padrão.
É possível manter a cadeia de conexão padrão para gerar automaticamente e usar um
banco de dados SQL Server Compact Edition ou é possível especificar uma cadeia de
conexão para um banco de dados SQL Server existente. Para obter mais informações,
consulte Como configurar serviços de aplicativo cliente. Essa opção é desmarcada por
padrão.

Confira também
Serviços de aplicativo cliente
Página Serviços, Designer de Projeto
Como configurar serviços de aplicativo cliente
Página de configurações, Designer de
Projeto
Artigo • 08/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Configurações do Designer de Projeto para especificar as configurações


de aplicativo de um projeto. As configurações de aplicativo permitem armazenar e
recuperar as configurações de propriedade e outras informações para seu aplicativo
dinamicamente. Elas também permitem que você mantenha aplicativos personalizados
e preferências do usuário em um computador cliente. Para obter mais informações,
confira Gerenciar configurações de aplicativo.

Para acessar a página Configurações, selecione um nó de projeto no Gerenciador de


Soluções e, em seguida, use o menu de contexto de clique com o botão direito do
mouse para selecionar Propriedades. Quando o Designer de Projeto for exibido,
selecione a guia Configurações.

Na guia Configurações, você verá um link Criar ou abrir configurações do aplicativo.

Selecione o link Criar ou abrir configurações do aplicativo para abrir uma página
Configurações no Designer de Projeto.
Barra de cabeçalho
A barra de cabeçalho na parte superior da página Configurações contém vários
controles:

Sincronizar

Sincronizar restaura as configurações no escopo do usuário que o aplicativo usa no


tempo de execução ou durante a depuração para seus valores padrão, conforme a
definição no tempo de design. Para restaurar os dados, remova os arquivos específicos
do aplicativo gerados pelo tempo de execução do disco, não dos dados do projeto.

Carregar Configurações da Web

Carregar Configurações da Web exibe uma caixa de diálogo Logon que permite
carregar as configurações de um usuário autenticado ou de usuários anônimos. Este
botão fica habilitado apenas quando você habilita os serviços de aplicativo cliente na
página Serviços e especifica um Local de serviço das configurações da Web.

Exibir Código

Para projetos C#, o botão Exibir Código permite que você exiba o código no arquivo
Settings.cs. Esse arquivo define a classe Settings , que permite que você manipule
eventos específicos no objeto Settings . Em linguagens diferentes do Visual Basic, você
precisa chamar o método Save explicitamente dessa classe wrapper para que as
configurações do usuário persistam. Geralmente isso é feito no manipulador de eventos
Closing do formulário principal. A seguir está um exemplo de uma chamada ao método
Save :

C#

Properties.Settings.Default.Save();

Para projetos do Visual Basic, o botão Exibir Código permite que você exiba o código
no arquivo Settings.vb. Esse arquivo define a classe MySettings , que permite que você
manipule eventos específicos no objeto My.Settings . Para obter mais informações de
como acessar as configurações de aplicativo usando o objeto My.Settings , confira
Acessando configurações de aplicativo.

Para obter mais informações de como acessar as configurações do aplicativo, confira


Configurações de aplicativo para Windows Forms.

Modificador de acesso

O botão Modificador de acesso especifica o nível de acesso das classes auxiliares


Properties.Settings (em C#) ou My.Settings (em Visual Basic) que o Visual Studio gera
no Settings.Designer.cs ou no Settings.Designer.vb.

Para projetos do Visual C#, o modificador de acesso pode ser Interno ou Público.

Para projetos do Visual Basic, o modificador de acesso pode ser Amigo ou Público.

Por padrão, a configuração é Interno em C# e Amigo em Visual Basic. Quando o Visual


Studio gera classes auxiliares como Interno ou Amigo, os aplicativos executáveis (.exe)
não podem acessar os recursos e as configurações que você adiciona às bibliotecas de
classes (arquivos .dll). Se você precisar compartilhar recursos e configurações de uma
biblioteca de classes, defina o modificador de acesso como Público.

Para obter mais informações sobre as classes auxiliares de configurações, confira


Gerenciar configurações de aplicativo.

Grade de configurações
A Grade de configurações é usada para definir as configurações do aplicativo. Essa
grade inclui as seguintes colunas:

Nome

Insira o nome da configuração de aplicativo neste campo.


Tipo

Use a lista suspensa para selecionar um tipo para a configuração. Os tipos usados com
mais frequência são exibidos na lista suspensa, por exemplo, Cadeia de caracteres,
(Cadeia de Conexão) e System.Drawing.Font. Você pode escolher outro tipo,
selecionando Procurar no final da lista e, em seguida, escolhendo um tipo na caixa de
diálogo Selecionar um Tipo. Depois de escolher um tipo, ele é adicionado aos tipos
mais comuns na lista suspensa (somente para a solução atual).

) Importante

Procurar está disponível apenas para projetos do .NET Framework. Procurar não
está disponível para projetos do .NET ou .NET Core.

Escopo

Selecione Aplicativo ou Usuário.

As configurações no escopo do aplicativo, como as cadeias de conexão, são associadas


ao aplicativo. Os usuários não podem alterar as configurações no escopo do aplicativo
no tempo de execução.

As configurações no escopo do usuário, como fontes do sistema, devem ser usadas para
as preferências do usuário. Os usuários podem alterá-las no tempo de execução.

Valor

Os dados ou o valor associado à configuração de aplicativo. Por exemplo, se a


configuração for uma fonte, seu valor poderá ser Verdana, 9.75pt, style=Bold.

Confira também
Gerenciar configurações de aplicativo
Acessar configurações de aplicativo (Visual Basic)
Página de Assinatura, Designer de
Projeto
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use a página Assinatura do Designer de Projeto para assinar os manifestos do


aplicativo e de implantação e também para assinar o assembly (assinatura de nome
forte).

Observe que a assinatura dos manifestos do aplicativo e de implantação é um processo


diferente da assinatura de um assembly, embora ambas as tarefas sejam realizadas na
página Assinatura.

Além disso, o armazenamento de informações do arquivo de chave é diferente da


assinatura do manifesto e assinatura do assembly. Para a assinatura do manifesto, as
informações de chave são armazenadas no banco de dados de armazenamento
criptografado do computador e no repositório de certificados do Windows do usuário
atual. Para a assinatura do assembly, as informações de chave são armazenadas
somente no banco de dados de armazenamento criptografado do computador.

Para acessar a página Assinatura, selecione um nó do projeto no Gerenciador de


Soluções e em seguida, no menu Projeto, clique em Propriedades. Quando o Designer
de Projeto for exibido, clique na guia Assinatura.

Assinatura de manifesto do aplicativo e de


implantação
Caixa de seleção Assinar os manifestos do ClickOnce

Marque essa caixa de seleção para assinar os manifestos do aplicativo e de implantação


com um par de chaves pública/privada. Para obter mais informações sobre como fazer
isso, consulte Como assinar manifestos do aplicativo e de implantação.

Botão Selecionar do Repositório

Permite selecionar um certificado existente do repositório de certificados pessoais do


usuário atual. É possível selecionar um desses certificados para assinar os manifestos do
aplicativo e de implantação.
Ao clicar em Selecionar do Repositório, a caixa de diálogo Selecionar um Certificado é
aberta, que lista os certificados do repositório de certificados pessoais que atualmente
são válidos (não expirados) e que têm chaves privadas. A finalidade do certificado
selecionado deve incluir a assinatura de código.

Se você clicar em exibir propriedades do certificado, a caixa de diálogo Detalhes do


Certificado será exibida. Essa caixa de diálogo inclui informações detalhadas sobre o
certificado, bem como outras opções. É possível clicar em Saber mais sobre certificados
para exibir informações adicionais da Ajuda.

Botão Selecionar do Arquivo

Permite selecionar um certificado de um arquivo de chave existente.

Ao clicar em Selecionar do Arquivo, a caixa de diálogo Selecionar Arquivo é aberta,


que permite selecionar um arquivo de chave do certificado (.pfx). O arquivo deve ser
protegido por senha e não pode já estar localizado no repositório de certificados
pessoais.

Na caixa de diálogo Inserir senha para abrir o arquivo, insira uma senha para abrir o
arquivo de chave do certificado (.pfx). As informações de senha são armazenadas na
lista de contêineres de chaves pessoais e no repositório de certificados pessoais.

Botão Criar Certificado de Teste

Permite criar um certificado para teste. O certificado de teste é usado para assinar os
manifestos do aplicativo e de implantação do ClickOnce.

Ao clicar em Criar Certificado de Teste, a caixa de diálogo Criar Certificado de Teste é


aberta, na qual é possível digitar uma senha para o arquivo de chave de nome forte
para o certificado de teste. O arquivo é nomeado projectname_TemporaryKey.pfx. Se
você clicar em OK sem digitar uma senha, o arquivo .pfx não será criptografado com
senha.

Caixa URL do servidor de carimbo de data/hora

Especifica o endereço de um servidor que gera carimbos de data/hora da assinatura. Ao


fornecer um certificado, esse site externo verifica a hora em que o aplicativo foi
assinado.

Assinatura de assembly
Caixa de seleção Assinar o assembly
Marque essa caixa de seleção para assinar o assembly e criar um arquivo de chave de
nome forte. Para obter mais informações sobre como assinar um assembly usando o
Designer de Projeto, consulte Como assinar um assembly (Visual Studio).

Essa opção usa a ferramenta Al.exe fornecida pelo Software Development Kit do
Windows (SDK do Windows) para assinar o assembly. Para obter mais informações
sobre o Al.exe, consulte Como assinar um assembly com um nome forte.

Lista Escolher um arquivo de chave de nome forte

Permite especificar um arquivo de chave novo ou existente de nome forte que é usado
para assinar o assembly. Selecione <Procurar...> para selecionar um arquivo de chave
existente.

Selecione <Novo...> para criar um novo arquivo de chave com o qual assinar o
assembly. A caixa de diálogo Criar Chave de Nome Forte é exibida, que pode ser usada
para especificar um nome de arquivo de chave e proteger o arquivo de chave com uma
senha. A senha deve ter, no mínimo, 6 caracteres. Se você especificar uma senha, será
criado um arquivo de Troca de Informações Pessoais (.pfx); caso contrário, será criado
um arquivo de chave de nome forte (.snk).

Botão Alterar Senha

Altera a senha do arquivo de chave de Troca de Informações Pessoais (.pfx) usado para
assinar o assembly.

Ao clicar em Alterar Senha, a caixa de diálogo Alterar Senha de Chave é aberta. Na


caixa de diálogo, Senha antiga é a senha atual do arquivo de chave. Nova senha deve
ter, no mínimo, 6 caracteres. As informações de senha são armazenadas no repositório
de certificados do Windows do usuário atual.

Caixa de seleção Somente sinal de atraso

Marque essa caixa de seleção para habilitar a assinatura com atraso.

Observe que um projeto com assinatura com atraso não será executado e não pode ser
depurado. No entanto, é possível usar Sn.exe (Ferramenta de Nome Forte) com a opção
-Vr para ignorar a verificação durante o desenvolvimento.

7 Observação

Ao assinar um assembly, talvez você nem sempre tenha acesso a uma chave
privada. Por exemplo, uma organização pode ter um par de chaves bem protegido
ao qual os desenvolvedores não têm acesso todos os dias. A chave pública pode
estar disponível, mas o acesso à chave privada é restrito a algumas pessoas. Nesse
caso, é possível usar a assinatura com atraso ou parcial para fornecer a chave
pública, adiando a adição da chave privada até a entrega do assembly.

Confira também
Referência de Propriedades do Projeto
Gerenciando a assinatura de assembly e de manifesto
Como assinar manifestos de aplicativo e implantação
Como Assinar um Assembly (Visual Studio)
Como assinar um assembly com um nome forte
Assembly de nome forte
Páginas de Propriedades, JavaScript
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

As Páginas de Propriedades fornecem acesso às configurações do projeto. Você pode


usar as páginas que aparecem nas Páginas de Propriedade para alterar as propriedades
do projeto.

Para acessar as propriedades do projeto, selecione um nó do projeto no Gerenciador de


Soluções. No menu Projeto , clique em Propriedades.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

As opções e páginas a seguir aparecem nas Páginas de Propriedade.

Página de plataforma e configuração


Use as seguintes opções para selecionar a configuração e a plataforma a exibir ou
modificar.

Configuration

Especifica as definições de configuração a exibir ou modificar. As configurações são


Depurar (padrão), Versão, Todas as Configurações de ou uma configuração definida
pelo usuário. Para obter mais informações, consulte How to: Set debug and release
configurations in Visual Studio (Como definir configurações de depuração e versão no
Visual Studio).

Plataforma

Especifica as configurações de plataforma a exibir ou modificar. As configurações são


Qualquer CPU (padrão para aplicativos da Windows 8.x Store), x64, ARM, x86 ou uma
plataforma definida pelo usuário. Para obter mais informações, consulte How to: Set
debug and release configurations in Visual Studio (Como definir configurações de
depuração e versão no Visual Studio).
Página Geral
Use as seguintes opções para configurar propriedades gerais do projeto.

7 Observação

Algumas opções estão disponíveis somente em aplicativos UWP.

Caminho de Saída

Especifica o local dos arquivos de saída para a configuração do projeto. O caminho é


relativo; se você inserir um caminho absoluto, o caminho absoluto será salvo no projeto.
O caminho padrão é bin\Debug.

Quando você usa configurações de build simplificadas, o sistema do projeto determina


se é necessário compilar uma versão de depuração ou de liberação. Quando você clica
em Depurar>Iniciar Depuração (ou pressiona F5), o build é colocado no local de
depuração, independentemente do Caminho de saída especificado. No entanto, o
comando Compilar Solução no menu Criar a coloca no local especificado. Para habilitar
as configurações de build avançadas, na barra de menus, escolha Ferramentas>Opções.
Na caixa de diálogo Opções, expanda Projetos e Soluções, selecione Geral e desmarque
a caixa de seleção Mostrar configurações de build avançadas. Isso lhe dá controle
manual sobre todos os valores de configuração e de se uma versão de depuração ou
liberação é compilada.

Idioma Padrão

Especifica o idioma padrão para o projeto. A opção de idioma selecionada em Relógio,


Idioma e Região no Painel de Controle especifica o idioma preferencial do usuário. Ao
especificar um idioma padrão para o projeto, certifique-se de que os recursos de idioma
padrão especificado sejam usados se o idioma preferencial do usuário não corresponder
aos recursos de idioma fornecidos no aplicativo.

Página de depuração
Use as seguintes opções para definir propriedades para o comportamento de
depuração no projeto.

7 Observação

Algumas opções estão disponíveis somente em aplicativos UWP.


Depurador a ser iniciado

Especifica o host padrão para o depurador.

Selecione Computador Local para iniciar o aplicativo no computador de host do


Visual Studio. Para obter mais informações, consulte Executando aplicativos no
computador local.

Selecione Simulador para iniciar o aplicativo no Simulador. Para obter mais


informações, consulte Executando aplicativos no simulador.

Selecione Computador Remoto para iniciar o aplicativo em um computador


remoto. Para obter mais informações sobre a depuração remota, consulte
Executando aplicativos em um computador remoto.

Iniciar Aplicativo

Especifica se o aplicativo deve ser iniciado quando você pressiona F5 ou clica em


Depurar>Iniciar Depuração. Selecione Sim para iniciar o aplicativo; caso contrário,
selecione Não. Se você selecionar Não, ainda poderá depurar o aplicativo se você usar
um método diferente para iniciá-lo.

Tipo de Depurador

Especifica os tipos de código a depurar. Selecione Somente Script para depurar o


código JavaScript. Selecione Somente Gerenciado para depurar código gerenciado pelo
Common Language Runtime. Selecione Somente Nativo para depurar código C++.
Selecione Nativo com Script para depurar C++ e JavaScript. Selecione Misto
(Gerenciado e Nativo) para depurar código gerenciado e C++.

Permitir Loopback de Rede Local

Especifica se o acesso ao endereço IP de loopback é permitido para testes de


aplicativos. Selecione Sim para permitir o uso do endereço de loopback se o aplicativo
cliente estiver no mesmo computador em que o aplicativo para servidores está em
execução; caso contrário, selecione Não. Essa propriedade estará disponível somente se
a propriedade Depurador a Iniciar estiver definida como Computador Remoto.

Nome da máquina

Especifica o nome do computador remoto no qual hospedar o depurador. Essa


propriedade estará disponível somente se Depurador a Iniciar estiver definido como
Computador Remoto.

Exigir autenticação
Especifica se o computador remoto exige autenticação. Essa propriedade estará
disponível somente se Depurador a Iniciar estiver definido como Computador Remoto.
Páginas de propriedades para projetos
React, Angular e Vue no Visual Studio
Artigo • 13/01/2024

Este artigo se aplica a projetos React, Angular e Vue criados no Visual Studio que
utilizam o JavaScript Project System (JSPS), que é o formato de projeto .esproj. Esse
formato tem suporte desde o Visual Studio 2022.

As Páginas de Propriedades fornecem acesso às configurações do projeto. Para abrir as


páginas de propriedade, selecione o projeto no Gerenciador de Soluções e selecione o
ícone Propriedades ou clique com o botão direito do mouse no projeto e selecione
Propriedades.

7 Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos
elementos de interface do usuário do Visual Studio neste artigo. Você pode estar
usando outra edição do Visual Studio ou outras configurações de ambiente. Para
obter mais informações, confira Personalizar o IDE.

As opções e páginas a seguir aparecem nas Páginas de Propriedade.

Guia Compilação
Na guia Geral, as propriedades a seguir estão disponíveis.

Comando de Build

Especifica o comando a ser executado ao compilar o projeto. (Build > Solução de Build,
ou quando você executar o projeto.) Se utilizado, esse valor é normalmente um
comando npm. Essa propriedade corresponde à propriedade BuildCommand no arquivo
do projeto.

Comando de build de produção

Especifica o comando a ser executado ao compilar o projeto quando o projeto é


integrado ao projeto de API Web do ASP.NET Core. Gera arquivos prontos para
produção. Por padrão, esse comando é npm run build .
A partir do Visual Studio 2022 versão 17.5, essa opção não está presente nos modelos
de projeto recomendados para React, Vue e Angular.

Compilar Pasta de Saída

Especifica a pasta de saída para objetos de compilação da produção. Em projetos mais


antigos, use essa propriedade quando você usar o Comando de Build de Produção.

Comando de limpeza

Especifica o comando a ser executado ao limpar o projeto. (Build > Limpar Solução) Se
utilizado, este valor é tipicamente um comando npm. Essa propriedade corresponde à
propriedade CleanCommand no arquivo do projeto.

Diretório de trabalho

Especifica o diretório de trabalho para o comando de build. Esse valor é a raiz do


projeto, por padrão.

Guia Implantar
Comando de inicialização

Especifica o comando a ser executado quando você inicia o projeto. Por exemplo, um
projeto Angular usa npm start por padrão. Essa propriedade corresponde à
propriedade StartupCommand no arquivo do projeto.

Diretório de trabalho

Especifica o diretório de trabalho para o comando de inicialização. Por padrão, esse


valor é a raiz do projeto. Caminhos relativos são relativos à raiz do projeto.

7 Observação

No Visual Studio, launch.json armazena as configurações de inicialização associadas


ao botão Iniciar na barra de ferramentas Depurar. launch.json deve estar localizado
na pasta .vscode.

Confira também
JavaScript e TypeScript no Visual Studio
Janela de Propriedades
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Use esta janela para exibir e alterar as propriedades de tempo de design e os eventos
dos objetos selecionados localizados em editores e designers. Você também pode usar
a janela Propriedades para editar e exibir as propriedades do arquivo, do projeto e da
solução. Você pode encontrar a janela Propriedades no menu Exibir. Também pode
abri-la pressionando F4 ou digitando Propriedades na janela de pesquisa.

A janela Propriedades exibe tipos diferentes de campos de edição, dependendo das


necessidades de uma propriedade em particular. Esses campos de edição incluem caixas
de edição, listas suspensas e links a caixas de diálogo do editor personalizado. As
propriedades mostradas em cinza são somente leitura.

Lista de elementos de interface do usuário


Nome do objeto
Relaciona o objeto ou os objetos atuais selecionados. Somente objetos do editor ou
designer ativo ficam visíveis. Quando você seleciona vários objetos, somente as
propriedades comuns a todos os objetos selecionados são exibidas.

Categorizado
Relaciona todas as propriedades e os valores de propriedade do objeto selecionado, por
categoria. Você pode recolher uma categoria para reduzir o número de propriedades
visíveis. Ao expandir ou recolher uma categoria, você vê um sinal de mais (+) ou de
menos (-) à esquerda do nome da categoria. As categorias são listadas em ordem
alfabética.

Em ordem alfabética
Classifica em ordem alfabética todas as propriedades de hora de criação e eventos dos
objetos selecionados. Para editar uma propriedade não esmaecida, clique na célula à
direita e insira as alterações.

Páginas de propriedade
Exibe a caixa de diálogo Páginas de Propriedade ou Designer de Projeto para o item
selecionado. Páginas de Propriedades exibem um subconjunto, as mesmas ou um
superconjunto das propriedades disponíveis na janela Propriedades. Use esse botão
para exibir e editar propriedades relacionadas à configuração ativa do projeto.
Propriedades
Exibe as propriedades de um objeto. Muitos objetos também têm eventos que podem
ser exibidos usando a janela Propriedades.

Classificar por Fonte da Propriedade


Agrupa propriedades por fonte, como herança, estilos aplicados e associações.
Disponível somente ao editar arquivos XAML no designer.

Eventos
Exibe os eventos de um objeto.

7 Observação

Esse controle da barra de ferramentas da janela Propriedades só está disponível


quando um formulário ou designer de controle está ativo no contexto de um
projeto do Visual C#. Ao editar arquivos XAML, os eventos são exibidos em uma
guia separada da janela Propriedades.

Mensagens
Lista todas as mensagens do Windows. Permite adicionar ou excluir funções
especificadas do manipulador para as mensagens fornecidas para a classe selecionada.

7 Observação

Esse controle da barra de ferramentas da janela Propriedades só está disponível


quando Modo de Exibição de Classe é a janela ativa no contexto de um projeto do
Visual C++.

Substituições
Lista todas as funções virtuais para a classe selecionada e permite adicionar ou excluir
funções de substituição.

7 Observação

Esse controle da barra de ferramentas da janela Propriedades só está disponível


quando Modo de Exibição de Classe é a janela ativa no contexto de um projeto do
Visual C++.

Painel de descrição
Mostra o tipo de propriedade e uma breve descrição da propriedade. Você pode ativar e
desativar a descrição da propriedade usando o comando Descrição no menu de atalho.
7 Observação

Esse controle de barra de ferramentas da janela Propriedades não está disponível


ao editar arquivos XAML no designer.

Exibição de miniatura
Mostra uma representação visual do elemento selecionado no momento ao editar
arquivos XAML no designer.

Pesquisar
Fornece uma função de Pesquisa de propriedades e eventos ao editar arquivos XAML no
designer. A caixa de pesquisa responde a pesquisas de palavras parciais e atualiza os
resultados da pesquisa à medida que você digita.

Confira também
Referência de Propriedades do Projeto
Personalizando layouts de janela
Caixa de Ferramentas
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A janela Caixa de Ferramentas exibe os controles que você pode adicionar a projetos
do Visual Studio. Para abrir a Caixa de ferramentas, escolha Exibir>Caixa de
ferramentas na barra de menus ou pressione Ctrl+Alt+X.

Você pode arrastar e soltar diferentes controles na superfície do designer que você está
usando, redimensionar e posicionar os controles.

A Caixa de ferramentas aparece com as exibições de designer, como a exibição de


designer de um arquivo XAML ou um projeto Aplicativo do Windows Forms. A Caixa de
Ferramentas exibe apenas os controles que podem ser usados ​no designer atual. Você
pode pesquisar na Caixa de ferramentas para filtrar ainda mais os itens que aparecem.

7 Observação
Para alguns tipos de projeto, a Caixa de Ferramentas pode não mostrar nenhum
item.

A versão do .NET direcionada pelo projeto também afeta o conjunto de controles


visíveis na Caixa de ferramentas. Altere a versão da estrutura de destino nas páginas de
propriedades do projeto, se necessário. Selecione o nó do projeto no Gerenciador de
Soluções e, na barra de menus, escolha Projeto>Propriedades do nomedoprojeto. Na
guia Aplicativo, use o menu suspenso Estrutura de destino.

Gerenciar a janela Caixa de Ferramentas e seus


controles
Por padrão, a Caixa de ferramentas fica recolhida no lado esquerdo do IDE do Visual
Studio e aparece quando o cursor é movido sobre ela. É possível fixar a Caixa de
Ferramentas (clicando no ícone Fixar da barra de ferramentas) para que ela permaneça
aberta enquanto você move o cursor. Você também pode desencaixar a janela Caixa de
Ferramentas e arrastá-la para qualquer lugar na tela. Você pode encaixar, desencaixar e
ocultar a Caixa de Ferramentas, clicando com o botão direito do mouse na barra de
ferramentas e selecionando uma das opções.

 Dica
Se a Caixa de ferramentas não aparecer mais como recolhida no lado esquerdo do
IDE do Visual Studio, você poderá adicioná-la novamente escolhendo
Janela>Redefinir layout da janela na barra de menus.

Você pode reorganizar os itens em uma guia Caixa de ferramentas ou adicionar guias e
itens personalizados usando os seguintes comandos ao clicar com o botão direito no
menu de contexto:

Renomear item - renomeia o item selecionado.

Exibição de Lista – mostra os controles em uma lista vertical. Se todas as opções


estiverem desmarcadas, os controles aparecem na horizontal.

Mostrar Todos – mostra todos os controles possíveis (e não apenas os que se


aplicam ao designer atual).

Escolher Itens – abre a caixa de diálogo Escolher Itens da Caixa de Ferramentas


para que você possa especificar os itens que aparecem na Caixa de Ferramentas.
Você pode mostrar ou ocultar um item, marcando ou desmarcando a caixa de
seleção.

Classificar itens em ordem alfabética - classifica os itens por nome.

Redefinir Barra de Ferramentas: restaura as configurações e os itens padrão da


Caixa de Ferramentas.

Adicionar Guia – adiciona uma nova guia da Caixa de Ferramentas.

Mover para Cima – move o item selecionado para cima.

Mover para Baixo – move o item selecionado para baixo.

Criar e distribuir controles personalizados da


Caixa de Ferramentas
Você pode criar controles personalizados da Caixa de Ferramentas, começando com um
modelo de projeto baseado no Windows Presentation Foundation ou no Windows
Forms. Depois, você pode distribuir o controle personalizado para seus colegas de
equipe ou publicá-lo na Web usando o Instalador de Controles da Caixa de
Ferramentas .

Próximas etapas
Examine os links a seguir para saber mais sobre algumas das guias disponíveis da Caixa
de ferramentas:

Caixa de Ferramentas, Guia Dados


Caixa de Ferramentas, Guia Componentes
Caixa de Ferramentas, Guia HTML

Confira também
Escolher itens da Caixa de Ferramentas, Componentes do WPF
Caixa de Ferramentas, guia
Componentes
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Exibe os componentes que podem ser adicionados a designers do Visual Basic e C# do


Windows Forms. Além dos componentes .NET incluídos no Visual Studio, como os
componentes MessageQueue e EventLog, é possível adicionar seus próprios
componentes ou componentes de terceiros a essa guia.

Para exibir essa guia, abra um designer do Windows Forms. Selecione Modo de
Exibição>Caixa de Ferramentas. Em Caixa de ferramentas, selecione a guia
Componentes.

Componentes
BackgroundWorker

Cria uma instância do componente BackgroundWorker que pode executar uma


operação em um thread separado e dedicado. Para obter mais informações, confira
Componente BackgroundWorker.

DirectoryEntry

Cria uma instância do componente DirectoryEntry, que encapsula um nó ou um objeto


na hierarquia do Active Directory e pode ser usada para interagir com provedores de
serviços do Active Directory.

DirectorySearcher

Cria uma instância do componente DirectorySearcher, que pode ser usada para executar
consultas no Active Directory.

ErrorProvider

Cria uma instância do componente ErrorProvider, que indica para o usuário final que um
controle em um formulário tem um erro associado a ele. Para obter mais informações,
confira Componente ErrorProvider.

EventLog
Cria uma instância do componente EventLog, que pode ser usada para interagir com
logs do sistema e de eventos personalizados, incluindo a gravação de eventos em um
log e a leitura dos dados de log.

FileSystemWatcher

Cria uma instância do componente FileSystemWatcher, que pode ser usada para
monitorar alterações em um diretório ou arquivo ao qual você tem acesso.

HelpProvider

Cria uma instância do componente HelpProvider que fornece ajuda pop-up ou online
para controles. Para obter mais informações, confira Componente HelpProvider.

ImageList

Cria uma instância do componente ImageList que fornece métodos para gerenciar uma
coleção de objetos Image. Para obter mais informações, confira Componente ImageList.

MessageQueue

Cria uma instância do componente MessageQueue, que pode ser usada para interagir
com filas de mensagens, incluindo a leitura e gravação de mensagens em filas, o
processamento de transações e a realização de tarefas de administração de fila.

PerformanceCounter

Cria uma instância do componente PerformanceCounter, que pode ser usada para
interagir com contadores de desempenho do Windows, incluindo a criação de novas
categorias e instâncias, a leitura de valores de contadores e a execução de cálculos nos
dados do contador.

Processo

Cria uma instância do componente Process, que pode ser usada para interromper,
iniciar e manipular os dados associados a processos no sistema.

SerialPort

Cria uma instância do componente SerialPort que fornece E/S síncrona e controlada por
evento, acesso ao PIN e estados de fixação e interrupção e acesso às propriedades do
driver serial.

ServiceController
Cria uma instância do componente ServiceController, que pode ser usada para
manipular serviços existentes, incluindo a inicialização e a interrupção de serviços e o
envio de comandos para eles.

Timer

Cria uma instância do componente Timer, que pode ser usada para adicionar
funcionalidade baseada em tempo aos aplicativos baseados no Windows. Para obter
mais informações, confira Componente Timer.

7 Observação

Também há um Timer baseado em sistema que pode ser adicionado à Caixa de


ferramentas. Esse Timer é otimizado para aplicativos de servidor e o Timer do
Windows Forms é mais adequado para uso no Windows Forms.

Confira também
Controles a serem usados no Windows Forms
Escolher itens da Caixa de Ferramentas, Componentes do WPF
Caixa de Ferramentas
Caixa de ferramentas, guia Dados
Artigo • 13/01/2024

Exibe objetos de dados que é possível adicionar a formulários e componentes. A guia


Dados da Caixa de Ferramentas é exibida ao criar um projeto que tem um designer
associado. A Caixa de Ferramentas é exibida por padrão no ambiente de
desenvolvimento integrado do Visual Studio; se for preciso exibir a Caixa de
Ferramentas, selecione Caixa de Ferramentas no menu Exibir.

 Dica

A execução do Assistente de Configuração de Fonte de Dados cria e configura


automaticamente a maioria dos itens de dados. Para obter mais informações,
consulte Adicionar novas fontes de dados.

Lista de elementos de interface do usuário


Para acessar diretamente a página de referência .NET de um componente, pressione F1
no item na Caixa de ferramentas ou no item de componente na bandeja do designer.

ノ Expandir a tabela

Nome Descrição

DataSet Adiciona uma instância de um conjunto de dados tipado ou não tipado ao


formulário ou ao componente. Quando você arrasta esse objeto para um
designer, ele exibe uma caixa de diálogo que permite selecionar uma classe
de conjunto de dados tipado existente ou especificar se você deseja criar um
conjunto de dados novo, em branco e não tipado. Observação: não use o
objeto DataSet na Caixa de Ferramentas para criar um novo esquema e uma
nova classe de conjunto de dados tipado. Para obter mais informações,
consulte Create and configure datasets (Criar e configurar conjuntos de
dados).

DataGridView Fornece uma maneira avançada e flexível para exibir dados em um formato
de tabela.

BindingSource Simplifica o processo de associar controles a uma fonte de dados subjacente.

BindingNavigator Representa interface do usuário de navegação e a manipulação para


controles em um formulário que está associado aos dados.
Confira também
Acessar dados no Visual Studio
Ferramentas de dados do Visual Studio para .NET
Ferramentas de conjunto de dados no Visual Studio
Associar controles a dados no Visual Studio
Associar controles do Windows Forms a dados no Visual Studio
Editar dados em conjuntos de dados
Validar dados em conjuntos de dados
Caixa de Ferramentas, Guia HTML
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A guia HTML da Caixa de ferramentas fornece componentes que são úteis em páginas e
formulários da Web. Para exibir essa guia, primeiro abra um documento para edição no
designer de HTML. No menu Exibir, clique em Caixa de ferramentas e, em seguida, na
guia HTML da Caixa de ferramentas.

Para criar uma instância de uma ferramenta na guia HTML, clique duas vezes na
ferramenta para adicioná-la ao documento no ponto de inserção atual ou selecione a
ferramenta e arraste-a para a posição desejada na superfície de edição.

Elementos da interface do usuário


As ferramentas a seguir estão disponíveis por padrão na guia HTML.

Ponteiro

Essa ferramenta é selecionada por padrão quando uma guia da Caixa de ferramentas é
aberta. Não pode ser excluído. O ponteiro permite arrastar objetos para a superfície do
modo de exibição de Design, redimensioná-los e reposicioná-los na página ou no
formulário. Para saber mais, confira Caixa de Ferramentas.

Entrada (Botão)

Insere um elemento input igual a type="button" . Para alterar o texto exibido, edite a
propriedade name . Por padrão, id="Button1" é inserido para o primeiro botão,
id="Button2" para o segundo e assim por diante.

Ao arrastar Entrada (Botão) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Button1" type="button" value="Button" name="Button1">

Entrada (Redefinição)
Insere um elemento input igual a type="reset" . Para alterar o texto exibido, edite a
propriedade name . Por padrão, id="Reset1" é inserido para o primeiro botão de
redefinição, id="Reset2" para o segundo e assim por diante.

Ao arrastar Entrada (Redefinição) para a superfície do modo de exibição de Design,


uma marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Reset1" type="reset" value="Reset" name="Reset1">

Entrada (Enviar)

Insere um elemento input igual a type="submit" . Para alterar o texto exibido, edite a
propriedade name . Por padrão, id="Submit1" é inserido para o primeiro botão de envio,
id="Submit2" para o segundo e assim por diante.

Ao arrastar Entrada (Envio) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Submit1" type="submit" value="Submit" name="Submit1">

Entrada (Texto)

Insere um elemento input igual a type="text" no documento. Para alterar o texto


padrão exibido, edite o atributo value . Por padrão, id="Text1" é inserido para o
primeiro campo de texto, id="Text2" para o segundo e assim por diante.

Ao arrastar Entrada (Texto) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Text1" TYPE="text" value="Text Field" name="Text1">


) Importante

É recomendável validar todas as entradas do usuário. Para obter mais informações,


consulte Validating User Input in ASP.NET Web Pages (Razor) Sites (Validando a
entrada do usuário em Páginas da Web do ASP.NET (Razor)).

Entrada (Arquivo)

Insere um elemento input igual a type="file" no documento. Por padrão, id="File1"


é inserido para o primeiro campo de arquivo, id="File2" para o segundo e assim por
diante.

Ao arrastar Entrada (Arquivo) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="File1" type="file" name="File1">

) Importante

É recomendável validar todas as entradas do usuário. Para obter mais informações,


consulte Validating User Input in ASP.NET Web Pages (Razor) Sites (Validando a
entrada do usuário em Páginas da Web do ASP.NET (Razor)).

Entrada (Senha)

Insere um elemento input igual a type="password" . Por padrão, id="Password1" é


inserido para o primeiro campo de senha, id="Password2" para o segundo e assim por
diante.

Ao arrastar Entrada (Senha) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Password1" type="password" name="Password1">


) Importante

Se o aplicativo transmitir nomes de usuário e senhas, será necessário configurar o


site para usar o protocolo SSL para criptografar a transmissão. Para obter mais
informações, confira Securing Connections (Como proteger conexões). Além disso,
é recomendável validar todas as entradas do usuário. Para obter mais informações,
consulte Validating User Input in ASP.NET Web Pages (Razor) Sites (Validando a
entrada do usuário em Páginas da Web do ASP.NET (Razor)).

Entrada (caixa de seleção)

Insere um elemento input igual a type="checkbox" . Para alterar o texto exibido, edite a
propriedade name . Por padrão, id="Checkbox1" é inserido para a primeira caixa de
seleção, id="Checkbox2" para a segunda e assim por diante.

Ao arrastar Entrada (Caixa de seleção) para a superfície do modo de exibição de


Design, uma marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Checkbox1" type="checkbox" name="Checkbox1">

Entrada (Opção)

Insere um elemento input igual a type="radio" . Para alterar o texto exibido, edite a
propriedade name . Por padrão, id="Radio1" é inserido para o primeiro botão de opção,
id="Radio2" para o segundo e assim por diante.

Ao arrastar Entrada (Botão de opção) para a superfície do modo de exibição de Design,


uma marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Radio1" type="radio" name="Radio1">

Entrada (Oculta)
Insere um elemento input igual a type="hidden" . Por padrão, id="Hidden1" é inserido
para o primeiro campo oculto, id="Hidden2" para o segundo e assim por diante.

Ao arrastar Entrada (Oculta) para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<input id="Hidden1" type="hidden" name="Hidden1">

Área de texto

Insere um elemento textarea . É possível redimensionar a área de texto ou usar as


barras de rolagem para exibir o texto que se estende além da área de exibição. Para
alterar o texto padrão exibido, edite o atributo value . Por padrão, id="textarea1" é
inserido para a primeira área de texto, id=" textarea 2" para a segunda e assim por
diante.

Ao arrastar Área de texto para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<textarea id=" textarea 1 name=" textarea 1" rows=2 cols=20></textarea>

) Importante

É recomendável validar todas as entradas do usuário. Para obter mais informações,


consulte Validating User Input in ASP.NET Web Pages (Razor) Sites (Validando a
entrada do usuário em Páginas da Web do ASP.NET (Razor)).

Tabela

Insere um elemento table .

Ao arrastar Tabela para a superfície do modo de exibição de Design, uma marcação


HTML como a seguinte é inserida no documento:

HTML
<table cellspacing="1" width="75%" border=1> <tr><td></td></tr></table>

Imagem

Insere um elemento img . Edite esse elemento para especificar seu src e seu texto alt .

Ao arrastar Imagem para a superfície do modo de exibição de Design, uma marcação


HTML como a seguinte é inserida no documento:

HTML

<img alt="" src="">

Selecionar

Insere um elemento select suspenso (sem um atributo size ). Por padrão,


id="select1" é inserido para a primeira caixa de listagem, id="select2" para a segunda
e assim por diante.

Ao arrastar Selecionar para a superfície do modo de exibição de Design, uma marcação


HTML como a seguinte é inserida no documento:

HTML

<select id="select1" name="select1"><option selected></option></select>

É possível criar um elemento select multilinha aumentando o valor da propriedade de


tamanho.

Régua horizontal

Insere um elemento hr . Para aumentar a espessura da linha, edite o atributo size .

Ao arrastar Régua Horizontal para a superfície do modo de exibição de Design, uma


marcação HTML como a seguinte é inserida no documento:

HTML

<hr width="100%" size=1>


Div

Insere um elemento div inclui um atributo ms_positioning="FlowLayout" . Com exceção


da largura e da altura, esse item é idêntico a um Painel de Layout de Fluxo. Para
formatar o texto contido em um elemento div , adicione um atributo class="stylename"
à marcação de abertura.

Ao arrastar Div para a superfície do modo de exibição de Design, uma marcação HTML
como a seguinte é inserida no documento:

HTML

<div ms_positioning="FlowLayout" style="width: 70px; position: relative;


height: 15px">Label</div>

Confira também
Caixa de Ferramentas
Opções de linha de comando do Devenv
Artigo • 24/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O Devenv permite definir várias opções no IDE, compilar, depurar e implantar projetos a
partir de uma linha de comando. Use essas opções para executar o IDE com um script
ou arquivo .bat (por exemplo, um script de nightly build) ou para iniciar o IDE em uma
configuração específica.

7 Observação

Para tarefas relacionadas ao build, é recomendável usar o MSBuild em vez do


Devenv. Para obter mais informações, consulte Referência de linha de comando do
MSBuild.

Para saber mais sobre as opções destinadas principalmente ao desenvolvimento de


extensões do Visual Studio, consulte Opções de linha de comando do Devenv para
desenvolvimento de VSPackage.

Sintaxe da opção do devenv


Os comandos que começam com devenv são manipuladas pelo utilitário do devenv.com ,
que fornece a saída por meio de fluxos de sistema padrão, como stdout e stderr . O
utilitário determina o redirecionamento de E/S apropriado quando ele captura a saída,
por exemplo, em um arquivo .txt.

Como alternativa, os comandos que começam com devenv.exe podem usar as mesmas
opções, mas o utilitário devenv.com é ignorado. Usando devenv.exe diretamente impede
que a saída seja exibida no console.

As regras de sintaxe para opções do devenv são semelhantes às regras de outros


utilitários de linha de comando do DOS. As regras de sintaxe a seguir se aplicam a todas
as opções devenv e seus argumentos:

Os comandos começam com devenv .

As opções não diferenciam maiúsculas de minúsculas.

Você pode especificar uma opção usando um hífen (-) ou uma barra (/).
Ao especificar uma solução ou um projeto, o primeiro argumento é o nome do
arquivo de solução ou do arquivo de projeto, incluindo o caminho do arquivo.

Se o primeiro argumento for um arquivo que não seja uma solução ou um projeto,
esse arquivo será aberto no editor apropriado, em uma nova instância do IDE.

Ao fornecer um nome de arquivo de projeto em vez de um nome de arquivo de


solução, um comando devenv pesquisa na pasta pai do arquivo de projeto um
arquivo de solução que tem o mesmo nome. Por exemplo, o comando devenv
myproject1.vbproj /build pesquisa um arquivo de solução chamado
myproject1.sln na pasta pai.

7 Observação

Apenas um arquivo de solução que referencia esse projeto deve ser localizado
em sua pasta pai. Se a pasta pai não contiver nenhum arquivo de solução que
referencie esse projeto ou se contiver dois ou mais arquivos de solução que a
referenciem, então um arquivo de solução temporário será criado.

Quando nomes de arquivo e caminhos de arquivo incluírem espaços, será


necessário usar aspas duplas (""). Por exemplo, "c:\project a\" .

Insira um caractere de espaço entre as opções e os argumentos na mesma linha.


Por exemplo, o comando devenv /log output.txt abre o IDE e coloca todas as
informações de log dessa sessão em output.txt.

Não é possível usar sintaxe de correspondência de padrões em comandos do


devenv .

Opções do devenv
As seguintes opções de linha de comando apresentam o IDE e realizam a tarefa descrita.

ノ Expandir a tabela

Opção de linha de Descrição


comando

/Command Inicia o IDE e executa o comando especificado.

devenv /command "nav https://learn.microsoft.com/"


Opção de linha de Descrição
comando

/DebugExe Carrega um executável C++ no controle do depurador. Esta opção não


está disponível nos executáveis do Visual Basic ou C#. Para obter mais
informações, consulte Automatically start a process in the debugger
(Iniciar automaticamente um processo no depurador).

devenv /debugexe mysln.exe

/Diff Compara dois arquivos. Assume quatro parâmetros: SourceFile, TargetFile,


SourceDisplayName (opcional) e TargetDisplayName (opcional).

devenv /diff File1 File2 Alias1 Alias2

/DoNotLoadProjects Abre a solução especificada sem carregar projetos.

devenv /donotloadprojects mysln.sln

/Edit Abre os arquivos especificados em uma instância em execução deste


aplicativo. Se não houver nenhuma instância em execução, uma nova
instância será iniciada com um layout de janela simplificado.

devenv /edit File1 File2

/LCID ou /L Define o idioma padrão do IDE. Se a linguagem especificada não estiver


incluída em sua instalação do Visual Studio, essa configuração será
ignorada.

devenv /l 1033

/Log Inicia o Visual Studio e registra toda a atividade no arquivo de log.

devenv /log mylogfile.xml

/NoScale Abre o IDE em um modo desabilitado por DPI que permite um layout
mais preciso no Designer de Windows Forms.

/NoSplash Abre o IDE sem mostrar a tela inicial.

devenv /nosplash File1 File2

/ResetSettings Restaura as configurações padrão do Visual Studio. Opcionalmente,


redefine as configurações para o arquivo .vssettings especificado.

devenv /resetsettings mysettings.vssettings

/Run ou /R Compila e executa a solução especificada.

devenv /run mysln.sln


Opção de linha de Descrição
comando

/RunExit Compila e executa a solução especificada, minimiza o IDE quando a


solução é executada e fecha o IDE depois que a solução termina a
execução.

devenv /runexit mysln.sln

/SafeMode Inicia o Visual Studio no modo de segurança. Esta opção carrega somente
o ambiente padrão, os serviços padrão e as versões enviadas de pacotes
de terceiros.

Esta opção não aceita nenhum argumento.

/TfsLink Abre o Team Explorer e inicia um visualizador para o artefato URI


fornecido se estiver registrado.

/UseEnv Faz com que o IDE use variáveis de ambiente PATH, INCLUDE, LIBPATH e
LIB para a compilação C++. Essa opção é instalada com a carga de
trabalho de Desenvolvimento para desktop com C++. Para obter mais
informações, consulte Configurando o caminho e variáveis de ambiente
para Builds de linha de comando.

As opções de linha de comando a seguir não exibem o IDE.

ノ Expandir a tabela

Opção de linha Descrição


de comando

/? Exibe a ajuda para as opções do devenv na janela do prompt de comando.

Esta opção não aceita nenhum argumento.

/Build Cria a solução ou o projeto especificado de acordo com a configuração da


solução especificada.

devenv mysln.sln /build

/Clean Exclui os arquivos criados pelo comando de build sem afetar os arquivos de
origem.

devenv mysln.sln /clean

/Deploy Compila a solução com os arquivos necessários para implantação, de acordo


com a configuração da solução.

devenv mysln.sln /deploy


Opção de linha Descrição
de comando

/Out Permite que você especifique um arquivo para receber erros ao compilar.

devenv mysln.sln /build Debug /out log.txt

/Project O projeto a ser criado, limpo ou implantado. É possível usar esta opção
somente se você tiver fornecido a opção /Build , /Rebuild , /Clean ou
/Deploy .

devenv mysln.sln /build Debug /project proj1

/ProjectConfig Especifica a configuração de projeto a ser criada ou implantada. É possível


usar esta opção somente se você tiver fornecido a opção /Project .

devenv mysln.sln /build Release /project proj1 /projectconfig Release

/Rebuild Limpa e depois compila a solução ou o projeto especificado de acordo com


a configuração da solução especificada.

devenv mysln.sln /rebuild

/Setup Força o Visual Studio a mesclar os metadados de recursos que descrevem


menus, barras de ferramentas e grupos de comando de todos os
VSPackages disponíveis. Você só pode executar esse comando como
administrador.

/Upgrade Atualiza o arquivo de solução especificado e todos os seus arquivos de


projeto ou o arquivo de projeto especificado, para os formatos do Visual
Studio atuais para esses arquivos.

devenv mysln.sln /upgrade

Confira também
Caixa de diálogo Geral, Ambiente, Opções
Opções de linha de comando do Devenv para desenvolvimento de VSPackage
/? (devenv.exe)
Artigo • 13/01/2024

Exibe uma caixa de mensagem listando todas as opções de devenv , com uma breve
descrição de cada uma delas.

Sintaxe
shell

devenv /?

Confira também
Opções de linha de comando do Devenv
/Build (devenv.exe)
Artigo • 13/01/2024

Compila uma solução ou um projeto usando um arquivo de configuração de solução


especificado.

Sintaxe
shell

devenv SolutionName /Build [SolnConfigName [/Project ProjName


[/ProjectConfig ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho e o nome do arquivo de solução, em relação ao diretório


da solução.

SolnConfigName

Opcional. O nome da configuração da solução (por exemplo, Debug ou Release )


que será usado para compilar a solução nomeada em SolutionName. Se várias
plataformas de solução estiverem disponíveis, você também precisará especificar a
plataforma (por exemplo, Debug|Win32 ). Se esse argumento não for especificado
ou for uma cadeia de caracteres vazia ( "" ), a ferramenta usará a configuração ativa
da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Insira um


caminho relativo da pasta SolutionName para o arquivo de projeto, o nome de
exibição do projeto ou o caminho completo e o nome do arquivo de projeto.

/ProjectConfig ProjConfigName

Opcional. Nome de uma configuração de build do projeto (por exemplo, Debug ou


Release ) que será usado ao compilar o projeto nomeado. Se mais de uma

plataforma de solução estiver disponível, também será preciso especificar a


plataforma (por exemplo, Debug|Win32 ). Se esta opção for especificada, ela
substituirá o argumento SolnConfigName.

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
A opção /Build realiza a mesma função que o comando de menu Compilar
Solução dentro do ambiente de desenvolvimento integrado (IDE).

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo para builds, incluindo erros, podem ser exibidas na


janela Comando ou em qualquer arquivo de log especificado com a opção /Out .

A opção /Build compila somente os projetos que foram alterados desde o último
build. Para compilar todos os projetos de uma solução, use /rebuild.

Se você receber uma mensagem de erro informando Configuração de projeto


inválida, verifique se especificou a plataforma de solução ou a plataforma de
projeto (por exemplo, Debug|Win32 ).

Exemplo
O comando a seguir compila o projeto CSharpWinApp , usando a configuração de build
do projeto Debug dentro de MySolution .

shell

devenv "%USERPROFILE%\source\repos\MySolution.sln" /build Debug /project


"CSharpWinApp\CSharpWinApp.csproj" /projectconfig Debug

Confira também
Compilar e limpar projetos e soluções
Opções de linha de comando do Devenv
/Rebuild (devenv.exe)
/Clean (devenv.exe)
/Out (devenv.exe)
/Clean (devenv.exe)
Artigo • 13/01/2024

Limpa todos os arquivos intermediários e diretórios de saída.

Sintaxe
shell

devenv SolutionName /Clean [Config [/Project ProjName [/ProjectConfig


ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome do arquivo de solução.

Config

Opcional. A configuração (por exemplo, Debug ou Release ) para limpar os arquivos


intermediários da solução nomeada em SolutionName. Se mais de uma plataforma
de solução estiver disponível, também será preciso especificar a plataforma (por
exemplo, Debug|Win32 ). Se esse argumento não for especificado ou for uma cadeia
de caracteres vazia ( "" ), a ferramenta usará a configuração ativa da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Você pode


inserir o nome de exibição do projeto ou um caminho relativo da pasta
SolutionName para o arquivo do projeto. Também é possível inserir o caminho
completo e o nome do arquivo do projeto.

/ProjectConfig ProjConfigName

Opcional. O nome da configuração de build do projeto (por exemplo, Debug ou


Release ) a ser usado ao limpar o /Project nomeado. Se mais de uma plataforma

de solução estiver disponível, também será preciso especificar a plataforma (por


exemplo, Debug|Win32 ). Se essa opção for especificada, ela substituirá o argumento
Config.
/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Esta opção tem a mesma função que o comando de menu Limpar Solução dentro do
IDE.

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo ao realizar a limpeza ou a compilação, incluindo os erros,


podem ser exibidas na janela Command ou em qualquer arquivo de log especificado
com a opção /Out.

Se a opção /Project não for especificada, a ação de limpeza será realizada em todos os
projetos na solução, mesmo que o FileName tenha sido especificado como um arquivo
de projeto.

Exemplo
O primeiro exemplo limpa a solução MySolution , usando a configuração padrão
especificada no arquivo da solução.

O segundo exemplo limpa o projeto CSharpWinApp , usando a configuração de build do


projeto Debug dentro de MySolution .

shell

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /Clean

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /Clean "Debug"


/project "CSharpWinApp\CSharpWinApp.csproj" /projectconfig "Debug"

Confira também
Opções de linha de comando do Devenv
/Build (devenv.exe)
/Rebuild (devenv.exe)
/Out (devenv.exe)
/Command (devenv.exe)
Artigo • 13/01/2024

Executa o comando especificado depois de iniciar o IDE do Visual Studio.

Sintaxe
shell

devenv /Command CommandName

Argumentos
CommandName

Obrigatórios. O nome completo de um comando do Visual Studio ou seu alias, entre


aspas duplas. Para obter mais informações sobre comandos e a sintaxe de aliases,
consulte Comandos do Visual Studio.

Comentários
Após a conclusão da inicialização, o IDE executa o comando nomeado.

Se um suplemento expor um comando, será possível usar essa opção para iniciar o
suplemento por meio da linha de comando. Para obter mais informações, consulte
Como controlar suplementos usando o gerenciador de suplementos.

Exemplo
O primeiro exemplo inicia o Visual Studio e executa a macro Abrir Arquivos Favoritos
automaticamente.

O segundo exemplo abre uma guia de navegação na Web dentro do IDE e navega até o
site do Microsoft Learn.

O terceiro exemplo cria um novo arquivo chamado some_file.cs e o abre em um editor


de código.

shell
devenv /command "Macros.MyMacros.Module1.OpenFavoriteFiles"

devenv /command "navigate https://learn.microsoft.com/"

devenv /command "nf some_file.cs"

Confira também
Opções de linha de comando do Devenv
Aliases de comando do Visual Studio
Janela Comando
/DebugExe (devenv.exe)
Artigo • 13/01/2024

Abre o arquivo executável especificado a ser depurado.

Sintaxe
shell

devenv /DebugExe ExecutableFile

Argumentos
ExecutableFile

Obrigatórios. O caminho e o nome de um arquivo .exe . Se o arquivo .exe não for


encontrado ou não existir, não será exibido nenhum aviso ou erro, e o Visual
Studio iniciará normalmente.

Comentários
Quaisquer cadeias de caracteres após o parâmetro ExecutableFile são passadas para
esse arquivo como argumentos.

Exemplo
O exemplo a seguir abre o arquivo MyApplication.exe para depuração.

shell

devenv /debugexe MyApplication.exe

Confira também
Opções de linha de comando do Devenv
/Deploy (devenv.exe)
Artigo • 13/01/2024

Implanta uma solução após um build ou recompilação. Aplica-se somente a projetos de


código gerenciado.

Sintaxe
shell

devenv SolutionName /Deploy [SolnConfigName [/Project ProjName


[/ProjectConfig ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome do arquivo de solução.

SolnConfigName

Opcional. O nome da configuração da solução (por exemplo, Debug ou Release )


que será usado para compilar a solução nomeada em SolutionName. Se mais de
uma plataforma de solução estiver disponível, também será preciso especificar a
plataforma (por exemplo, Debug|Win32 ). Se esse argumento não for especificado
ou for uma cadeia de caracteres vazia ( "" ), a ferramenta usará a configuração ativa
da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Você pode


inserir o nome de exibição do projeto ou um caminho relativo da pasta
SolutionName para o arquivo do projeto. Também é possível inserir o caminho
completo e o nome do arquivo do projeto.

/ProjectConfig ProjConfigName

Opcional. Os nomes de uma configuração de build do projeto (por exemplo, Debug


ou Release ) que serão usados ao compilar o /Project nomeado. Se mais de uma
plataforma de solução estiver disponível, também será preciso especificar a
plataforma (por exemplo, Debug|Win32 ). Se esta opção for especificada, ela
substituirá o argumento SolnConfigName.

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
O projeto especificado deve ser um projeto de implantação. Se o projeto especificado
não for um projeto de implantação, quando o projeto que tiver sido compilado for
aprovado para implantação, ele falhará com um erro.

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo para builds, incluindo erros, podem ser exibidas na janela
Comando ou em qualquer arquivo de log especificado com a opção /Out.

Exemplo
Este exemplo implanta o projeto CSharpWinApp , usando a configuração de build do
projeto Release dentro de MySolution .

shell

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /deploy


Release /project "CSharpWinApp\CSharpWinApp.csproj" /projectconfig Release

Confira também
Opções de linha de comando do Devenv
/Project (devenv.exe)
/Build (devenv.exe)
/Clean (devenv.exe)
/Rebuild (devenv.exe)
/Out (devenv.exe)
/Diff (devenv.exe)
Artigo • 13/01/2024

Compara dois arquivos. As diferenças são exibidas em uma janela especial do Visual
Studio.

Sintaxe
shell

devenv /Diff SourceFile TargetFile [SourceDisplayName [TargetDisplayName]]

Argumentos
SourceFile

Obrigatórios. O caminho completo e o nome do primeiro arquivo a ser


comparado.

TargetFile

Obrigatórios. O caminho completo e o nome do segundo arquivo a ser


comparado.

SourceDisplayName

Opcional. O nome de exibição do primeiro arquivo.

TargetDisplayName

Opcional. O nome de exibição do segundo arquivo.

Comentários
Se uma instância do IDE já estiver aberta, a comparação de arquivos aparecerá em uma
guia no IDE do atual.

Exemplo
O primeiro exemplo compara dois arquivos sem alterar seus nomes de exibição. O
segundo exemplo compara os arquivos alterando seus nomes de exibição. Os terceiro e
quarto exemplos comparam dois arquivos, mas aplicam um alias somente ao primeiro
ou ao segundo arquivo.

shell

devenv /diff File1.txt File2.txt

devenv /diff File1.txt File2.txt FirstAlias "Second Alias"

devenv /diff File1.txt File2.txt "File One"

devenv /diff File1.txt File2.txt "" FileTwo

Confira também
Opções de linha de comando do Devenv
/DoNotLoadProjects (devenv.exe)
Artigo • 13/01/2024

Novidades no Visual Studio 2019 versão 16.1

Abre a solução especificada sem carregar projetos. Confira mais informações em


Soluções filtradas no Visual Studio.

Sintaxe
shell

devenv /DoNotLoadProjects SolutionName

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome da solução a ser aberta.

Exemplo
O exemplo abre a solução MySln.sln sem carregar projetos.

shell

devenv /donotloadprojects MySln.sln

Confira também
Soluções filtradas no Visual Studio
Opções de linha de comando do Devenv
/Edit (devenv.exe)
Artigo • 13/01/2024

Abre o arquivo especificado em uma instância existente do Visual Studio.

Sintaxe
shell

devenv /Edit [File1[ FileN]...]

Argumentos
Arquivo1

Opcional. O arquivo a ser aberto em uma instância existente do Visual Studio. Se


não existir nenhuma instância do Visual Studio, uma nova instância será criada
com um layout de janela simplificado, e a ferramenta abrirá File1 na nova instância.

FileN

Opcional. Um ou mais arquivos adicionais a serem abertos na instância existente


do Visual Studio.

Comentários
Quando um arquivo não é especificado, uma instância existente do Visual Studio fica em
destaque. Se nenhum arquivo for especificado e não existir nenhuma instância do Visual
Studio, a ferramenta criará uma instância com um layout de janela simplificado.

Se a instância existente do Visual Studio estiver em estado modal, o arquivo será aberto
na instância existente quando o Visual Studio sair do estado modal. Por exemplo, essa
situação pode ocorrer quando a caixa de diálogo Opções estiver aberta.

Se mais de uma instância do Visual Studio estiver aberta, o arquivo será aberto na
instância aberta mais recentemente.

Exemplo
O primeiro exemplo abre o arquivo MyFile.cs em uma instância existente do Visual
Studio. Se não existir nenhuma instância do Visual Studio, a ferramenta abrirá o arquivo
em uma nova instância. O segundo exemplo é semelhante, com exceção de que ela
abre três arquivos em vez de apenas um.

shell

devenv /edit MyFile.cs

devenv /edit MyFile1.cs MyFile2.cs MyFile3.cs

Confira também
Opções de linha de comando do Devenv
/LCID (devenv.exe)
Artigo • 13/01/2024

Define o idioma padrão usado para texto, moeda e outros valores dentro do IDE.

Sintaxe
shell

devenv {/LCID|/L} LocaleID

Argumentos
LocaleID

Obrigatórios. O identificador de localidade (LCID) do idioma que você especificar.

Comentários
Carrega o IDE e define o idioma natural padrão do ambiente. Essa alteração é mantida
entre as sessões, e o IDE mostra essa alteração na caixa
Ferramentas>Opções>Ambiente>Configurações internacionais>Idioma.

Se o idioma especificado não estiver disponível em seu sistema, a opção /LCID será
ignorada.

A tabela a seguir lista os LCIDs dos idiomas para os quais o Visual Studio oferece
suporte.

ノ Expandir a tabela

Idioma LCID

Chinês (Simplificado) 2052

Chinês (Tradicional) 1028

Tcheco 1029

Inglês 1033

Francês Etapas de resolução para o seguinte evento ID 1036


Idioma LCID

Alemão 1031

Italiano 1040

Japonês 1041

Coreano 1042

Polonês 1045

Português (Brasil) 1046

Russo 1049

Espanhol 3082

Turco 1055

Exemplo
Este exemplo carrega o IDE com cadeias de caracteres de recursos em inglês.

shell

devenv /LCID 1033

Confira também
Opções de linha de comando do Devenv
Caixa de diálogo Configurações Internacionais, Ambiente, Opções
Personalizando layouts de janela
/Log (devenv.exe)
Artigo • 13/01/2024

Registra toda a atividade no arquivo de log para resolução de problemas. Este arquivo
aparece depois de você chamar devenv /log pelo menos uma vez. Por padrão, o
arquivo de log está localizado aqui:

%APPDATA%\Microsoft\VisualStudio\<Version>\ActivityLog.xml

em que <Versão> é a versão do Visual Studio. No entanto, você pode especificar um


caminho e um nome de arquivo diferentes.

Sintaxe
shell

devenv /Log NameOfLogFile

Argumentos
NameOfLogFile

Obrigatórios. O caminho completo e o nome do arquivo de log em que será salvo.

Comentários
Essa opção deve aparecer no fim da linha de comando, depois de todas as outras
opções.

O log é gravado somente nas instâncias do Visual Studio que você chamou com a
opção /Log .

Exemplo
Este exemplo direciona o registro de log para o arquivo MyVSLog.xml no diretório base
do usuário.

shell
devenv /log "%USERPROFILE%\MyVSLog.xml"

Confira também
Opções de linha de comando do Devenv
/NoSplash (devenv.exe)
Artigo • 13/01/2024

Impede que a tela inicial seja mostrada.

Sintaxe
shell

devenv /NoSplash [File1[ FileN]...]

Argumentos
Arquivo1

Opcional. O arquivo a ser aberto em uma instância existente do Visual Studio. Se


não existir nenhuma instância do Visual Studio, uma nova instância será criada
com um layout de janela simplificado, e a ferramenta abrirá File1 na nova instância.

FileN

Opcional. Um ou mais arquivos adicionais a serem abertos na instância existente


do Visual Studio.

Comentários
Esta opção oculta a tela inicial. Omitir esta opção faz com que a tela inicial a seja
mostrada. Se desejar examinar mais a fundo a tela inicial (por exemplo, para verificar o
ícone de produto do VSPackage), use a opção /Splash.

A opção /NoSplash pode ser combinada com outras opções, como /Run ou /DebugExe.

Exemplo
Todos os três exemplos abrem o IDE sem exibir a tela inicial. O segundo exemplo
também compila a solução especificada e executa o arquivo executável criado. O
terceiro exemplo abre o executável especificado para depuração no IDE.

shell
devenv /nosplash

devenv /nosplash /run MySolution.sln

devenv /nosplash /debugexe MySolution.exe

Confira também
Opções de linha de comando do Devenv
Opções de linha de comando do Devenv para desenvolvimento de VSPackage
/Out (devenv.exe)
Artigo • 13/01/2024

Especifica um arquivo para armazenar e exibir erros ao executar, executar e fechar,


atualizar, compilar, recompilar, limpar ou implantar uma solução.

Sintaxe
shell

devenv /Out FileName

Argumentos
FileName

Obrigatórios. O caminho e nome do arquivo para receber a saída ao compilar um


arquivo executável.

Comentários
Se for especificado um nome de arquivo inexistente, o arquivo será criado
automaticamente. Caso contrário, o arquivo já existe e os resultados serão anexados ao
conteúdo existente do arquivo.

Erros de build de linha de comando são exibidos na janela Comando e no modo de


exibição Construtor de Soluções da janela Saída. Esta opção é útil para exibir resultados
de compilações autônomas.

Exemplo
Este exemplo executa MySolution e grava os erros no arquivo MyErrorLog.txt .

shell

devenv /run "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /out


"C:\MyErrorLog.txt"
Confira também
Opções de linha de comando do Devenv
/Run (devenv.exe)
/RunExit (devenv.exe)
/Upgrade (devenv.exe)
/Clean (devenv.exe)
/Build (devenv.exe)
/Rebuild (devenv.exe)
/Deploy (devenv.exe)
/Project (devenv.exe)
Artigo • 13/01/2024

Identifica um único projeto dentro da configuração da solução especificada para ser


compilado, limpo, recompilado ou implantado.

Sintaxe
shell

devenv SolutionName {/Build|/Clean|/Deploy|/Rebuild} [SolnConfigName


[/Project ProjName [/ProjectConfig ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome do arquivo de solução.

{ /Build | /Clean | /Deploy | /Rebuild }

Obrigatórios. Compila, limpa, implanta ou recompila o projeto.

SolnConfigName

Opcional. Nome da configuração da solução (como Debug ou Release ) aplicado à


solução nomeada em SolutionName. Se mais de uma plataforma de solução estiver
disponível, também será preciso especificar a plataforma (por exemplo,
Debug|Win32 ). Se esse argumento não for especificado ou for uma cadeia de

caracteres vazia ( "" ), a ferramenta usará a configuração ativa da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Você pode


inserir o nome de exibição do projeto ou um caminho relativo da pasta
SolutionName para o arquivo do projeto. Também é possível inserir o caminho
completo e o nome do arquivo do projeto.

/ProjectConfig ProjConfigName
Opcional. Nome da configuração de build do projeto (por exemplo, Debug ou
Release ) que será aplicado ao /Project nomeado. Se mais de uma plataforma de

solução estiver disponível, também será preciso especificar a plataforma (por


exemplo, Debug|Win32 ).

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Deve ser parte de um comando devenv /Build , /Clean , /Rebuild ou /Deploy .

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo para builds, incluindo erros, podem ser exibidas na


janela Comando ou em qualquer arquivo de log especificado com a opção /Out .

Exemplo
Este exemplo apresenta a compilação do projeto CSharpWinApp , usando a configuração
de build de projeto Debug dentro de MySolution .

shell

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /build Debug


/project "CSharpWinApp\CSharpWinApp.csproj" /projectconfig Debug

Confira também
Opções de linha de comando do Devenv
/ProjectConfig (devenv.exe)
/Build (devenv.exe)
/Clean (devenv.exe)
/Rebuild (devenv.exe)
/Deploy (devenv.exe)
/Out (devenv.exe)
/ProjectConfig (devenv.exe)
Artigo • 13/01/2024

Especifica uma configuração de build do projeto a ser aplicada ao compilar, limpar,


recompilar ou implantar o projeto nomeado no argumento /Project .

Sintaxe
shell

devenv SolutionName {/Build|/Clean|/Deploy|/Rebuild} [SolnConfigName


[/Project ProjName [/ProjectConfig ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome do arquivo de solução.

{ /Build | /Clean | /Deploy | /Rebuild }

Obrigatórios. Compila, limpa, implanta ou recompila o projeto.

SolnConfigName

Opcional. O nome da configuração da solução (por exemplo, Debug ou Release )


que será aplicado à solução nomeada em SolutionName. Se mais de uma
plataforma de solução estiver disponível, também será preciso especificar a
plataforma (por exemplo, Debug|Win32 ). Se esse argumento não for especificado
ou for uma cadeia de caracteres vazia ( "" ), a ferramenta usará a configuração ativa
da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Você pode


inserir o nome de exibição do projeto ou um caminho relativo da pasta
SolutionName para o arquivo do projeto. Também é possível inserir o caminho
completo e o nome do arquivo do projeto.

/ProjectConfig ProjConfigName
Opcional. Nome da configuração de build do projeto (por exemplo, Debug ou
Release ) que será aplicado ao /Project nomeado. Se mais de uma plataforma de

solução estiver disponível, também será preciso especificar a plataforma (por


exemplo, Debug|Win32 ).

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
A opção /ProjectConfig deve ser usada com a opção /Project como parte de um
comando /Build , / Clean , /Deploy ou /Rebuild .

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo para builds, incluindo erros, podem ser exibidas na janela
Comando ou em qualquer arquivo de log especificado com a opção /Out .

Exemplo
O comando a seguir compila o projeto CSharpWinApp , usando a configuração de build
do projeto Debug dentro de MySolution :

shell

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /build Debug


/project "CSharpWinApp\CSharpWinApp.csproj" /projectconfig Debug

Confira também
Opções de linha de comando do Devenv
/Project (devenv.exe)
/Build (devenv.exe)
/Clean (devenv.exe)
/Rebuild (devenv.exe)
/Deploy (devenv.exe)
/Out (devenv.exe)
/Rebuild (devenv.exe)
Artigo • 13/01/2024

Limpa e, em seguida, compila a configuração de solução especificada.

Sintaxe
shell

devenv SolutionName /Rebuild [SolnConfigName [/Project ProjName


[/ProjectConfig ProjConfigName]] [/Out OutputFilename]]

Argumentos
SolutionName

Obrigatórios. O caminho completo e o nome do arquivo de solução.

SolnConfigName

Opcional. O nome da configuração da solução (por exemplo, Debug ou Release )


que será usado para recompilar a solução nomeada em SolutionName. Se mais de
uma plataforma de solução estiver disponível, também será preciso especificar a
plataforma (por exemplo, Debug|Win32 ). Se esse argumento não for especificado
ou for uma cadeia de caracteres vazia ( "" ), a ferramenta usará a configuração ativa
da solução.

/Project ProjName

Opcional. O caminho e o nome de um arquivo de projeto na solução. Você pode


inserir o nome de exibição do projeto ou um caminho relativo da pasta
SolutionName para o arquivo do projeto. Também é possível inserir o caminho
completo e o nome do arquivo do projeto.

/ProjectConfig ProjConfigName

Opcional. O nome da configuração de build do projeto (por exemplo, Debug ou


Release ) que será usado ao recompilar o /Project nomeado. Se mais de uma

plataforma de solução estiver disponível, também será preciso especificar a


plataforma (por exemplo, Debug|Win32 ). Se esta opção for especificada, ela
substituirá o argumento SolnConfigName.
/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Esta opção faz a mesma coisa que o comando de menu Recompilar Solução
dentro do IDE.

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo para limpeza ou compilação, incluindo erros, podem


ser exibidas na janela Comando ou em qualquer arquivo de log especificado com
a opção /Out.

Exemplo
Este exemplo limpa e recompila o projeto CSharpWinApp , usando a configuração de build
do projeto Debug dentro de MySolution .

shell

devenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln" /rebuild Debug


/project "CSharpWinApp\CSharpWinApp.csproj" /projectconfig Debug

Confira também
Opções de linha de comando do Devenv
/Build (devenv.exe)
/Clean (devenv.exe)
/Out (devenv.exe)
/ResetSettings (devenv.exe)
Artigo • 13/01/2024

Restaura as configurações padrão do Visual Studio e inicia automaticamente o IDE do


Visual Studio. Esta opção redefine facultativamente as configurações para um arquivo
de configurações especificado ( *.vssettings ).

As configurações padrão derivam do perfil selecionado quando o Visual Studio foi


iniciado pela primeira vez.

 Dica

Para saber como redefinir configurações usando o IDE (ambiente de


desenvolvimento integrado), confira Reset settings (Redefinir configurações).

Sintaxe
shell

devenv /ResetSettings [SettingsFile|DefaultCollectionSpecifier]

Argumentos
SettingsFile

Opcional. O caminho completo e o nome do arquivo .vssettings a ser aplicado


ao Visual Studio.

DefaultCollectionSpecifier

Opcional. Um especificador que representa uma coleção padrão de configurações


a restaurar. Escolha um dos especificadores de coleção padrão listados na tabela.

ノ Expandir a tabela

Nome da coleção padrão Especificador da coleção

Geral General

JavaScript JavaScript
Nome da coleção padrão Especificador da coleção

Visual Basic VB

Visual C# CSharp

Visual C++ VC

Desenvolvimento para a Web Web

Desenvolvimento para a Web (Somente Código) WebCode

Comentários
Se nenhum SettingsFile for especificado, o IDE abrirá usando as configurações
existentes.

Exemplo
O primeiro exemplo aplica as configurações armazenadas no arquivo
MySettings.vssettings .

O segundo exemplo restaura o perfil padrão do Visual C#.

O terceiro exemplo também fechará o Visual Studio depois de aplicar as configurações.


Você pode acrescentar /Command "File.Exit" .

shell

devenv /ResetSettings "%USERPROFILE%\MySettings.vssettings"

devenv /ResetSettings CSharp

devenv /NoSplash /ResetSettings General /Command Exit

Confira também
Configurações do ambiente
Personalizar o IDE do Visual Studio
Opções de linha de comando do Devenv
/Run (devenv.exe)
Artigo • 13/01/2024

Compila e executa o projeto ou a solução especificada.

Sintaxe
shell

devenv {/Run|/R} {SolutionName|ProjectName} [/Out OutputFilename]

Argumentos
SolutionName

O caminho completo e o nome de um arquivo de solução.

ProjectName

O caminho completo e o nome de um arquivo de projeto.

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Compila e executa o projeto ou a solução especificada de acordo com as configurações
especificadas para a configuração da solução ativa. Essa opção inicia o IDE e o deixa
ativo depois que a execução do projeto ou da solução tiver terminado.

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo, incluindo erros, podem ser exibidas na janela


Comando ou em qualquer arquivo de log especificado com a opção /Out .

Exemplo
Este exemplo executa a solução MySolution usando a configuração de implantação
ativa.

shell

devenv /run "%USERPROFILE%\source\repos\MySolution\MySolution.sln"

Confira também
Opções de linha de comando do Devenv
/Runexit (devenv.exe)
/Build (devenv.exe)
/Rebuild (devenv.exe)
/Out (devenv.exe)
/RunExit (devenv.exe)
Artigo • 13/01/2024

Compila e executa a solução ou o projeto especificado e, em seguida, fecha o IDE


(ambiente de desenvolvimento integrado).

Sintaxe
shell

devenv /RunExit {SolutionName|ProjectName} [/Out OutputFilename]

Argumentos
SolutionName

O caminho completo e o nome de um arquivo de solução.

ProjectName

O caminho completo e o nome de um arquivo de projeto.

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Compila e executa o projeto ou a solução especificada de acordo com as configurações
especificadas para a configuração da solução ativa. Essa opção minimiza o IDE durante a
execução do projeto ou da solução. Fecha o IDE depois que a execução do projeto ou
da solução for concluída.

Coloque as cadeias de caracteres que incluem espaços entre aspas duplas.

As informações de resumo, incluindo erros, podem ser exibidas na janela


Comando ou em qualquer arquivo de log especificado com a opção /Out .

Exemplo
Este exemplo executa a solução MySolution em um IDE minimizado usando a
configuração de implantação ativa e, em seguida, fecha o IDE.

devenv /runexit "%USERPROFILE%\source\repos\MySolution\MySolution.sln"

Confira também
Opções de linha de comando do Devenv
/Run (devenv.exe)
/Build (devenv.exe)
/Rebuild (devenv.exe)
/Out (devenv.exe)
/SafeMode (devenv.exe)
Artigo • 13/01/2024

Inicia o Visual Studio no modo de segurança, carregando apenas o ambiente e os


serviços padrão.

Sintaxe
shell

devenv /SafeMode

Comentários
Essa opção impede que todos os VSPackages de terceiros sejam carregados quando o
Visual Studio é iniciado, garantindo assim uma execução estável.

Exemplo
O exemplo a seguir inicia o Visual Studio no modo de segurança.

shell

devenv /safemode

Confira também
Opções de linha de comando do Devenv
/Upgrade (devenv.exe)
Artigo • 13/01/2024

Atualiza o arquivo de solução e todos os seus arquivos de projeto, ou o arquivo de


projeto especificado, para os formatos atuais do Visual Studio para esses arquivos.

Sintaxe
shell

devenv {SolutionFile|ProjectFile} /Upgrade [/Out OutputFilename]

Argumentos
SolutionFile

Necessário se você estiver atualizando toda uma solução e seus projetos. O


caminho e o nome de um arquivo de solução. Você pode inserir apenas o nome
do arquivo de solução, ou um caminho completo e o nome do arquivo de solução.
A pasta ou o arquivo nomeado será criado, se ainda não existir.

ProjectFile

Necessário se você estiver atualizando um único projeto. O caminho e o nome de


um arquivo de projeto na solução. Você pode inserir apenas o nome do arquivo de
projeto, ou um caminho completo e o nome do arquivo de projeto. A pasta ou o
arquivo nomeado será criado, se ainda não existir.

/Out OutputFilename

Opcional. O nome de um arquivo para o qual você deseja enviar a saída da


ferramenta. Se o arquivo já existir, a ferramenta anexará a saída ao final do arquivo.

Comentários
Os backups são criados e copiados automaticamente para um diretório chamado
Backup, que é criado no diretório atual.

É necessário fazer o check-out de projetos ou soluções controlados pelo código-fonte


para que eles possam ser atualizados.
Usar a opção /Upgrade não abre o Visual Studio. Os resultados da atualização podem
ser vistos no Relatório de Atualização da linguagem de desenvolvimento da solução ou
projeto. Nenhuma informação de erro ou de uso é retornada. Para saber mais sobre
como atualizar projetos no Visual Studio, consulte Portar, migrar e atualizar projetos do
Visual Studio.

Exemplo
Este exemplo atualiza um arquivo de solução chamado "MyProject.sln".

shell

devenv "%USERPROFILE%\source\repos\MyProject\MyProject.sln" /upgrade

Confira também
Opções de linha de comando do Devenv
/UseEnv (devenv.exe)
Artigo • 13/01/2024

Inicia o Visual Studio e carrega determinadas variáveis de ambiente para compilação.

7 Observação

Essa opção é instalada com a carga de trabalho de Desenvolvimento para desktop


com C++.

Sintaxe
shell

devenv /UseEnv {SolutionName|ProjectName}

Argumentos
SolutionName

O caminho completo e o nome de um arquivo de solução.

ProjectName

O caminho completo e o nome de um arquivo de projeto.

Comentários
Esta opção afeta o IDE do Visual Studio nas propriedades do projeto para diretórios
VC++. Se você especificar a opção /UseEnv , o nó dos Diretórios VC++ mostrará os
valores para as variáveis de ambiente PATH, INCLUDE, LIBPATH e LIB. (Também mostra
valores de Diretórios de Origem e Diretórios de Exclusão). Caso contrário, o nó
substituirá as variáveis de ambiente por cinco valores de diretório: Diretórios de
Executáveis, Diretórios de Inclusão, Diretórios de Referência, Diretórios de Biblioteca e
Diretórios de Biblioteca do WinRT.

 Dica
Para acessar as propriedades do projeto, clique com o botão direito do mouse no
projeto do C++ e selecione Propriedades. Na caixa de diálogo Páginas de
Propriedades, selecione Propriedades de Configuração e, em seguida, Diretórios
do VC++.

Quando um nome de projeto é especificado com essa opção, a ferramenta exibe as


variáveis de ambiente para todos os projetos dentro da solução primária do projeto.

Exemplo
O exemplo a seguir inicia o Visual Studio e carrega as variáveis de ambiente nas páginas
de propriedades da solução MySolution .

shell

devenv.exe /useenv "%USERPROFILE%\source\repos\MySolution\MySolution.sln"

Confira também
Opções de linha de comando do Devenv
Página de propriedades de Diretórios do VC++ (Windows)
Comandos do Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

É possível inserir comandos do Visual Studio na janela Comando, na janela Imediato ou


na caixa Localizar/Comando. Em cada caso, o sinal maior que ( > ) indica que um
comando é seguido, em vez de uma operação de pesquisa ou depuração.

É possível encontrar uma lista completa de comandos e sua sintaxe na página Teclado
em Ferramentas>Opções>Ambiente.

Em versões localizadas do IDE, os nomes de comando podem ser inseridos na


linguagem nativa do IDE ou em inglês. Por exemplo, é possível digitar File.NewFile ou
Fichier.NouveauFichier no IDE francês para executar o mesmo comando.

Muitos comandos têm aliases. Para obter uma lista de aliases de comando, confira
Aliases de comando. Para obter atalhos de teclado de comando, confira Atalhos de
teclado padrão no Visual Studio.

Caractere de escape
O caractere de escape para comandos do Visual Studio é um acento circunflexo (^). O
caractere de escape significa que o caractere imediatamente a seguir é interpretado
literalmente, e não como um caractere de controle. Isso pode ser usado para inserir
aspas retas ("), espaços, barras iniciais, acentos circunflexos ou quaisquer outros
caracteres literais em um parâmetro ou valor de opção, com a exceção de nomes de
opção. Por exemplo:

>Edit.Find ^^t /regex

Um acento circunflexo funciona da mesma forma tanto dentro quanto fora das aspas.
Se um acento circunflexo for o último caractere na linha, ele será ignorado.

Comandos com argumentos


Os seguintes comandos usam argumentos ou opções:
Nome do Descrição
comando

Add Existing Item Adiciona um arquivo existente à solução atual e abre-o.

Add Existing Adiciona um projeto existente à solução atual.


Project

Alias Cria um novo alias para um comando completo, comando e argumentos


completos ou até mesmo outro alias.

Evaluate Avalia e exibe a instrução fornecida.


Statement

Localizar Pesquisa arquivos usando um subconjunto das opções disponíveis no


controle Localizar e Substituir.

Localizar em Pesquisa arquivos usando um subconjunto das opções disponíveis em


arquivos Localizar e Substituir.

Ir para Move o cursor para a linha especificada.

List Call Stack Exibe a pilha de chamadas atual.

List Disassembly Inicia o processo de depuração e permite que você especifique como os
erros são tratados.

List Memory Exibe o conteúdo do intervalo de memória especificado.

List Modules Lista os módulos do processo atual.

List Registers Exibe uma lista de registros.

List Source Exibe as linhas de código-fonte especificadas.

List Threads Exibe uma lista dos threads no programa atual.

Log Command Copia todas as entradas e saídas da janela Comando para um arquivo.
Window Output

New File Cria um novo arquivo e o adiciona ao projeto atualmente selecionado.

Abrir arquivo Abre um arquivo existente e permite que você especifique um editor.

Abrir Projeto Abre um projeto existente e permite que você o adicione à solução atual.

Imprimir Avalia a expressão e exibe os resultados ou o texto especificado.

Comando Quick Exibe o texto selecionado ou especificado no campo Expressão da caixa de


Watch diálogo Inspeção Rápida.

Substituir Substitui texto em arquivos usando um subconjunto das opções disponíveis


no controle Localizar e Substituir.
Nome do Descrição
comando

Substituir em Substitui texto em arquivos usando um subconjunto das opções disponíveis


arquivos em Substituir nos Arquivos.

Set Current Stack Permite que você exiba um registro de ativação específico.
Frame

Set Current Permite que você exiba um thread específico.


Thread

Set Radix Determina o número de bytes a ser exibido.

Shell Inicia programas de dentro do Visual Studio como se o comando tivesse sido
executado no prompt de comando.

Comando Exibe a URL especificada em uma janela de navegador da Web, tanto dentro
ShowWebBrowser do IDE (ambiente de desenvolvimento integrado) ou externa ao IDE.

Iniciar Inicia o processo de depuração e permite que você especifique como os


erros são tratados.

Caminho Define a lista de diretórios para o depurador pesquisar símbolos.

Alternar ponto de Ativa ou desativa o ponto de interrupção dependendo de seu estado atual,
interrupção no local atual do arquivo.

Comando Watch Cria e abre uma instância especificada de uma janela Inspeção.

Confira também
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Aliases de comando do Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os aliases de comando permitem que você digite menos caracteres quando deseja
executar um comando. Insira os aliases na caixa Localizar/Comando ou na janela
Comando. Por exemplo, em vez de inserir >File.OpenFile para exibir a caixa de diálogo
Abrir Arquivo, você pode usar o alias predefinido >of .

Digite alias na janela Comando para exibir uma lista de aliases atuais e suas definições.
Digite >cls para limpar o conteúdo da janela Comando. Se você quiser ver um alias
para um comando específico, digite alias <command name> .

Você pode criar facilmente seu próprio alias para um dos comandos do Visual Studio
(com ou sem argumentos). Por exemplo, a sintaxe para definir alias File.NewFile
MyFile.txt é alias MyAlias File.NewFile MyFile.txt . Você pode excluir um de seus
aliases com alias <alias name> /delete

A tabela a seguir contém uma lista de aliases de comando predefinidos do Visual


Studio. Alguns nomes de comando têm mais de um alias predefinido. Clique nos links
para os nomes de comando abaixo para exibir tópicos detalhados que explicam a
sintaxe, os argumentos e as opções corretos para esses comandos.

Nome do comando Alias Nome Completo

Comando Print ? Debug.Print

Comando Quick Watch ?? Debug.Quickwatch

Adicionar novo projeto AddProj File.AddNewProject

Comando Alias Alias Tools.Alias

Janela Autos Autos Debug.Autos

Janela Pontos de Interrupção bl Debug.Breakpoints

Alternar Ponto de Interrupção bp Debug.ToggleBreakPoint

janela de Pilha de Chamadas CallStack Debug.CallStack

Limpar Indicadores ClearBook Edit.ClearBookmarks

Fechar Fechar File.Close


Nome do comando Alias Nome Completo

Fechar Todos os Documentos CloseAll Window.CloseAllDocuments

Limpar Tudo cls Edit.ClearAll

Modo de comando cmd View.CommandWindow

Exibir Código code View.ViewCode

Comando List Memory d Debug.ListMemory

Comando Listar Memória como ANSI da Debug.ListMemory /Ansi

Comando Listar Memória com formato db Debug.ListMemory


de um byte /Format:OneByte

Comando Listar Memória como ANSI dc Debug.ListMemory


com formato de quatro bytes /Format:FourBytes /Ansi

Comando Listar Memória no formato de dd Debug.ListMemory


quatro bytes /Format:FourBytes

Excluir para BOL DelBOL Edit.DeleteToBOL

Excluir para EOL DelEOL Edit.DeleteToEOL

Excluir Espaço em Branco Horizontal DelHSp Edit.DeleteHorizontalWhitespace

Designer de Exibição designer View.ViewDesigner

Comando Listar Memória em formato df Debug.ListMemory/Format:Float


Float

janela de Desmontagem disasm Debug.Disassembly

Comando listar memória no formato de dq Debug.ListMemory


oito bytes /Format:EightBytes

Comando Listar Memória como Unicode du Debug.ListMemory /Unicode

Comando Evaluate Statement eval Debug.EvaluateStatement

Fechar Fechar File.Exit

Formatar Seleção format Edit.FormatSelection

Tela inteira FullScreen View.FullScreen

Comando Start g Debug.Start

comando Ir para GotoLn Edit.GoTo


Nome do comando Alias Nome Completo

Ir para Chave GotoBrace Edit.GotoBrace

F1Help Ajuda Help.F1Help

Modo imediato immed Tools.ImmediateMode

Inserir Arquivo como Texto InsertFile Edit.InsertFileAsText

Comando List Call Stack kb Debug.ListCallStack

Tornar Minúsculas Lcase Edit.MakeLowercase

Recortar Linha LineCut Edit.LineCut

Excluir linha LineDel Edit.LineDelete

Listar Membros ListMembers Edit.ListMembers

Janela Locais Locais Debug.Locals

Comando de Saída de janela comando Registro Tools.LogCommandWindowOutput


de log

Modo de marca da janela Comando marca Tools.CommandWindowMarkMode

Janela Memória Memória Debug.Memory1


Memory1

Janela Memória 2 Memory2 Debug.Memory2

Janela Memória 3 Memory3 Debug.Memory3

Janela Memória 4 Memory4 Debug.Memory4

Comando Set Radix n Debug.SetRadix

Comando ShowWebBrowser nav navigate View.ShowWebBrowser

Próximo Indicador NextBook Edit.NextBookmark

Comando New File nf File.NewFile

Novo Projeto np NewProj File.NewProject

Comando Open File of Open File.OpenFile

Comando Open Project op File.OpenProject

Recolher para definições/Interromper OutlineDefs Edit.CollapseToDefinitions


estrutura de tópicos StopOutlining
Nome do comando Alias Nome Completo

Depuração Parcial p Debug.StepOver

Informações de Parâmetro ParamInfo Edit.ParameterInfo

Depuração Circular pr Debug.StepOut

Indicador Anterior PrevBook Edit.PreviousBookmark

Imprimir arquivo print File.Print

Janela Propriedades props View.PropertiesWindow

Stop q Debug.StopDebugging

Refazer refazer Edit.Redo

Janela Registros registros Debug.Registers

Executar até o cursor rtc Debug.RunToCursor

Salvar Itens Selecionados Salvar File.SaveSelectedItems

Salvar Tudo SaveAll File.SaveAll

Salvar como SaveAs File.SaveSelectedItemsAs

Comando Shell shell Tools.Shell

Parar Busca nos Arquivos StopFind Edit.FindInFiles /stop

Trocar âncora SwapAnchor Edit.SwapAnchor

Depuração Completa t Debug.StepInto

Tabular Seleção tabular Edit.TabifySelection

Janela Lista de Tarefas TaskList View.TaskList

Janela Threads Threads Debug.Threads

Lado a lado horizontalmente TileH Window.TileHorizontally

Organizar Lado a Lado Verticalmente TileV Window.TileVertically

Ativar/desativar Indicador ToggleBook Edit.ToggleBookmark

Janela caixa de ferramentas caixa de View.Toolbox


ferramentas

Comando List Disassembly u Debug.ListDisassembly

Colocar em Maiúsculas Ucase Edit.MakeUppercase


Nome do comando Alias Nome Completo

Desfazer desfazer Edit.Undo

Cancelar Tabulação da Seleção Cancelar Edit.UntabifySelection


Tabulação

Janela Inspecionar Assistir Debug.WatchN

Ativar/Desativar Quebra Automática de WordWrap Edit.ToggleWordWrap


Linha

Listar Processos | Debug.ListProcesses

Comando List Threads ~ ~*k ~*kb Debug.ListThreads


Debug.ListTheads /AllThreads

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Comando Adicionar Item Existente
Artigo • 13/01/2024

Adiciona um arquivo existente à solução atual e abre-o.

Sintaxe
Prompt de comando do Windows

File.AddExistingItem filename [/e:editorname]

Argumentos
filename

Obrigatórios. O caminho completo e o nome do arquivo, com a extensão, do item a


adicionar à solução atual. Se o caminho do arquivo ou o nome do arquivo contiver
espaços, coloque todo o caminho entre aspas.

Comutadores
/e: editorname
Opcional. Nome do editor no qual o arquivo será aberto. Se o argumento for
especificado, mas nenhum nome de editor for fornecido, a caixa de diálogo Abrir com
será exibida.

A sintaxe do argumento /e: editorname usa os nomes de editor como eles são exibidos
na Caixa de diálogo Abrir Com, entre aspas. Por exemplo, para abrir uma folha de
estilos no editor de código-fonte, insira o seguinte para o argumento /e: editorname .

Prompt de comando do Windows

/e:"Source Code (text) Editor"

Comentários
O preenchimento automático tenta localizar o caminho e o nome do arquivo corretos
enquanto você digita.
Exemplo
Este exemplo adiciona o arquivo, Form1.frm, à solução atual.

Prompt de comando do Windows

>File.AddExistingItem "C:\public\solution files\Form1.frm"

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Adicionar Projeto Existente
Artigo • 13/01/2024

Adiciona um projeto existente à solução atual.

Sintaxe
Prompt de comando do Windows

File.AddExistingProject filename

Argumentos
filename

Opcional. O caminho completo e nome do projeto, com a extensão, do projeto a


adicionar à solução.

Se o argumento filename incluir espaços, ele deverá ficar entre aspas.

Se nenhum nome de arquivo for especificado, o comando abrirá a caixa de diálogo de


arquivo para que o usuário possa escolher um projeto.

Comentários
O preenchimento automático tenta localizar o caminho e o nome do arquivo corretos
enquanto você digita.

Exemplo
Este exemplo adiciona o projeto do Visual Basic, TestProject1, à solução atual.

Prompt de comando do Windows

>File.AddExistingProject "c:\visual studio projects\TestProject1.vbproj"

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Alias
Artigo • 13/01/2024

Cria um novo alias para um comando completo, comando e argumentos completos ou


outro alias.

 Dica

Digitar >alias sem argumentos exibe a lista atual de aliases e suas definições.

Sintaxe
Prompt de comando do Windows

Tools.Alias [/delete] [/reset] [aliasname] [aliasstring]

Argumentos
aliasname

Opcional. O nome do novo alias. Se nenhum valor for fornecido para aliasname ,
aparecerá uma lista de aliases atuais e suas definições.

aliasstring
Opcional. O nome do comando completo ou alias existente e qualquer parâmetro que
você quiser criar como alias. Se nenhum valor for fornecido para aliasstring , o nome
do alias e a cadeia de caracteres de alias do alias especificado serão exibidos.

Comutadores
/delete ou /del ou /d
Opcional. Exclui o alias especificado, removendo-o do preenchimento automático.

/reset
Opcional. Redefine a lista de aliases predefinidos para suas configurações originais. Ou
seja, restaura todos os aliases predefinidos e remove todos os aliases definidos pelo
usuário.
Comentários
Como aliases representam comandos, eles devem estar localizados no início da linha de
comando.

Ao emitir esse comando, você deve incluir as opções imediatamente após o comando, e
não após os aliases. Caso contrário, a própria opção será incluída como parte da cadeia
de caracteres de alias.

A opção /reset solicita uma confirmação antes que os aliases sejam restaurados. Não
há nenhuma forma abreviada de /reset .

Exemplos
Este exemplo cria um novo alias, upper , para o comando completo
Edit.MakeUpperCase.

Prompt de comando do Windows

>Tools.Alias upper Edit.MakeUpperCase

Este exemplo exclui o alias upper .

Prompt de comando do Windows

>Tools.alias /delete upper

Este exemplo exibe uma lista de todos os aliases e definições atuais.

Prompt de comando do Windows

>Tools.Alias

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
comando Avaliar Instrução
Artigo • 15/01/2024

Avalia e exibe a instrução fornecida.

Sintaxe
Prompt de comando do Windows

>Debug.EvaluateStatement text

Argumentos
text

Obrigatórios. A instrução a ser avaliada.

Exemplo
Prompt de comando do Windows

>Debug.EvaluateStatement args.Length

Confira também
Comando Print
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Localizar
Artigo • 13/01/2024

Pesquisa arquivos usando um subconjunto das opções disponíveis na guia Localizar nos
Arquivos da janela Localizar e Substituir.

Sintaxe
Prompt de comando do Windows

Edit.Find findwhat [/case] [/doc | /proc | /open | /sel]


[/markall] [/options] [/reset] [/up] [/wild | /regex] [/word]

Argumentos
findwhat Necessário. O texto a ser correspondido.

Comutadores
/case ou /c
Opcional. As correspondências ocorrerão somente se os caracteres maiúsculos e
minúsculos corresponderem exatamente aos especificados no argumento findwhat .

/doc ou /d
Opcional. Pesquisa apenas o documento atual. Especifique apenas um dos escopos de
pesquisa disponíveis, /doc , /proc , /open ou /sel .

/markall ou /m
Opcional. Insere um gráfico em cada linha que contém uma correspondência de
pesquisa no documento atual.

/open ou /o
Opcional. Pesquisa todos os documentos abertos como se fossem um documento.
Especifique apenas um dos escopos de pesquisa disponíveis, /doc , /proc , /open ou
/sel .

/options ou /t
Opcional. Exibe uma lista das configurações atuais da opção de localização e não realiza
uma pesquisa.
/proc ou /p
Opcional. Pesquisa apenas o procedimento atual. Especifique apenas um dos escopos
de pesquisa disponíveis, /doc , /proc , /open ou /sel .

/reset ou /e
Opcional. Retorna as opções de localização para suas configurações padrão e não
realiza uma pesquisa.

/sel ou /s
Opcional. Pesquisa apenas a seleção atual. Especifique apenas um dos escopos de
pesquisa disponíveis, /doc , /proc , /open ou /sel .

/up ou /u
Opcional. Pesquisa desde o local atual no arquivo até o início do arquivo. Por padrão, as
pesquisas iniciam-se no local atual no arquivo e vão até o final do arquivo.

/regex ou /r
Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações
que representam padrões de texto, em vez de caracteres literais. Para obter uma lista
completa de caracteres de expressão regular, consulte Expressões Regulares.

/wild ou /l
Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações
para representar um caractere ou uma sequência de caracteres.

/word ou /w
Opcional. Pesquisa somente palavras inteiras.

Exemplo
Este exemplo realiza uma pesquisa que diferencia maiúsculas de minúsculas para a
palavra "somestring" na seção de código selecionada no momento.

Prompt de comando do Windows

>Edit.Find somestring /sel /case

Confira também
Janela Comando
Caixa Localizar/Comando
Comandos do Visual Studio
Aliases de comando do Visual Studio
comando Ir para
Artigo • 15/01/2024

Move o cursor para a linha especificada.

Sintaxe
Prompt de comando do Windows

Edit.GoTo [linenumber]

Argumentos
linenumber

Opcional. Um inteiro que representa o número da linha para a qual ir.

Comentários
A numeração de linha começa em um. Se o valor de linenumber for menor que um, a
primeira linha será exibida. Se o valor de linenumber for maior que o número da última
linha, a última linha será exibida.

Se um valor para linenumber não for especificado, a caixa de diálogo Ir para a Linha
será exibida.

O alias para esse comando é GoToLn.

Exemplo
Prompt de comando do Windows

>Edit.GoTo 125

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Importar e Exportar
Configurações (arquivo .vssettings)
Artigo • 13/01/2024

Importa, exporta ou redefine o arquivo de configuração do Visual Studio, .vssettings .

O esquema do arquivo está aberto. Mais comumente, o esquema segue uma estrutura
XML em que cada categoria é uma marca, a qual pode ela mesma conter marcas de
subcategoria. Essas marcas de subcategoria podem conter marcas de valor de
propriedade. Embora a maioria dos pacotes use a estrutura comum, qualquer pacote no
Visual Studio pode contribuir com XML arbitrário para o arquivo com o esquema
escolhido.

Sintaxe
Prompt de comando do Windows

Tools.ImportandExportSettings [/export:filename | /import:filename | /reset]

Comutadores
/export: filename

Opcional. Exporta as configurações atuais para o arquivo especificado.

/import: filename

Opcional. Importa as configurações no arquivo especificado.

/reset

Opcional. Redefine as configurações atuais.

Comentários
Executar esse comando sem nenhuma opção abre o assistente Importar e Exportar
Configurações. Para obter mais informações, confira Sincronizar as configurações e
Configurações do ambiente.
Exemplo
O seguinte comando exporta as configurações atuais para o arquivo MyFile.vssettings :

Prompt de comando do Windows

Tools.ImportandExportSettings /export:"c:\Files\MyFile.vssettings"

Confira também
Configurações do ambiente
Sincronizar as configurações
Personalizar o IDE do Visual Studio
Comandos do Visual Studio
Comando Listar Pilha de Chamadas
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Exibe a pilha de chamadas atual.

Sintaxe
Prompt de comando do Windows

Debug.ListCallStack [/Count:number] [/ShowTypes:yes|no]


[/ShowNames:yes|no] [/ShowValues:yes|no] [/ShowModule:yes|no]
[/ShowLineOffset:yes|no] [/ShowByteOffset:yes|no]
[/ShowLanguage:yes|no] [/IncludeCallsAcrossThreads:yes|no]
[/ShowExternalCode:yes|no] [Thread:n] [index]

Argumentos
index
Opcional. Define o registro de ativação atual e não exibe nenhuma saída.

Comutadores
Cada opção pode ser invocada usando sua forma completa ou abreviada.

/Count: number [ou] /C: number

Opcional. Número máximo de pilhas de chamadas a exibir. O valor padrão é ilimitado.

/ShowTypes: yes | no [ou] /T: yes | no

Opcional. Especifica se deve tipos de parâmetro devem ser exibidos. O valor padrão é
yes .

/ShowNames: yes | no [ou] /N: yes | no

Opcional. Especifica se nomes de parâmetro devem ser exibidos. O valor padrão é yes .

/ShowValues: yes | no [ou] /V: yes | no

Opcional. Especifica se valores de parâmetro devem ser exibidos. O valor padrão é yes .
/ShowModule: yes | no [ou] /M: yes | no

Opcional. Especifica se deve o nome do módulo deve ser exibido. O valor padrão é yes .

/ShowLineOffset: yes | no [ou] /#: yes | no

Opcional. Especifica se o deslocamento de linha deve ser exibido. O valor padrão é no .

/ShowByteOffset: yes | no [ou] /B: yes | no

Opcional. Especifica se o deslocamento de byte deve ser exibido. O valor padrão é no .

/ShowLanguage: yes | no [ou] /L: yes | no

Opcional. Especifica se o idioma deve ser exibido. O valor padrão é no .

/IncludeCallsAcrossThreads: yes | no [ou] /I: yes | no

Opcional. Especifica se chamadas de ou para outros threads devem ser incluídas. O valor
padrão é no .

/ShowExternalCode: yes | no

Opcional. Especifica se Apenas Meu Código deve ser exibido para a pilha de chamadas.
Quando Apenas Meu Código está desativado, todo o código não do usuário é exibido.
Quando Apenas Meu Código está ativado, o código não do usuário é exibido como
[external] na saída da pilha de chamadas.

Thread: n

Opcional. exibe a pilha de chamadas para o thread n . Se nenhum thread for


especificado, exibirá a pilha de chamadas do thread atual.

Comentários
As alterações feitas a argumentos ou opções aplicam-se a invocações futuras desse
comando. Se você emitir Debug.ListCallStackby em si, toda a pilha de chamadas será
exibida. Se você especificar um índice, por exemplo,

Prompt de comando do Windows

Debug.ListCallStack 2
o registro de ativação atual será definido como aquele quadro (neste caso, o segundo
quadro).

Você também pode escrever esse comando usando seu alias predefinido, kb. Por
exemplo, você pode inserir

Prompt de comando do Windows

kb 2

para definir o registro de ativação atual para o segundo quadro.

Exemplo
Prompt de comando do Windows

>Debug.CallStack /Count:4 /ShowTypes:yes

Confira também
Comando List Disassembly
Comando List Threads
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Listar Desmontagem
Artigo • 13/01/2024

Inicia o processo de depuração e permite que você especifique como os erros são
tratados.

Syntax
Prompt de comando do Windows

Debug.ListDisassembly [/count:number] [/endaddress:expression]


[/codebytes:yes|no] [/source:yes|no] [/symbolnames:yes|no]
[/linenumbers:yes|no]

Comutadores
Cada opção pode ser invocada usando sua forma completa ou abreviada.

/count: number [ou] /c: number [ou] /length: number [ou] /l: number

Opcional. Número de instruções a serem exibidas. O valor padrão é 8.

/endaddress: expression [ou] /e: expression

Opcional. Endereço no qual interromper a desmontagem.

/codebytes: yes | no [ou] /bytes: yes | no [or] /b: yes | no

Opcional. Indica se deve você deseja exibir bytes de código. O valor padrão é no .

/source: yes | no [ou] /s: yes | no

Opcional. Indica se deve você deseja exibir o código-fonte. O valor padrão é no .

/symbolnames: yes | no [ou] /names: yes | no [ou] /n: yes | no

Opcional. Indica se deve você deseja exibir os nomes de símbolos. O valor padrão é
yes .

[/linenumbers: yes | no ]

Opcional. Habilita a exibição de números de linha associados ao código-fonte. A opção


/source deve ter um valor de yes para usar a opção /linenumbers.
Exemplo
Prompt de comando do Windows

>Debug.ListDisassembly

Confira também
Comando List Call Stack
Comando List Threads
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Listar Memória
Artigo • 15/01/2024

Exibe o conteúdo do intervalo de memória especificado.

Sintaxe
Prompt de comando do Windows

Debug.ListMemory [/ANSI|Unicode] [/Count:number] [/Format:formattype]


[/Hex|Signed|Unsigned] [expression]

Argumentos
expression

Opcional. O endereço de memória do qual começar a exibir a memória.

Comutadores
/ANSI|Unicode

Opcional. Exibe a memória como caracteres correspondentes aos bytes de memória,


ANSI ou Unicode.

/Count: number

Opcional. Determina quantos bytes de memória devem ser exibidos, começando em


expression .

/Format: formattype

Opcional. Tipo de formato para exibir informações de memória na janela Memória;


pode ser OneByte, TwoBytes, FourBytes, EightBytes, Float (32 bits) ou Double (64 bits).
Se OneByte for usado, /Unicode ficará não disponível.

/Hex|Signed|Unsigned

Opcional. Especifica o formato para exibir números: com sinal, sem sinal ou
hexadecimal.
Comentários
Em vez de escrever um comando Debug.ListMemory completo com todas as opções,
você pode invocar o comando usando aliases predefinidos com determinadas opções
predefinidas como valores especificados. Por exemplo, em vez de inserir:

Prompt de comando do Windows

>Debug.ListMemory /Format:float /Count:30 /Unicode

você pode escrever:

Prompt de comando do Windows

>df /Count:30 /Unicode

Veja uma lista dos aliases disponíveis para o comando Debug.ListMemory:

ノ Expandir a tabela

Alias Comando e opções

d Debug.ListMemory

da Debug.ListMemory /Ansi

db Debug.ListMemory /Format:OneByte

dc Debug.ListMemory /Format:FourBytes /Ansi

dd Debug.ListMemory /Format:FourBytes

df Debug.ListMemory /Format:Float

dq Debug.ListMemory /Format:EightBytes

du Debug.ListMemory /Unicode

Exemplo
Prompt de comando do Windows

>Debug.ListMemory /Format:float /Count:30 /Unicode


Confira também
Comando List Call Stack
Comando List Threads
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Listar Módulos
Artigo • 13/01/2024

Lista os módulos do processo atual.

Sintaxe

Debug.ListModules [/Address:yes|no] [/Name:yes|no] [/Order:yes|no]


[/Path:yes|no] [/Process:yes|no] [/SymbolFile:yes|no]
[/SymbolStatus:yes|no] [/Timestamp:yes|no] [/Version:yes|no]

Parâmetros
/Address: yes|no

Opcional. Especifica se os endereços de memória dos módulos devem ser exibidos. O


valor padrão é yes .

/Name: yes|no

Opcional. Especifica se os nomes dos módulos devem ser exibidos. O valor padrão é
yes .

/Order: yes|no

Opcional. Especifica se a ordem dos módulos deve ser exibida. O valor padrão é no .

/Path: yes|no

Opcional. Especifica se os caminhos dos módulos devem ser exibidos. O valor padrão é
yes .

/Process: yes|no

Opcional. Especifica se os processos dos módulos devem ser exibidos. O valor padrão é
no .

/SymbolFile: yes|no
Opcional. Especifica se os arquivos de símbolo dos módulos devem ser exibidos. O valor
padrão é no .

/SymbolStatus: yes|no

Opcional. Especifica se os status de símbolo dos módulos devem ser exibidos. O valor
padrão é yes .

/Timestamp: yes|no

Opcional. Especifica se os carimbos de data/hora dos módulos devem ser exibidos. O


valor padrão é no .

/Version: yes|no

Opcional. Especifica se as versões dos módulos devem ser exibidas. O valor padrão é
no .

Exemplo
Este exemplo lista os nomes, endereços e carimbos de data/hora do módulo para o
processo atual.

Debug.ListModules /Address:yes /Name:yes /Order:no /Path:no /Process:no


/SymbolFile:no /SymbolStatus:no /Timestamp:yes /Version:no

Confira também
Comandos do Visual Studio
Janela Comando
Como usar a janela Módulos
Comando Listar Registros
Artigo • 13/01/2024

Exibe o valor dos registros selecionados e permite modificar a lista de registros a


mostrar.

Sintaxe
Prompt de comando do Windows

Debug.ListRegisters [/Display [{register|registerGroup}...]] [/List]


[/Watch [{register|registerGroup}...]]
[/Unwatch [{register|registerGroup}...]]

Comutadores
/Display [{ register | registerGroup }...]

Exibe os valores do register ou registerGroup especificado. Se nenhum register ou


registerGroup for especificado, a lista padrão de registros será exibida. Se nenhuma

opção for especificada, o comportamento será o mesmo. Por exemplo:

Debug.ListRegisters /Display eax

é equivalente a

Debug.ListRegisters eax

/List

Exibe todos os grupos de registros na lista.

/Watch [{ register | registerGroup }...]

Adiciona um ou mais valores register ou registerGroup à lista.

/Unwatch [{ register | registerGroup }...]

Remove um ou mais valores register ou registerGroup da lista.

Comentários
O alias r pode ser usado no lugar de Debug.ListRegisters .

Exemplo
Este exemplo usa o alias Debug.ListRegisters r para exibir os valores do registro de
grupo Flags .

Prompt de comando do Windows

r /Display Flags

Confira também
Comandos do Visual Studio
Noções básicas sobre depuração: janela Registros
Como usar a janela Registros
Comando Listar Origem
Artigo • 13/01/2024

Exibe as linhas de código-fonte especificadas.

Sintaxe

Debug.ListSource [/Count:number] [/Current] [/File:filename]


[/Line:number] [/ShowLineNumbers:yes|no]

Comutadores
/Count: number

Opcional. Especifica o número de linhas que serão mostradas.

/Current

Opcional. Mostra a linha atual.

/File: filename

Opcional. Caminho do arquivo a ser exibido. Se nenhum nome de arquivo for


especificado, o comando mostrará o código-fonte da linha da instrução atual.

/Line: number

Opcional. Mostra um número de linha específico.

/ShowLineNumbers: yes|no

Opcional. Especifica se os números de linha devem ser exibidos.

Exemplo
Este exemplo lista o código-fonte da linha 4 do arquivo Form1.vb, com números de
linha visíveis.
Debug.ListSource /File:"C:\Visual Studio Projects\Form1.vb" /Line:4
/ShowLineNumbers:yes

Confira também
Comandos do Visual Studio
Janela Comando
Comando Listar Threads
Artigo • 13/01/2024

Exibe uma lista dos threads no programa atual.

Sintaxe

Debug.ListThreads [index]

Argumentos
index

Opcional. Seleciona um thread pelo seu índice para o thread atual.

Comentários
Quando especificado, o argumento index marca o thread indicado como o thread atual.
Um asterisco (*) é exibido na lista ao lado do thread atual.

Exemplo

>Debug.ListThreads

Confira também
Comando List Call Stack
Comando List Disassembly
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Registrar saída da janela
Comando
Artigo • 13/01/2024

Copia todas as entradas e saídas da janela Comando para um arquivo.

Sintaxe
Prompt de comando do Windows

Tools.LogCommandWindowOutput [filename] [/on|/off] [/overwrite]

Argumentos
filename

Opcional. O nome do arquivo de log. Por padrão, o arquivo é criado na pasta de perfil
do usuário. Se o nome do arquivo já existir, o log será acrescentado ao final do arquivo
existente. Se nenhum arquivo for especificado, o último arquivo especificado será
usado. Não se houver nenhum arquivo anterior, será criado um arquivo de log padrão,
chamado cmdline.log.

 Dica

Para alterar o local em que o arquivo de log é salvo, digite o caminho completo do
arquivo entre aspas se o caminho contiver espaços.

Comutadores
/on
Opcional. Inicia o log para a janela Comando no arquivo especificado e anexa o arquivo
com as novas informações.

/off
Opcional. Parar o log para a janela Comando.

/overwrite
Opcional. Se o arquivo especificado no argumento filename corresponder a um arquivo
existente, o arquivo será substituído.

Comentários
Se nenhum arquivo for especificado, o arquivo cmdline.log será criado por padrão. Por
padrão, o alias para esse comando é Log.

Exemplos
Este exemplo cria um novo arquivo de log, cmdlog, e inicia o log de comando.

Prompt de comando do Windows

>Tools.LogCommandWindowOutput cmdlog

Este exemplo interrompe os comandos de log.

Prompt de comando do Windows

>Tools.LogCommandWindowOutput /off

Este exemplo retoma o log de comandos no arquivo de log usado anteriormente.

Prompt de comando do Windows

>Tools.LogCommandWindowOutput /on

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Novo Arquivo
Artigo • 13/01/2024

Cria um novo arquivo e abre-o. O arquivo aparece na pasta Arquivos Diversos.

Sintaxe
Prompt de comando do Windows

File.NewFile [filename] [/t:templatename] [/editor:editorname]

Argumentos
filename

Opcional. Nome para o arquivo. Se nenhum nome for fornecido, será fornecido um
nome padrão. Se nenhum nome de modelo for listado, será criado um arquivo de texto.

Comutadores
/t: templatename
Opcional. Especifica o tipo de arquivo a ser criado.

A sintaxe do argumento /t: templatename espelha as informações encontradas na Caixa


de Diálogo Novo Arquivo. Insira o nome da categoria seguido por uma barra invertida
( \ ) e o nome do modelo e coloque toda a cadeia de caracteres entre aspas.

Por exemplo, para criar um arquivo de origem do Visual C++, você inseriria o mostrado
a seguir para o argumento /t: templatename .

Prompt de comando do Windows

/t:"Visual C++\C++ File (.cpp)"

O exemplo acima indica que o modelo de Arquivo C++ está localizado na categoria no
Visual C++ na caixa de diálogo Novo Arquivo.

/e: editorname
Opcional. Nome do editor no qual o arquivo será aberto. Se o argumento for
especificado, mas nenhum nome de editor for fornecido, a caixa de diálogo Abrir com
será exibida.

A sintaxe do argumento /e: editorname usa os nomes de editor como eles são exibidos
na Caixa de Diálogo Abrir com, entre aspas.

Por exemplo, para abrir um arquivo no editor de código-fonte, insira o seguinte para o
argumento /e: editorname .

Prompt de comando do Windows

/e:"Source Code (text) Editor"

Exemplo
Este exemplo cria uma nova página da Web "test1.htm" e abre-a no editor de código-
fonte.

Prompt de comando do Windows

>File.NewFile test1 /t:"General\HTML Page" /e:"Source Code (text) Editor"

Confira também
Comandos do Visual Studio
Janela Comando
Janela Imediata
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Abrir arquivo
Artigo • 13/01/2024

Abre um arquivo existente e permite que você especifique um editor.

Sintaxe
Console

File.OpenFile filename [/e:editorname]

Argumentos
filename

Obrigatórios. O caminho total ou parcial e o nome do arquivo a abrir. Caminhos que


contêm espaços devem ser colocados entre aspas.

Comutadores
/e: editorname

Opcional. Nome do editor no qual o arquivo será aberto. Se o argumento for


especificado, mas nenhum nome de editor for fornecido, a caixa de diálogo Abrir com
será exibida.

A sintaxe do argumento /e: editorname usa os nomes de editor como eles são exibidos
na Caixa de Diálogo Abrir com, entre aspas.

Por exemplo, para abrir um arquivo no editor de código-fonte, insira o seguinte para o
argumento /e: editorname .

Console

/e:"Source Code (text) Editor"

Comentários
Conforme você digita um caminho, o preenchimento automático tenta localizar o
caminho e o nome do arquivo corretos.

Exemplo
Este exemplo abre o arquivo de estilo "Test1.css" no editor de código-fonte.

Console

File.OpenFile "C:\My Projects\project1\Test1.css" /e:"Source Code (text)


Editor"

Confira também
Comandos do Visual Studio
Janela Comando
Janela Imediata
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Abrir projeto
Artigo • 13/01/2024

Abre uma solução ou um projeto existente.

Sintaxe
Prompt de comando do Windows

File.OpenProject filename

Argumentos
filename

Obrigatórios. O caminho completo e o nome do arquivo do projeto ou da solução a


serem abertos.

7 Observação

A sintaxe do argumento filename requer que os caminhos que contêm espaços


usem aspas.

Comentários
O preenchimento automático tenta localizar o caminho e o nome do arquivo corretos
enquanto você digita.

Esse comando não está disponível durante a depuração.

Exemplo
O exemplo a seguir abre o projeto do Visual Basic Test1:

Prompt de comando do Windows

>File.OpenProject "C:\My Projects\Test1\Test1.vbproj"


Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Imprimir
Artigo • 13/01/2024

Avalia uma expressão ou exibe o texto especificado.

Sintaxe
Prompt de comando do Windows

>Debug.Print text

Argumentos
text

Obrigatórios. A expressão a ser avaliada ou o texto a ser exibido.

Comentários
Você pode usar o ponto de interrogação (?) como um alias para esse comando. Assim,
por exemplo, o comando

Prompt de comando do Windows

>Debug.Print expA

também pode ser escrito como

Prompt de comando do Windows

? expA

As duas versões desse comando retornam o valor atual da expressão expA .

Exemplo
Prompt de comando do Windows
>Debug.Print DateTime.Now.Day

Confira também
Comando Evaluate Statement
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Inspeção Rápida
Artigo • 13/01/2024

Exibe o texto selecionado ou especificado no campo Expressão da janela QuickWatch.


Você pode usar essa caixa de diálogo para calcular o valor atual de uma variável ou
expressão reconhecida pelo depurador ou o conteúdo de um registro. Além disso, você
pode alterar o valor de qualquer variável não const ou o conteúdo de qualquer registro.

Sintaxe
Prompt de comando do Windows

Debug.QuickWatchq [text]

Argumentos
text

Opcional. O texto a ser adicionado à caixa de diálogo Inspeção Rápida.

Comentários
Se text for omitido, o texto selecionado atualmente ou a palavra no cursor é
adicionada à janela Inspeção.

Exemplo
Prompt de comando do Windows

>Debug.QuickWatch

Confira também
Definir uma inspeção nas variáveis usando as janelas Inspeção e QuickWatch no
Visual Studio
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Substituir
Artigo • 13/01/2024

Substitui texto em arquivos usando um subconjunto das opções disponíveis na guia


Substituir nos Arquivos da janela Localizar e Substituir.

Sintaxe

Edit.Replace findwhat replacewith [/all] [/case]


[/doc|/proc|/open|/sel] [/hidden] [/options] [/reset] [/up]
[/wild|/regex] [/word]

Argumentos
findwhat

Obrigatórios. O texto a ser correspondido.

replacewith

Obrigatórios. O texto a ser substituído pelo texto correspondido.

Comutadores
/all ou /a

Opcional. Substitui todas as ocorrências do texto da pesquisa pelo texto de substituição.

/case ou /c

Opcional. As correspondências ocorrerão somente se os caracteres maiúsculos e


minúsculos corresponderem exatamente aos especificados no argumento findwhat .

/doc ou /d

Opcional. Pesquisa apenas o documento atual. Especifique apenas um dos escopos de


pesquisa disponíveis, /doc , /proc , /open ou /sel .

/hidden ou /h
Opcional. Pesquisa texto oculto e recolhido, como os metadados de um controle DTC,
uma região oculta de um documento com estrutura de tópicos ou uma classe ou
método recolhido.

/open ou /o

Opcional. Pesquisa todos os documentos abertos como se fossem um documento.


Especifique apenas um dos escopos de pesquisa disponíveis, /doc , /proc , /open ou
/sel .

/options ou /t

Opcional. Exibe uma lista das configurações atuais da opção de localização e não realiza
uma pesquisa.

/proc ou /p

Opcional. Pesquisa apenas o procedimento atual. Especifique apenas um dos escopos


de pesquisa disponíveis, /doc , /proc , /open ou /sel .

/regex ou /r

Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações


que representam padrões de texto, em vez de caracteres literais. Para obter uma lista
completa de caracteres de expressão regular, consulte Expressões Regulares.

/reset ou /e

Opcional. Retorna as opções de localização para suas configurações padrão e não


realiza uma pesquisa.

/sel ou /s

Opcional. Pesquisa apenas a seleção atual. Especifique apenas um dos escopos de


pesquisa disponíveis, /doc , /proc , /open ou /sel .

/up ou /u

Opcional. Pesquisa desde o local atual em um arquivo até o topo do arquivo. Por
padrão, as pesquisas têm início no local atual no arquivo e vão até a parte inferior do
arquivo.

/wild ou /l

Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações


para representar um caractere ou uma sequência de caracteres.
/word ou /w

Opcional. Pesquisa somente palavras inteiras.

Exemplo
Este exemplo substitui btnSend por btnSubmit em todos os documentos abertos.

>Edit.Replace btnSend btnSubmit /open

Confira também
Localizando e substituindo texto
Janela Comando
Caixa Localizar/Comando
Comandos do Visual Studio
Aliases de comando do Visual Studio
Comando Substituir nos Arquivos
Artigo • 13/01/2024

Substitui texto em arquivos usando um subconjunto das opções disponíveis na guia


Substituir nos Arquivos da janela Localizar e Substituir.

Sintaxe

Edit.ReplaceinFiles findwhat replacewith [/all] [/case]


[/ext:extensions] [/keep] [/lookin:searchpath] [/options] [/regex]
[/reset] [/stop] [/sub] [/text2] [/wild] [/word]

Argumentos
findwhat

Obrigatórios. O texto a ser correspondido.

replacewith

Obrigatórios. O texto a ser substituído pelo texto correspondido.

Comutadores
/all ou /a

Opcional. Substitui todas as ocorrências do texto da pesquisa pelo texto de substituição.

/case ou /c

Opcional. As correspondências ocorrerão somente se os caracteres maiúsculos e


minúsculos corresponderem exatamente aos especificados no argumento findwhat .

/ext: extensions

Opcional. Especifica as extensões de arquivo para os arquivos a serem pesquisados.

/keep ou /k

Opcional. Especifica que todos os arquivos modificados são deixados abertos.


/lookin: searchpath

Opcional. Diretório a pesquisar. Se o caminho contiver espaços, coloque todo o


caminho entre aspas.

/options ou /t

Opcional. Exibe uma lista das configurações atuais da opção de localização e não realiza
uma pesquisa.

/regex ou /r

Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações


que representam padrões de texto, em vez de caracteres literais. Para obter uma lista
completa de caracteres de expressão regular, consulte Expressões Regulares.

/reset ou /e

Opcional. Retorna as opções de localização para suas configurações padrão e não


realiza uma pesquisa.

/stop

Opcional. Interromperá a operação de pesquisa atual se houver uma em andamento.


Substituir ignorará todos os outros argumentos quando /stop tiver sido especificado.
Por exemplo, para interromper a substituição atual, você digitaria o seguinte:

>Edit.ReplaceinFiles /stop

/sub ou /s

Opcional. Procura as subpastas dentro do diretório especificado no argumento


/lookin: searchpath .

/text2 ou /2

Opcional. Exibe os resultados da substituição na janela Localizar Resultados 2.

/wild ou /l

Opcional. Usa caracteres especiais predefinidos no argumento findwhat como notações


para representar um caractere ou uma sequência de caracteres.

/word ou /w
Opcional. Pesquisa somente palavras inteiras.

Exemplo
Este exemplo pesquisa btnCancel e o substitui por btnReset em todos os arquivos .cls
localizados na pasta "Meus Projetos do Visual Studio" e exibe as informações de
substituição na janela Localizar Resultados 2 janela.

>Edit.ReplaceinFiles btnCancel btnReset /lookin:"c:/my visual studio


projects" /ext:.cls /text2

Confira também
Localizando e substituindo texto
Substituir em arquivos
Janela Comando
Caixa Localizar/Comando
Comandos do Visual Studio
Aliases de comando do Visual Studio
Definir processo atual
Artigo • 13/01/2024

Define o processo especificado como o processo ativo no depurador.

Sintaxe
Prompt de comando do Windows

Debug.SetCurrentProcess index

Argumentos
index

Obrigatórios. O índice do processo.

Comentários
Você pode se conectar a vários processos quando está depurando, mas somente um
processo está ativo no depurador em um determinado momento. Você pode usar o
comando SetCurrentProcess para definir o processo ativo.

Exemplo
Prompt de comando do Windows

>Debug.SetCurrentProcess 1

Confira também
Comandos do Visual Studio
Janela Comando
Aliases de comando do Visual Studio
Comando Definir Quadro de Pilha Atual
Artigo • 13/01/2024

Permite definir um registro de ativação específico.

Sintaxe
Prompt de comando do Windows

Debug.SetCurrentStackFrame index

Argumentos
index

Obrigatórios. Seleciona um registro de ativação pelo seu índice.

Exemplo
Prompt de comando do Windows

>Debug.SetCurrentStackFrame 1

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Definir Thread Atual
Artigo • 13/01/2024

Define o thread especificado como o thread atual.

Sintaxe

Debug.SetCurrentThread index

Argumentos
index

Obrigatórios. Seleciona um thread por seu índice.

Exemplo

>Debug.SetCurrentThread 1

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Definir Base
Artigo • 13/01/2024

Define ou retorna a base numérica usada para exibir valores inteiros.

Sintaxe
Prompt de comando do Windows

Debug.SetRadix [10 | 16 | hex | dec]

Argumentos
10 ou 16 ou hex ou dec

Opcional. Indica o decimal (10 ou dez) ou hexadecimal (16 ou hexa). Se um argumento


for omitido, o valor base atual será retornado.

Exemplo
Este exemplo define o ambiente para exibir valores inteiros em formato hexadecimal.

Prompt de comando do Windows

>Debug.SetRadix hex

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Shell
Artigo • 13/01/2024

Inicia programas executáveis no Visual Studio.

Sintaxe
Prompt de comando do Windows

Tools.Shell [/command] [/output] [/dir:folder] path [args]

Argumentos
path

Obrigatórios. O caminho e o nome do arquivo a ser executado ou o documento a ser


aberto. Será necessário um caminho completo se o arquivo especificado não estiver em
um dos diretórios na variável de ambiente PATH.

args

Opcional. Quaisquer argumentos a serem passados para o programa invocado.

Comutadores
/commandwindow [ou] /command [ou] /c [ou] /cmd

Opcional. Especifica que a saída para o executável é exibida na janela Comando.

/dir: folder [ou] /d: folder

Opcional. Especifica o diretório de trabalho a ser definido quando o programa é


executado.

/outputwindow [ou] /output [ou] /out [ou] /o

Opcional. Especifica que a saída para o executável é exibida na Janela de Saída.

Comentários
As opções /dir /o /c devem ser especificadas imediatamente após Tools.Shell .
Qualquer coisa especificada após o nome do executável é passada para ele como
argumentos de linha de comando.

O alias predefinido Shell pode ser usado no lugar de Tools.Shell .

U Cuidado

Se o argumento path fornecer o caminho de diretório, bem como o nome de


arquivo, é necessário colocar o nome do caminho inteiro em aspas literais ("""),
conforme o seguinte:

Prompt de comando do Windows

Tools.Shell """C:\Program Files\SomeFile.exe"""

Cada conjunto de três aspas duplas (""") é interpretado pelo processador Shell como
um único caractere de aspas duplas. Portanto, o exemplo anterior, na verdade, passa a
seguinte cadeia de caracteres de caminho para o comando Shell :

Prompt de comando do Windows

"C:\Program Files\SomeFile.exe"

U Cuidado

Se você não colocar a cadeia de caracteres de caminho em aspas literais ("""), o


Windows usará somente a parte da cadeia de caracteres que vai até o primeiro
espaço. Por exemplo, se a cadeia de caracteres de caminho acima não tivesse sido
colocada adequadamente entre aspas, Windows pareceria um arquivo denominado
“Programa” localizado no diretório raiz C:\. Se um arquivo executável
C:\Program.exe estivesse mesmo disponível, e inclusive tivesse sido instalado por
adulteração ilícita, o Windows tentaria executar esse programa no lugar do
programa “c:\Arquivos de Programas\SomeFile.exe”.

Exemplo
O comando a seguir usa xcopy.exe para copiar o arquivo MyText.txt para a pasta Text .
A saída de xcopy.exe é exibida na Janela Comando e na Janela de Saída.
Prompt de comando do Windows

>Tools.Shell /o /c xcopy.exe c:\MyText.txt c:\Text\MyText.txt

Confira também
Comandos do Visual Studio
Janela Comando
Janela Saída
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando ShowWebBrowser
Artigo • 13/01/2024

Exibe a URL especificada em uma janela de navegador da Web, tanto dentro do IDE
(ambiente de desenvolvimento integrado) ou externa ao IDE.

Sintaxe
Prompt de comando do Windows

View.ShowWebBrowser URL [/new][/ext]

Argumentos
URL

Obrigatórios. URL (Uniform Resource Locator) do site da Web.

Comutadores
/new

Opcional. Especifica que a página é exibida em uma nova instância do navegador da


Web.

/ext

Opcional. Especifica que a página é exibida no navegador da Web padrão fora do IDE.

Comentários
O alias do comando ShowWebBrowser é navegue ou nav.

Exemplo
O exemplo a seguir exibe a home page do Microsoft Learn em um navegador da Web
fora do IDE. Se uma instância do navegador da Web já estiver aberta, ela será usada;
caso contrário, uma nova instância será iniciada.
Prompt de comando do Windows

>View.ShowWebBrowser https://learn.microsoft.com /ext

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Iniciar
Artigo • 13/01/2024

Inicia a depuração do projeto de inicialização.

Sintaxe
Prompt de comando do Windows

Debug.Start [address]

Argumentos
address

Opcional. O endereço no qual o programa suspende a execução, semelhante a um


ponto de interrupção no código-fonte. Este argumento é válido apenas no modo de
depuração.

Comentários
O comando Iniciar, quando executado, executa uma operação RunToCursor para o
endereço especificado.

Exemplo
Este exemplo inicia o depurador e ignora todas as exceções que ocorrerem.

Prompt de comando do Windows

>Debug.Start

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando demarcador do Símbolo
Artigo • 13/01/2024

Define a lista de diretórios para o depurador pesquisar símbolos.

Sintaxe

Debug.SymbolPath pathname1;pathname2;... pathnameN

Argumentos
pathname

Opcional. Uma lista de caminhos delimitada por ponto-e-vírgula para que o depurador
pesquise símbolos.

Comentários
Se nenhum pathname for especificado, o comando listará os caminhos de símbolo atual.

Exemplo 1
Este exemplo adiciona dois caminhos à lista de diretórios de símbolo.

Debug.SymbolPath C:\Symbol Path 1;C:\Symbol Path 2

Exemplo 2
Este exemplo exibe uma lista delimitada por ponto-e-vírgula dos caminhos de símbolo
atuais.

Debug.SymbolPath
Confira também
Janela Comando
Comandos do Visual Studio
Comando Ativar/Desativar Ponto de
Interrupção
Artigo • 13/01/2024

Ativa ou desativa o ponto de interrupção dependendo de seu estado atual, no local


atual do arquivo.

Sintaxe

Debug.ToggleBreakpoint [text]

Argumentos
text

Opcional. Se o texto for especificado, a linha será marcada como um ponto de


interrupção nomeado. Caso contrário, a linha será marcada como um ponto de
interrupção sem nome, semelhante ao que acontece quando você pressiona F9.

Exemplo
O exemplo a seguir ativa/desativa o ponto de interrupção atual.

>Debug.ToggleBreakpoint

Confira também
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
Comando Inspecionar
Artigo • 13/01/2024

Cria e abre uma instância especificada de uma janela Inspeção. Você pode usar uma
janela Inspeção para calcular os valores de variáveis, expressões e registros, para editar
esses valores e para salvar os resultados.

Sintaxe
Prompt de comando do Windows

Debug.Watch[index]

Argumentos
index

Obrigatórios. O número de instância da janela Inspeção.

Comentários
O index deve ser um inteiro. Os valores válidos são 1, 2, 3 ou 4.

Exemplo
Prompt de comando do Windows

>Debug.Watch1

Confira também
Janelas autos e locais
Definir uma inspeção nas variáveis usando as janelas Inspeção e QuickWatch no
Visual Studio
Comandos do Visual Studio
Janela Comando
Caixa Localizar/Comando
Aliases de comando do Visual Studio
A biblioteca de imagens do Visual
Studio
Artigo • 12/01/2024

A Biblioteca de Imagens do Visual Studio contém imagens do aplicativo que aparecem


no Microsoft Visual Studio, no Microsoft Windows, no office system e em outros
programas da Microsoft. Este conjunto de mais de 1.000 imagens pode ser usado para
criar aplicativos visualmente consistentes com o software Microsoft.

Baixar a biblioteca de imagens do Visual Studio

A biblioteca de imagens é dividida em cinco categorias: Elementos Comuns, Ações,


Anotações, Ícones e Objetos. Os arquivos Leiame são incluídos no formato PDF para os
tipos Elementos Comuns e Ícone. Eles contêm informações sobre como usar
adequadamente essas imagens em seus aplicativos.

Conteúdo relacionado
Instalar o Visual Studio
Imagens, bitmaps e metarquivos
Aplicativos seguros
Artigo • 13/01/2024

Você deve considerar a segurança em todos os aspectos do desenvolvimento do


aplicativo, do design à implantação. Comece executando o Visual Studio com a máxima
segurança possível. Confira Permissões de usuário.

Para que você desenvolva aplicativos efetivamente seguros, é preciso ter um


entendimento básico dos conceitos e dos recursos de segurança das plataformas para
as quais você está desenvolvendo. Também é preciso entender as técnicas de
codificação segura.

Codificar com segurança


A maioria dos erros de codificação que resultam em vulnerabilidades de segurança
ocorrem porque os desenvolvedores fazem suposições incorretas ao trabalhar com a
entrada do usuário ou porque eles não têm um entendimento completo da plataforma
para a qual estão desenvolvendo.

Diretrizes de codificação segura descreve as diferentes maneiras em que o código


.NET pode ser projetado para trabalhar com o sistema de segurança.
Práticas recomendadas de segurança para C++ contém informações sobre as
ferramentas de segurança e as práticas recomendadas para desenvolvedores de
C++.

Compilar com segurança


A segurança também é uma consideração importante no processo de compilação.
Algumas etapas adicionais podem melhorar a segurança de um aplicativo implantado e
ajudar a evitar engenharia reversa não autorizada, falsificação ou outros ataques:

Dotfuscator é gratuito e ajuda a proteger assemblies .NET contra engenharia


reversa e uso não autorizado, como depuração não autorizada.
Assinatura de nome forte pode ser usada para identificar os componentes de
software com exclusividade e evitar falsificação de nome.

Conteúdo relacionado
Segurança no .NET
Segurança do Azure
Guia de segurança do Windows 10 Mobile
Segurança do Windows
Recursos de segurança da plataforma Apache Cordova
Segurança do ASP.NET Core
Segurança do Windows Forms
Permissões de usuário e o Visual Studio
Artigo • 28/08/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Por motivos de segurança, você deve executar o Visual Studio como um usuário típico
sempre que possível.

2 Aviso

Você deve se certificar de não compilar, iniciar ou depurar qualquer solução do


Visual Studio que não venha de uma pessoa de confiança ou de uma localidade
confiável.

Você pode fazer quase tudo no IDE do Visual Studio como um usuário típico. Você
precisa de permissões de administrador para concluir as seguintes tarefas:

Área Tarefa Para obter mais informações

Instalação Instalação inicial e configuração do Visual Instalar o Visual Studio,


Studio Configurar as Políticas do
Visual Studio

Instalação Modificar ou atualizar o Visual Studio. Atualizações do Visual Studio,


Exige permissões de administrador por Modificações do Visual Studio
padrão, mas pode ser configurada e
delegada a usuários standard .

Ajuda Instalar, atualizar ou remover conteúdo Instalar e gerenciar o conteúdo


da Ajuda local. da Ajuda local

Caixa de Adicionar controles COM clássicos à Caixa de Ferramentas


Ferramentas Caixa de ferramentas.

Construção Use eventos pós-build que registram um Noções básicas sobre etapas e
componente ou incluem uma etapa de eventos de build
registro ao criar projetos C++. personalizados

Depuração Depurar aplicativos executados com Configurações e preparação


permissões elevadas. do depurador

Depuração Depurar aplicativos que são executados Depurar aplicativos ASP.NET e


em uma conta de usuário diferente, como AJAX
sites ASP.NET.
Área Tarefa Para obter mais informações

Depuração Depurar na zona para XBAP (aplicativos Host do WPF


de navegador XAML). (PresentationHost.exe)

Depuração Usar o emulador para depurar projetos Depurar um serviço de nuvem


de serviço de nuvem do Microsoft Azure. no Visual Studio

Depuração Configurar um firewall para depuração Depuração remota


remota.

Ferramentas de Anexação a um aplicativo com privilégios Medir desempenho do


desempenho elevados. aplicativo

Criação de perfil Use o Criador de Perfil de GPU. Criação de perfil de GPU

Implantação Implantar um aplicativo Web para o IIS Implantação da Web do


(Serviços de Informações da Internet) em ASP.NET com uso do Visual
um computador local. Studio

Desenvolvimento Desenvolvendo soluções do SharePoint. Criar soluções do SharePoint

Executar o Visual Studio como administrador


Se você precisar executar o Visual Studio como administrador, consulte aqui.

Usar o menu Iniciar


1. Dependendo da versão do Windows que você está usando, execute uma das
seguintes etapas:

No Windows 10, abra o menu Iniciar e role até o Visual Studio.


No Windows 11, selecione o botão Iniciar e, na caixa Pesquisar, digite Visual
Studio.

2. Em seguida, clique com o botão direito do mouse em Visual Studio 2019 ou Visual
Studio 2022 e selecione Mais>Executar como administrador.

Quando o Visual Studio for iniciado, (Administrador) será exibido após o nome do
produto na barra de título.

Modificar o atalho
Você também pode modificar o atalho do aplicativo para sempre ser executado com
permissões administrativas. Veja aqui como fazer isso.
Windows 10
1. Abra o menu Iniciar , role até a versão do Visual Studio que você está usando e
selecione Mais>Abrir local do arquivo.

2. Em Explorador de Arquivos, localize o atalho do Visual Studio da versão que você


está usando. Em seguida, clique com o botão direito do mouse no atalho e
selecione Enviar para a>Área de Trabalho (criar atalho).

3. Na área de trabalho Windows 10, clique com o botão direito do mouse no atalho
do Visual Studio e selecione Propriedades.

4. Selecione o botão Avançado e marque a caixa de seleção Executar como


administrador.

5. Selecione OK e, em seguida, OK novamente.

Windows 11

1. Clique no botão Iniciar e, na caixa Pesquisar, digite Visual Studio.

2. Nos resultados da pesquisa, clique com o botão direito do mouse em Visual


Studio 2019 ou Visual Studio 2022 e selecione Abrir local do arquivo.

3. Em Explorador de Arquivos, localize o atalho do Visual Studio da versão que você


está usando. Em seguida, clique com o botão direito do mouse no atalho e
selecione Mostrar mais opções>Enviar para>Área de trabalho (criar atalho).

4. Na área de trabalho do Windows 11, clique com o botão direito do mouse no


atalho do Visual Studio e selecione Propriedades.

5. Depois, selecione o botão Avançado e marque a caixa de seleção Executar como


administrador.

6. Clique em OK duas vezes para fechar a caixa de diálogo.

Confira também
Instalar o Visual Studio
Portar, migrar e atualizar projetos do Visual Studio
Configurar o Visual Studio como um
aplicativo da isento da WIP
Artigo • 16/01/2024

A WIP (Proteção de Informações do Windows) ajuda a proteger os dados empresariais


contra perda causada por aplicativos, como email, mídia social e nuvem pública, que
estão fora do controle da empresa. A WIP ajuda a proteger contra perda de dados
acidental em dispositivos corporativos e pessoais, sem exigir alterações em seu
ambiente ou outros aplicativos.

Espera-se que aplicativos aprimorados para WIP impeçam que dados corporativos
acessem locais de rede desprotegidos e evitem criptografar dados pessoais. O Visual
Studio não é um aplicativo aprimorado, de modo que não funciona em ambientes
habilitados para WIP, a menos que você o isente. Siga as etapas neste artigo para
habilitar o Visual Studio para funcionar em um computador habilitado para WIP.

Configurar o VS como um aplicativo isento da


WIP
Você pode isentar o Visual Studio das restrições da WIP, mas ainda permitir que ele use
dados empresariais. Os aplicativos isentos da WIP podem se conectar aos recursos de
nuvem da empresa usando um endereço IP ou um nome de host. Não é aplicada
nenhuma criptografia e o aplicativo pode acessar arquivos locais.

Para isentar o Visual Studio da WIP, execute as etapas para isentar um aplicativo da área
de trabalho.

Crie um arquivo de política do AppLocker


isento da WIP
Como o Visual Studio inclui vários binários, crie um arquivo de política do AppLocker
isento da WIP. O AppLocker permite gerar regras automaticamente para todos os
arquivos dentro de uma pasta.

Adicionar o AppCompat à política de recursos


de nuvem empresariais
Para especificar onde o Visual Studio pode acessar dados empresariais em sua rede, siga
estas etapas para definir onde seus aplicativos protegidos podem localizar e enviar
dados empresariais. Para impedir que o Windows bloqueie conexões com recursos de
nuvem por meio de um endereço IP, adicione a cadeia de caracteres /*AppCompat*/ à
configuração.

Conteúdo relacionado
Comportamento do aplicativo com WIP
Suporte do Visual Studio para o modo
de operação aprovado do FIPS 140-2
Artigo • 16/01/2024

A partir da versão 16.4, o Visual Studio 2019 dá suporte ao modo de operação aprovado
da Publicação Padrão de Processamento de Informações Federais (FIPS) para Windows,
Azure e .NET. E, com a versão 16.5, o Visual Studio agora dá suporte ao modo de
operação aprovado pelo FIPS 140-2 ao desenvolver aplicativos C++ direcionados a um
sistema Linux remoto.

Para configurar o modo de operação aprovado pelo FIPS 140-2 para Visual Studio,
instale o .NET Framework 4.8 e habilite a configuração de Política de Grupo,
Criptografia do sistema: usar algoritmos compatíveis com a FIPS para criptografia,
hash e assinatura.

Para obter mais informações sobre o modo de operação aprovado pela FIPS 140-2 e
como habilitá-lo, consulte Validação do FIPS 140-2.

7 Observação

As ferramentas que você usa para desenvolver aplicativos para plataformas que
não são da Microsoft, como iOS ou Android, podem não usar algoritmos
compatíveis com FIPS. Softwares de terceiros incluídos no Visual Studio ou nas
extensões que você instala também podem não usar algoritmos aem conformidade
com a FIPS 140-2. E o desenvolvimento para soluções do SharePoint não dá
suporte ao modo de operação aprovado pela FIPS 140-2.

Conteúdo relacionado
Para saber mais sobre o modo de operação aprovado pela FIPS 140-2 para Visual Studio
e outros produtos e serviços da Microsoft, consulte os seguintes links:

Visual Studio Configurar um desenvolvimento remoto seguro em Linux em


conformidade com o FIPS com C++
Windows: criptografia do sistema e uso de algoritmos compatíveis com FIPS para
criptografia, hash e assinatura
.NET Core: Conformidade do com a FIPS
Sobre o Dotfuscator Community &
Visual Studio
Artigo • 08/05/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O PreEmptive Protection – Dotfuscator fornece uma proteção abrangente de aplicativos


.NET que pode ser adaptada facilmente ao seu ciclo de vida de desenvolvimento seguro
de software. Use-o para otimizar, proteger e remover aplicativos para desktop, móveis,
servidores e incorporados, a fim de ajudar a proteger segredos comerciais e outras
propriedades intelectuais (IP), reduzir a pirataria e a falsificação e proteger contra
violação e depuração não autorizada. O Dotfuscator funciona em assemblies
compilados sem a necessidade de mais programação ou até mesmo de acesso ao
código-fonte.

Por que a proteção é importante


É importante proteger sua propriedade intelectual (IP). O código do seu aplicativo
contém detalhes de design e implementação que podem ser considerados como IP. No
entanto, os aplicativos desenvolvidos no .NET Framework contêm metadados
significativos e um código intermediário de alto nível, facilitando a engenharia reversa
apenas usando uma das muitas ferramentas automatizadas e gratuitas. Ao interromper
e parar a engenharia reversa, você pode evitar a divulgação não autorizada de IP e
demonstrar que seu código contém segredos comerciais. O Dotfuscator pode ofuscar
seus assemblies .NET para atrapalhar a engenharia reversa, mantendo o comportamento
do aplicativo original.

Também é importante proteger a integridade do seu aplicativo. Além da engenharia


reversa, atores mal-intencionados podem tentar piratear seu aplicativo, alterar o
comportamento do aplicativo no tempo de execução ou manipular dados. O
Dotfuscator pode injetar em seu aplicativo a capacidade de detectar usos não
autorizados e responder a eles , incluindo violação, depuração de terceiros e
dispositivos com raiz.

Para saber mais sobre como o Dotfuscator se encaixa em um ciclo de vida de


desenvolvimento seguro de software, confira a página Proteção de aplicativo do SDL
da PreEmptive Solutions.

Sobre o Dotfuscator Community


Sua cópia do Microsoft Visual Studio inclui uma cópia gratuita do PreEmptive
Protection – Dotfuscator Community para uso pessoal. Esta versão gratuita era
conhecida anteriormente como Dotfuscator Community Edition ou Dotfuscator CE. Para
obter instruções sobre como instalar a versão do Dotfuscator Community incluída no
Visual Studio, confira a página de Instalação .

O Dotfuscator Community oferece uma ampla variedade de serviços de proteção para


software aos desenvolvedores, arquitetos e testadores. Entre os exemplos de
ofuscação para .NET e outros recursos de Proteção do aplicativo incluídos no
Dotfuscator Community estão:

Renomeação de identificadores para dificultar a engenharia reversa de


assemblies compilados.
Antiadulteração para detectar a execução de aplicativos adulterados e encerrar
as sessões adulteradas ou responder a elas.
Antidepuração para detectar a anexação de um depurador a um aplicativo em
execução e encerrar as sessões depuradas ou responder a elas.
Proteção contra dispositivos com raiz para detectar se o aplicativo está em
execução em um dispositivo Android com raiz e encerrar as sessões nesses
dispositivos ou responder a elas.
Comportamentos de expiração do aplicativo que codificam uma data de "fim da
vida útil" e encerram as sessões expiradas do aplicativo.

Para obter detalhes sobre esses recursos, incluindo como eles se encaixam em sua
estratégia de proteção do aplicativo, confira a página Funcionalidades.

O Dotfuscator Community oferece proteção básica pronta para uso. Há ainda mais
medidas de proteção do aplicativo disponíveis para usuários registrados do Dotfuscator
Community e para os usuários do PreEmptive Protection - Dotfuscator Professional, o
principal ofuscador para .NET do mundo. Para saber mais sobre como melhorar o
Dotfuscator, confira a página Atualizações.
Introdução
Para começar a usar o Dotfuscator Community no Visual Studio, digite dotfuscator na
caixa de pesquisa (Ctrl+Q).

Se já instalou o Dotfuscator Community, a caixa de pesquisa mostra a opção para


iniciar o Dotfuscator Community, abaixo do título Menus. Para obter detalhes,
confira a página de Introdução do Guia completo do usuário do Dotfuscator
Community .
Se ainda não instalou o Dotfuscator Community, a caixa de pesquisa mostra a
opção Instalar o PreEmptive Protection – Dotfuscator, abaixo do título
Componentes Individuais. Confira a página de Instalação para obter detalhes.

Também é possível obter a versão mais recente do Dotfuscator Community na página


de Downloads do Dotfuscator em preemptive.com .

Atualização do Dotfuscator Community 5


Saiba como atualizar para a PreEmptive Protection – Dotfuscator Community 6.

Dependendo do histórico de instalação e da versão do Visual Studio, você pode estar


executando o Dotfuscator Community 5, a versão principal anterior. Nesse caso, você
deve atualizar, pois é importante garantir que seu código esteja recebendo as medidas
de proteção mais recentes . As atualizações estão disponíveis sem custo.

Este artigo explica como determinar qual versão você tem atualmente, como atualizar
para a versão 6, se necessário, e quais recursos foram substituídos ou removidos entre
as duas versões.

Determinar a versão do Dotfuscator


Se você não tiver certeza de qual versão do Dotfuscator está executando, poderá
determinar a versão fazendo um dos seguintes opções:

Inicie a GUI ( interface gráfica do usuário ) do Dotfuscator Community acessando


o menu Ferramentas do Visual Studio e selecionando PreEmptive Protection –
Dotfuscator Community.

Na GUI do Dotfuscator, abra o menu Ajuda e selecione Sobre... para exibir a tela
Sobre.

Esta tela lista a versão do Dotfuscator.


Se você tiver o Dotfuscator integrado ao build com a interface de linha de
comando (como com aplicativos Xamarin ), também poderá verificar os logs de
build para obter o seguinte exemplo:

no-highlight

Dotfuscator Community Version 5.42.0.9514-e0e25f754

Talvez seja necessário aumentar o detalhamento do build para ver esse texto. Para
o Visual Studio, confira Configurações de detalhamento.

O primeiro inteiro da versão, antes do primeiro ponto . , indica a versão principal do


Dotfuscator. Se o primeiro inteiro for 5 , você deverá executar as etapas de atualização
nesta página, para que possa aproveitar os recursos mais recentes do Dotfuscator 6 e as
atualizações de proteção.

Instruções de atualização
Esta seção inclui conjuntos de instruções para atualizar os usos típicos do Dotfuscator
Community da versão 5 para a versão 6.

Instalar o Dotfuscator 6
O Dotfuscator Community é distribuído como uma extensão para o Visual Studio. As
instruções para instalar o Dotfuscator 6 variam de acordo com a versão do Visual Studio
que você tem:

Visual Studio 2019 O Dotfuscator Community 6 está incluído nas versões


posteriores do Visual Studio 2019 (versão 16.10.0 e posterior). Atualize o Visual
Studio 2019 para a última versão. Fazer upgrade do Visual Studio atualizará
automaticamente qualquer instalação do Dotfuscator Community 5 para o
Dotfuscator Community 6.

Se você ainda não tiver o Dotfuscator instalado, atualize o Visual Studio


primeiro e confira Instalação .

Além das versões com o Visual Studio, você sempre pode obter as versões mais
recentes do Dotfuscator Community na página Downloads do Dotfuscator .

Visual Studio 2017 Esta versão do Visual Studio é fornecida apenas com o
Dotfuscator Community 5. No entanto, você pode instalar ou atualizar para o
Dotfuscator Community 6 acessando a página Downloads do Dotfuscator e
selecionando o link de download apropriado.

Execute o arquivo .vsix baixado e siga as solicitações para instalar o Dotfuscator


Community 6 no Visual Studio. As instalações existentes do Dotfuscator
Community 5 também são atualizadas.

Versões anteriores do Visual Studio Não há suporte para o Dotfuscator


Community 6 nessas versões do Visual Studio. Recomendamos atualizar para uma
versão mais recente do Visual Studio ou atualizar do Dotfuscator Community para
o Dotfuscator Professional .

Se você já tiver registrado o Dotfuscator Community 5, esse registro será convertido


automaticamente na primeira vez em que você executar o Dotfuscator Community 6.

Atualizar caminhos para a CLI


Se você usou a CLI (interface de linha de comando ) do Dotfuscator 5 anteriormente
para proteger seu aplicativo, é necessário atualizar o caminho para a CLI em todos os
projetos e criar scripts que fazem referência a ele. Ele inclui projetos que usam a
integração do Xamarin da Comunidade Dotfuscator.

O motivo pelo qual um caminho para a CLI do Dotfuscator agora pode ser inválido é
porque os nomes de alguns dos executáveis instalados com o Dotfuscator Community
foram alterados no Dotfuscator 6. Essa alteração torna esses nomes executáveis iguais
no Dotfuscator Community e no Dotfuscator Professional.

Executável para... Dotfuscator 5 Dotfuscator 6

GUI dotfuscator.exe dotfuscatorUI.exe

CLI dotfuscatorCLI.exe dotfuscator.exe

7 Observação

O caminho da CLI também poderá ser inválido se você atualizar entre as versões
principais do Visual Studio ou alternar as edições do Visual Studio, pois a CLI do
Dotfuscator está instalada no diretório de instalação do Visual Studio. Os sintomas
e a solução listados abaixo também se aplicam a esse cenário.

Se o build estiver usando um caminho inválido da CLI do Dotfuscator, você poderá


receber erros como um dos seguintes exemplos:
'"[...]\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorCLI.exe"' is not recognized as

an internal or external command, operable program or batch file.

The command ""[...]\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorCLI.exe"

Dotfuscator.xml" exited with code 9009.

When the DotfuscatorXamarinEnabled property is 'true', the Dotfuscator command line

interface specified by DotfuscatorXamarinCliPath

('[...]\DotfuscatorCE\dotfuscatorCLI.exe') must exist.

Para atualizar o build para usar o caminho correto da CLI:

1. Inicie a GUI do Dotfuscator Community acessando o menu Ferramentas do


Visual Studio e selecionando Proteção PreEmptiva – Dotfuscator Community.

2. Na GUI do Dotfuscator Community, acesse o menu Ferramentas e selecione


Prompt de Comando do Dotfuscator.

3. No prompt de comando que é aberto, digite where dotfuscator.exe . Copie o


primeiro caminho exibido em um documento de texto sem formatação para
referência posterior. Esse caminho é o novo caminho para a CLI do Dotfuscator
Community 6.

4. Abra a configuração do projeto ou do build conforme apropriado ao sistema.

Para projetos do Visual Studio, abra o arquivo de projeto ( .csproj ,


.vbproj ou .fsproj ) como texto sem formatação. Abrir um arquivo de
projeto no Visual Studio.

Se você usou anteriormente a integração do Xamarin com o Dotfuscator


Community para proteger um aplicativo Xamarin, lembre-se de que o
Dotfuscator está integrado a cada projeto de aplicativo de modo individual
(como MyProject.Android.csproj e MyProject.iOS.csproj ) separado e não
em projetos de biblioteca compartilhada. Atualize todos os projetos de
aplicativo que estão usando o Dotfuscator no momento.

5. Localize todos os locais em seu projeto ou configuração de build em que um


caminho antigo para a CLI do Dotfuscator Community 5 é usado. Normalmente, é
um caminho que termina em dotfuscatorCLI.exe .

Ao atualizar um projeto usando a integração do Xamarin com o


Dotfuscator Community, o caminho antigo é localizado entre as marcas
<DotfuscatorXamarinCliPath> e </DotfuscatorXamarinCliPath> .
6. Substitua os caminhos antigos localizados na etapa 5 pelo novo caminho que você
anotou na etapa 3.

Se um dos caminhos antigos não for um caminho absoluto, você deverá ajustar o
novo caminho adequadamente com base no contexto. No exemplo a seguir, a
variável de ambiente VSInstallDir foi usada no caminho antigo. Portanto, o novo
caminho correspondente também deve fazer o mesmo.

Novo caminho da etapa 3: C:\Program Files (x86)\Microsoft Visual


Studio\2019\Preview\Common7\IDE\Extensions\PreEmptiveSolutions\Dotfuscato

rCE\dotfuscator.exe
Caminho antigo no arquivo de projeto:
%VSInstallDir%\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\

dotfuscatorCLI.exe
Novo caminho no arquivo de projeto:
%VSInstallDir%\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\
dotfuscator.exe

7. Se você está usando um sistema de controle do código-fonte, como o Git,


verifique se as alterações da etapa 6 são refletidas nesse sistema. Distribua essas
alterações para o restante da sua equipe, conforme adequado para seu sistema e
organização.

2 Aviso

Como dotfuscator.exe se refere à GUI (interface gráfica do usuário) no Dotfuscator


5, mas refere-se à CLI (interface de linha de comando) no Dotfuscator 6, tenha
cuidado ao atualizar scripts de build compartilhados em vários computadores.

Um computador com o Dotfuscator 5 instalado que executa um script atualizado


para o Dotfuscator 6 faz com que o script inicie a interface gráfica do usuário, em
vez da interface de linha de comando pretendida. Isso poderá fazer com que o
build tenha êxito, mas não aplicar a proteção do Dotfuscator, o que significa que
seus pacotes de saída NÃO serão protegidos.

Em outros casos, isso pode causar uma falha de build.

Para evitar esses cenários, atualize o Dotfuscator Community da versão 5 para a


versão 6 em todos os computadores e crie scripts ao mesmo tempo.

Atualizar arquivos de configuração do Dotfuscator


Todos os arquivos de configuração do Dotfuscator (como Dotfuscator.xml ) que foram
criados antes do Dotfuscator 6 precisam ser atualizados.

Se você tentar executar a CLI do Dotfuscator com um arquivo de configuração antigo,


receberá erros como os seguintes exemplos:

Dotfuscator Engine Initialization error: PreEmptive Analytics, Authenticode

signing, and the Introduce Explicit Method Overrides setting are no longer

supported. Please open your Dotfuscator config in the Config Editor which
automatically upgrades it.

) Importante

Você receberá esse erro e precisa atualizar o arquivo de configuração mesmo se


não estiver usando os recursos mencionados.

Para atualizar um arquivo de configuração:

1. Inicie a GUI ( interface gráfica do usuário ) do Dotfuscator Community acessando


o menu Ferramentas do Visual Studio e selecionando Proteção PreEmptiva –
Dotfuscator Community.

2. Abra o arquivo de configuração do Dotfuscator em questão (Ctrl+O).

3. A seguinte mensagem é exibida na guia Saída do Build:

PreEmptive Analytics, Authenticode signing, and the Introduce Explicit Method

Overrides setting are no longer supported. The associated settings have been
removed. Please save your upgraded Dotfuscator config.

4. Salve o arquivo de configuração do Dotfuscator atualizado (Ctrl+S).

5. Se você está usando um sistema de controle de origem, como o Git, garanta que
as alterações no arquivo de configuração do Dotfuscator sejam refletidas nesse
sistema. Distribua essas alterações para o restante da sua equipe, conforme
adequado para seu sistema e organização.

Atualizar integração do Xamarin


Se você integrou o Dotfuscator Community 5 ao seu projeto Xamarin , uma das
etapas exigia que você baixasse tarefas e destinos personalizados do MSBuild, como
PreEmptive.Dotfuscator.Xamarin.targets . Esses destinos e tarefas foram atualizados no
Dotfuscator Community 6. Portanto, você precisa substituir as versões antigas pelas
novas.

Para atualizar seus arquivos de integração do Xamarin:

1. Localize o diretório em que você baixou inicialmente esses arquivos. O exemplo


fornecido nas instruções usa um subdiretório chamado
PreEmptive.Dotfuscator.Xamarin , mas você pode ter baixado os arquivos em um

diretório diferente, que pode ou não ter arquivos não relacionados ao Dotfuscator.

2. No diretório localizado na etapa 1, exclua os arquivos relacionados à integração do


Dotfuscator com o Xamarin.

3. Baixe o arquivo ZIP vinculado na versão atual da seguinte seção da Guia do


Usuário: Baixe o conjunto personalizado de Destinos e Tarefas do MSBuild para
Dotfuscator .

4. Extraia o conteúdo do arquivo ZIP para o mesmo diretório visto na etapa 1.

5. Se você está usando um sistema de controle do código-fonte, como o Git, garanta


que remoção dos arquivos antigos e a adição dos novos arquivos são refletidas
nesse sistema. Dependendo do tipo de sistema, essas alterações podem aparecer
como arquivos alterando o conteúdo, em vez de serem substituídos. Distribua
essas alterações para o restante da sua equipe, conforme adequado para seu
sistema e organização.

Outras subseções nessa página também se aplicam a projetos do Xamarin. Portanto,


não deixe de examinar o restante das instruções desta página.

Atualizar referências a bibliotecas de atributos


O Dotfuscator permite configurar determinados recursos por meio de atributos do .NET
em seu código-fonte. Se os seus projetos estão usando esses atributos, talvez seja
necessário atualizá-los para resolver alterações no Dotfuscator 6.

Atributos de ofuscação

Não houve nenhuma alteração nos Atributos de Ofuscação . Esses atributos são
definidos nas bibliotecas de classes base do .NET e o Dotfuscator Community 6 continua
a honrá-los.

Verificar atributos
A biblioteca que contém os Atributos de Verificação foi alterada. No Dotfuscator
Community 5, ele foi distribuído como um arquivo juntamente ao próprio Dotfuscator.
A partir do Dotfuscator Community 6, ele é distribuído como um pacote NuGet público.

Se você tentar criar um projeto do Visual Studio que ainda faz referência ao local antigo,
poderá receber erros como os seguintes exemplos:

The type or namespace name 'PreEmptive' could not be found (are you missing a using

directive or an assembly reference?)

The type or namespace name 'TamperCheckAttribute' could not be found (are you

missing a using directive or an assembly reference?)

Você também pode receber este aviso:

Could not resolve this reference. Could not locate the assembly

"PreEmptive.Attributes". Check to make sure the assembly exists on disk. If this


reference is required by your code, you may get compilation errors.

Para atualizar seu projeto para usar o novo local:

1. Remova a referência de assembly do projeto para PreEmptive.Attributes.dll .

2. Adicione uma referência PreEmptive.Protection.Checks.Attributes ao pacote do


NuGet ao projeto. O pacote está disponível no feed do NuGet padrão,
nuget.org .

Os parâmetros ExtendedKey de Cada Atributo de Verificação também foram removidos.


Esses parâmetros foram ignorados no Dotfuscator Community 5, mas se o código-fonte
os usou independentemente disso, remova esses usos para que seu projeto seja
compilado.

Atributos de instrumentação

Os atributos de instrumentação foram usados para configurar o recurso de Análise


PreEmptiva no Dotfuscator 5. No entanto, a Análise PreEmptiva foi removido no
Dotfuscator 6; confira a Seção PreEmptive Analytics de subseção de recursos removida.
Como resultado, os atributos de instrumentação também foram removidos.

Se você tentar criar um projeto do Visual Studio que usou atributos de instrumentação,
você poderá obter os mesmos tipos de erros e avisos, conforme observado em Verificar
Atributos, embora os nomes de atributo sejam diferentes (por exemplo,
FeatureAttribute em vez de TamperCheckAttribute ).
Se você tentar executar o Dotfuscator em assemblies já criados e que contenham usos
de atributos de instrumentação, receberá erros como os seguintes exemplos:

The PreEmptive.Attributes.FeatureAttribute attribute (annotating

SomeNamespace.SomeType::SomeMethod) is not recognized by this version of


Dotfuscator.

Para corrigir esses problemas, remova todos os usos de atributos de instrumentação do


código-fonte. Você também precisa remover as referências de assembly para a
biblioteca que definiu os atributos, PreEmptive.Attributes.dll . (Se você também estava
usando os atributos de verificação definidos nessa biblioteca, eles foram movidos;
confira os Atributos de Verificação acima.)

Recursos removidos
O Dotfuscator Community 6 apresenta alterações interruptivas do Dotfuscator
Community 5. Se você está usando o Dotfuscator Community 5, esta seção descreve
como lidar com as alterações que podem exigir modificações de build ou afetar a saída
do Dotfuscator.

Uma lista completa das alterações está disponível no log de alterações .

PreEmptive Análises

O Dotfuscator 6 não dá suporte à Análise PreEmptiva, incluindo o recurso Verificar


Telemetria. No entanto, as próprias verificações (incluindo Notificação de Aplicativo
e Ações de Verificação ) ainda têm suporte.

Para usar o Dotfuscator 6, atualize o arquivo de configuração para remover as


configurações de PreEmptive Analytics.

Se você estava usando atributos no código para configurar a PreEmptive Analytics,


remova-os do código-fonte e recompile os assemblies de entrada antes que o
Dotfuscator 6 possa proteger esses assemblies.

Se você estava usando Verificar Telemetria para relatar quando uma Verificação detecta
um estado inválido (como quando a adulteração é detectada ), você pode substituí-la
por uma Notificação de Aplicativo personalizada que relata o incidente para
Aplicativo do Azure Insights ou outro serviço de sua escolha.

Tipos de aplicativos sem suporte


Os seguintes tipos de aplicativo não têm mais suporte no Dotfuscator 6:

Windows Phone
WinRT (aplicativos Windows 8)
Silverlight
Unity (mecanismo de jogo)

Além disso, os aplicativos UWP (Plataforma Universal do Windows ) só têm suporte para
cenários Xamarin .

Para proteger outros tipos de aplicativos UWP, atualize para o Dotfuscator


Professional e siga as instruções para proteger seu aplicativo .

Entradas sem suporte

O Dotfuscator Community não dá mais suporte a pacotes UWP (Plataforma Universal do


Windows) .appx como entradas . Você pode continuar a proteger aplicativos Xamarin
direcionados à UWP com a integração do Xamarin . Para proteger outros tipos de
aplicativos UWP, atualize para o Dotfuscator Professional e siga as instruções para
proteger seu aplicativo .

Além disso, os pacotes do .xap não podem mais ser usados como entradas porque o
Silverlight não tem mais suporte.

Introduzir substituições explícitas de método


A opção Renomear para introduzir substituições explícitas de método foi removida do
Dotfuscator. Para usar o Dotfuscator 6, atualize o arquivo de configuração para remover
essa configuração.

Documentação completa
Confira o Guia do Usuário Completo do Dotfuscator Community em preemptive.com
para obter instruções de uso detalhadas, inclusive como começar a usar a interface do
usuário do Dotfuscator Community .
Novidades nos documentos do Visual
Studio
Artigo • 20/01/2024

Bem-vindo às novidades nos documentos do Visual Studio. As seções a seguir fornecem


detalhes de conteúdo novo e atualizado nos três meses anteriores.

Dezembro de 2023

Depurador
Artigos atualizados

Editar e Continuar (C++) – Atualizar Recarrega Dinâmica vs. Editar e continuar


terminologia do Visual Studio 2022
Editar e Continuar (Visual C#) – Atualizar Recarrega Dinâmica vs. Editar e continuar
terminologia do Visual Studio 2022
Configurar Editar e Continuar (C#, VB, C++) – Atualizar Recarrega Dinâmica vs.
Editar e continuar terminologia do Visual Studio 2022
Alterações de código com suporte (C# e Visual Basic) – Atualizar Recarrega
Dinâmica vs. Editar e continuar terminologia do Visual Studio 2022
Depuração remota de um projeto em C# ou do Visual Basic no Visual Studio –
Adicionar etapas a aplicativos MAUI de depuração remota
Usar pontos de interrupção no depurador do Visual Studio – Adicionar limites de
hardware para pontos de interrupção de dados

Extensibilidade
Artigos atualizados

Visão geral de Menus e Barras de Ferramentas – Atualizações de Versão Prévia do


VisualStudio.Extensibility
Criar visualizadores de depurador do Visual Studio – Atualizações de Versão Prévia
do VisualStudio.Extensibility
Como usar o SDK do VisualStudio.Extensibility e o VSSDK juntos – atualizações do
VisualStudio.Extensibility Preview
Introdução ao VisualStudio.Extensibility para usuários do VSSDK –
VisualStudio.Extensibility Preview
Criar uma extensão simples – Atualizações do VisualStudio.Extensibility Preview
Restrições de ativação baseadas em regra – Atualizações de Versão Prévia do
visualStudio.Extensibility
Contribuições e configurações – Atualizações de Versão Prévia do
VisualStudio.Extensibility Preview
Componentes de uma extensão VisualStudio.Extensibilit – Atualizações de Versão
Prévia do visualStudio.Extensibility
Conceitos da API de consulta do projeto – Atualizações de Versão Prévia do
VisualStudio.Extensibility

Introdução
Artigos atualizados

Saiba como usar o editor de código – Incorporar o Copilot em documentos do


Editor
Tutorial: Criar um aplicativo WPF com o Visual Basic – Examinar e atualizar
conforme apropriado

IDE
Novos artigos

Janela da ferramenta Notificações

Artigos atualizados

Tour pelo IDE do Visual Studio – Incorporar o Copilot em documentos do Editor


O que é a extensão do GitHub Copilot para Visual Studio? – Adicionar etapas sobre
como usar o instalador para instalar o Copilot
Desenvolvimento assistido por IA no Visual Studio – Atualizações
Visão geral de direcionamento da estrutura – Adicionar capturas de tela e corrigir
ordem
Novidades no Visual Studio – Atualizar com as alterações de novembro

Instalar
Artigos atualizados

Visual Studio em dispositivos da plataforma Arm – Examinar e atualizar

MSBuild
Novos artigos

Avaliar itens e propriedades e exibir resultados de destinos

Artigos atualizados

Elemento UsingTask (MSBuild)


MSBuild: atualizações de UsingTask até cerca de TaskHostFactory
Funções de propriedade – Adicionar função de propriedade StableStringHash

Criação de perfil
Novos artigos

Caminhos críticos para a raiz na ferramenta de uso da memória

Teste
Artigos atualizados

Usar a cobertura de código para determinar a quantidade de código que está


sendo testada – atualizar a cobertura de código para incluir opções de coloração
de código, como glifos de margem
Instalar estruturas de teste de unidade – Atualizar artigos de teste de unidade
Visão geral do Microsoft IntelliTest – Atualizar artigos de teste de unidade
Atualizar de MSTestV1 para MSTestV2 – Atualizar artigos de teste de unidade
Passo a passo: desenvolvimento controlado por teste usando o Gerenciador de
Testes – Atualizar artigos de teste de unidade

Colaboradores da Comunidade
As pessoas a seguir contribuíram com os documentos do Visual Studio durante esse
período. Obrigado! Saiba como contribuir seguindo os links em "Participe" na página de
aterrissagem de novidades.

sam951013 - Yuhsi Chen Merged Pull Requests 2

Blake-Madden - Merged Pull Requests 1

elauser – Matthias Oberleitner Merged Pull Requests 1

jrdodds - Jonathan Dodds Merged Pull Requests 1

Styxxy – Hans De Mulder Merged Pull Requests 1


novembrod e 2023

Contêineres
Artigos atualizados

Depurar aplicativos em um contêiner do Docker local - Adicionar seção para proxy


de token

Ferramentas de dados
Artigos atualizados

Conectar-se a um banco de dados no Visual Studio – Adicionar informações para


as opções Criptografar e Certificado do Servidor Confiável para MDS 4.0 e VS 17.8

Depurador
Artigos atualizados

Início Rápido: depurar o ASP.NET Core com o depurador do Visual Studio -


Atualizar conteúdo relacionado à depuração do ASP.NET Core com base nas
alterações do modelo de projeto
Editar e continuar (Visual C#) - Melhorar a documentação da Recarga Dinâmica
(C#/C++)
Gravar e depurar o código em execução com a Recarga Dinâmica no Visual Studio
(C#, Visual Basic, C++)
Melhorar a documentação da Recarga Dinâmica (C#/C++)
Atualizações do .NET 8 para introdução ao Live Unit Testing

Implantação
Artigos atualizados

Introdução à implantação no Visual Studio - Revisão do .NET 8 e data de


atualização
Extensão de projetos do Instalador do Visual Studio e .NET - Atualizações do .NET
8 para introdução ao Live Unit Testing

Introdução
Artigos atualizados

Tutorial: Criar um aplicativo de console simples do Visual Basic - Atualizações do


.NET 8
Bem-vindo ao IDE do Visual Studio | Visual Basic - Atualizações do .NET 8
Tutorial: Introdução ao C# e ao ASP.NET Core no Visual Studio - Atualizações do
.NET 8
Tutorial: Criar um aplicativo de console simples em C# no Visual Studio (parte 1 de
2) - Atualizações do .NET 8
Tutorial: Criar um aplicativo WPF simples com C# - Atualizações do .NET 8

IDE
Novos artigos

Obter melhores respostas definindo o contexto para o GitHub Copilot Chat no


Visual Studio
Janela Detalhes do problema

Artigos atualizados

Passo a passo: criar um snippet de código no Visual Studio - corrige 9788


Entrar ou alternar as contas de usuário do Visual Studio – Atualizar signing-in-to-
visual-studio.md
Obter melhores respostas definindo o contexto para o GitHub Copilot Chat no
Visual Studio
Novo documento sobre o contexto aprimorado no chat do copilot
Desenvolver código no Visual Studio sem projetos ou soluções – Documentação
atualizada para suporte a várias pastas.
Noções básicas sobre as configurações de build – Revisar e atualizar
Conheça o IDE do Visual Studio – Atualizações do .NET 8
Acessar várias contas associadas à conta de entrada do Visual Studio -
Atualizações do .NET 8
Configurar projetos para plataformas de destino – Adicionar duas propriedades
COM
Ir para Localizar caixa de combinação – Atualização para Visual Studio 2022 – A
caixa Localizar/Comando foi renomeada
Adicionar ou remover referências usando o Gerenciador de Referências - Atualizar
Referências do Projeto para .NET Core
Janela Lista de Erros - Janela Detalhes do problema do documento

Instalar
Artigos atualizados

Criar e manter uma instalação de rede do Visual Studio – Atualizações de


documentos do instalador para 17.8 (extensões no arquivo de configuração,
EnableAdministratorUpdatesNotifications, --installerOnly)
Importar ou exportar configurações de instalação - Atualizações de documentos
do instalador para 17.8 (extensões no arquivo de configuração,
EnableAdministratorUpdatesNotifications, --installerOnly)
Usar parâmetros de linha de comando para instalar, atualizar e gerenciar o Visual
Studio – Atualizações de documentos do instalador para 17.8 (extensões no
arquivo de configuração, EnableAdministratorUpdatesNotifications, --installerOnly)

JavaScript
Artigos atualizados

Teste de unidade JavaScript e TypeScript no Visual Studio - Adicionar exemplo para


configurar testes de unidade React para esproj
Tutorial: Criar um aplicativo ASP.NET Core com o Angular no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular para GA do Visual Studio 17.8
Tutorial: Criar um aplicativo ASP.NET Core com o React no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular para GA do Visual Studio 17.8
Tutorial: Criar um aplicativo ASP.NET Core com o Vue no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular para GA do Visual Studio 17.8
Gerenciar pacotes de npm no Visual Studio - Refatorar o conteúdo de Node.js no
JSTS e atualizar a Introdução ao IDE para JSTS
Introdução ao Visual Studio IDE - Refatorar o conteúdo de Node.js no JSTS e
atualizar a Introdução ao IDE para JSTS
Tutorial: Criar um aplicativo Node.js e React no Visual Studio - Refatorar o
conteúdo do Node.js no JSTS e atualizar a Introdução ao IDE para JSTS

MSBuild
Artigos atualizados

Alterar ondas - Revisar e atualizar


Condições do MSBuild - Condições do MSBuild: Adicionar seção que lista
elementos com suporte

Criação de perfil
Artigos atualizados

Introdução às ferramentas de criação de perfil (C#, Visual Basic, C++, F#) -


Adicionar informações do contador .NET para criação de perfil no Hub de
Diagnóstico e atualizar artigos de criação de perfil
Introdução às ferramentas de criação de perfil (C#, Visual Basic, C++, F#) -
Adicionar informações do contador .NET para criação de perfil no Hub de
Diagnóstico e atualizar artigos de criação de perfil

Teste
Artigos atualizados

Introdução ao Live Unit Testing - Atualizações do .NET 8 para introdução ao Live


Unit Testing

VSTO
Artigos atualizados

Configurar um computador para desenvolver soluções do Office - Consolidar dois


artigos sobre a configuração do VSTO

Colaboradores da Comunidade
As pessoas a seguir contribuíram com os documentos do Visual Studio durante esse
período. Obrigado! Saiba como contribuir seguindo os links em "Participe" na página de
aterrissagem de novidades.

cw-sexton - CW Merged Pull Requests 1

Giorgi - Giorgi Dalakishvili Merged Pull Requests 1

Outubro de 2023

Contêineres
Artigos atualizados

Personalizar contêineres do Docker no Visual Studio – Início rápido do React das


Ferramentas de Contêiner – Atualização do .NET 8
Início rápido: Usar o Docker com um Aplicativo React de página única no Visual
Studio – Início rápido do React das Ferramentas de Contêiner – Atualização do
.NET 8
Início rápido: Docker no Visual Studio – Atualizações do .NET 8
Tutorial: Criar um aplicativo de vários contêineres com o Docker Compose –
Atualizações do .NET 8

Ferramentas de dados
Artigos atualizados

Criar um aplicativo de dados simples usando o ADO.NET – Examinar e atualizar a


data

Depurador
Artigos atualizados

Início rápido: Depurar com C# ou Visual Basic usando o depurador do Visual


Studio – Atualizações do .NET 8
Depuração Remota do ASP.NET em um Computador IIS Remoto – Atualizações do
.NET 8
Depuração Remota do ASP.NET Core em um Computador IIS Remoto no Visual
Studio – Atualizações do .NET 8
Depuração Remota do ASP.NET Core no IIS usando uma VM do Azure do Visual
Studio – Atualizações do .NET 8
Alterações de código com suporte (C# e Visual Basic) – Atualizações do .NET 8
Inspecionar estados anteriores do aplicativo usando o recuo do IntelliTrace no
Visual Studio (Visual Studio Enterprise) – Atualizações do .NET 8
Passo a passo: Depurando um Aplicativo Paralelo no Visual Studio (C#, Visual Basic,
C++) – Atualizações do .NET 8
Passo a passo: Escrevendo um Visualizador no C# – Atualizações do .NET 8
Técnicas e ferramentas de depuração para ajudá-lo a escrever melhores código –
Atualizações do .NET 8
Depuração usando o Depurador Just-In-Time no Visual Studio – Atualizações do
.NET 8
Depuração para iniciantes absolutos – Atualizações do .NET 8
Gerar código-fonte de assemblies .NET durante a depuração – Atualizações do
.NET 8
Introdução à depuração de aplicativos multi-threaded (C#, Visual Basic, C++) –
Atualizações do .NET 8
Documentação do depurador – Visual Studio (Windows) # Obrigatório; título de
página exibido nos resultados da pesquisa. Inclua a marca. < 60 chars. – Atualizar o
hub e as páginas de aterrissagem de acordo com o modelo de ciclo de vida do
desenvolvedor

Implantação
Artigos atualizados

Acessar as propriedades de implantação do ClickOnce para .NET no Windows –


Atualizações do .NET 8
Criar aplicativos ClickOnce da linha de comando – Atualizações do .NET 8
criar aplicativos .NET ClickOnce da linha de comando – Atualizações do .NET 8
Documentação de implantação # Obrigatório; título de página exibido nos
resultados da pesquisa. Inclua a marca. < 60 chars. – Atualizar o hub e as páginas
de aterrissagem de acordo com o modelo de ciclo de vida do desenvolvedor

Introdução
Artigos atualizados

Tutorial: Saiba como depurar o código C# usando o Visual Studio – Atualizações


do .NET 8
Tutorial: Saiba como depurar o código do Visual Basic usando o Visual Studio –
Atualizações do .NET 8
O que é o Visual Studio? – Cruze documentos de IA com documentos do Visual
Studio.

IDE
Artigos atualizados

Documentação do IDE do Visual Studio – Cruze documentos de IA com


documentos do Visual Studio.
Recursos do editor de código – Vincular à IA em documentos do Visual Studio de
outros documentos, páginas de aterrissagem
Personalizar o IDE do Visual Studio – [Interno] Informações de ambientes de
mesclagem
Entrar ou alternar contas de usuário do Visual Studio – [Interno] Pequenos ajustes
de entrada
Páginas de propriedades para projetos do React, Angular e Vue no Visual Studio –
Adicionar referência para as propriedades JSPS MSBuild
Substituir em Arquivos – Atualizar Substituir em Arquivos com o recurso
Preservação de caso
Título não encontrado em: - atualizar Novidades para setembro

Instalar
Artigos atualizados

Importar ou exportar configurações de instalação – Sintaxe WMI atualizada e


sintaxe de formato de arquivo de configuração adicionada

JavaScript
Novos artigos

Referência do MSBuild para o JavaScript Project System

Artigos atualizados

Tutorial: Criar um aplicativo ASP.NET Core com o TypeScript no Visual Studio –


Atualizações do .NET 8
Compilar código TypeScript (ASP.NET Core) – Esclarecer cenários para uso do
pacote TypeScript NuGet vs. npm
Tutorial: Criar um aplicativo ASP.NET Core com o Angular no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular
Tutorial: Criar um aplicativo ASP.NET Core com o React no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular
Tutorial: Criar um aplicativo ASP.NET Core com o Vue no Visual Studio –
Atualizações para tutoriais do React, Vue, Angular

MSBuild
Artigos atualizados

Tutorial: Usar o MSBuild – Examinar e atualizar a data

Python
Artigos atualizados
Definir comandos personalizados para projetos do Python – Alterações para
resolver o bug do documento PTVS nº 9661

Teste
Artigos atualizados

Teste Remoto (versão prévia experimental) – Atualizações do .NET 8


Usar stubs para isolar partes do seu aplicativo umas das outras para teste de
unidade – Atualizações do .NET 8
Passo a passo: Criar e executar testes de unidade para código gerenciado –
Atualizações do .NET 8

Controle de versão
Novos artigos

Criar um pull request no Visual Studio

Colaboradores da Comunidade
As pessoas a seguir contribuíram para o conteúdo do Visual Studio no mês passado.
Obrigado! Para saber mais sobre como você pode colaborar, confira a guia do
colaborador do Microsoft Docs.

bayates - Addison Yates Merged Pull Requests 1

GeeVont3 - Sinoxolo Jeremiah Merged Pull Requests 1


Visual Studio roteiro 2022
Artigo22/01/2024

Este roteiro descreve nossa visão de trabalho principal no Visual Studio 2022 para o ano
calendário de 2021. Visual Studio 2022 tem três temas principais:

Produtividade pessoal e de equipe: queremos capacitar desenvolvedores e


equipes com escala e desempenho incríveis, uma rede de ferramentas confiável e
segura e um ambiente mais acessível e personalizado.
Desenvolvimento Moderno: estamos criando as ferramentas para desenvolver
aplicativos modernos mais rapidamente.
Inovação constante: estamos investindo em colaboração aprimorada, diagnóstico
aprimorado e assistência de código.

Visual Studio 2022 será a primeira versão de 64 bits do Visual Studio. Além das
vantagens de velocidade e desempenho proporcionadas por mais acesso à memória, o
Visual Studio traz aprimoramentos de interface do usuário, mais opções de
personalização e um foco contínuo em capacitar os desenvolvedores. A atualização para
o Visual Studio 2022 deve ser uma experiência de baixo atrito e não deve exigir que seu
código seja alterado. Você ainda pode criar 32 bits e todos os aplicativos existentes no
Visual Studio 2022.

Para o roteiro Visual Studio 2019, consulte Visual Studio roteiro 2019.

Para obter mais detalhes sobre nossa visão do Visual Studio 2022, leia nosso blog de
Visual Studio 2022 .

Geral
Estamos melhorando a produtividade do desenvolvedor movendo o processo
devenv.exe principal de 32 bits para 64 bits. Isso eliminará efetivamente erros de

memória inomináveis, especialmente para soluções grandes e complexas. Estamos


incorporando comentários do usuário para inovar continuamente em como os
desenvolvedores carregam, pesquisam e interagem com o código. Estamos melhorando
a nova experiência de criação de projeto.

Visual Studio 2022 estará mais acessível do que nunca. Estamos tornando as opções
relacionadas à acessibilidade mais descobertas, e a disponibilidade da indicação de
áudio está se expandindo. Estamos integrando o Mecanismo de Insights acessibilidade
para capacitar os desenvolvedores a criar aplicativos modernos e acessíveis. Os
desenvolvedores terão mais opções de personalização Visual Studio 2022 e capacidade
aprimorada de sincronizar configurações em vários máquinas. Também estamos
atualizando ícones, temas e fontes para uma experiência moderna e atualizada.

Para obter detalhes, consulte Visual Studio no Developer Community .

Diagnósticos
O diagnóstico no Visual Studio 2022 se concentra em inovar em nossa experiência de
diagnóstico de nível mundial. Estamos melhorando os pontos de interrupção para
serem arrastados, adicionando pontos de interrupção dependentes e a capacidade de
forçar Executar. Estamos melhorando as ferramentas de análise para despejos de
memória, despejos de memória e análise de pressão de memória. Por fim, estamos
adicionando suporte de plataforma cruzada para depuração de código C++ e .NET em
dispositivos ARM64.

Para obter detalhes sobre a depuração, consulte Depuração no Developer


Community .

Para obter detalhes sobre criação de perfil, consulte Criação de perfil Developer
Community .

Personalização
Visual Studio 2022 é mais flexível do que nunca, para acomodar uma variedade maior
de preferências do desenvolvedor. Adicionamos novas maneiras de organizar seu
workspace, novos temas da comunidade e a capacidade de converter VS Code de
trabalho em Visual Studio. Dependendo da hora do dia, da quantidade de luz ambiente
ou de suas preferências, Visual Studio pode ajudar a aumentar a produtividade. Nas
versões futuras, estamos procurando fornecer maior flexibilidade com guias de cores e
criação de tema.

Editor
O Visual Studio 2022 terá um verificador ortático interno para ajudá-lo a codificar com
mais precisão com menos erros. Estamos inovando na capacidade de leitura de código e
adicionando novas maneiras de navegar, como edição de vários adados e navegação
"Camel Camel" . Os usuários de leitores de tela aproveitarão melhores comentários
sobre problemas de código.

Para obter detalhes, consulte Visual Studio Editor no Developer Community .


Extensibilidade
As extensões desempenham um papel importante na personalização da Visual Studio
experiência. Estamos tornando extensões essenciais mais confiáveis e seguras. Também
estamos melhorando a experiência de desenvolvimento, migração e publicação para
extensões.

IntelliCode
A equipe do IntelliCode continua se concentrando em prever sua próxima
movimentação. Visual Studio 2022 apresentará preenchimentos maiores e ajudará você
a tomar a ação certa, no lugar certo, no momento certo.

Para obter detalhes, consulte Intellicode no Developer Community .

NuGet
A equipe NuGet está focada em fornecer suporte para o .NET 6, proteger a cadeia de
fornecedores de software e capacitar todos os desenvolvedores e sua equipe a
alcançarem mais por meio de um gerenciador de pacotes unificado, produtivo e
abrangente com excelentes conceitos básicos.

Para obter detalhes, consulte NuGet no Developer Community .

Instalação e Configuração
O foco da equipe de Instalação e Instalação está facilitando a capacidade das empresas
de permanecerem seguras implantando facilmente atualizações em ambientes
corporativos gerenciados. Estamos permitindo que as empresas usem várias pastas de
layout para atualizar uma instância do cliente, usar várias linhas de base com suporte e
mover suas instalações entre canais. Também estamos adicionando a capacidade de os
usuários reverterem Visual Studio para um ambiente de trabalho após uma atualização
com falha.

Para obter detalhes, consulte Visual Studio instalação e instalação no Developer


Community .

Controle de versão
Visual Studio 2022 continuará a inovar em ferramentas de controle do código-fonte
integradas. Estamos melhorando a produtividade dando suporte a fluxos de trabalho git
mais complexos, como ativar simultaneamente vários repositórios Git. Os
desenvolvedores poderão estágio de linhas individuais ou decodados de código e ver
diferenças e detalhes aprimorados. Também estamos melhorando a integração GitHub e
Azure DevOps, aproximando a funcionalidade do fluxo de trabalho do desenvolvedor.

Para obter detalhes, consulte Visual Studio git experience on Developer Community

C++
A equipe do C++ se concentra na inovação da carga de trabalho por meio da
conformidade, do diagnóstico e da segurança da linguagem. Visual Studio 2022
adicionará suporte para recursos de linguagem C++20 que simplificam o
gerenciamento de grandes bases de código. Estamos integrando o suporte para CMake,
Linux e WSL para facilitar a criação e depuração de aplicativos de plataforma cruzada.

Para obter detalhes, consulte C++ no Developer Community

.NET
A equipe do .NET se concentra em uma experiência moderna de desenvolvimento de
aplicativos, melhorando o suporte ao .NET 5 e adicionando suporte ao .NET 6. Também
estamos nos concentrando na produtividade com assistência de código interno. Por fim,
estamos trabalhando em uma experiência completa de designer para Windows Forms
com o .NET 5.

Para obter detalhes, consulte .NET no Developer Community .

Ferramentas de Contêiner
A equipe de Ferramentas de Contêiner se concentra em melhorar a experiência para
desenvolvedores do .NET que estão criando aplicativos em contêineres. Nosso foco
principal será melhorar a capacidade de diagnosticar aplicativos em contêineres usando
a janela de ferramentas Contêineres.

Roteiros relacionados
Para outros roteiros relacionados ao .NET, consulte:

Agenda de lançamento do .NET


Lançamentos e planejamento do EF Core
ML.NET
Temas do .NET .

WinForms
A equipe está trabalhando para melhorar a confiabilidade e o desempenho do novo
designer para aplicativos WinForms do .NET Core/.NET 5/.NET 6, corrigindo problemas
de HighDPI, implementando novos cenários de associação de dados e abordando os
comentários dos clientes.

Para obter detalhes, confira:

Roteiro do WinForms
Roteiro do Designer do WinForms

Ferramentas da Web
A equipe de Ferramentas da Web está focada em melhorar o processo de
desenvolvimento para a Web no .NET usando os serviços de desenvolvedor do Azure.
Estamos melhorando a configuração de dependência, expandindo as opções de
hospedagem do Azure para publicação e otimizando o armazenamento.

Para obter detalhes, confira:

Ferramentas da Web no Developer Community


TypeScript no Developer Community

XAML e Xamarin
A equipe XAML está trabalhando para melhorar a produtividade dos desenvolvedores,
como o XAML Live Preview, a recarga a quente de XAML e C# , etc. A equipe do
XAMARIN está criando uma nova interface do usuário de aplicativo multiplataforma do
.NET (.NET MAUI ) que já está disponível como um recurso de visualização e permite
criar aplicativos cliente nativos para Windows, macOS, iOS e Android com uma única
base de código. Estamos finalizando o conjunto de recursos e trabalharemos para
melhorar a qualidade e lidar com os comentários dos clientes.

Para obter detalhes, confira:

.NET MAUI roteiro


Xamarin no Developer Community
XAML em Developer Community
Canais do Visual Studio e Ritmo de
lançamento
Artigo22/01/2024

 Dica

Assista às gravações do evento de lançamento do Visual Studio 2022 para


saber mais sobre as novidades, ouvir dicas e truques e baixar ofertas digitais
gratuitas.

Developer Community | Roteiro do Visual Studio 2022 | Requisitos do sistema |


Compatibilidade | Código distribuível | Histórico do versões | Termos de licença |
Blogs | Problemas conhecidos da versão mais recente | O que há de novo no Visual
Studio Docs

Aprimoramos continuamente os recursos do Visual Studio com atualizações regulares


de versões secundárias de acordo com nosso Roteiro de recursos futuros. Introduzimos
esses novos recursos e correções de bugs primeiro no Canal de Versão prévia para que
você possa fornecer comentários antecipados. Quando esses novos recursos estiverem
prontos para uso generalizado, nós colocaremos as versões no Canal Atual. Às vezes,
também incluímos Versões Prévias dos Recursos no Canal Atual, dando a você a
oportunidade de experimentar novos recursos e compartilhar seus comentários sem
fazer outra instalação. Por fim, oferecemos os LTSC (Canais de Manutenção em Longo
Prazo) para dar à sua equipe de desenvolvimento mais controle sobre quando adotar
novas versões de recursos.

Esta página explica nosso ritmo de lançamento de versões prévias, Versões prévias dos
recursos, versões, correções de manutenção, suporte em longo prazo e como você pode
fornecer comentários sobre as versões com os recursos e correções.

Você pode controlar quando adotar atualizações de recursos selecionando um canal. Há


três opções para instalar e atualizar o Visual Studio. Você pode ter qualquer combinação
delas em um único computador:

1. Canal Atual
2. Canal de Versão prévia
3. Canais de Manutenção em Longo Prazo
(Figura 1) Canais do Visual Studio e Cadência de Versões

Determinação da edição, versão e canal do seu


produto
Você pode determinar qual edição, canal e versão da atualização do Visual Studio que
está usando abrindo Ajuda > Sobre. A edição e o canal serão indicados por, por
exemplo, "Visual Studio Professional 2022 Canal Atual". O número da versão indicará a
versão principal do Visual Studio usando o primeiro número ("17"), a versão de
atualização secundária usando o segundo número ("17.1") e a atualização de
manutenção usando o terceiro número ("17.1.5"). Se você estiver usando o Canal de
Versão prévia, a versão de versão prévia também será indicada após o número da
versão ("17.2.0 Versão prévia 2.0").

Instalação, atualização e comutação de canais


Você pode selecionar um canal instalando uma versão do Visual Studio a partir desse
canal ou, em alguns casos, configurando o local de origem para atualizações. Se a
instalação for gerenciada pelo administrador de TI, ele também poderá controlar a
seleção de canal. As seções abaixo têm um link para o local de instalação de cada canal.

Você pode instalar vários canais lado a lado no mesmo computador. Por exemplo, você
pode instalar e usar o Canal de Versão prévia lado a lado com o Canal Atual. Observe
que alguns componentes compartilhados, por exemplo, o SDK do Windows, são usados
por todos os canais em um computador e serão atualizados para qualquer canal que
tenha a versão mais recente.

As atualizações são entregues independentemente para cada canal, e você receberá


uma notificação separada dentro de cada instância do Visual Studio se houver uma
atualização disponível em seu canal. Você também pode atualizar cada canal usando o
Instalador do Visual Studio.
Canal Atual
O Canal Atual mantém você atualizado com os recursos prontos para uso
generalizado na produção convencional. As atualizações lançadas para o Canal Atual se
enquadram nas duas categorias a seguir:

As Atualizações Secundárias são enviadas a cada três meses para o Canal Atual,
após serem disponibilizadas no Canal de Versão Prévia. Essas atualizações podem
incluir novos recursos, correções de bug e alterações para se adaptar às alterações
da plataforma (por exemplo, alterações no Windows, no Azure, no Android ou no
iOS).
Atualizações de Manutenção são versões de correções direcionadas para
problemas críticos de qualidade, desempenho, confiabilidade ou segurança.

Interrompemos a manutenção de uma atualização de versão secundária no Canal Atual


quando a próxima atualização de versão secundária for lançada. Por exemplo, não
forneceremos atualizações de manutenção adicionais para a versão 17.1 após o
lançamento da versão 17.2.

Anunciamos pequenas atualizações por meio do blog do Visual Studio . Todas as


atualizações secundárias e de manutenção são acompanhadas por Notas sobre a versão
do Canal Atual. O Visual Studio também alerta que uma nova atualização está disponível
pelo ícone de notificação no canto inferior direito do IDE, por meio de uma entrada no
hub de notificação e por texto no Instalador do Visual Studio.

Quando você atualizar sua instalação do Visual Studio no Canal Atual, receberá a
atualização de manutenção mais recente para a atualização secundária mais recente
disponível.

Além disso, a versão secundária final lançada para uma versão principal do Visual Studio
será designada como a versão LTSC final e terá suporte durante o ciclo de vida do
suporte da versão principal. Os usuários do Canal Atual não precisam instalar ou alternar
para um canal diferente para permanecer sob suporte. Basta instalar a atualização
secundária final e, em seguida, manter-se atualizado com as atualizações de
manutenção. Para obter mais informações, confira Manutenção e Ciclo de Vida do
Produto Visual Studio.

RC (versão Release Candidate)


Antes da Disponibilidade geral do Visual Studio 2022, fornecemos uma ou mais
compilações do Release Candidate (RC) no Canal Atual. Você pode instalar o RC a partir
de visualstudio.microsoft.com/downloads . Você pode usar o Visual Studio 2022 RC em
seu trabalho diário, incluindo a liberação de aplicativos compilados com ele. O RC
requer uma licença para usar o Visual Studio. Para Community, pedimos que você entre
no Visual Studio com uma Conta Microsoft. As edições Professional e Enterprise exigem
uma Assinatura do Visual Studio ou uma chave do produto. Você também pode avaliar
as edições Professional e Enterprise sem uma assinatura ou chave do produto (Product
Key) por 30 dias, com uma extensão de 60 dias (uma vez por conta), se entrar com uma
conta Microsoft ou corporativa ou de estudante. Assim que o Visual Studio 2022 versão
17.0 for lançado, atualize para permanecer sob suporte.

Canal de Versão Prévia


O Canal de Versão prévia destina-se àqueles que estão ansiosos para experimentar
os recursos e correções mais recentes do Visual Studio. Ele fornece uma prévia uma vez
por mês do que está por vir na próxima atualização de versão secundária do Canal
Atual. Você pode aprender sobre os recursos e correções nas Notas sobre a versão do
Canal de Versão prévia . Também anunciamos a disponibilidade de uma nova versão do
Canal de Versão prévia por meio do blog do Visual Studio .

Normalmente, enviamos cerca de três versões de versão prévia no Canal de Versão


prévia antes que os novos recursos sejam enviados para o Canal Atual. Às vezes,
também lançamos atualizações de manutenção para o Canal de Versão prévia. É
possível instalar as versões do Canal de Versão Prévia e do Canal Atual do Visual Studio
lado a lado no mesmo computador. A qualquer momento, o Canal de Versão Prévia
conterá os mesmos recursos ou recursos e correções mais novos em comparação com o
Canal Atual. O Visual Studio notificará você à medida que versões mais recentes
estiverem disponíveis para instalação.

Embora as versões prévias não se destinem ao uso na produção, elas terão em um nível
de qualidade suficiente para que você as use de maneira geral e forneça comentários.
Oferecemos manutenção apenas para a versão prévia mais recente. Para obter mais
informações, confira Manutenção e Ciclo de Vida do Produto Visual Studio.

Recursos de visualização
Embora o Canal de Versão prévia seja recomendado para experimentar novos recursos,
também incentivamos os usuários no Canal Atual a experimentar novos recursos por
meio das Versões prévias dos recursos. As Versões prévias dos recursos diferem do
Canal de Versão prévia porque cada recurso específico pode ser ativado ou desativado.
A caixa de diálogo Versões prévias dos recursos inclui a descrição de cada recurso para
ajudá-lo a determinar se o recurso é relevante para você. Além disso, esperamos que
você forneça comentários sobre esses recursos para que possamos melhorá-los antes
que sejam implementados para todos os clientes.

Você pode ativar ou desativar as Versões prévias dos recursos acessando Ferramentas >
Gerenciar Versões Prévias dos Recursos. Às vezes, também executamos experimentos
com Versões Prévias dos Recursos, ativando-os para uma parte dos clientes para
comparar o impacto com um grupo de controle.

Canais de Manutenção em Longo Prazo (LTSC)


Incentivamos todos a adotar as atualizações o quanto antes. No entanto, reconhecemos
que talvez alguns clientes precisem usar um build anterior. Para usuários das edições
Professional, Enterprise e Ferramentas de Compilação, oferecemos LTSCs (Canais de
Manutenção em Longo Prazo) para dar aos administradores e grandes equipes de
desenvolvimento mais flexibilidade e controle na adoção de novas versões. Lançaremos
LTSCs duas vezes por ano junto com lançamentos de versões secundárias de número
par, por exemplo, 17.0 e 17.2. Os novos recursos e correções de bugs incluídos em uma
versão LTSC correspondem à mesma versão secundária lançada no Canal Atual. Novos
recursos não serão adicionados a um LTSC depois que ele for lançado. As versões LTSC
permitem que as equipes permaneçam com suporte em uma versão secundária com
correções de segurança e bugs por até 18 meses após o lançamento. Haverá vários
LTSCs sob suporte em um determinado momento.

Quando você atualizar sua instalação do Visual Studio em um LTSC, receberá a


atualização de manutenção mais recente para essa mesma versão LTSC. Para atualizar
de uma versão LTSC para outra, por exemplo, do LTSC 17.0 para o LTSC 17.2, selecione a
nova versão LTSC na caixa de diálogo Configurações de Atualização. Depois que o ciclo
de vida de suporte terminar para o LTSC atual, você deverá alternar seu canal para um
LTSC que ainda esteja sob suporte ou para o Canal Atual. A atualização secundária final
para uma versão principal do Visual Studio terá suporte para o restante do ciclo de vida
do produto de 10 anos. Para obter mais informações, confira Manutenção e Ciclo de
Vida do Produto Visual Studio.

Notificações de atualização
Você receberá notificação de atualizações para o Visual Studio em execução no
momento por meio do ícone de notificação no IDE, por meio de postagens no blog do
Visual Studio e do Instalador do Visual Studio. As notas sobre a versão do Canal Atual e
LTSC e as notas sobre a versão do Canal de Versão Prévia documentarão os recursos e
as correções disponíveis nessa versão para ajudar você a tomar uma decisão informada
sobre quando instalá-la. Por fim, atualizaremos todos os itens de comentários relevantes
no portal da Comunidade de Desenvolvedores informar em qual versão um problema
foi corrigido.

Comentários e sugestões
Adoraríamos ouvir o que você tem para nos dizer! Você pode Relatar um problema ou
sugerir um recurso usando o ícone Enviar Comentários no canto superior direito do
instalador ou do IDE do Visual Studio ou em Ajuda > Enviar Comentários. Você pode
acompanhar seus problemas usando a Visual Studio Developer Community , em que
você adiciona comentários ou encontra soluções. Você também pode obter ajuda
gratuita com a instalação por meio de nosso suporte via chat ao vivo .
Novidades no Visual Studio 2022
Artigo • 14/11/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Atualizado para a versão 17.8. Ver todas as notas sobre a versão | Ver o roteiro do
produto

Baixar o Visual Studio 2022

Com o Visual Studio 2022 , você sempre obterá os melhores serviços e ferramentas do
mercado disponíveis para qualquer desenvolvedor, qualquer aplicativo e qualquer
plataforma. Há vários recursos interessantes na versão mais recente do Visual Studio
para usuários iniciantes ou experientes.

Deseja ver as novidades em cada versão atualizada dentro do próprio Visual Studio?
Agora é possível. Na barra de menus, selecione Ajuda>Novidades para ver os
destaques recentes.


 Dica

Para mais notícias e instruções, confira os canais de mídia social do Visual Studio no
LinkedIn , no YouTube , no Facebook , na Twitch , no Twitter e no
&TikTok . E para receber as informações mais recentes sobre novos lançamentos,
experimentos atuais e o que está em Versão Prévia, visite o Blog do Visual
Studio.

Desenvolvimento assistido por IA


Com uma assinatura do GitHub Copilot, você pode obter respostas às perguntas e
consultar uma IA enquanto codifica. O Visual Studio 2022 versão 17.4 e posteriores
incluem integração com GitHub Copilot, e a versão 17.6 e posteriores também dão
suporte para o Chat do GitHub Copilot. Consulte Desenvolvimento assistido por IA.

Melhorias de desempenho
O Visual Studio 2022 é mais rápido, mais acessível, mais leve e foi projetado tanto para
os que estão aprendendo quanto para aqueles que criam soluções de escala industrial.
Além disso, continuamos a focar no desempenho a cada versão iterativa. Para saber
mais, confira a postagem do blog Visual Studio 2022 – Melhorias de desempenho da
17.5 .

O Visual Studio 2022 é de 64 bits


O Visual Studio 2022 no Windows agora é um aplicativo de 64 bits. Isso significa que
você pode abrir, editar, executar e depurar até mesmo as soluções maiores e mais
complexas sem ficar sem memória. Para saber mais, confira as postagens no blog Visual
Studio 2022 Vision e Visual Studio 2022 17.0 Preview .

O recurso Localizar nos Arquivos está mais rápido


No Visual Studio 2022 , nos concentramos em aprimorar o desempenho de vários
recursos importantes. Por exemplo, o recurso Localizar nos Arquivos agora está até 3
vezes mais rápido ao pesquisar soluções grandes, como Orchard Core .
Novidade na 17.1 : com a nova pesquisa indexada, o recurso Localizar nos Arquivos
está ainda mais rápido! Para obter mais informações, confira a postagem no blog Code
search in Visual Studio 2022 is about to get much faster (A pesquisa de código no
Visual Studio 2022 está prestes a se tornar muito mais rápida) .

Novo no 17.8 : economize tempo com a pesquisa de preservação de maiúsculas e


minúsculas e substitua. Consulte Substituir em arquivos – Preservar maiúsculas e
minúsculas.

 Dica

Para saber mais sobre as alterações atuais e futuras na experiência de pesquisa no


Visual Studio 2022, confira a postagem no blog Sneak Peek and Edit Your Code
While You Search (Dê uma olhadinha e edite seu código enquanto pesquisa) .

As ferramentas do Git são mais rápidas


Novo no 17.8 , você pode criar uma solicitação de pull do IDE do Visual Studio. Além
disso, experimente a nova exibição de resumo para difusões, para facilitar o foco no que
mudou.

Novidade na 17.2 : integramos um recurso relativamente novo do Git chamado gráfico


de commit , o que ajuda a aprimorar o desempenho das operações do Git e o
desempenho do próprio Visual Studio. Para ver as informações mais recentes, consulte a
postagem no blog Supercharge your Git experience in Visual Studio 2022 (Turbinar sua
experiência com o Git no Visual Studio 2022) .
Criar aplicativos modernos
O Visual Studio 2022 torna rápido e fácil a criação de aplicativos modernos baseados
em nuvem com o Azure. Além disso, nossa nova versão também tem suporte total para
o .NET e sua estrutura unificada para aplicativos Web, clientes e móveis para
desenvolvedores do Windows e do Mac. Além disso, o Visual Studio 2022 inclui suporte
robusto para a carga de trabalho do C++ com novos recursos de produtividade,
ferramentas do C++20 e o IntelliSense.

 Dica

Para saber mais sobre o .NET 7, o sucessor do .NET 6, confira Novidades no .NET 7.

Melhores ferramentas de desenvolvimento para C++ e


.NET e a Recarga Dinâmica
O Visual Studio 2022 inclui melhores ferramentas de desenvolvimento para aplicativos
multiplataforma e a versão mais recente das ferramentas de build do C++ para incluir o
suporte ao C++20.

Além disso, estamos atualizando a Recarga Dinâmica para que você possa editar
projetos C++ ou .NET enquanto o aplicativo está em execução. Para obter mais
informações, confira a postagem no blog Speed up your .NET and C++ development
with Hot Reload in Visual Studio 2022 (Acelerar o desenvolvimento do .NET e do C++
com a Recarga Dinâmica no Visual Studio 2022) e a página Escrever e depurar
código em execução com a Recarga Dinâmica no Visual Studio com C#, C++ ou Visual
Basic do Docs.

Atualizações nos editores do Blazor & Razor e Recarga


Dinâmica para ASP.NET
O Visual Studio 2022 inclui uma grande atualização para os editores do Blazor e
Razor e novos recursos para a Recarga Dinâmica no ASP.NET Core, incluindo Recarga
Dinâmica quando você salva um arquivo ou quando aplica alterações em arquivos CSS
ao vivo!
Inovação ao seu alcance
Desde ferramentas de colaboração assíncrona & em tempo real até insights
aprimorados e ferramentas de produtividade que se integram perfeitamente ao seu
fluxo de trabalho diário, o Visual Studio 2022 tem isso e muito mais.

Suporte a vários repositórios do Git e suporte ao preparo


de linhas
Novidade na 17.4 : se você trabalhou com projetos hospedados em diferentes
repositórios Git, talvez tenha usado ferramentas externas ou várias instâncias do Visual
Studio para se conectar a eles. Agora, você pode trabalhar com uma única solução que
tenha projetos em vários repositórios e contribuir com todos eles por meio de uma
única instância do Visual Studio. Para saber mais, confira as postagens no blog Multi-
repo support in Visual Studio (Suporte a vários repositórios no Visual Studio) e
Multi-repository support released (Lançamento do suporte a vários repositórios) ,
juntamente com a página Trabalhar com vários repositórios.

Novidade na 17.3 : adicionamos suporte de preparo de linha, também conhecido


como preparo interativo . Agora, você pode preparar partes de alterações em seus
arquivos diretamente no editor de código ou dividir as alterações em commits
diferentes. Para obter mais informações, consulte a página Preparar linhas de código
no Visual Studio.

Melhorias do IntelliCode
Preenchimento de linha inteira: no Visual Studio 2022, o recurso IntelliCode agora
pode preencher automaticamente o código de até uma linha inteira por vez. Para
obter detalhes, consulte a postagem no blog Type less, code more with
IntelliCode completions (Digite menos, escreva mais código com
preenchimentos do IntelliCode) .

Recomendações de Ações Rápidas: o IntelliCode agora pode detectar quando


você está executando uma tarefa comum e recomendar a Ação Rápida correta,
preenchendo-a corretamente enquanto você está digitando. Para saber mais,
confira a postagem no blog Discover quick actions for common tasks as you
type, with IntelliCode (Descobrir ações rápidas para tarefas comuns enquanto
você digita com o IntelliCode) .

Projetando para todos


Estamos atualizando a interface do usuário para ajudar você a se manter em seu fluxo.
Algumas das alterações incluem toques estéticos que modernizam a interface do
usuário ou reduzem a aglomeração.

Ver & sentir


Da nova iconografia aos ajustes sutis de taxa de contraste de cores e uma nova fonte
Cascadia Code , estamos trabalhando para tornar o Visual Studio 2022 mais acessível
para todos. Para conhecer todos os detalhes, consulte a postagem no blog We’ve
upgraded the UI in Visual Studio 2022 (Nós atualizamos a interface do usuário no
Visual Studio 2022) .

Personalização
Uma de nossas principais áreas de foco é tornar o Visual Studio mais personalizado e
flexível para que você possa deixar o IDE de acordo com seu gosto. Por exemplo, o
Visual Studio 2022 oferece a capacidade de sincronizar com o tema do Windows.
Portanto, se você habilitou o recurso "luz noturna" lá, o Visual Studio também o usará.
Para obter mais informações, consulte a postagem no blog Personalize your Visual
Studio 2022 (Personalizar seu Visual Studio 2022) .

 Dica

Para saber mais sobre as últimas guias e atualizações de documentos no Visual


Studio 2022, confira a postagem no blog Improved doc management
personalization (Personalização de gerenciamento de documentos
aprimorada) .

O que vem a seguir


Quer saber mais sobre o que estamos planejando para o Visual Studio 2022? Veja a
página Roteiro, as notas sobre a versão prévia e o Blog do Visual Studio para obter
detalhes.

Fornecer comentários
Por que enviar comentários à equipe do Visual Studio? Porque nós levamos a sério os
comentários dos clientes. Eles motivam muito do que fazemos.

Se quiser fazer sugestões sobre como podemos melhorar o Visual Studio, você
poderá fazer isso usando a ferramenta Sugerir um Recurso.

Se você tiver um problema em que o Visual Studio parar de responder, falhar ou


outros problemas de desempenho, poderá compartilhar facilmente as etapas de
reprodução e os arquivos de suporte conosco usando a ferramenta Relatar um
Problema.

Próximas etapas
Examine as seguintes postagens no blog para saber mais sobre os aprimoramentos que
fizemos no Visual Studio 2022 até o momento:

O Visual Studio 2022 17.7 já está disponível


O Visual Studio 2022 17.6 já está disponível
O Visual Studio 2022 17.5 já está disponível
O Visual Studio 2022 17.4 já está disponível
O Visual Studio 2022 17.3 já está disponível
O Visual Studio 2022 17.2 já está disponível
O Visual Studio 2022 17.1 já está disponível
Ciclo de vida e manutenção de
produtos do Visual Studio
Artigo22/01/2024

 Dica

Assista às gravações do evento de lançamento do Visual Studio 2022 para


saber mais sobre as novidades, ouvir dicas e truques e baixar o ofertas digitais
gratuitas.

Developer Community | Roteiro do Visual Studio 2022 | Requisitos do sistema |


Compatibilidade | Código distribuível | Histórico do versões | Termos de licença |
Blogs | Problemas conhecidos da versão mais recente | O que há de novo no Visual
Studio Docs

O Visual Studio 2022 segue a Política de Ciclo de Vida Fixa do Produto da Microsoft de
10 anos. Os primeiros 5 anos de Suporte Mainstream fornecem novos recursos,
atualizações de plataforma, atualizações de segurança, correções de funcionalidade e
melhorias de qualidade. O segundo 5 anos de suporte estendido fornece apenas
atualizações de segurança. Componentes e ferramentas incluídos com ou dependentes
pelo Visual Studio podem ter diferentes políticas de ciclo de vida, manutenção e
suporte.

O Visual Studio é atendido por meio de atualizações de recursos de versão secundária


que incluem novos recursos significativos e atualizações de plataforma e por meio de
atualizações de segurança ou manutenção que fornecem correções de bug cumulativas
direcionadas para recursos existentes no produto. Correções de segurança são enviadas
em todos os tipos de atualizações. As atualizações de recursos são indicadas por uma
alteração no número de versão secundária, como 17.3 para 17.4, e as atualizações de
segurança e manutenção são indicadas por uma alteração no número de versão de
manutenção, como 17.2.3 para 17.2.4. Essas atualizações estão disponíveis no Canal
Atual e nos LTSC (Canais de Manutenção de Longo Prazo). Para obter mais informações
sobre nossos canais e atualizações, consulte Canais do Visual Studio e Ritmo de
Lançamento.

Para obter a melhor e mais segura experiência do produto, incentivamos e


recomendamos que todos os clientes sempre usem a versão mais segura do Visual
Studio no canal de atualização escolhido.

Informações adicionais
Para obter uma lista completa das datas do ciclo de vida do produto, consulte o
site do Ciclo de Vida da Microsoft.
Informações do ciclo de vida do produto do Visual Studio 2019
Política de manutenção do Visual Studio para Mac

Como obter as atualizações


O Visual Studio 2022 notificará você de que uma atualização está disponível exibindo
um ícone de notificação na barra de status do IDE ou um aviso no Instalador do Visual
Studio. Você também pode baixar a atualização recomendada mais recente do
VisualStudio.com ou do Catálogo da Microsoft . Os administradores de TI também
podem configurar computadores em sua organização para baixar e aplicar
automaticamente as atualizações de segurança do administrador que são lançadas
mensalmente. Com o Visual Studio 2022, as notificações agora são específicas para o
canal de atualização. Por exemplo, se você configurou o Visual Studio para obter
atualizações do canal 17.2 LTSC, será notificado de uma atualização somente se a
atualização mais recente disponível nesse canal afetar um componente que você
instalou.

Suporte à edição da comunidade


A edição do Visual Studio Community tem suporte apenas no Canal Atual com a versão
de manutenção mais recente da versão secundária mais recente do Visual Studio. Você
pode instalar a versão mais recente do Visual Studio Community de
visualstudio.microsoft.com/downloads ou my.visualstudio.com .

Suporte ao Canal Atual


O Canal Atual permite que as equipes permaneçam compatíveis com a versão de
manutenção mais recente da versão secundária mais recente de todas as edições do
Visual Studio 2022. Você pode instalar a versão secundária mais recente atendida dessas
edições a partir https://visualstudio.microsoft.com/downloads ou
my.visualstudio.com .

Suporte a edições Enterprise, Professional e


Build Tools
As edições Enterprise, Professional e Build Tools estão disponíveis no Canal Atual e nos
LTSCs (Canais de Manutenção de Longo Prazo).
Suporte ao LTSC (Canal de Manutenção de Longo Prazo)
Percebemos que, às vezes, grandes organizações não podem adotar nossas atualizações
de produtos tão rapidamente quanto as lançamos. Portanto, com as edições Visual
Studio Enterprise, Professional e Build Tools, oferecemos aos administradores e equipes
de desenvolvimento maiores mais flexibilidade e controle sobre como e quando eles
avançam sua organização para as atualizações mais recentes. Uma empresa pode optar
por configurar seus computadores cliente para obter atualizações de um dos canais
LTSC, o que permitirá que eles permaneçam seguros ao adiar as atualizações de
recursos para um ponto posterior. Cada versão secundária numerada uniforme é
declarada como LTSC e tem suporte e é mantida segura por 18 meses. A tabela abaixo e
o Banco de Dados de Ciclo de Vida de Suporte refletirão as datas apropriadas para o
suporte.

ノ Expandir a tabela

LTSC Data de Lançamento Fim do suporte Instalar Link

versão 14 de novembro de 8 de julho de 2025 Histórico de


17.8 2023 versões

versão 16 de maio de 2023 terça-feira, 14 de janeiro de 2025 Histórico de


17.6 versões

versão 8 de novembro de 2022 9 de julho de 2024 Histórico de


17.4 versões

versão 10 de maio de 2022 9 de janeiro de 2024 Histórico de


17.2 versões

versão 8 de novembro de 2021 11 de Janeiro de 2023 (sem Histórico de


17.0 suporte) versões

Os clientes que optarem por permanecer em uma linha de base de manutenção


específica poderão encontrar a última versão dessa linha de base em
My.VisualStudio.com ou no Catálogo da Microsoft . As diretrizes de implantação,
configuração e aquisição podem ser encontradas no Guia de Administrador do Visual
Studio")
7 Observação

Consulte as informações de controle de versão do SDK do .NET, do MSBuild e do


Visual Studio para obter quadros de tempo de suporte específicos do SDK do .NET
e como ele se relaciona com o Visual Studio e o MSBuild.

Opções adicionais de instalação e atualização


Além dos bootstrappers que estão disponíveis no site do Visual Studio que sempre
instalam a versão mais recente no Canal Atual, oferecemos outras maneiras de instalar
versões específicas das edições Enterprise, Professional e Build Tools. Diretrizes
adicionais de implantação, configuração e aquisição podem ser encontradas no Guia do
Administrador do Visual Studio. Além das versões LTSC, não oferecemos suporte ou
manutenção para versões mais antigas do Visual Studio 2022.

Você pode criar e manter sua própria instalação de rede do Visual Studio (também
conhecido como layout) e armazená-la localmente ou em um compartilhamento
de rede.
Todas as atualizações de versão e manutenção secundárias estarão disponíveis no
Catálogo da Microsoft se você quiser atualizar sua instalação ou seu cache de
instalação offline para uma versão específica.
A página Histórico de Versões do Visual Studio 2022 fornece links diretos para os
bootstrappers para cada versão secundária e versão de manutenção que você
pode usar para instalar ou atualizar.
A versão final de manutenção de cada LTSC estará disponível no portal de
Assinatura do Visual Studio .
Você pode instalar ou atualizar o Visual Studio 2022 usando a ferramenta winget
do Gerenciador de Pacotes do Windows.
Suporte ao RC (Release Candidate)
Os builds do RC (Release Candidate) são oferecidos no Canal Atual antes da
disponibilidade geral de uma versão principal. Você pode usar o RC em seu trabalho
diário, incluindo a liberação de aplicativos criados com ele. O RC requer uma licença
para usar o Visual Studio. Depois que a nova versão principal entrar em operação, você
precisará atualizá-la para permanecer sob suporte.

Suporte ao Canal de Visualização


As edições Visual Studio Community, Professional e Enterprise estão disponíveis no
Canal de Visualização . O canal Preview permite que você experimente novos recursos
antes de serem amplamente lançados. Embora o Canal de Visualização seja oferecido
"no momento", damos boas-vindas aos comentários sobre ele e incorporamos esses
comentários em novas compilações de visualização. Para obter mais informações sobre
o Preview Channel, consulte Canais do Visual Studio e Ritmo de Lançamento.

Versões mais antigas do Visual Studio


O Visual Studio 2019 e anteriores têm suporte por 10 anos. A tabela a seguir resume o
estado de suporte atual para produtos do Visual Studio.

ノ Expandir a tabela

Versão do Visual Estágio do ciclo de Linha de base com suporte Fim do


Studio vida suporte

Visual Studio 2019 Base versão 16.11 Abril de 2029

Visual Studio 2017 Estendido versão 15.9 Abril de 2027

Visual Studio 2015 Estendido Atualização 3, incluindo Outubro de


KB3165756 2025

Visual Studio 2013 Estendido Atualização 5 Abril de 2024

Visual Studio 2012 e Sem suporte


anterior

Microsoft Visual C++ redistribuível


Os Pacotes Redistribuíveis do Microsoft Visual C++ seguem o ciclo de vida do produto
para a versão do Visual Studio na qual ele é enviado pela primeira vez. Para referência,
veja a seguir uma lista das últimas versões compatíveis com os downloads do Visual C.

Existem algumas instâncias específicas em que continuamos a dar suporte aos Pacotes
Redistribuíveis do Microsoft Visual C++ além do ciclo de vida do produto do Visual
Studio subjacente somente para correções de segurança e apenas no contexto e no
período de tempo dos produtos da Microsoft que dependem dele. Uma dessas
instâncias é quando os Pacotes Redistribuíveis do Microsoft Visual C++ são distribuídos
em outros produtos da Microsoft, como SQL Server, Windows Server ou Microsoft
Office. Outra dessas instâncias é quando os Pacotes Redistribuíveis do Microsoft Visual
C++ são usados em conjunto com as versões com suporte do Visual Studio Tools para
Office ou do Visual Basic for Applications. Não damos suporte ao Microsoft Visual C++
Redistribuível para aplicativos de terceiros além do ciclo de vida subjacente do Visual
Studio ou o que é mencionado acima especificamente.

7 Observação

Talvez alguns produtos de terceiros, como scanners de segurança, sinalizem os


Pacotes Redistribuíveis como expirados. Se os Pacotes Redistribuíveis do Microsoft
Visual C++ forem instalados por um produto da Microsoft que ainda tenha
suporte, o suporte ainda funcionará, de acordo com a política de componentes da
Microsoft para esse produto. Para obter suporte, entre em contato com a equipe
de suporte .

Conjunto de ferramentas do MSVC (C++)


Começando com o Visual Studio 2017, o Conjunto de ferramentas do MSVC, incluindo o
compilador do C++, segue o ciclo de vida do produto para a versão do Visual Studio na
qual ele é enviado pela primeira vez, mesmo que ele seja fornecido em uma versão
posterior do Visual Studio. Por exemplo, “MSVC v141 – ferramentas de build do C++
para VS 2017 x64/x86 (v14.16)” segue o ciclo de vida de suporte do Visual Studio 2017 e
“MSVC v142 – ferramentas de build do C++ para VS 2019 x64/x86 (v14.20)” segue o
ciclo de vida do Visual Studio 2019. Para o Visual Studio 2015 e anteriores, há suporte
para o conjunto de ferramentas do Visual C++ de acordo com o ciclo de vida da versão
do Visual Studio na qual ele foi enviado.

Ferramentas do Visual Studio para Office


Runtime
O Visual Studio 2010 Tools for Office Runtime (VSTO Runtime) que é fornecido com o
Visual Studio, versão 10.0.50903, segue o ciclo de vida de suporte do Visual Studio. Se
você instalou o Microsoft Office em seu computador de desenvolvimento, uma versão
mais recente do VSTO Runtime poderá ser instalada e usada. Você também pode baixar
e usar versões mais recentes do VSTO Runtime com o Visual Studio. Recomendamos
que os desenvolvedores instalem a versão mais recente do VSTO Runtime com seus
aplicativos. Ele terá suporte ao executar com versões com suporte do Office. Se o
Runtime do VSTO precisar ser atendido, somente a versão mais recente será atualizada.
Para obter mais informações, consulte a Política de Ciclo de Vida das Ferramentas do
Visual Studio para Office Runtime. Para obter mais informações sobre o ciclo de vida de
suporte do Office, consulte perguntas frequentes sobre o ciclo de vida – Office, Office
365 e Microsoft 365.

Componentes não cobertos pela manutenção


do Visual Studio
O Visual Studio inclui um conjunto de compiladores, linguagens, runtimes, ambientes e
outros recursos ou ferramentas que permitem o desenvolvimento para várias
plataformas. Como uma conveniência para os clientes do Visual Studio, os componentes
da lista abaixo podem ser instalados com o Visual Studio e estão sujeitos às suas
próprias políticas de licença e manutenção, suporte e ciclo de vida. Observe que esta
lista não representa toda a lista de componentes usados pelo Visual Studio que são
controlados por sua própria política, mas tem o objetivo de destacar os mais usados.

Durante o período em que esses componentes ainda têm suporte em seus respectivos
quadros de tempo de suporte, a equipe do Visual Studio examinará todos os CVEs
emitidos em relação a esses componentes, determinará se eles constituem uma
vulnerabilidade para o uso do Visual Studio e abordará a vuneralibidade
adequadamente de acordo com a política de suporte do Visual Studio. Quando esses
componentes não tiverem mais suporte, eles serão acrescentados com o rótulo "(sem
suporte)" na interface do usuário do instalador e você poderá removê-los durante a
próxima atualização usando a funcionalidade Remover componentes fora de suporte.
Clique aqui para obter uma listagem de todos os componentes que já fizeram a
transição para ficarem sem suporte.

Para os componentes da Microsoft que são instalados pelo Visual Studio e não têm uma
política de ciclo de vida explícita no banco de dados do ciclo de vida, a versão
compatível é a última versão que está atualmente disponível para download.

ノ Expandir a tabela
Compiladores e Runtimes e Outros recursos Outros recursos
linguagens ambientes

.NET Core Microsoft Azure NDK do Android Miniconda

.NET Framework Exchange SDK do Android mingit

Pilha da Web Office Application Insights Ninjam


ASP.NET

CMake SQL Server Criador do Cocos Online Services

Entity Framework Unreal Engine Dotfuscator Community Edition SignalR

Python Estrutura de Git para Windows Ferramentas Unity


Otimização da para Visual Studio
Web

SharePoint Windows IncrediBuild WebGrease

TypeScript Windows Server Manipulador de Token da Web SDK do Windows


JSON para o Microsoft .Net
Framework

Xamarin NuGet

Ferramentas e modelos para componentes


Quando o Visual Studio fornece ferramentas e modelos que dependem de um
componente, o ciclo de vida e a política de suporte para a ferramenta seguirão a política
de suporte para o componente. Por exemplo, as ferramentas do .NET Core 6 seguirão a
política de suporte do .NET Core 6.

Comentários e sugestões
Adoraríamos ouvir o que você tem para nos dizer! Você pode Relatar um problema ou
sugerir um recurso usando o ícone Enviar Comentários no canto superior direito do
instalador ou do IDE do Visual Studio ou em Ajuda > Enviar Comentários. Se você for
um Administrador de TI e não tiver o Visual Studio instalado, poderá enviar comentários
de Administração de TI aqui . Você pode acompanhar seus problemas usando a Visual
Studio Developer Community , em que você adiciona comentários ou encontra
soluções. Você também pode obter ajuda gratuita com a instalação por meio de nosso
suporte via chat ao vivo .
O que é o Microsoft Help Viewer?
Artigo • 08/12/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Você pode usar o Microsoft Help Viewer para instalar, visualizar e gerenciar instalações
locais de documentação para produtos e tecnologias da Microsoft em computadores
locais. Esses produtos incluem o Visual Studio, o .NET, referências de idioma, o SQL
Server e desenvolvimento para Windows.

Com o Help Viewer, você, e todos os usuários compatíveis, poderão:

Baixar a documentação, também conhecida como livros. Isso será útil sempre que
você quiser acessar a documentação enquanto estiver trabalhando offline.

Pesquisar e localizar tópicos por meio do sumário, do índice de livros ou até


mesmo de uma pesquisa de texto completo.

Visualizar tópicos, adicioná-los aos favoritos e imprimi-los.

Introdução
Para instalar o Help Viewer, confira Instalação do Microsoft Help Viewer.

Para começar a ler os tópicos no Help Viewer em vez de fazer isso online, acesse o
menu Ajuda no Visual Studio e, em seguida, escolha Definir Preferência de
Ajuda>Iniciar no Help Viewer.

 Dica

Outra maneira de baixar conteúdo localmente para que você possa exibi-lo quando
não houver conexão de Internet é baixar uma versão em PDF. Muitos conjuntos de
documentação no Microsoft Learn incluem um link na parte inferior do sumário
para baixar um arquivo PDF contendo todos os artigos do sumário em questão.

Procure o seguinte link:

Faça um tour pela janela do Help Viewer


Você pode encontrar informações no conteúdo instalado usando as guias de
navegação, exibir o conteúdo instalado na guia ou nas guias do tópico e gerenciar o
conteúdo usando a guia Gerenciar Conteúdo. Também é possível executar tarefas
adicionais usando os botões na barra de ferramentas e encontrar informações adicionais
no canto inferior direito da janela.

As informações a seguir descrevem a configuração padrão do Help Viewer. Você


também pode personalizar o layout e as configurações.

Guias de navegação

ノ Expand table

Tab Descrição

Sumário Exibe o conteúdo instalado como uma hierarquia (sumário). Você pode especificar
critérios para filtrar os títulos que aparecem.

Índice Exibe uma lista alfabética de termos indexados. Você pode pesquisar no índice,
especificar critérios para filtrar as entradas e exigir que entradas de índice contenham
ou comecem com o texto que você especificar.

Favoritos Você pode marcar os tópicos como "favoritos" escolhendo o botão Adicionar aos
Favoritos, e os tópicos aparecem nesta guia. A seção Histórico exibe uma lista de
tópicos exibidos recentemente.

Pesquisar Oferece uma caixa de texto em que você pode pesquisar termos em qualquer lugar
no conteúdo, inclusive código e títulos de tópicos.

Exibir tópicos
Cada tópico aparece em sua própria guia e você pode abrir vários tópicos ao mesmo
tempo.

Gerenciar conteúdo
Você pode instalar, atualizar, mover e excluir conteúdo usando a guia Gerenciar
Conteúdo. Na parte superior da guia, use o controle do Código-fonte de instalação
para especificar se deseja instalar livros de um local da rede ou de um disco ou URI. A
caixa Caminho do repositório local mostra o local em que os livros são instalados no
computador local, e você pode movê-los para um local diferente escolhendo o botão
Mover.
A lista de conteúdo mostra quais livros você pode instalar ou já instalou, se uma
atualização está disponível e o tamanho de cada livro. Você pode instalar ou remover
um ou mais livros escolhendo os links Adicionar ou Remover apropriados e, em
seguida, escolhendo o botão Atualizar no painel Alterações pendentes. Se houver
atualizações disponíveis para quaisquer livros que você já tenha instalado, você poderá
atualizar o conteúdo escolhendo o link Clique aqui para baixar agora na parte inferior
da janela. Além disso, todos os livros instalados são atualizados se há atualizações
disponíveis quando você instala livros adicionais.

7 Observação

A funcionalidade da guia Gerenciar Conteúdo poderá ser diferente se o


administrador do Help Viewer desativar esses recursos ou se não houver acesso à
Internet.

Atalhos do teclado
Localize a lista de atalhos de teclado no artigo "Atalhos de teclado no Help Viewer".

Botões da barra de ferramentas


A barra de ferramentas na janela do Help Viewer contém os seguintes botões:

ノ Expand table

Botões da barra de Descrições


ferramentas

Mostrar tópicos no Mostra o local do tópico na guia Sumário.


Sumário

Adicionar aos Adiciona o tópico ativo à guia Favoritos.


Favoritos

Localizar no tópico Realça o texto pesquisado no tópico ativo.

Imprimir Imprime ou mostra uma visualização do tópico ativo.

Opções do Mostra configurações como o tamanho em que o texto é exibido, quantos


Visualizador resultados da pesquisa são retornados, quantos tópicos devem ser
mostrados no histórico e se deve procurar atualizações online.

Gerenciar Conteúdo Ativa a guia Gerenciar Conteúdo.


Botões da barra de Descrições
ferramentas

Um triângulo Abre uma lista de guias, incluindo guias de tópico e a guia Gerenciar
pequeno no lado Conteúdo. Você pode escolher um nome de guia para torná-la a guia
direito ativa.

Conteúdo relacionado
Instalação do Microsoft Help Viewer
Instalar conteúdo localmente
Implantar conteúdo para outras pessoas
Personalizar o layout e as configurações do Help Viewer
Sugerir uma funcionalidade para o
Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Introduzimos uma nova experiência para envio de sugestão de funcionalidades,


juntamente com a capacidade atual de relatar problemas na Comunidade de
Desenvolvedores do Visual Studio . Esta é uma nova maneira de poder interagir
diretamente com o fluxo de trabalho de engenharia do Visual Studio.

Envie também uma sugestão de funcionalidade diretamente no Visual Studio


escolhendo Enviar uma Sugestão no ícone Fornecer Comentários próximo ao canto
superior direito da janela principal do Visual Studio:

Ao escolher Enviar uma Sugestão, você será levado à Comunidade de


Desenvolvedores , na qual poderá inserir sua sugestão.

Status da sugestão
Depois de enviar uma sugestão de recurso, os estados indicam onde o envio está em
seu ciclo de vida. Ao levar seus comentários em consideração e movê-lo ao longo do
fluxo de trabalho, podemos marcá-lo com o estado correspondente. Os diversos
estados associados às sugestões de funcionalidades são listados aqui, juntamente com
uma descrição dos significados e dos indicadores de cores.
State Descrição

Novo significa a sugestão foi recentemente informada por você ou outra pessoa. Ainda
não foi executada nenhuma ação. A linha de frente fará algumas verificações preliminares
para certificar-se de que podemos prosseguir. Aguarde o nosso retorno em
aproximadamente cinco dias úteis com os próximos passos.

Sob revisão indica que a sugestão de recurso foi colocada na fila para priorização.
Priorizamos os recursos para ampliar o melhor valor na comunidade de desenvolvedores,
levando em consideração também o roteiro do produto. Mesmo se não for possível
prosseguir imediatamente com a nova sugestão de recurso, continuaremos monitorando
sua ideia por aproximadamente 90 dias, permitindo que a comunidade faça suas
ponderações e, em seguida, tome uma decisão sobre as próximas etapas.

No Roteiro significa que sua sugestão de recurso tem um impacto amplo na comunidade
e ajudará a melhorar a experiência de produto. Alocamos um tempo para ela em nosso
roteiro. Enviaremos a atualização a você sobre o progresso.

Uma sugestão de recurso marcada com Precisamos de Mais Informações significa que
precisamos de mais detalhes para compreender melhor sua sugestão. Verifique os
comentários, nos quais solicitamos informações adicionais para uma melhor
compreensão.

Fechado – Outro Produto significa que não é possível resolver a sua sugestão de recurso
neste momento, porque ela não é aplicável ao produto para o qual foi informada. No
entanto, forneceremos detalhes sobre onde você pode compartilhar sua nova sugestão de
recurso para o produto apropriado.

Fechado – Duplicado indica que outra pessoa já sugeriu o mesmo recurso. Examine os
comentários para localizar o link para a sugestão de recurso existente. Os comentários e
votos foram mesclados na sugestão original. Siga a sugestão original.

Fechado – Informações insuficientes indica que, após várias tentativas, não recebemos
informações suficientes para entender totalmente sua sugestão de recurso. Precisamos
fechar a nova sugestão de funcionalidade, pois não é possível executar nenhuma outra
ação neste estágio. Encontrou as informações que estava procurando? Você pode solicitar
para reativar o tíquete quando tiver as informações adicionais.

Fechado – Fora do escopo Se uma sugestão não corresponder à direção geral do


produto, a fecharemos como Fora do escopo. Por exemplo, podemos ter investimentos
semelhantes em outros membros da família de produtos do Visual Studio. Ou o recurso
sugerido pode ser relevante apenas para algumas pessoas, tornando uma extensão mais
adequada para fornecê-lo.

Concluído – Versão Prévia indica que implementamos o recurso sugerido. Você pode
baixar uma versão prévia do Visual Studio que contém sua sugestão usando o link
fornecido nos comentários.

Concluído – Lançado indica que sua sugestão do novo recurso foi lançada na atualização
mais recente do produto. A atualização do Visual Studio pode ser baixada usando o link
fornecido nos comentários.
Confira também
Introducing 'Suggest a Feature' in Developer Community (Apresentação de
'Sugerir uma Funcionalidade' na Comunidade de Desenvolvedores) (blog do Visual
Studio)
Relatar um problema com o produto ou
instalador do Visual Studio
Artigo • 18/03/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

7 Observação

Para o Visual Studio para Mac, confira Como relatar um problema no Visual Studio
para Mac.

Você pode relatar um problema do Visual Studio ou de seu instalador. A Ferramenta de


Comentários embutida permite adicionar facilmente informações de diagnóstico que
ajudam as equipes do Visual Studio a diagnosticar e corrigir os problemas.

Aqui estão as etapas para relatar um problema.

1. No Visual Studio, selecione o ícone de comentários no canto superior direito e


selecione Relatar um Problema. Você também pode acessar a ferramenta de
comentários no menu Ajuda>Enviar Comentários>Relatar um Problema.

Como alternativa, relate um problema no Instalador do Visual Studio se você não


puder instalar o Visual Studio ou não conseguir acessar a ferramenta de
comentários no Visual Studio. No Instalador, selecione o ícone de comentários no
canto superior direito e selecione Relatar um Problema.

2. Clicar em Relatar um Problema abrirá seu navegador padrão e o conectará usando


a mesma conta que você usa para entrar no Visual Studio

3. Comece inserindo o título descritivo do relatório de bug. Ele deve ter, no mínimo,
25 caracteres de comprimento.

4. Depois de começar a digitar, as possíveis duplicatas serão mostradas no campo de


título
5. Selecione os relatórios de bug duplicados possíveis para ver se há um que
corresponda ao seu próprio problema. Se houver, vote nele em vez de criar seu
próprio tíquete.

6. Se nenhuma duplicata for encontrada, continue inserindo uma descrição do


problema. É importante ser o mais claro possível para aumentar as chances de
sermos capazes de reproduzir o bug. Certifique-se de incluir etapas claras de
reprodução.

7. Se for relevante para o relatório de bug, faça uma captura de tela marcando a
caixa de seleção Incluir captura de tela do Visual Studio. Você pode até mesmo
cortar a captura de tela diretamente no navegador para remover partes
confidenciais ou não relacionadas.
Somente os engenheiros da Microsoft podem ver a captura de tela

8. O vídeo registra o problema para fornecer um rastreamento.

Uma das melhores maneiras de ajudar a equipe de engenharia do Visual Studio a


resolver o problema é fornecer um rastreamento e arquivos de despejo de heap
para que eles examinem. Você pode fazer isso gravando as etapas que resultaram
no bug.
a. Clique em Iniciar gravação. Aguarde um momento pelo prompt de permissões.
b. Siga suas etapas para registrar o problema.
c. Quando terminar, localize a pequena janela pop-up e clique em Parar gravação.

Somente os engenheiros da Microsoft podem ver a gravação

2 Aviso

Pode haver um atraso de vários segundos entre clicar em Iniciar gravação e o


prompt em que o Windows solicita permissão para iniciar um programa com
permissões elevadas.

9. Examine os arquivos anexados e carregue arquivos adicionais se você acredita que


isso ajudaria a diagnosticar o problema.
Somente engenheiros da Microsoft podem ver os arquivos anexados

10. A última etapa é pressionar o botão Enviar. Enviar o relatório o enviará


diretamente para o sistema interno de relatórios de bug do Visual Studio para
aguardar a triagem.

Cada um dos seus relatórios do problema se torna um item de trabalho em nosso


sistema de engenharia principal, capacitando você para interagir diretamente com
nossas equipes de produtos para nos ajudar a identificar e a resolver problemas com
impacto. Os comentários enviados com informações avançadas de diagnóstico são
fundamentais para melhorar a família de produtos do Visual Studio. Nós realmente
agradecemos seu tempo para relatar problemas.

Além disso, é possível votar nos comentários de outros membros da comunidade para
trazer mais atenção a um problema e ajudar a corrigi-lo mais rapidamente.

Quando mais informações são necessárias


Quando um problema apresenta informações importantes ausentes, atribuímos o
estado Precisa de Mais Informações. Comentamos o problema com as informações
específicas de que precisamos e você receberá uma notificação por email. Se não
recebermos as informações dentro de sete dias, enviaremos um lembrete. Depois disso,
fechamos o tíquete após 14 dias de inatividade.

1. Siga o link no email para o relatório de problemas ou vá para a página inicial para
ver todos os relatórios no estado Precisa de Mais Informações.
2. Selecionar o link Fornecer Mais Informações no relatório de problemas o direciona
até uma nova tela. A partir daqui, você pode ver quais informações estão sendo
solicitadas.

3. Você pode fornecer mais informações adicionando comentários, anexos ou


gravando as etapas. Essa experiência é semelhante a relatar um novo problema ou
fornecer informações adicionais ao votar em um problema.
4. O engenheiro da Microsoft fazendo a solicitação recebe uma notificação sobre as
informações extras fornecidas. Se ele tiver informações suficientes para investigar,
o estado do problema mudará. Caso contrário, o engenheiro solicita ainda mais
informações.

Você pode ver essas solicitações na tela Meus Comentários junto com todos os seus
outros Problemas e Sugestões.

Status do Problema
Depois de relatar um problema, os estados indicam onde seus envios estão no seu ciclo
de vida. Enquanto as equipes da Microsoft examinam seus comentários, elas o definem
com um estado adequado. Acompanhe o andamento dos seus relatórios de problema
referenciando os estados listados abaixo, juntamente com seu significado e indicadores
de cor.

State Descrição

Novo indica que o bug ou problema foi recém-relatado e que nenhuma ação foi
executada nele ainda.
State Descrição

Triado indica que etapas preliminares, como moderação, translação e verificação inicial
para duplicatas, foram concluídas. O tíquete foi encaminhado para a equipe de
engenharia adequada para consideração.

Em Questão indica que a Microsoft está examinando seu problema quanto ao impacto da
comunidade e o priorizará adequadamente. Se o impacto da comunidade ainda não
estiver claro nem for significativo, continuaremos monitorando o problema nesse estado.

Sob Investigação indica que os engenheiros estão investigando ativamente seu problema
para encontrar uma resolução.

Precisamos de Mais Informações indica que é necessário obter mais informações de


diagnóstico antes de podermos ir adiante com a investigação. Saiba como responder a
solicitações de Precisamos de Mais Informações.

Corrigido – Lançamento Pendente indica que temos uma correção para o problema e
que ela estará disponível em uma versão prévia ou lançamento futuro. Quando a correção
for disponibilizada em uma versão prévia, o problema será marcado com "corrigido na"
especificando a versão prévia.

Fechado – Corrigido indica que lançamos uma correção para o problema. Agora o
problema também é marcado com "corrigido na:" especificando a versão de lançamento.

Fechado – Duplicado indica que o problema já foi relatado por meio de outros
comentários. Forneceremos o link em que você pode acompanhar a comunicação do
problema original.

Fechado – Baixa Prioridade Para concentrar-se em levar a cada um de vocês em nossa


comunidade de desenvolvedores o melhor valor, priorizamos problemas com o mais alto
impacto sobre o cliente. Embora não seja possível resolver esse problema específico neste
momento, tenha certeza de que todos os seus comentários são valiosos e ajudam a
melhorar o Visual Studio.

Fechado – Não é um Bug indica que determinamos que a funcionalidade relatada é


atualmente esperada.

Fechado – Informações Insuficientes indica que não temos informações suficientes para
investigar isso para você. Será um prazer reconsiderar os comentários depois que as
informações necessárias estiverem disponíveis.

Fechado – Outro Produto indica que determinamos que seu problema se aplica a outro
produto. Confira o comentário da Microsoft para quais produtos e links relacionados.

Perguntas frequentes
Como faço para aumentar a chance de o meu problema ser
resolvido rapidamente?

É recomendável usar a pesquisa para garantir que o problema que você está prestes a
relatar ainda não tenha sido comunicado. Se você encontrar um item existente que
corresponda a seu problema, siga e vote nesse tíquete de problema.

Forneça todas as informações que você tem para ajudar nossas equipes a reproduzir o
que você está enfrentando. Essas informações incluem etapas de reprodução
necessárias, fragmentos de código, capturas de tela, gravações de reprodução, arquivos
de log e outros artefatos.

Como meus comentários são priorizados?

Recebemos um grande número de problemas valiosos dos nossos clientes. Para garantir
que estamos levando o melhor valor para cada um de vocês em nossa comunidade de
desenvolvedores, priorizamos ações em comentários que têm o mais alto impacto na
comunidade.

Se não conseguirmos responder pessoalmente seus comentários, saiba que


agradecemos bastante sua colaboração. Tenha certeza de que seus comentários
chegarão à equipe certa.

Nós valorizamos verdadeiramente seu tempo investido na melhoria do Visual Studio.

Quais medidas poderei tomar se não estiver satisfeito com a


resolução?
Nossas equipes fazem seu melhor para diagnosticar e corrigir quaisquer problemas que
você enfrentar; no entanto, pode haver situações em que você não esteja totalmente
satisfeito com nossa recomendação. Comente novamente no comentário e nos informe
exatamente com o que você não está satisfeito e tentaremos dar nosso melhor para
garantir que atendamos às suas necessidades.

Como serei notificado do andamento do meu comentário?

As equipes de engenharia da Microsoft se comunicarão com você por meio do seu


comentário no tíquete e da alteração do estado do seu tíquete à medida que
progredirem. Fique atento a notificações por email que sejam enviadas quando o
estado do tíquete for alterado ou quando um comentário for postado. É possível
gerenciar a frequência de notificações nas configurações do Perfil e Preferências no site
da Comunidade de Desenvolvedores.
Por que não posso adicionar um problema ao IDE do Visual Studio
no site da Comunidade de Desenvolvedores?

Relatar um problema por meio do Visual Studio permite que as informações de


diagnóstico sejam automaticamente incluídas no relatório. São informações essenciais
que fornecem aos nossos engenheiros o contexto de que eles precisam para entender
completamente seu problema e para trabalhar para resolvê-lo.

Quando você comunica por meio do Visual Studio, pode compartilhar facilmente
informações de diagnóstico avançadas conosco, como grandes arquivos de log,
informações de falha, capturas de tela, gravações de reprodução e outros artefatos que
nos ajudam a oferecer resoluções de maior qualidade com mais rapidez para você.

Pesquisar soluções ou fornecer comentários


Se você não quiser ou não puder usar o Visual Studio para relatar um problema, há a
possibilidade de que o problema já tenha sido relatado e uma solução tenha sido
postada na página da Comunidade de Desenvolvedores do Visual Studio .

Se você não tem um problema a ser relatado, mas deseja sugerir um recurso, há um
local para fazer isso também. Para saber mais, confira a página Sugerir um recurso .

Confira também
Diretrizes da Developer Community
Relatar um problema com o Visual Studio para Mac
Relatar um problema com C++
Comunidade de Desenvolvedores do Visual Studio
Privacidade de dados da Comunidade de Desenvolvedores
Programa de Aperfeiçoamento da
Experiência do Usuário do Visual Studio
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

O VSCEIP (Programa de Aperfeiçoamento da Experiência do Usuário do Visual Studio)


foi projetado para ajudar a Microsoft a aperfeiçoar o Visual Studio ao longo do tempo.
Esse programa coleta informações sobre erros, hardware do computador e como as
pessoas usam o Visual Studio, sem interromper os usuários em suas tarefas no
computador. As informações coletadas ajudam a Microsoft a identificar quais
funcionalidades devem ser aprimoradas. Este documento aborda como aceitar ou
recusar o VSCEIP e fornece algumas informações sobre os tipos de dados que
coletamos e como os usamos. Também fornece dicas sobre como os autores de
extensão podem evitar a divulgação acidental de informações pessoais ou confidenciais.

Recusar a coleta de dados de diagnóstico


Considerando a finalidade dos dados que coletamos e as restrições de acesso e
retenção, recomendamos que você use as configurações de privacidade padrão para o
Visual Studio e o Windows. No entanto, você pode recusar o Programa de
Aperfeiçoamento da Experiência do Visual Studio. Ao recusar, você está recusando a
coleta de dados de diagnóstico opcional. A coleta de alguns dados de diagnóstico é
necessária para garantir que o Visual Studio esteja seguro, atualizado e funcionando
conforme o esperado. A coleta necessária de dados de diagnóstico não será afetada por
sua escolha de recusar a participação no VSCEIP.

7 Observação

Caso esteja interessado em exibir ou excluir dados pessoais, examine as diretrizes


da Microsoft em Solicitações de entidades de dados do Windows para o RGPD.
Caso esteja procurando informações gerais sobre o RGPD, confira a seção RGPD do
Portal de Confiança do Serviço .

7 Observação

As configurações de aceitação ou saída da telemetria do VSCEIP não se aplicam a


"Relatar um problema" no Visual Studio. Ao relatar um problema, os logs só são
coletados e enviados à Microsoft quando você concede a permissão clicando em
“Enviar”. Se estiver interessado em gerenciar logs antes de enviar para “Relatar um
problema”, confira Privacidade de dados de comentários para obter mais detalhes.

Aceitar ou recusar
O VSCEIP está ativado por padrão. Você pode desligá-lo ou ativá-lo novamente
seguindo estas instruções:

1. No Visual Studio, escolha Ajudar>Privacidade>Configurações de Privacidade.

A caixa de diálogo Programa de Aperfeiçoamento da Experiência do Visual


Studio será aberta.

2. Para recusar, selecione Não, prefiro não participar e, em seguida, selecione OK.
Para aceitar, selecione Sim, desejo participar (Recomendado) e, depois, OK.

Configurações do registro
Se você instalar as Ferramentas de Build do Visual Studio , precisará atualizar o
Registro para configurar o VSCEIP. Os clientes corporativos podem construir uma
política de grupo para aceitar ou recusar sua participação no VSCEIP por meio da
definição de uma política baseada em Registro.

Chave do Registro e configurações relevantes:

Em um sistema operacional de 64 bits, Chave


HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VSCommon\17.0\SQM
Em um sistema operacional de 32 bits, Chave =
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VSCommon\17.0\SQM
Quando a Política de Grupo está habilitada, Chave =
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\VisualStudio\SQM

Entrada = OptIn

Valor = (DWORD)

0 é recusado (desligar o VSCEIP)


1 é aceito (ativar o VSCEIP)

U Cuidado

A edição incorreta do Registro pode causar danos graves ao sistema. Antes de


alterar o Registro, faça backup de todos os dados importantes do computador. Use
também a opção de inicialização Última Configuração Válida caso encontre
problemas depois de aplicar as alterações manuais.

Para obter mais informações sobre as informações coletadas, processadas ou


transmitidas pelo VSCEIP, confira a Política de privacidade da Microsoft .

Logs gerados pelo sistema coletados pelo


Visual Studio
O Visual Studio coleta logs gerados pelo sistema para corrigir problemas e melhorar a
qualidade do produto. Aqui, há algumas informações sobre os tipos de dados que
coletamos e como eles são usados. Também fornece dicas sobre como os autores de
extensão podem evitar a divulgação acidental de informações pessoais ou confidenciais.

Tipos de dados coletados


O Visual Studio coleta logs gerados pelo sistema sobre falhas, falta de resposta da
interface do usuário e alto uso da CPU ou de memória. Também coletamos informações
sobre os erros encontrados durante a instalação ou o uso do produto. Os dados
coletados variam de acordo com o erro e podem incluir rastreamentos de pilha,
despejos de memória e informações de exceção:

Para alto uso da CPU e falta de resposta, são coletados rastreamentos de pilha de
threads relevantes do Visual Studio.

Para casos em que os rastreamentos de pilha de alguns threads não são suficientes
para determinar a causa raiz do problema, por exemplo, falhas, ausência de
resposta ou alto uso de memória, coletamos um despejo de memória. O despejo
representa o estado do processo durante o erro.

Para condições de erro inesperadas, por exemplo, uma exceção ao tentar fazer
uma gravação em um arquivo em disco, coletamos informações sobre a exceção.
As informações incluem o nome da exceção, o rastreamento de pilha do thread no
qual ocorreu a exceção, a mensagem associada à exceção e outras informações
relevantes à exceção específica.

O seguinte exemplo de dados coletados mostra um nome de exceção, um


rastreamento de pilha e uma mensagem de exceção:

text

"Reserved.DataModel.Fault.Exception.TypeString":
"System.IO.IOException",
"Reserved.DataModel.Fault.Exception.StackTrace":
"System.IO.__Error.WinIOError(Int32,String)\r\n
System.IO.FileStream.Init(String,FileMode,FileAccess,Int32,Boolean,File
Share,Int32,FileOptions,SECURITY_ATTRIBUTES,String,Boolean,Boolean,Bool
ean)\r\n
System.IO.FileStream..ctor(String,FileMode,FileAccess,FileShare,Int32,F
ileOptions,String,Boolean,Boolean,Boolean)\r\nSystem.IO.StreamWriter.Cr
eateFile(String,Boolean,Boolean)\r\n
System.IO.StreamWriter..ctor(String,Boolean,Encoding,Int32,Boolean)\r\n
System.IO.StreamWriter..ctor(String,Boolean)\r\n
System.IO.File.CreateText(String)\r\n
Microsoft.VisualStudio.Setup.Services.FileSystem.CreateText(String,Bool
ean)\r\n
Microsoft.VisualStudio.Setup.Cache.ChannelManifestRepository.WriteChann
elManifest(IChannelManifest,String,String)\r\n
Microsoft.VisualStudio.Setup.Cache.ChannelManifestRepository.AddChannel
(ChannelManifestPair,Boolean)\r\n
Microsoft.VisualStudio.Setup.Cache.CacheManager.AddChannel(ChannelManif
estPair,Boolean)\r\n
Microsoft.VisualStudio.Setup.ChannelManager.\
<UpdateAsync>d__37.MoveNext()\r\n”,
"Reserved.DataModel.Fault.Exception.Message": " The process cannot
access the file 'C:\\Users\\
[UserName]\\AppData\\Local\\Microsoft\\VisualStudio\\Packages\\_Channel
s\\4CB340F5\\channelManifest.json' because it is being used by another
process."

Como usamos os logs gerados pelo sistema


O fluxo de trabalho para determinar a causa raiz do erro varia conforme o tipo de erro e
sua severidade.

Classificação de erros
Com base nos logs, os erros são classificados e contados a fim de priorizar sua
investigação. Por exemplo, podemos descobrir que “System.IO.__Error.WinIOError” em
“System.IO.FileStream.Init” ocorreu 500 vezes na versão <x> do produto e tem a maior
taxa de ocorrência nessa versão.

Itens de trabalho para acompanhamento


Itens de trabalho para erros individuais priorizados são criados e atribuídos aos
engenheiros para investigação. Esses itens de trabalho normalmente contêm
informações de classificação, prioridade e diagnóstico relevantes ao tipo de erro. Essas
informações são obtidas dos logs gerados pelo sistema coletados sobre o erro. Por
exemplo, um item de trabalho sobre uma falha pode conter o rastreamento de pilha no
qual a falha está ocorrendo.

Investigação de erros
Os engenheiros usam as informações disponíveis em um item de trabalho para
determinar a causa de um erro. Em alguns casos, eles precisam de mais informações do
que está presente no item de trabalho; nesse caso, eles se referem ao log original
gerado pelo sistema que foi coletado. Por exemplo, um engenheiro pode inspecionar
um despejo de memória para entender uma falha de produto.

Dicas para autores de extensão


Os autores de extensão devem limitar a exposição de informações pessoais não usando
informações pessoais ou outras informações confidenciais nos nomes de módulos, tipos
e métodos. Em caso de falha ou condição de erro semelhante com esse código na pilha,
essas informações são coletadas como parte dos logs gerados pelo sistema.
Confira também
Como relatar um problema com o Visual Studio
Comunidade de Desenvolvedores do Visual Studio
Política de Privacidade da Microsoft
Diagnóstico, comentários e privacidade no Windows 10
Como aumentar as chances de um
problema de desempenho ser corrigido
Artigo • 19/06/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

A ferramenta "Relatar um problema" é muito usada pelos usuários do Visual Studio para
relatar uma série de problemas. A equipe do Visual Studio detecta tendências de falha e
lentidão nos comentários dos usuários e aborda os problemas que afetam diversos
usuários. Quanto mais acionável for um tíquete de comentários específico, maior a
probabilidade de ele ser diagnosticado e resolvido rapidamente pela equipe de
produtos. Este documento descreve as melhores práticas ao relatar problemas de falha
ou lentidão para torná-los mais acionáveis.

Práticas recomendadas gerais


O Visual Studio é uma plataforma grande e complexa que dá suporte a uma infinidade
de linguagens, tipos de projeto, plataformas e muito mais. O desempenho dele é uma
função de quais componentes estão instalados e ativos em uma sessão, as extensões
instaladas, as configurações do Visual Studio, a configuração da máquina e, finalmente,
a forma do código que está sendo editado. Dado o número de variáveis, é difícil saber
se o relatório de problema de um usuário tem o mesmo problema subjacente que um
relatório de problema de outro usuário, mesmo que o sintoma visível seja o mesmo.
Considerando isso, veja abaixo estão algumas melhores práticas para garantir que seu
relatório de problemas específico tenha maior probabilidade de ser diagnosticado.

Fornecer um título o mais específico possível

Procure assinaturas diferentes para o problema que está sendo relatado e inclua o
máximo possível no título. Se o título for descritivo, é menos provável que os usuários
com problemas não relacionados (mas mesmo sintoma superficial) votem ou comentem
no seu tíquete, dificultando assim o diagnóstico do seu problema.

Em caso de dúvida, registre um novo relatório de problemas

Muitos problemas podem não ter assinaturas ou etapas diferentes a reproduzir. Nesses
casos, um novo relatório é melhor do que um voto a favor ou um comentário em outro
relatório, que está relatando um sintoma externo semelhante. Dependendo do tipo de
relatório, inclua arquivos de diagnóstico adicionais no relatório, conforme descrito
posteriormente neste documento.
Melhores práticas específicas do problema

Veja abaixo a descrição dos problemas difíceis de diagnosticar sem arquivos de


diagnóstico válidos. Depois de identificar o caso que melhor descreve seu problema,
siga as etapas de comentários específicas para esse caso.

Falhas: uma falha ocorre quando o processo (Visual Studio) termina


inesperadamente.

Ausência de resposta: o VS não responde durante um longo período.

Problemas de lentidão: qualquer ação específica no VS é mais lenta do que o


desejado

Alta utilização da CPU: períodos estendidos de alta utilização da CPU inesperada

Problemas fora do processo: um problema causado por um processo satélite do


Visual Studio

Falhas
Uma falha ocorre quando o processo (Visual Studio) termina inesperadamente.

Falhas reproduzíveis diretamente

Falhas reproduzíveis diretamente são casos que têm todas as seguintes características:

Pode ser observado seguindo um conjunto conhecido de etapas

Pode ser observado em vários computadores (se disponível)

Pode ser reproduzido no código de exemplo ou em um projeto que pode ser


vinculado ou fornecido como parte dos comentários (se as etapas envolverem a
abertura de um projeto ou documento)

Para esses problemas, siga as etapas em "Como relatar um problema" e não deixe de
incluir:

As etapas para reproduzir o problema

Um projeto de reprodução autônoma, conforme descrito acima. Se a reprodução


autônoma não for possível, inclua:

A linguagem dos projetos em aberto (C#, C++ etc.)

O tipo de projeto (Aplicativo de Console, ASP.NET etc.)


7 Observação

Comentários mais valiosos: nesse caso, os comentários mais valiosos são o


conjunto de etapas para reproduzir o problema junto com o código-fonte de
exemplo.

Falhas desconhecidas

Se você não tiver certeza do que está causando as falhas ou se elas parecerem
aleatórias, você pode capturar os despejos localmente sempre que o Visual Studio falhar
e anexá-los a itens de comentários separados. Para salvar os despejos localmente
quando o Visual Studio falhar, execute os seguintes comandos em uma janela de
comando do administrador:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error


Reporting\LocalDumps\devenv.exe" /v DumpType /t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\devenv.exe" /v DumpCount /t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\devenv.exe" /v DumpFolder /t REG_SZ /d "C:\CrashDumps"

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error


Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService32.exe" /v DumpType
/t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService32.exe" /v
DumpCount /t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService32.exe" /v
DumpFolder /t REG_SZ /d "C:\CrashDumps"

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error


Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService.exe" /v DumpType
/t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService.exe" /v DumpCount
/t REG_DWORD /d 2
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error
Reporting\LocalDumps\ServiceHub.RoslynCodeAnalysisService.exe" /v DumpFolder
/t REG_SZ /d "C:\CrashDumps"

Personalize a contagem de despejos e a pasta de despejo conforme apropriado. Veja


mais informações sobre estas configurações aqui.

7 Observação
Provavelmente, os despejos capturados usando o Gerenciador de Tarefas terão o
número de bit errado, o que os torna menos utilizáveis. O procedimento descrito
acima é a maneira preferencial de capturar um despejo de heap. Se você quiser
usar o Gerenciador de Tarefas, feche o que está em execução no momento, inicie o
Gerenciador de Tarefas de 32 bits (%windir%\syswow64\taskmgr.exe) e colete um
despejo de heap.

7 Observação

Cada arquivo de despejo gerado com esse método terá até 4 GB. Defina o
DumpFolder como um local com o espaço de unidade adequado ou ajuste o
DumpCount corretamente.

Sempre que o Visual Studio falhar, ele criará um arquivo de despejo devenv.exe.[
arquivo number].dmp no local configurado.

Em seguida, use o recurso "Relatar um problema" do Visual Studio. Isso permitirá que
você anexe o despejo adequado.

1. Localize o arquivo de despejo para a falha que você está relatando (procure um
arquivo com o tempo de criação correto)

2. Se possível, compacte o arquivo (*.zip) para reduzir o tamanho antes de enviar


comentários

3. Siga as etapas em "Como relatar um problema" e anexe o despejo de heap a um


novo item de comentários.

7 Observação

Comentários mais valiosos: nesse caso, os comentários mais valiosos são o


despejo de heap capturado no momento da falha.

Ausência de resposta
O VS não responde durante um longo período.

Ausência de resposta reproduzível diretamente

Conforme descrito na seção correspondente sobre falhas, para problemas que podem
ser reproduzidos facilmente, observados em vários computadores e que podem ser
demonstrados em um pequeno exemplo, os relatórios de comentários mais valiosos são
os que incluem etapas para reproduzir o problema e o código-fonte de exemplo que
demonstra o problema.

Ausência de resposta desconhecida

Se houver ausência de resposta de maneira imprevisível, na próxima ocorrência, inicie


uma nova instância do Visual Studio e relate um problema nessa instância. Na tela
"Gravar", selecione a sessão do Visual Studio que não responde. (Para obter mais
informações sobre como gravar ações que podemos seguir para reproduzir o problema,
confira a Etapa 8 na página Como relatar um problema.)

Se a instância do Visual Studio que não está respondendo tiver sido iniciada no modo
Administrador, a segunda instância também precisará ser iniciada no modo
Administrador.

7 Observação

Comentários mais valiosos: nesse caso, os comentários mais valiosos são o


despejo de heap capturado no momento da ausência de resposta.

Problemas de lentidão e alta utilização da CPU


O que torna um problema de lentidão ou alta utilização da CPU mais acionável é um
rastreamento de desempenho capturado enquanto a operação lenta ou o evento de
alta utilização da CPU está em andamento.

7 Observação

Quando possível, isole cada cenário em um relatório de comentários separado e


específico. Por exemplo, se a digitação e a navegação estiverem lentas, siga as
etapas abaixo uma vez para cada problema. Isso ajuda a equipe do produto a isolar
a causa de problemas específicos.

Para obter melhores resultados na captura do desempenho, siga estas etapas:

1. Se ainda não estiver em execução, abra uma cópia do Visual Studio em que você
reproduzirá o problema

Configure tudo para reproduzir o problema. Por exemplo, se você precisar


que um projeto específico seja carregado com um arquivo específico aberto,
verifique se ambas as etapas foram concluídas antes de prosseguir.

Se você não estiver relatando um problema específico para carregar uma


solução, tente aguardar de 5 a 10 minutos (ou mais, dependendo do
tamanho da solução) depois de abrir a solução, para gravar o rastreamento
de desempenho. O processo de carregamento da solução produz um grande
volume de dados. Portanto, aguardar alguns minutos ajuda a se concentrar
no problema específico que você está relatando.

2. Iniciar uma segunda cópia do Visual Studio sem uma solução em aberto

3. Na nova cópia do Visual Studio, abra a ferramenta Relatar um Problema

4. Siga as etapas em Como relatar um problema até chegar à etapa "Fornecer um


despejo de heap e rastreamento (opcional)".

5. Escolha gravar a primeira cópia do Visual Studio (a que tem um problema de


desempenho) e iniciar a gravação.

O aplicativo Gravador de Etapas será exibido e começará a gravar.

Durante a gravação, execute a ação problemática na primeira cópia do Visual


Studio. É difícil corrigir problemas de desempenho específicos se eles não
aparecerem no tempo de gravação.

Se a ação tiver menos de 30 segundos e puder ser repetida facilmente, repita


a ação para demonstrar melhor o problema.

Na maioria dos casos, um rastreamento de 60 segundos é suficiente para


demonstrar os problemas, especialmente se a ação problemática durou (ou
foi repetida por) mais de 30 segundos. A duração pode ser ajustada
conforme necessário para capturar o comportamento que você gostaria de
corrigir.

6. Clique em "Parar Gravação" no Gravador de Etapas, após a conclusão da operação


lenta ou do evento de alta utilização da CPU que você deseja relatar. Pode levar
alguns minutos para processar o rastreamento de desempenho.

7. Após a conclusão, haverá vários anexos para seus comentários. Anexe arquivos
adicionais que possam ajudar a reproduzir o problema (um projeto de exemplo,
capturas de tela, vídeos etc.).

8. Envie os comentários.
Durante a gravação de um rastreamento de desempenho, se a operação lenta ou a alta
utilização da CPU que você está relatando terminar, interrompa imediatamente a
gravação. Se muitas informações forem coletadas, as informações mais antigas serão
substituídas. Se o rastreamento não for interrompido em breve (dentro de alguns
segundos) após a operação de interesse, os dados de rastreamento úteis serão
substituídos.

Não anexe os rastreamentos de desempenho diretamente a itens de comentários


existentes no site do Developer Community. Solicitar/fornecer informações adicionais é
um fluxo de trabalho com suporte na ferramenta interna Relatar um Problema do Visual
Studio. Se um rastreamento de desempenho for necessário para resolver um item de
comentários anterior, definiremos o estado do item de comentários como "Precisa de
mais informações", que pode ser respondido da mesma forma que relatar um novo
problema. Para obter instruções detalhadas, confira a seção "Precisa de mais
informações" no documento da ferramenta Relatar um Problema.

7 Observação

Comentários mais valiosos: para quase todos os problemas de lentidão/alta


utilização da CPU, os comentários mais valiosos são uma descrição de alto nível do
que você estava tentando fazer, juntamente com o rastreamento de desempenho
(*.etl.zip) que captura o comportamento durante esse tempo.

Rastreamentos de Desempenho Avançado

Os recursos de coleta de rastreamento na ferramenta Relatar um problema são


suficientes para a maioria dos cenários. Mas há momentos em que mais controle sobre
a coleção de rastreamento é necessário (por exemplo, rastreamento com um buffer
maior). Nesse caso, o PerfView é uma ótima ferramenta a ser usada. As etapas para
gravar manualmente o rastreamento de desempenho usando a ferramenta PerfView
podem ser encontradas na página Como gravar rastreamentos de desempenho com o
PerfView .

Problemas fora do processo

7 Observação

A partir do Visual Studio 2019 versão 16.3, os logs fora do processo são anexados
automaticamente aos comentários enviados usando a ferramenta Relatar um
Problema. No entanto, se o problema for reproduzível diretamente, seguir as
etapas abaixo ainda poderá ajudar a adicionar outras informações para ajudar a
diagnosticar melhor o problema.

Há vários processos satélite que são executados paralelamente ao Visual Studio e


fornecem vários recursos de fora do processo principal do Visual Studio. Se ocorrer um
erro em um desses processos satélite, ele geralmente será observado no lado do Visual
Studio como um 'StreamJsonRpc.RemoteInvocationException' ou um
'StreamJsonRpc.ConnectionLostException'.

O que torna esses tipos de problemas mais acionáveis é fornecer logs adicionais que
podem ser coletados seguindo estas etapas:

1. Se esse for um problema reproduzível diretamente, comece excluindo a pasta


%temp%/servicehub/logs. Se você não puder reproduzir esse problema,
mantenha esta pasta intacta e ignore os seguintes marcadores:

Definir a variável de ambiente global ServiceHubTraceLevel como All


Reproduza o problema.

2. Baixe o Microsoft Visual Studio e a ferramenta de coleta de Log do .NET


Framework aqui .

3. Execute a ferramenta. Isso gera um arquivo zip para %temp%/vslogs.zip. Anexe


esse arquivo aos seus comentários.

Confira também
Relatar um problema com o Visual Studio para Mac
Relatar um problema com C++
Comunidade de Desenvolvedores do Visual Studio
Privacidade de dados da Comunidade de Desenvolvedores
Solucionar problemas e criar logs para
problemas do MSBuild
Artigo • 22/09/2023

Aplica-se a: Visual Studio Visual Studio para Mac Visual Studio Code

Os procedimentos a seguir podem ajudá-lo a diagnosticar problemas de compilação no


projeto do Visual Studio e, se necessário, crie um log para enviar à Microsoft para
investigação.

Um valor da propriedade é ignorado


Se uma propriedade de projeto parece estar definida como um valor específico, mas
não tem nenhum efeito na compilação, siga estas etapas:

1. Abra o Prompt de Comando do Desenvolvedor do Visual Studio que corresponde


à sua versão do Visual Studio.

2. Execute o comando a seguir, depois de substituir os valores com o caminho de


solução, a configuração e o nome do projeto:

Prompt de comando do Windows

MSBuild
/p:SolutionDir="c:\MySolutionDir\";Configuration="MyConfiguration";Plat
form="Win32" /pp:out.xml MyProject.vcxproj

Esse comando produz um arquivo de projeto MSBuild "pré-processado" (out.xml).


Você pode pesquisar nesse arquivo uma propriedade específica para ver onde ela
está definida.

A última definição de uma propriedade é o que é consumido na compilação. Se a


propriedade estiver definida duas vezes, o segundo valor substitui o primeiro. Além
disso, o MSBuild avalia o projeto em vários passos:

PropertyGroups e importações
ItemDefinitionGroups
ItemGroups
Destinos

Portanto, dada a seguinte ordem:


XML

<PropertyGroup>
<MyProperty>A</MyProperty>
</PropertyGroup>
<ItemGroup>
<MyItems Include="MyFile.txt"/>
</ItemGroup>
<ItemDefinitionGroup>
<MyItems>
<MyMetadata>$(MyProperty)</MyMetadata>
</MyItems>
</ItemDefinitionGroup>
<PropertyGroup>
<MyProperty>B</MyProperty>
</PropertyGroup>

O valor do MyMetadata item MyFile.txt é avaliado B durante o build (não A e não está
vazio).

A compilação incremental está compilando


mais do que deveria
Se o MSBuild está recompilando desnecessariamente um projeto ou item de projeto,
crie um log de compilação detalhado ou binário. Você pode pesquisar no log pelo
arquivo que foi criado ou compilado desnecessariamente. A saída é parecida com esta:

Saída

Task "CL"

Using cached input dependency table built from:

F:\test\Project1\Project1\Debug\Project1.tlog\CL.read.1.tlog

Outputs for F:\TEST\PROJECT1\PROJECT1\PROJECT1.CPP:


F:\TEST\PROJECT1\PROJECT1\DEBUG\PROJECT1.OBJ
Project1.cpp will be compiled because F:\TEST\PROJECT1\PROJECT1\PROJECT1.H
was modified at 6/5/2019 12:37:09 PM.

Outputs for F:\TEST\PROJECT1\PROJECT1\PROJECT1.CPP:


F:\TEST\PROJECT1\PROJECT1\DEBUG\PROJECT1.OBJ

Write Tracking Logs:


Debug\Project1.tlog\CL.write.1.tlog
Se você estiver compilando no IDE do Visual Studio (com detalhamento de janela de
saída detalhada), a Janela de Saída exibe a razão pela qual cada projeto não está
atualizado:

Saída

1>------ Up-To-Date check: Project: Project1, Configuration: Debug Win32 ---


---

1>Project is not up-to-date: build input


'f:\test\project1\project1\project1.h' was modified after the last build
finished.

Criar um log detalhado


1. No menu principal do Visual Studio, acesse Ferramentas>Opções>Projetos e
soluções>Compilar e executar.

2. Defina a verbosidade de build de projeto do MSBuild como Detalhada em ambas


as caixas de combinação. A parte superior controla a verbosidade de build na
Janela de Saída e a segunda controla a verbosidade de build no arquivo
{projectname}.log que é criado no diretório intermediário de cada projeto

durante o build.

3. Em um prompt de comando do desenvolvedor do Visual Studio, digite um desses


comandos, substituindo o caminho real e os valores de configuração:

Prompt de comando do Windows

MSBuild /p:Configuration="MyConfiguration";Platform="x86" /fl


MySolution.sln

ou

Prompt de comando do Windows

MSBuild
/p:/p:SolutionDir="c:\MySolutionDir\";Configuration="MyConfiguration";P
latform="Win32" /fl MyProject.vcxproj

Um arquivo MSBuild.log é criado no diretório do qual você executou o MSBuild.


Fornecer logs binários do MSBuild para
investigação
O MSBuild tem a capacidade de capturar um arquivo de log binário detalhado. Se você
estiver tendo um problema de build e puder fornecer um log binário, o log poderá ser
útil para investigar o problema.

No entanto, você deve estar ciente de que tipo de informação é capturada no log
binário para garantir que você não está compartilhando inadvertidamente mais do que
você pretende. O log binário captura quase tudo o que seu build faz, incluindo o
conteúdo de seus arquivos de projeto e quaisquer arquivos (como .props e .targets )
que eles importam, todas as tarefas que são executadas durante o build, bem como a
entrada e a saída, bem como variáveis de ambiente que foram acessadas nessa sessão
do MSBuild. Geralmente, ele não inclui o conteúdo dos arquivos de origem compilados,
mas captura seus nomes e caminhos completos.

7 Observação

Alguns ambientes de build disponibilizam segredos usando variáveis de ambiente.


Antes de compartilhar um log binário, verifique se ele não expõe tokens de API ou
outros segredos importantes.

Capturar logs binários para builds de linha de comando


Você pode criar um log binário passando o parâmetro -bl para o MSBuild ( MSBuild.exe
ou dotnet build ). Você pode explorar o conteúdo do arquivo gerado .binlog usando o
Visualizador de Log Estruturado do MSBuild ou em seu navegador usando o
Visualizador de Log Estruturado Ao Vivo . O MSBuild não captura dados de logs
binários exibidos no navegador.

Exemplos

sh

dotnet build -bl


dotnet build -bl:SpecificStep.binlog
MSBuild.exe -bl:ServiceRelease.binlog -p:Configuration=Release

Veja também Mais detalhes sobre logs binários .


Capturar logs binários por meio do Visual Studio
Para capturar logs para todas as invocações do MSBuild:

Defina a variável de ambiente MSBUILDDEBUGENGINE como '1' e (opcionalmente) definida


MSBUILDDEBUGPATH como uma pasta de destino existente para armazenar os logs

capturados. Em seguida, inicie o Visual Studio do mesmo shell para herdar o ambiente:

batch

SET MSBUILDDEBUGENGINE=1
SET MSBUILDDEBUGPATH=C:\MSBuildReproLogs
devenv.exe MySolution.sln

PowerShell

$env:MSBUILDDEBUGENGINE = 1
$env:MSBUILDDEBUGPATH="C:\MSBuildReproLogs"
& "devenv.exe" MySolution.sln

Os logs binários do MSBuild são capturados em um local especificado por meio de


variável de ambiente MSBUILDDEBUGPATH (ou padrões para subpasta MSBuild_Logs de
uma pasta atual ou %temp% , com base em direitos de acesso).

7 Observação

Os logs são registrados para cada invocação do MSBuild (incluindo builds de


tempo de design) e mantidos na pasta sem remover os mais antigos, de modo que
o número de arquivos de log pode crescer rapidamente. É recomendável definir a
variável de ambiente de aceitação apenas para a curta duração da reprodução do
problema a ser investigado (embora seja compreensível que alguns problemas não
determinísticos possam precisar de várias tentativas de reprodução).

Criar um log binário do MSBuild usando a extensão


Ferramentas do Sistema de Projetos
Consulte este guia no repositório ferramentas do sistema de projeto para capturar
binlogs por meio do Visual Studio.

1. Baixe e instale a extensão Ferramentas do Sistema de Projetos .


2. Após a extensão ser instalada, alguns novos itens aparecem no menu
Exibir>Outras Janelas.

3. Selecione Exibir>Outras Janelas>Log de Build para mostrar a janela Log de Build


no Visual Studio. Escolha o primeiro ícone da barra de ferramentas para iniciar a
gravação de builds regulares e de tempo de design no sistema de projeto.
4. Depois que um build é gravado, ele aparece na janela Log de Build. Clique com o
botão direito do mouse no item e selecione Salvar Logs no menu de contexto para
salvar o arquivo .binlog .

Você pode exibir e pesquisar arquivos .binlog usando o Visualizador de Log Estruturado
de MSBuild .

Confira também
Solucionar problemas do Visual Studio
Coletar um rastreamento ETL com
PerfView e criar minidespejos com todas
as pilhas de chamadas
Artigo • 13/01/2024

Quando você relata um problema com o Visual Studio, a equipe de produtos da


Microsoft pode solicitar um rastreamento ETL ou minidespejos para coletar informações
adicionais para solução de problemas. Use as etapas a seguir para coletar um
rastreamento ETL ou para criar minidespejos para todas as pilhas de chamadas.

Coletar um rastreamento ETL com PerfView


PerfView é uma ferramenta que cria arquivos ETL (log de rastreamento de eventos) com
base no Rastreamento de Eventos para Windows que pode ser útil na solução de alguns
tipos de problemas do Visual Studio. Em algumas ocasiões, quando você relata algum
problema, a equipe de produto pode solicitar que você execute o PerfView para coletar
informações adicionais.

Instalar o PerfView
Baixe o PerfView do GitHub .

Executar o PerfView
1. Clique com o botão direito do mouse em PerfView.exe no Windows Explorer e,
como administrador, escolha Executar como administrador.
2. No menu Coletar, escolha Coletar.
3. Marque Zip, Mesclar e Tempo de Thread.
4. Aumente MB Circular para 1000.
5. Altere Dir atual para salvar os rastreamentos ETL em uma pasta especificada e
altere o Arquivo de Dados, se você pretende coletar mais de uma vez.
6. Para iniciar a gravação de dados, selecione o botão Iniciar a Coleta.
7. Para interromper a gravação de dados, selecione o botão Parar a Coleta. O arquivo
PrefView.etl.zip será salvo no diretório especificado.

O PerfView pode armazenar apenas os dados mais recentes que se encaixam em seu
buffer. Portanto, tente interromper a coleta logo depois que o Visual Studio for iniciado
para congelá-lo ou diminuí-lo. Não colete por mais de 30 segundos depois de alcançar
um problema.

Criar minidespejos para um processo do Visual


Studio com todas as pilhas de chamadas
Em alguns casos, a Microsoft pode solicitar o minidespejo de um processo em execução
do Visual Studio com informações de todas as pilhas de chamadas. Para coletar essas
informações, execute estas etapas:

Criar o arquivo de minidespejo


1. Inicie uma nova instância do Visual Studio.

2. No menu principal, escolha Depurar>Anexar ao Processo.

3. Escolha Selecionar, marque as caixas de seleção Gerenciadas e Nativas relevantes


e escolha OK.

4. Selecione a outra instância do Visual Studio a anexar na lista de processos em


execução e depois selecione Anexar.

5. No menu principal, escolha Depurar>Interromper Tudo.


6. No menu principal, escolha Depurar>Salvar Despejo Como.

Obter as pilhas de chamadas do minidespejo


1. Abra o arquivo de despejo no Visual Studio.
2. Vá para Ferramentas>Opções>Depuração>Símbolos e verifique se a caixa
Servidores de Símbolos Microsoft está marcada nos locais do arquivo de
símbolos(.pdb).
3. Abra a janela Comando (Exibição>Outras janelas>Janela de Comando).
4. Digite '~*k'. A janela exibe as pilhas de chamadas de todos os threads.
5. Copie todo o texto da Janela de Comando e salve em um arquivo de texto.
6. Anexe o arquivo txt ao bug.
Diretrizes do Developer Community
Artigo • 19/06/2023

A Developer Community rastreia problemas e sugestões de recursos para o Visual


Studio.

Enviando problemas e sugestões


A Visual Studio Developer Community rastreia problemas e sugestões de recursos
para o Visual Studio.

Antes de enviar um problema


Pesquise seu problema na Visual Studio Developer Community para garantir que ele
ainda não exista. Se você achar que seu problema já existe, faça comentários relevantes
e dê seu voto.

Se o problema for uma pergunta, envie o questionamento para a comunidade no Stack


Overflow usando a tag visual-studio. Temos uma equipe de suporte ao cliente
monitorando essa tag e ela ajudará a responder às perguntas.

Se você não encontrar um problema existente que descreva seu bug ou recurso, envie
um problema usando as diretrizes abaixo.

Escrever um bom relatório de bugs ou sugestão de


recurso
Registre apenas um problema ou solicitação de recurso por problema.
Combinar vários problemas ou solicitações de recursos em um único problema
torna mais difícil para nós diagnosticar e mais difícil para outros usuários
votarem no seu problema.
Não adicione seu problema como um comentário a um problema existente, a
menos que seja para uma entrada idêntica. Muitos problemas são semelhantes,
mas têm causas diferentes, o que torna mais difícil diagnosticar seu problema.

Quanto mais informações você puder fornecer, mais fácil será reproduzir e corrigir
o problema.

Inclua as etapas a seguir em cada problema.


Etapas reproduzíveis (1... 2... 3...) e o que você esperava versus o que realmente
ocorreu.
Imagens, animações ou um link para um vídeo. Imagens e animações ilustram
as etapas de reprodução, mas não as substituem.
Como apropriado, um snippet de código que demonstre o problema ou um link
para um repositório do código que possamos obter facilmente em nosso
computador para recriar o problema.

Lembre-se de executar as seguintes etapas:


Pesquise para ver se existe uma duplicata. Nesse caso, vote na questão
existente, fornecendo comentários ou esclarecimentos adicionais, conforme
necessário.
Recrie o problema depois de desabilitar todas as extensões. Se você achar que
o problema é causado por uma extensão que você instalou, registre um
problema na extensão, respectivamente.
Simplifique seu código em relação ao problema para que possamos isolá-lo de
uma forma melhor.

Mesmo com problemas que incluem detalhes avançados, podemos não conseguir
reproduzir o problema e solicitar mais informações!

Gerenciando registros de problemas


A triagem de um problema é um processo de várias etapas que é feito de forma
colaborativa dentro da equipe de recursos. A triagem geralmente leva uma semana, mas
pode levar mais tempo. O objetivo da triagem é fornecer uma compreensão clara do
que acontecerá com seu problema. Por exemplo, após a triagem, você vai saber se
planejamos corrigir seu problema ou vai aguardar mais comentários da comunidade.

Depois de relatar um problema, os estados indicam onde seus envios estão no seu ciclo
de vida. Enquanto as equipes do produto Visual Studio examinam seus comentários,
elas os definem com um estado adequado. Acompanhe o andamento de seus relatórios
de problemas fazendo referência aos Estados dos problemas e às perguntas frequentes.

Priorizando quais problemas corrigir


Não é possível corrigir todos os problemas relatados. Alguns são muito caros para
corrigir, alguns podem regredir outras áreas de recursos e alguns podem ter um
impacto muito baixo. Entendemos que isso pode ser decepcionante se você tirou um
tempo para nos enviar um relatório de problemas. Todos nós já passamos por isso, seja
neste projeto ou em outros com os quais contribuímos. Se um problema foi encerrado e
você acha que o motivo que demos não é satisfatório, você pode esclarecer seu caso de
uso e solicitar que o problema seja reativado para outra aprovação. Neste ponto,
podemos pedir mais informações a você.

Informações importantes ausentes


Quando um problema apresenta informações importantes ausentes, atribuímos o
estado Precisa de Mais Informações. Comentamos o problema com as informações
específicas de que precisamos e você receberá uma notificação por email. Se não
recebermos as informações dentro de sete dias, enviaremos um lembrete. Depois disso,
fechamos o tíquete após 14 dias de inatividade.

Outro produto
Às vezes, ao relatar um problema, ele acaba sendo causado por outro produto e não
pelo Visual Studio. Pode ser outro aplicativo relacionado ou uma extensão.

Quando isso acontece, fechamos o problema e pedimos que você o abra com o outro
produto. Aqui estão alguns locais comuns para arquivar esses problemas:

SQL Server
Suporte à assinatura do Visual Studio
Office
Windows

Informações adicionais

Como aumentar as chances de um problema de desempenho ser corrigido


Solucionar problemas e criar logs para problemas do MSBuild

Gerenciando sugestões de recursos


Sugestões de recursos são um meio de comunicação entre nós e os membros da
comunidade de desenvolvedores. Tecnicamente, poderíamos manter todas as
solicitações de recursos abertas para sempre. Mas manter os problemas abertos
reduziria a visibilidade da comunidade para o status real de um recurso. Portanto,
fechamos as solicitações de recursos que não abordaremos e atribuímos recursos que
podemos abordar para o rótulo Em Revisão.

Se você sugeriu um recurso, pode ficar decepcionado por não planejarmos atender à
sua solicitação. É compreensível. Todos nós já passamos por isso - neste projeto ou em
outros com os quais contribuímos. Mas tenha certeza de que adoramos suas opiniões.
Não leve para o lado pessoal quando fecharmos ou atribuirmos o rótulo Em Revisão à
sua sugestão. Se você achar que sua sugestão de recurso merece permanecer aberta,
esclareça seu caso de uso e entre em contato conosco ou reúna mais votos.

Em nosso processo de tomada de decisão, analisamos as seguintes características sobre


a sugestão de recurso:

Corresponde à direção geral do produto?


Temos condições de construí-lo e mantê-lo?
Ele se alinha à nossa estratégia geral de roteiro?
Ele tem apoio da comunidade, conforme indicado por votos e comentários?
Nós gostamos? Mesmo com baixo apoio da comunidade?

Quando não pudermos responder "sim" a nenhuma dessas perguntas, vamos fechá-la.
Mas, muitas vezes, a sugestão permanecerá aberta como Em Revisão para coletar mais
comentários da comunidade.

Se uma sugestão não corresponder à direção geral do produto, a fecharemos como


Fora do Escopo. Por exemplo, podemos ter investimentos semelhantes em outros
membros da família de produtos do Visual Studio. Ou o recurso sugerido pode ser
relevante apenas para algumas pessoas, sendo uma extensão mais adequada para
fornecê-lo.

Acompanhe o progresso da sugestão de recurso fazendo referência aos Estados de


sugestão e às perguntas frequentes.

Etiqueta de discussão
Para manter a conversa clara e transparente, limite a discussão ao inglês e mantenha a
relevância para o problema. Seja atencioso com os outros e sempre tente ser cortês e
profissional.

Para obter mais informações, confira o Código de Conduta da Comunidade Microsoft .

Qualquer violação à etiqueta de discussão pode levar à remoção do comentário e,


eventualmente, à exclusão do usuário.

Privacidade dos dados


Comentários e respostas ficam publicamente visíveis, mas todos os arquivos anexados
são compartilhados apenas com a Microsoft. Essa visibilidade é útil porque permite que
toda a comunidade veja os problemas e as soluções que outros usuários descobriram.
Se você está preocupado com a privacidade dos dados ou da identidade, há opções
para isso. Leia mais sobre Privacidade de dados da Developer Community privacidade
de dados.

Conteúdo relacionado
Acesse a Visual Studio Developer Community para relatar problemas, sugerir recursos
ou navegar pelos tíquetes existentes. Aproveite!
Privacidade de dados da Comunidade
de Desenvolvedores
Artigo • 17/03/2023

Por padrão, todas as informações nos relatórios de problema na Comunidade de


Desenvolvedores , inclusive todos os comentários e as respostas, ficam visíveis
publicamente. Isso é útil porque permite que toda a comunidade veja os problemas, as
soluções e as soluções alternativas que outros usuários descobriram. No entanto, se
você está preocupado com a privacidade dos dados ou da identidade, há opções para
isso. Você também pode exibir, exportar ou excluir seus dados de comentários.

Privacidade da identidade
Se você está preocupado com a revelação da sua identidade, crie uma conta
Microsoft que não divulgue todos os detalhes sobre você. Use essa conta para criar
seu relatório.

Privacidade dos dados


Se você está preocupado com a privacidade dos dados, não coloque nada que deseja
manter particular no título ou no conteúdo do relatório inicial, que sempre é público.
Nesse caso, crie o relatório e, em seguida, observe que você enviará detalhes de forma
particular em um comentário separado. Depois de criar o relatório do problema,
especifique quem pode ver as respostas e os anexos:

1. No relatório que você criou, escolha Adicionar comentário para criar uma
descrição particular do problema.

2. No editor de resposta, use o controle abaixo dos botões Enviar e Cancelar para
especificar a audiência da resposta. Escolha Visível por moderadores e o cartaz
original para limitar a visibilidade aos funcionários da Microsoft e a você mesmo.
Somente as pessoas que você especifica podem ver o comentário e as imagens, os
links ou o código incluídos nele. Todas as respostas no comentário têm a mesma
visibilidade que o comentário original. Isso é verdadeiro mesmo quando o controle
de privacidade nas respostas não mostra corretamente o status de visibilidade
restrito.

3. Adicione a descrição e quaisquer outras informações, imagens e anexos de arquivo


necessários para a reprodução. Escolha o botão Enviar para enviar essas
informações em particular.

7 Observação

No site Developer Community, há um limite de 2 GB em arquivos anexados e


de 10 arquivos. Se você precisar carregar um arquivo maior, envie um novo
relatório de problema ou solicite uma URL de upload a um funcionário da
Microsoft em um comentário particular. Quando encerramos um problema, os
anexos associados serão excluídos após 90 dias.

Para manter sua privacidade e manter informações confidenciais fora da exibição


pública, tome cuidado para manter todas as interações com a Microsoft em respostas
em um comentário com restrição de visibilidade. Respostas a outros comentários
podem gerar a divulgação acidental de informações confidenciais.

Dados que coletamos


A Microsoft coleta dados para nos ajudar a reproduzir e solucionar problemas relatados
com produtos da Família do Visual Studio. Esses dados incluem dados pessoais e
comentários públicos.

Os comentários públicos incluem: problemas relatados, comentários e soluções.

Os dados pessoais incluem:

Suas informações de perfil do Developer Community ;


Preferências e notificações;
Anexos e logs gerados pelo sistema fornecidos relatando um problema no Visual
Studio ou por meio do Developer Community ;
Seus votos.

Quando a ação Relatar um problema é iniciada com o Instalador do Visual Studio, nós
coletamos o log de instalação mais recente.
Quando a ação Relatar um problema é iniciada com o Visual Studio, nós coletamos um
ou mais dos seguintes tipos de dados:

Entradas do Watson e do .NET do log de eventos

Arquivo de log de atividades na memória do Visual Studio

Arquivos do PerfWatson, se a coleção do Watson estiver habilitada

Arquivos de log do LiveShare, caso existam

Arquivos de log do Xamarin, caso existam

Arquivos de log do NuGet, caso existam

Arquivos de log do depurador da Web, caso existam

Logs do hub de serviço e logs de erro da MEF, caso existam

Logs do Python, caso existam

Logs do editor LSP do Razor, caso existam

Logs do Windows Forms, caso existam

Uma captura de tela, caso você escolha incluí-la

Dados de gravação, caso você escolha incluir gravações, como:


Etapas para reproduzir o problema
Arquivo de rastreamento de ETL
Arquivo de despejo

7 Observação

Arquivos de log, capturas de tela e dados de gravação que você envia podem
aumentar significativamente a capacidade da Microsoft de entender e responder
ao seu problema. Portanto, recomendamos incluí-los. Para proteger sua
privacidade, todos os arquivos de log anexados, capturas de tela e dados de
gravação são enviados somente à Microsoft quando você fornece permissão
enviando o relatório de problema com o qual eles estão incluídos. Você pode ver
quais arquivos estão incluídos na etapa "Resumo" da janela "Relatar um problema"
antes de enviar o relatório. Você pode excluir arquivos de log do sistema do
relatório desmarcando "Anexar logs do sistema" na etapa "Resumo". Para
referência, confira a captura de tela a seguir.

Processamento de solicitação da entidade de


dados do GDPR
Damos suporte ao GDPR (Regulamento Geral sobre a Proteção de Dados) e a outras
solicitações de regulamentação de proteção de dados por meio do site do Developer
Community . Você pode exibir, exportar ou excluir seus dados de comentários.

Visualizar
Para exibir seus dados relacionados a comentários, siga estas etapas:

1. Entre em Developer Community . No canto superior direito, clique em seu perfil


e selecione Perfil e Preferências.

2. Clique em qualquer uma das guias Perfil, Notificações, Atividade e Anexos para
exibir os dados enviados aos sistemas de comentários.

Perfil refere-se ao seu perfil do Developer Community, incluindo nome de


usuário, endereço de email, sobre etc.
Notificações são como você controla as notificações recebidas por email.
Atividade fornecerá os itens de comentários nos quais você esteve ativo
(postado, comentado etc.) e as atividades executadas.
Anexos é uma lista do histórico de anexos em um formato como FileName
was attached to the problem "ProblemName" Tue, Apr 10, 18 2:27 PM .

Exportação
Você pode exportar seus dados de comentários como parte da DSR. Criaremos um ou
mais arquivos .zip que incluirão:

Suas informações de perfil do Developer Community;


Configurações de Preferências e notificação;
Anexos fornecidos relatando um problema no Visual Studio ou por meio de
Developer Community.

7 Observação

Excluiremos os seguintes comentários públicos que você forneceu do seu arquivo


morto: comentários, soluções e problemas relatados.

Para iniciar uma Exportação, siga estas etapas:

1. Entre em Developer Community . No canto superior direito, clique em seu perfil e


selecione Perfil e Preferências.
2. Clique na guia Privacidade e, em seguida, clique em Criar um Arquivo Morto para
solicitar a exportação de seus dados.
3. O Status do Arquivo Morto será atualizado para mostrar que estamos preparando
os dados. O período de tempo antes que os dados sejam disponibilizados
depende da quantidade de dados que precisamos exportar.
4. Quando os dados estiverem prontos, enviaremos um email.
5. Clique em Baixar Arquivo Morto no email ou volte para a guia Privacidade para
baixar seus dados.

7 Observação

Não enviaremos emails se você optar por não receber notificações na guia
Notificações.
Se você solicitar Exportar novamente, removeremos o arquivo antigo e
criaremos um novo.

Excluir
A exclusão removerá as seguintes informações sobre você do Developer Community:

Informações de perfil;
Configurações de Preferências e notificação;
Anexos fornecidos relatando um problema no Visual Studio ou por meio de
Developer Community.
Seus votos

7 Observação

Não excluiremos, mas anonimizaremos, as seguintes informações públicas: seus


comentários, suas soluções, problemas que você relatou.

) Importante

A exclusão de uma conta Microsoft ou Microsoft Entra ID dispara o processo de


Exclusão para o Developer Community.

Para iniciar uma Exclusão, siga estas etapas:

1. Entre em Developer Community . No canto superior direito, clique em seu perfil e


selecione Perfil e Preferências.
2. Clique na guia Privacidade e, em seguida, clique em Excluir seus dados e conta
para começar a excluir seus dados.
3. Uma tela de confirmação será exibida.
4. Digite "excluir" na caixa e clique em Excluir minha conta.

Depois de clicar em Excluir minha conta:

Você sairá do serviço.


Excluiremos sua conta no Developer Community, seus dados pessoais e anexos.
Iremos anonimizar seus comentários públicos. Seus comentários públicos
permanecerão disponíveis no Developer Community e serão indicados como
relatados por um usuário anônimo.
Não enviaremos um email após a exclusão da sua conta, pois você não estará mais
presente no sistema.
Se você relatar um novo problema ou fizer logon no Developer Community, você
será identificado como um novo usuário.
Se você excluir sua conta do Developer Community, não a excluiremos de outros
serviços da Microsoft.
Conteúdo relacionado
Como relatar um problema com o Visual Studio
Privacidade de dados do relatório de problema do C++

Você também pode gostar