Condividi tramite


Estendere il modello a oggetti del progetto di base

Un sottotipo di progetto può estendere il modello a oggetti di automazione del progetto di base nelle posizioni seguenti:

  • Project.Extender("<ProjectSubtypeName>"): consente a un sottotipo di progetto di offrire un oggetto con metodi personalizzati dall'oggetto Project . Un sottotipo di progetto può usare Automation Extenders per esporre l'oggetto Project . L'interfaccia IInternalExtenderProvider implementata nell'aggregatore di sottotipo del progetto principale deve offrire il relativo oggetto per l'oggetto VSHPROPID_ExtObjectCATID from __VSSPROPID2 (corrispondente a un itemid valore di VSITEMID. RADICE) CATID.

  • ProjectItem.Extender("<ProjectSubtypeName>"): consente a un sottotipo di progetto di offrire un oggetto con metodi personalizzati di un particolare ProjectItem oggetto all'interno del progetto. Un sottotipo di progetto può usare gli extender di automazione per esporre questo oggetto. L'interfaccia IInternalExtenderProvider implementata nell'aggregatore di sottotipo del progetto principale deve offrire il relativo oggetto per l'oggetto VSHPROPID_ExtObjectCATID da __VSHPROPID2 (corrispondente a un CATID desiderato VSConstants.VSITEMID).

  • Project.Properties: questa raccolta espone le proprietà indipendenti dalla configurazione dell'oggetto Project . Per altre informazioni sulle proprietà di Project, vedere Properties. Un sottotipo di progetto può usare Automation Extenders per aggiungere le relative proprietà a questa raccolta. L'interfaccia IInternalExtenderProvider implementata nell'aggregatore di sottotipo del progetto principale deve offrire il relativo oggetto per da VSHPROPID_BrowseObjectCATID__VSHPROPID2 (corrispondente a un itemid valore di VSITEMID. RADICE) CATID.

  • Configuration.Properties: questa raccolta espone le proprietà dipendenti dalla configurazione del progetto per una particolare configurazione, ad esempio Debug. Per ulteriori informazioni, vedere Configuration. Un sottotipo di progetto può usare Automation Extenders per aggiungere le relative proprietà a questa raccolta. L'interfaccia IInternalExtenderProvider implementata nell'aggregatore di sottotipo principale del progetto offre il relativo oggetto per CATID VSHPROPID_CfgBrowseObjectCATID (corrispondente a un itemid valore di VSITEMID. Radice). L'interfaccia IVsCfgBrowseObject viene usata per distinguere un oggetto di esplorazione della configurazione da un altro.

Vedi anche