Interfaz de asistente (IDTWizard)
El entorno de desarrollo integrado (IDE) usa la IDTWizard interfaz para comunicarse con los asistentes. Los asistentes deben implementar esta interfaz para poder instalarse en el IDE.
El Execute método es el único método asociado a la IDTWizard interfaz . Los asistentes implementan este método y el IDE llama al método en la interfaz . En el ejemplo siguiente se muestra la firma del método .
/* IDTWizard Method */
STDMETHOD(Execute)(THIS_
/* [in] */ IDispatch *Application,
/* [in] */ long hwndOwner,
/* [in] */ SAFEARRAY * *ContextParams,
/* [in] */ SAFEARRAY * *CustomParams,
/* [out] [in] */ wizardResult *RetVal
);
El mecanismo de inicio es similar para los asistentes Nuevo proyecto y Agregar nuevo elemento . Para iniciar cualquiera de las dos opciones, llame a la IDTWizard interfaz definida en Dteinternal.h. La única diferencia es el conjunto de contexto y parámetros personalizados que se pasan a la interfaz cuando se llama a la interfaz.
En la siguiente información se describe la IDTWizard interfaz que los asistentes deben implementar para que funcionen en el IDE de Visual Studio. El IDE llama al Execute método en el asistente y lo pasa lo siguiente:
El objeto DTE
El objeto DTE es la raíz del modelo de Automation.
Identificador del cuadro de diálogo de la ventana como se muestra en el segmento de código,
hwndOwner ([in] long)
.El asistente lo usa
hwndOwner
como elemento primario para el cuadro de diálogo del asistente.Parámetros de contexto pasados a la interfaz como variante para SAFEARRAY, como se muestra en el segmento de código,
[in] SAFEARRAY (VARIANT)* ContextParams
.Los parámetros de contexto contienen una matriz de valores que son específicos del tipo de asistente que se inicia y el estado actual del proyecto. El IDE pasa los parámetros de contexto al asistente. Para obtener más información, vea Parámetros de contexto.
Parámetros personalizados pasados a la interfaz como una variante para SAFEARRAY como se muestra en el segmento de código,
[in] SAFEARRAY (VARIANT)* CustomParams
.Los parámetros personalizados contienen una matriz de parámetros definidos por el usuario. Un archivo .vsz pasa parámetros personalizados al IDE. Los valores se determinan mediante las
Param=
instrucciones . Para obtener más información, consulte Parámetros personalizados.Los valores devueltos para la interfaz son
wizardResultSuccess = -1, wizardResultFailure = 0 wizardResultCancel = 1 wizardResultBackout = 2