Compartir a través de


Arquitectura de VSPackage de control de código fuente

Un paquete de control de código fuente es un Paquete que usa los servicios que Visual Studio el IDE proporciona. En cambio, un paquete de control de código fuente proporciona su funcionalidad como servicio de control de código fuente. además, un paquete de control de código fuente es una alternativa más versátil que un complemento de control de código fuente para el control de código fuente de integración en Visual Studio.

un complemento de control de código fuente que implementa el complemento de control de código fuente API sigue un contrato estricto. Por ejemplo, un complemento no se puede reemplazar la interfaz de usuario predeterminada de (UI) Visual Studio . por otra parte, el complemento de control de código fuente API no permite a un complemento para implementar su propio modelo de control de código fuente. un paquete de control de código fuente, sin embargo, supera ambas limitaciones. Un paquete de control de código fuente tiene control total sobre la experiencia de control de código fuente de un usuario de Visual Studio . Además, un paquete de control de código fuente puede utilizar su propio modelo y lógica de control de código fuente, y puede definir todas las interfaces de usuario CONTROL-relacionadas de origen.

Empaquetar componentes de control de código fuente

Como se muestra en el diagrama de la arquitectura, un componente de Visual Studio denominado el código auxiliar de control de código fuente es un Paquete que integra un paquete de control de código fuente con Visual Studio.

El código auxiliar de control de código fuente controla las tareas siguientes.

  • Proporciona la interfaz de usuario común necesaria para el registro del paquete de control de código fuente.

  • carga un paquete de control de código fuente.

  • Establece un paquete de control de código fuente como activo o inactivo.

El código auxiliar de control de código fuente busca el servicio activo para el paquete de control de código fuente y enruta todas las llamadas al servicio de entrada del IDE a ese paquete.

El paquete de adaptador de control de código fuente es un paquete de control de código fuente especial que Visual Studio proporciona. Este paquete es el componente central para admitir los complementos de control de código fuente basados en el complemento de control de código fuente API. Cuando un complemento de control de código fuente es el complemento activo, el código auxiliar de control de código fuente envía sus eventos al paquete de adaptador de control de código fuente. A su vez, el paquete de adaptador de control de código fuente se comunica con el complemento de control de código fuente utilizando el complemento de control de código fuente API y también proporciona una interfaz de usuario predeterminada que es común para todos los complementos de control de código fuente.

Cuando un paquete de control de código fuente es el paquete activo, por otra parte, el código auxiliar de control de código fuente se comunica directamente con el paquete mediante interfaces de paquete de control de código fuente de Visual Studio SDK . El paquete de control de código fuente es responsable de hospedar su propia interfaz de usuario del control de código fuente.

Gráfico de la arquitectura de control de código fuente

Para un paquete de control de código fuente, Visual Studio no proporciona código de control de código fuente o API para la integración. Compárelo con el enfoque antes en crear un complemento de control de código fuente donde el complemento de control de código fuente tiene que implementar un conjunto estrictamente de funciones y de devoluciones de llamada.

Como cualquier VSPackage, un paquete de control de código fuente es un objeto COM que se puede crear con CoCreateInstance. El Paquete se pone a disposición Visual Studio IDE implementando IVsPackage. Cuando se ha creado una instancia, un VSPackage recibe un puntero de sitio y una interfaz deIServiceProvider que proporciona acceso de VSPackage a los servicios y las interfaces disponibles en el IDE.

La escritura de un paquete de control de código fuente VSPackage-basado requiere una experiencia más de programación avanzada que escribiendo un complemento API-basado complemento de control de código fuente.

Vea también

Referencia

IVsPackage

Otros recursos

Introducción al control de código fuente VSPackages