Fornire l'automazione per windows

È possibile fornire l'automazione per le finestre dei documenti e degli strumenti. Fornire l'automazione è consigliabile ogni volta che si desidera rendere disponibili oggetti di automazione in una finestra e l'ambiente non fornisce già un oggetto di automazione pronto, come avviee con un elenco di attività.

Automazione per le finestre degli strumenti

L'ambiente fornisce l'automazione in una finestra degli strumenti restituendo un oggetto standard Window , come illustrato nella procedura seguente:

  1. Chiamare il GetProperty metodo tramite l'ambiente con __VSFPROPID. VSFPROPID_ExtWindowObject come VSFPROPID parametro per ottenere l'oggetto Window .

  2. Quando un chiamante richiede un oggetto di automazione specifico di VSPackage per la finestra degli strumenti tramite Object, l'ambiente chiama QueryInterfaceIExtensibleObject, IVsExtensibleObjecto le IDispatch interfacce. Entrambi IExtensibleObject e IVsExtensibleObject forniscono un GetAutomationObject metodo.

  3. Quando l'ambiente chiama quindi il GetAutomationObject metodo passando NULL, rispondere passando di nuovo l'oggetto specifico di VSPackage.

  4. Se la chiamata QueryInterface a IExtensibleObject e IVsExtensibleObject ha esito negativo, l'ambiente chiama QueryInterface .IDispatch

Automazione per le finestre dei documenti

Un oggetto standard Document è disponibile anche dall'ambiente, anche se un editor può avere una propria implementazione dell'oggetto implementando IExtensibleObject l'interfaccia Document e rispondendo a GetAutomationObject.

Inoltre, un editor può fornire un oggetto di automazione specifico di VSPackage, recuperato tramite il Object metodo , implementando le IVsExtensibleObject interfacce o IExtensibleObject . Gli esempi VSSDK contribuiscono a un oggetto di automazione specifico del documento RTF.