Información general sobre el objeto y la interfaz MAPI
Hace referencia a: Outlook 2013 | Outlook 2016
Un objeto MAPI es una clase de objeto de C++ o una estructura de datos de C heredada de una o varias interfaces MAPI, o colecciones de funciones relacionadas. Estos conjuntos de funciones relacionadas son conocidas por los desarrolladores de C++ como funciones virtuales puras. Para una función virtual pura, MAPI proporciona solo el prototipo de función, no una implementación. Se espera que una aplicación cliente, un proveedor de servicios o MAPI proporcione esta implementación mediante la creación de una clase de objeto que herede de la interfaz y se ajuste a las descripciones de función de la API de mensajería. Solo se puede crear una instancia de una interfaz MAPI a través de una clase heredada.
Hay muchos objetos MAPI diferentes, cada objeto que hereda de una interfaz que, en última instancia, se hereda de la interfaz IUnknown . IUnknown es la interfaz base del modelo de objetos componentes OLE (COM). Proporciona objetos MAPI con un mecanismo estándar para la comunicación y el control. COM determina cómo controlan los implementadores de objetos problemas como la administración de memoria, la administración de parámetros y el multithreading. Al ajustarse a este modelo, un implementador de objetos se adhiere a un contrato según lo especificado por las interfaces incluidas en el objeto .
Muchas interfaces MAPI se heredan directamente de IUnknown, mientras que otras se heredan indirectamente a través de una de las otras dos interfaces base: IMAPIProp : IUnknown para la administración de propiedades y IMAPIContainer : IMAPIProp para el acceso a carpetas y libretas de direcciones. Las interfaces base nunca se implementan como objetos independientes independientes; siempre se implementan como parte de otros objetos, objetos que implementan interfaces derivadas.
MAPI define muchos tipos de objetos, cada uno implementado por uno o varios componentes MAPI. Los objetos implementados por los clientes los usan MAPI, los proveedores de servicios y los componentes de formulario personalizados. Los objetos implementados por los proveedores de servicios suelen ser utilizados por MAPI y por los clientes. Otros componentes del formulario y los clientes usan los objetos implementados por los proveedores de bibliotecas de formularios y los servidores de formularios.