Estrutura do VSPackage (VSPackage de controle do código-fonte)
O SDK do Pacote de Controle do Código-Fonte fornece diretrizes para a criação de um VSPackage que permitem que um implementador de controle do código-fonte integre sua funcionalidade de controle do código-fonte com o ambiente do Visual Studio. Um VSPackage é um componente COM que normalmente é carregado sob demanda pelo ambiente de desenvolvimento integrado (IDE) do Visual Studio com base nos serviços que são anunciados pelo pacote em suas entradas do Registro. Todo VSPackage deve implementar IVsPackageo . Um VSPackage normalmente consome serviços oferecidos pelo IDE do Visual Studio e oferece alguns serviços próprios.
Um VSPackage declara seus itens de menu e estabelece um estado de item padrão por meio do arquivo .vsct. O IDE do Visual Studio exibe os itens de menu nesse estado até que o VSPackage seja carregado. Posteriormente, a implementação do método VSPackage é chamada para habilitar ou desabilitar itens de QueryStatus menu.
Características do pacote de controle do código-fonte
Um controle de origem VSPackage é profundamente integrado ao Visual Studio. A semântica VSPackage inclui:
Interface a ser implementada em virtude de ser um VSPackage (a
IVsPackage
interface)Implementação do UI Command (arquivo .vsct e implementação da IOleCommandTarget interface)
Registro do VSPackage com o Visual Studio.
O controle de origem VSPackage deve se comunicar com essas outras entidades do Visual Studio:
Projetos
Editores
Soluções
Windows
A tabela de documentos em execução
Serviços de ambiente do Visual Studio que podem ser consumidos
Serviço SVsRegisterScciProvider
Interfaces VSIP implementadas e chamadas
Um pacote de controle de origem é um VSPackage e, portanto, ele pode interagir diretamente com outros VSPackages registrados no Visual Studio. Para fornecer toda a amplitude da funcionalidade de controle do código-fonte, um VSPackage de controle do código-fonte pode lidar com interfaces fornecidas por projetos ou pelo shell.
Cada projeto no Visual Studio deve implementar IVsProject3 para ser reconhecido como um projeto dentro do IDE do Visual Studio. No entanto, essa interface não é especializada o suficiente para o controle do código-fonte. Projetos que devem estar sob controle do código-fonte implementam IVsSccProject2. Essa interface é usada pelo controle de código-fonte VSPackage para consultar um projeto para seu conteúdo e para fornecer-lhe glifos e informações de vinculação (as informações necessárias para estabelecer uma conexão entre o local do servidor e o local do disco de um projeto que está sob controle do código-fonte).
O controle do código-fonte VSPackage implementa , que por sua vez permite que os projetos se registrem para controle do código-fonte e recuperem seus glifos IVsSccManager2de status.
Para obter uma lista completa de interfaces que um VSPackage de controle de origem deve considerar, consulte Serviços e interfaces relacionados.