Поделиться через


Расширение объектной модели базового проекта

Подтип проекта может расширить объектную модель автоматизации базового проекта в следующих местах:

  • Project.Extender("<ProjectSubtypeName>"): это позволяет подтипу проекта предложить объект с пользовательскими методами Project из объекта. Подтип проекта может использовать расширения службы автоматизации для предоставления Project объекта. Интерфейс, IInternalExtenderProvider реализованный в агрегате подтипа основного проекта, должен предложить объект для VSHPROPID_ExtObjectCATID объекта from __VSSPROPID2 (соответствующего itemid значению VSITEMID. Root) CATID.

  • ProjectItem.Extender("<ProjectSubtypeName>"): это позволяет подтипу проекта предложить объект с настраиваемыми методами из определенного ProjectItem объекта в проекте. Подтип проекта может использовать расширения автоматизации для предоставления этого объекта. Интерфейс, IInternalExtenderProvider реализованный в агрегате основного типа проекта, должен предложить объект для VSHPROPID_ExtObjectCATID объекта ( __VSHPROPID2 соответствующего требуемому VSConstants.VSITEMID) CATID.

  • Project.Properties: эта коллекция предоставляет свойства, независимые от конфигурации Project объекта. Дополнительные сведения о свойствах Project см. в разделе Properties. Подтип проекта может использовать расширения службы автоматизации для добавления свойств в эту коллекцию. Интерфейс IInternalExtenderProvider , реализованный в агрегате основного типа проекта, должен предложить объект для VSHPROPID_BrowseObjectCATID объекта from __VSHPROPID2 (соответствующего itemid значению VSITEMID. Root) CATID.

  • Configuration.Properties: эта коллекция предоставляет свойства, зависящие от конфигурации, для конкретной конфигурации (например, отладка). Дополнительные сведения см. в разделе Configuration. Подтип проекта может использовать расширения службы автоматизации для добавления свойств в эту коллекцию. Интерфейс, IInternalExtenderProvider реализованный в агрегате основного типа проекта, предлагает объект для CATID VSHPROPID_CfgBrowseObjectCATID (соответствующее itemid значению VSITEMID). Root). Интерфейс IVsCfgBrowseObject используется для различения одного объекта обзора конфигурации от другого.

См. также