Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O MFC fornece suporte para um subconjunto da MAPI (Interface do Programa de Aplicativo de Mensagens da Microsoft) na classe CDocument. Especificamente, CDocument tem funções de membro que determinam se o suporte de email está presente no computador do usuário final e, nesse caso, habilita um comando Enviar Email cuja ID de comando padrão está ID_FILE_SEND_MAIL. A função de manipulador MFC para esse comando permite que o usuário envie um documento por email eletrônico.
Dica
Embora o MFC não encapsule todo o conjunto de funções MAPI, você ainda pode chamar funções MAPI diretamente, assim como você pode chamar funções de API Win32 diretamente de programas MFC.
Fornecer o comando Enviar Email em seu aplicativo é muito fácil. O MFC fornece a implementação para empacotar um documento (ou seja, um CDocumentobjeto derivado) como um anexo e enviá-lo como email. Esse anexo é equivalente a um comando de Salvamento de Arquivos que salva (serializa) o conteúdo do documento na mensagem de email. Essa implementação chama o cliente de email no computador do usuário para dar ao usuário a oportunidade de endereçar o email e adicionar assunto e texto de mensagem à mensagem de email. Os usuários veem a interface do usuário do aplicativo de email familiar. Essa funcionalidade é fornecida por duas CDocument funções de membro: OnFileSendMail e OnUpdateFileSendMail.
MAPI precisa ler o arquivo para enviar o anexo. Se o aplicativo mantiver seu arquivo de dados aberto durante uma OnFileSendMail chamada de função, o arquivo precisará ser aberto com um modo de compartilhamento que permita que vários processos acessem o arquivo.
Observação
Uma versão de substituição da OnFileSendMail classe COleDocument manipula corretamente documentos compostos.
Para implementar um comando Enviar Email com o MFC
Use o editor de menus do Visual C++ para adicionar um item de menu cuja ID de comando é ID_FILE_SEND_MAIL.
Essa ID de comando é fornecida 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
Este mapa de mensagens funciona para um documento derivado de um
CDocumentouCOleDocument– ele pega a classe base correta em ambos os casos, mesmo que o mapa de mensagens esteja em sua classe de documento derivada.Crie seu aplicativo.
Se o suporte ao email estiver disponível, o MFC habilitará seu item de menu com OnUpdateFileSendMail e, posteriormente, processará o comando com OnFileSendMail. Se o suporte ao email não estiver disponível, o MFC removerá automaticamente o item de menu para que o usuário não o veja.
Dica
Em vez de adicionar manualmente entradas de mapa de mensagens conforme descrito anteriormente, você pode usar o Assistente de Classe de classe para mapear mensagens para funções. Para obter mais informações, consulte Mapeamento de Mensagens para Funções.
Para obter informações relacionadas, consulte a visão geral do MAPI .
Para obter mais informações sobre as CDocument funções membro que habilitam o MAPI, consulte: