Compartir a través de


Ampliar el modelo de objetos del proyecto base

Un subtipo de proyecto puede extender el modelo de objetos de automatización del proyecto base en los siguientes lugares:

  • Project.Extender("<ProjectSubtypeName>"): esto permite que un subtipo de proyecto ofrezca un objeto con métodos personalizados del Project objeto . Un subtipo de proyecto puede usar extensores de Automation para exponer el Project objeto. La IInternalExtenderProvider interfaz implementada en el agregador de subtipos de proyecto principal debe ofrecer su objeto para desde __VSSPROPID2VSHPROPID_ExtObjectCATID (correspondiente a un itemid valor de VSITEMID. Root) CATID.

  • ProjectItem.Extender("<ProjectSubtypeName>"): esto permite que un subtipo de proyecto ofrezca un objeto con métodos personalizados de un objeto determinado ProjectItem dentro del proyecto. Un subtipo de proyecto puede usar extensores de automatización para exponer este objeto. La IInternalExtenderProvider interfaz implementada en el agregador de subtipos de proyecto principal debe ofrecer su objeto para desde VSHPROPID_ExtObjectCATID__VSHPROPID2 (correspondiente a un CATID deseado VSConstants.VSITEMID).

  • Project.Properties: esta colección expone las propiedades independientes de la configuración del Project objeto. Para más información sobre propiedades Project, vea Properties. Un subtipo de proyecto puede usar extensores de Automation para agregar sus propiedades a esta colección. La IInternalExtenderProvider interfaz implementada en el agregador de subtipos de proyecto principal debe ofrecer su objeto desde VSHPROPID_BrowseObjectCATID__VSHPROPID2 (correspondiente a un itemid valor de VSITEMID. Root) CATID.

  • Configuration.Properties: esta colección expone las propiedades dependientes de la configuración del proyecto para una configuración determinada (por ejemplo, Depurar). Para obtener más información, vea Configuration. Un subtipo de proyecto puede usar extensores de Automation para agregar sus propiedades a esta colección. La IInternalExtenderProvider interfaz implementada en el agregador de subtipos de proyecto principal ofrece su objeto para el CATID VSHPROPID_CfgBrowseObjectCATID (correspondiente a un itemid valor de VSITEMID. Raíz). La IVsCfgBrowseObject interfaz se usa para distinguir un objeto de exploración de configuración de otro.

Consulte también