Procedura: Fornire l'automazione per windows
È possibile fornire l'automazione per il documento e le finestre degli strumenti. La specificazione di automazione è consigliabile ogni volta che si desidera rendere disponibili agli oggetti ActiveX in una finestra e l'ambiente non fornisce un oggetto ActiveX pronto, come in un elenco attività.
Automazione per le finestre degli strumenti
L'ambiente fornisce l'automazione in una finestra degli strumenti restituendo un oggetto standard di Window come illustrato nella procedura riportata di seguito:
Per fornire automazione per le finestre degli strumenti
Chiamare il metodo di GetProperty tramite l'ambiente con VSFPROPID_ExtWindowObject come parametro di VSFPROPID per ottenere l'oggetto di Window .
Quando un chiamante richiede un oggetto di automazione VSPackage-specifico per la finestra degli strumenti con Object, l'ambiente chiama QueryInterface per IExtensibleObject, IVsExtensibleObject, o le interfacce di IDispatch . sia IExtensibleObject che IVsExtensibleObject forniscono un metodo di GetAutomationObject .
Quando l'ambiente viene quindi chiamato il metodo di GetAutomationObject che passa NULL, rispondere passato nuovamente l'oggetto VSPackage-specifico.
Se la chiamata al metodo QueryInterface per IExtensibleObject e l'esito negativo di IVsExtensibleObject , nell'ambiente chiama QueryInterface per IDispatch.
Automazione per le finestre di documento
Un oggetto di Document standard è disponibile anche dall'ambiente, sebbene un editor può avere la propria implementazione dell'oggetto di T:EnvDTE.Document implementando l'interfaccia di IExtensibleObject e risposta a GetAutomationObject.
Inoltre, un editor possibile fornire un oggetto di automazione VSPackage-specifico, recuperato dal metodo di Object , implementando interfacce di IExtensibleObject o di IVsExtensibleObject . Esempi di estensibilità di Visual Studio Consente un oggetto di automazione documento-specifico RTF.