Compartir a través de


IMAPIForm::DoVerb

Hace referencia a: Outlook 2013 | Outlook 2016

Solicita que el formulario realice las tareas que asocia con un verbo específico.

HRESULT DoVerb(
  LONG iVerb,
  LPMAPIVIEWCONTEXT lpViewContext,
  ULONG_PTR hwndParent,
  LPCRECT lprcPosRect
);

Parameters

iVerb

[in] Número asociado a uno de los verbos del formulario.

lpViewContext

[in] Puntero a un objeto de contexto de vista. El parámetro lpViewContext puede ser null.

hwndParent

[in] Identificador de la ventana primaria de los cuadros de diálogo o ventanas que muestra este método. El parámetro hwndParent debe ser null si el cuadro de diálogo o la ventana no son modales.

lprcPosRect

[in] Puntero a una estructura RECT de Win32 que contiene el tamaño y la posición de la ventana del formulario.

Valor devuelto

S_OK

El verbo se invocó correctamente.

OLEOBJ_S_CANNOT_DOVERB_NOW

El verbo representado por el parámetro iVerb es válido, pero el formulario no puede realizar las operaciones asociadas actualmente con él.

Comentarios

Los visores de formularios llaman al método IMAPIForm::D oVerb para solicitar que el formulario realice las tareas que asocia a cada verbo compatible con el formulario.

Cada uno de los verbos admitidos se identifica mediante un valor numérico, que se pasa a DoVerb en el parámetro iVerb . Las implementaciones típicas de DoVerb contienen una instrucción switch que prueba los valores que son válidos para el parámetro iVerb para el formulario.

Notas a los implementadores

Si el visor de formularios especifica un contexto de vista en el parámetro lpViewContext , úselo en la implementación de DoVerb en lugar del contexto de vista pasado en una llamada anterior al método IMAPIForm::SetViewContext . Realice los cambios necesarios en las estructuras de datos internas y no guarde el contexto de vista.

Realice las siguientes tareas en la implementación de DoVerb :

  • Ejecute el código necesario para el verbo determinado asociado al parámetro iVerb .

  • Si es necesario, restaure el contexto de vista original.

  • Si se pasó un número de verbo desconocido, devuelva MAPI_E_NO_SUPPORT. De lo contrario, devuelve un resultado en función del éxito o error de cualquier verbo que se haya ejecutado.

  • Cierre el formulario. Siempre es su responsabilidad cerrar el formulario una vez completada una llamada a DoVerb .

Algunos verbos, como Print, deben ser modales con respecto a la llamada DoVerb , es decir, la operación indicada debe finalizar antes de que se devuelva la llamada a DoVerb .

Para obtener la estructura RECT usada por la ventana de un formulario, llame a la función GetWindowRect .

No guarde el identificador en el parámetro hwndParent porque, aunque normalmente sigue siendo válido hasta la finalización de DoVerb, se puede destruir inmediatamente al devolver la llamada.

Notas para los llamadores

Puede hacer que los verbos no modales actúen como verbos modales señalando lpViewContext a una implementación de contexto de vista que devuelve la marca de VCSTATUS_MODAL de su método IMAPIViewContext::GetViewStatus .

Para obtener más información sobre los verbos en MAPI, vea Verbos de formulario. Para obtener más información sobre cómo se controlan los verbos en OLE, vea OLE y Data Transfer.

Referencia de MFCMAPI

Para obtener un ejemplo de código de MFCMAPI, vea la siguiente tabla.

Archivo Función Comment
MyMAPIFormViewer.cpp
CMyMAPIFormViewer::CallDoVerb
MFCMAPI usa el método IMAPIForm::D oVerb para invocar un verbo en un formulario.

Vea también

IMAPIForm::SetViewContext

IMAPIViewContext::GetViewStatus

IMAPIForm : IUnknown

MFCMAPI como un ejemplo de código

Verbos de formulario