Compartir a través de


Propiedades y métodos ampliados por subtipos de proyecto

Un subtipo de proyecto tiene mucha capacidad para influir en el comportamiento del proyecto porque se construye como agregador de un proyecto base. En esta sección se resumen algunas de las características que se pueden mejorar o modificar mediante subtipos de proyecto.

Características adquiridas por agregación

En la tabla siguiente se resumen muchos de los métodos que la agregación permite que los subtipos del proyecto invaliden en proyectos base.

Métodos invalidados por agregación Subtipo de proyecto
Desde IVsHierarchy:

GetProperty

SetProperty

GetGuidProperty

SetGuidProperty
Habilita un subtipo de proyecto para

- Cambiar subtítulo e icono del nodo del proyecto.
: invalida completamente el objeto de proyecto Browse .
- Controlar si se puede cambiar el nombre del proyecto.
- Control del criterio de ordenación.
- Controlar el contexto del usuario para obtener ayuda dinámica.
Desde IVsProject:

GetItemContext
Permite que un subtipo de proyecto controle qué servicios contextuales se proporcionan a los diseñadores y editores.
Desde IOleCommandTarget:

QueryStatus

Exec

QueryStatusCommand

ExecCommand
Habilita un subtipo de proyecto para

- Participar en el enrutamiento de comandos para los comandos del proyecto.
- Agregue, quite o deshabilite los comandos ambientales del proyecto y Explorador de soluciones comandos activos.
IVsFilterAddProjectItemDlg2 Permite que el subtipo del proyecto filtre lo que ve el usuario en el cuadro de diálogo Agregar nuevo elemento .
IVsSingleFileGeneratorFactory Habilita un subtipo de proyecto para

- Determine el generador predeterminado dado una extensión de archivo.
- Asigne un nombre de generador legible a un objeto COM.

Propiedades usadas por subtipos de proyecto

El entorno y el sistema de proyectos base pueden usar las propiedades de __VSSPROPID y __VSSPROPID2 las enumeraciones que se detallan en la tabla siguiente para permitir que un subtipo de proyecto controle varias características del sistema de proyectos.

PROPIEDAD VSHPROPID Subtipo de proyecto
AddItemTemplatesGuid Permite que un subtipo de proyecto controle el contenido del cuadro de diálogo Agregar elemento . El subtipo del proyecto puede proporcionar una nueva especificación de directorios de plantilla, agregar nuevos tipos de elementos, quitar elementos existentes y reorganizar un subconjunto de los elementos en el cuadro de diálogo Agregar elemento del proyecto base.
PropertyPagesCLSIDList Permite que un subtipo de proyecto agregue o quite páginas de propiedades independientes de la configuración.
CfgPropertyPagesCLSIDList Permite que un subtipo de proyecto agregue o quite páginas de propiedades dependientes de la configuración.
ExtObjectCATID Permite que un subtipo de proyecto proporcione un extensor de Automatización para los objetos de proyecto o proyecto sabiendo el CATID extensor. Por ejemplo, un subtipo de proyecto puede proporcionar un objeto personalizado Project.Extender("<subtype>") .
BrowseObjectCATID Permite que un subtipo de proyecto proporcione un extensor de automatización para el Browse objeto sabiendo el CATID extensor. Por ejemplo, un subtipo de proyecto puede agregar propiedades adicionales a la Properties colección.
CfgBrowseObjectCATID Permite que un subtipo de proyecto proporcione un extensor de Automatización para el objeto de examen de configuración del proyecto. Por ejemplo, un subtipo de proyecto puede agregar propiedades adicionales a la Properties colección.
CfgExtObjectCATID Permite que un subtipo de proyecto proporcione un extensor de Automation para el objeto de configuración.
DefaultPlatformName Permite que un subtipo de proyecto determine el nombre de la plataforma para los objetos de configuración del proyecto.

El proyecto base proporciona una implementación predeterminada de las propiedades anteriores. El proyecto base obtiene estos mediante una llamada QueryInterface a para IVsHierarchy en el subtipo de proyecto más externo, lo que permite que el subtipo del proyecto invalide la implementación de las propiedades.

Consulte también