Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
MFC proporciona compatibilidad con un subconjunto de la interfaz de programa de aplicaciones de mensajería de Microsoft (MAPI) en la clase CDocument
. En concreto, CDocument
tiene funciones miembro que determinan si la compatibilidad con correo está presente en el equipo del usuario final y, si es así, habilita un comando Enviar correo cuyo identificador de comando estándar es ID_FILE_SEND_MAIL. La función de controlador MFC para este comando permite al usuario enviar un documento a través del correo electrónico.
Sugerencia
Aunque MFC no encapsula todo el conjunto de funciones MAPI, todavía puede llamar directamente a funciones MAPI, igual que puede llamar a funciones de API win32 directamente desde programas MFC.
Proporcionar el comando Enviar correo en la aplicación es muy fácil. MFC proporciona la implementación para empaquetar un documento (es decir, un CDocument
objeto derivado de ) como datos adjuntos y enviarlos como correo electrónico. Estos datos adjuntos son equivalentes a un comando File Save que guarda (serializa) el contenido del documento en el mensaje de correo. Esta implementación llama al cliente de correo en el equipo del usuario para dar al usuario la oportunidad de dirigir el correo y agregar texto de asunto y mensaje al mensaje de correo. Los usuarios ven la interfaz de usuario de su aplicación de correo conocida. Esta funcionalidad se proporciona mediante dos CDocument
funciones miembro: OnFileSendMail
y OnUpdateFileSendMail
.
MAPI debe leer el archivo para enviar los datos adjuntos. Si la aplicación mantiene abierto su archivo de datos durante una OnFileSendMail
llamada de función, el archivo debe abrirse con un modo de recurso compartido que permita que varios procesos accedan al archivo.
Nota:
Una versión de invalidación de OnFileSendMail
para la clase COleDocument
controla correctamente los documentos compuestos.
Para implementar un comando Enviar correo con MFC
Use el editor de menús de Visual C++ para agregar un elemento de menú cuyo identificador de comando es ID_FILE_SEND_MAIL.
El marco proporciona este identificador de comando en AFXRES.H. El comando se puede agregar a cualquier menú, pero normalmente se agrega al menú Archivo .
Agregue manualmente lo siguiente al mapa de mensajes del documento:
ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)
Nota:
Este mapa de mensajes funciona para un documento derivado de o
CDocument
COleDocument
, recoge la clase base correcta en cualquier caso, aunque el mapa de mensajes se encuentra en la clase de documento derivada.Compile la aplicación.
Si la compatibilidad con correo está disponible, MFC habilita el elemento de menú con OnUpdateFileSendMail
y posteriormente procesa el comando con OnFileSendMail
. Si la compatibilidad con correo no está disponible, MFC quita automáticamente el elemento de menú para que el usuario no lo vea.
Sugerencia
En lugar de agregar manualmente entradas de mapa de mensajes como se ha descrito anteriormente, puede usar el Asistente para clases de clase para asignar mensajes a funciones. Para obtener más información, consulte Asignación de mensajes a funciones.
Para obtener información relacionada, consulte la información general de MAPI .
Para obtener más información sobre las CDocument
funciones miembro que habilitan MAPI, vea: