Compartilhar via


Suporte a MAPI no MFC

MFC fornece suporte para um subconjunto da Microsoft programa Interface MAPI (Messaging Application) na classe CDocument.Especificamente, CDocument tem funções de membro determinam se o suporte de correio está presente na máquina do usuário final e, em caso afirmativo, ativar um comando Enviar email cuja ID de comando padrão é ID_FILE_SEND_MAIL.A função de manipulador MFC para este comando permite ao usuário enviar um documento por email.

DicaDica

Embora o MFC não encapsular todo o conjunto de função MAPI, você ainda poderá chamar funções MAPI diretamente, exatamente como você pode chamar funções de API do Win32 diretamente de programas do MFC.

Fornecendo correio enviar comando em seu aplicativo é muito fácil.MFC fornece a implementação de um documento de pacote (isto é, um CDocument-derivado objeto) como um anexo e enviá-la como email.Este anexo é equivalente a um comando Salvar arquivo que salva (serializa) o conteúdo do documento para a mensagem de email.Essa implementação chama o cliente de email na máquina do usuário para fornecer ao usuário a oportunidade de endereço de email e adicionar texto assunto e a mensagem do email.Os usuários vêem interface do usuário do seu aplicativo de email familiar.Essa funcionalidade é fornecida por dois CDocument funções de membro: OnFileSendMail e OnUpdateFileSendMail.

MAPI precisa ler o arquivo para enviar o anexo.Se o aplicativo mantém o arquivo de dados aberto durante um OnFileSendMail chamada de função, o arquivo precisa ser aberto com um modo de compartilhamento permite que vários processos acessar o arquivo.

ObservaçãoObservação

Uma versão de substituição do OnFileSendMail para a classe COleDocument corretamente alças de documentos compõem.

Para implementar um comando Enviar email com MFC

  1. Use o editor de menu do Visual C++ para adicionar um item de menu cuja ID de comando é ID_FILE_SEND_MAIL.

    A ID de comando é fornecida pela estrutura no AFXRES.H.O comando pode ser adicionado a qualquer menu, mas é geralmente adicionado para o arquivo menu.

  2. Adicione manualmente o seguinte ao mapa da mensagem do documento:

    ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail)
    ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)
    
    ObservaçãoObservação

    Este mapa da mensagem funciona para um documento derivadas de um CDocument ou COleDocument — ela pega a classe base correta em ambos os casos, embora o mapa da mensagem esteja em sua classe derivada do documento.

  3. Crie seu aplicativo.

Se houver suporte para email, MFC permite que o item de menu com OnUpdateFileSendMail e subseqüentemente processa o comando com OnFileSendMail.Se o suporte de correio não estiver disponível, MFC automaticamente remove o item de menu para que o usuário não vê-lo.

DicaDica

Em vez de adicionar manualmente as entradas de mapa da mensagem conforme descritas anteriormente, você pode usar a janela de propriedades de classe para mapear mensagens para funções.Para obter mais informações, consulte Mapeamento mensagens para funções.

Para obter informações relacionadas, consulte o MAPI visão geral.

Para obter mais informações sobre o CDocument funções de membro que permitem MAPI, consulte:

Consulte também

Conceitos

MAPI