Comece a desenvolver extensões no Visual Studio
Se você nunca escreveu uma extensão do Visual Studio antes, provavelmente tem algumas perguntas. Listamos alguns dos mais comuns aqui. Se não vir a informação que procura, utilize o botão de comentários no canto superior direito desta página para pedir o que pretende.
Observação
Este artigo aplica-se ao Visual Studio no Windows. Para obter o Visual Studio Code, consulte API de extensão de código do Visual Studio.
De que software preciso para desenvolver extensões do Visual Studio?
Você precisa instalar o SDK do Visual Studio além do Visual Studio para desenvolver extensões do Visual Studio. Você pode instalar o SDK do Visual Studio como parte da instalação regular ou pode instalá-lo mais tarde. Para obter mais informações sobre como instalar o SDK do Visual Studio, consulte Instalar o SDK do Visual Studio.
Que tipos de coisas posso fazer com as extensões do Visual Studio?
O céu é o limite quando se trata de imaginar diferentes extensões do Visual Studio. É claro que a maioria das extensões tem algo a ver com escrever código, mas esse não precisa ser o caso. Aqui estão alguns exemplos dos tipos de extensões que você pode criar:
Suporte para linguagens que não estão incluídas no Visual Studio, com coloração de sintaxe, IntelliSense e suporte a compilador e depuração.
Ferramentas de produtividade que ampliam a experiência principal do IDE com mais modelos, refatoração de código, novas caixas de diálogo ou janelas de ferramentas.
Designers específicos de domínio para cenários como design de dados ou suporte à nuvem.
Para obter exemplos de extensões, confira o Visual Studio Marketplace. Muitas extensões são de código aberto, e o Marketplace inclui links para seu repositório GitHub.
Quais recursos do Visual Studio posso estender?
Em teoria, você pode estender praticamente qualquer parte do Visual Studio: menus, barras de ferramentas, comandos, janelas, soluções, projetos, editores e assim por diante.
Na prática, descobrimos que os recursos que a maioria das pessoas deseja estender são comandos, menus e barras de ferramentas, janelas, IntelliSense e projetos. Aqui estão os links para as seções relevantes:
Estendendo menus e comandos: adicione seus próprios itens aos menus e barras de ferramentas do Visual Studio. Você pode usá-los para iniciar novas funcionalidades do Visual Studio ou seus próprios aplicativos auxiliares externos. Você também pode fornecer atalhos personalizados para seus itens de menu.
Estendendo e personalizando a ferramenta Windows: Estenda as janelas de ferramentas existentes ou crie suas próprias janelas de ferramentas. Por exemplo, você pode adicionar novas propriedades ao Propriedades, ou pode criar uma nova janela de ferramenta para adicionar mais recursos.
Editor e Language Service Extensions: adicione suas próprias personalizações ao IntelliSense fornecido para linguagens do Visual Studio ou crie suporte para novas linguagens de programação. Você pode criar novas completações de instruções, sugestões e novas dicas de ferramentas QuickInfo. Com lâmpadas, você pode adicionar sugestões de refatoração e correções de código para suportar novas linguagens de programação.
Quais modelos de projeto são fornecidos pelo VSSDK?
Os dois principais tipos de extensões são VSPackages e extensões MEF. Em geral, as extensões VSPackage são usadas para extensões que usam ou estendem comandos, janelas de ferramentas e projetos. As extensões MEF são usadas para estender ou personalizar o editor do Visual Studio.
Para extensões Visual C# e Visual Basic, o VSSDK fornece um modelo de projeto VSIX vazio que você pode usar junto com os novos modelos de item que criam comandos de menu, janelas de ferramenta e extensões de editor. Você também pode usar esse modelo para empacotar modelos de projeto, trechos de código e outros artefatos para distribuição a outros usuários.
Para C++, o assistente VSPackage fornece o código para adicionar comandos de menu, janelas de ferramentas e editores personalizados.
Os seguintes artigos mostram como começar com cada tipo de extensão:
Comandos de menu: Criando uma extensão com um comando de menu
Janelas de ferramentas: Criando uma extensão com uma janela de ferramenta
Extensões do editor: Criando uma extensão com um modelo de item do editor
VSPackages Básicos: Criando uma Extensão com um VSPackage
Modelo de projeto VSIX: Introdução ao modelo de projeto VSIX
Como faço para que minha extensão se pareça com o Visual Studio?
Obtenha ótimas dicas para criar a interface do usuário para sua extensão em Diretrizes de Experiência do Usuário do Visual Studio.
Onde posso encontrar exemplos de código VSSDK?
Cada um dos links listados na seção anterior tem instruções passo a passo que mostram como implementar recursos específicos. Você também pode encontrar exemplos VSSDK de código aberto no GitHub em Visual Studio Samples.
Como posso distribuir a minha extensão?
Você pode instalar sua extensão em outro computador ou enviá-la para seus amigos como um arquivo de .vsix, que você instala clicando duas vezes nele. Você pode descobrir mais sobre pacotes VSIX em Shipping Visual Studio Extensions.
Você também pode publicar sua extensão no Visual Studio Marketplace, o que a torna visível para um grande número de clientes do Visual Studio. Para obter um exemplo de empacotamento de uma extensão para o Marketplace, consulte Passo a passo: Publicando uma extensão do Visual Studio. Para obter mais informações sobre o que você precisa fazer para publicar no Marketplace, consulte Produtos e extensões para Visual Studio.