Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
MFC fornece suporte para um subconjunto do Microsoft Messaging Application Program Interface (MAPI) na classe CDocument. Especificamente, CDocument tem funções de membro que determinam se o suporte de email está presente na máquina do usuário final e, em caso afirmativo, habilitam um comando Enviar e-mail cujo ID de comando padrão é ID_FILE_SEND_MAIL. A função de manipulador MFC para este comando permite que o usuário envie um documento por correio eletrônico.
Sugestão
Embora a MFC não encapsule todo o conjunto de funções MAPI, ainda é possível chamar funções MAPI diretamente, tal como se pode chamar funções da API Win32 diretamente a partir de programas MFC.
Fornecer o comando Enviar e-mail em seu aplicativo é muito fácil. MFC fornece a implementação para empacotar um documento (ou seja, um CDocumentobjeto derivado) como um anexo e enviá-lo como email. Este anexo é equivalente a um comando Guardar Ficheiro que guarda (serializa) o conteúdo do documento na mensagem de correio. Essa implementação chama o cliente de email na máquina do usuário para dar ao usuário a oportunidade de endereçar o email e adicionar assunto e texto da mensagem à mensagem de email. Os usuários veem a interface de usuário do aplicativo de e-mail familiar. Esta funcionalidade é fornecida por duas CDocument funções de membro: OnFileSendMail e OnUpdateFileSendMail.
MAPI precisa ler o arquivo para enviar o anexo. Se o aplicativo mantém seu arquivo de dados aberto durante uma OnFileSendMail chamada de função, o arquivo precisa ser aberto com um modo de compartilhamento que permite que vários processos acessem o arquivo.
Observação
Uma versão sobreposta de OnFileSendMail para a classe COleDocument lida corretamente com documentos compostos.
Para implementar um comando Enviar email com MFC
Use o editor de menu do Visual C++ para adicionar um item de menu cuja ID de comando é ID_FILE_SEND_MAIL.
Este ID de comando é fornecido pela estrutura em AFXRES.H. O comando pode ser adicionado a qualquer menu, mas geralmente é adicionado ao menu Arquivo .
Adicione manualmente o seguinte ao mapa de mensagens do documento:
ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)Observação
Esse mapa de mensagens funciona para um documento derivado tanto de
CDocumentcomo deCOleDocument— ele identifica a classe base correta em qualquer dos casos, mesmo que o mapa de mensagens esteja na sua classe de documento derivada.Crie seu aplicativo.
Se o suporte de email estiver disponível, o MFC habilitará seu item de menu com OnUpdateFileSendMail e, subsequentemente, processará o comando com OnFileSendMail. Se o suporte de email não estiver disponível, o MFC removerá automaticamente o item de menu para que o usuário não o veja.
Sugestão
Em vez de adicionar manualmente entradas de mapa de mensagens como descrito anteriormente, pode usar o Assistente de Classes para mapear mensagens para funções. Para obter mais informações, consulte Mapeando mensagens para funções.
Para obter informações relacionadas, consulte a visão geral do MAPI .
Para obter mais informações sobre as funções de CDocument membro que habilitam MAPI, consulte: