Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
MFC biedt ondersteuning voor een subset van de Microsoft Messaging Application Program Interface (MAPI) in klasse CDocument.
CDocument Heeft met name lidfuncties die bepalen of e-mailondersteuning aanwezig is op de computer van de eindgebruiker en, als dat het zo is, een opdracht Verzenden e-mail inschakelen waarvan de standaardopdracht-id is ID_FILE_SEND_MAIL. Met de MFC-handlerfunctie voor deze opdracht kan de gebruiker een document via elektronische e-mail verzenden.
Aanbeveling
Hoewel MFC de volledige MAPI-functieset niet inkapselt, kunt u MAPI-functies nog steeds rechtstreeks aanroepen, net zoals u Win32 API-functies rechtstreeks vanuit MFC-programma's kunt aanroepen.
Het instellen van de opdracht E-mail verzenden in uw toepassing is heel eenvoudig. MFC biedt de implementatie voor het verpakken van een document (een CDocument-afgeleide object) als bijlage en verzenden als e-mail. Deze bijlage is vergelijkbaar met een bestandsopdracht opslaan, die de inhoud van het document opslaat (in reeks verwerkt) in het e-mailbericht. Deze implementatie roept de e-mailclient op de computer van de gebruiker aan om de gebruiker de mogelijkheid te geven het e-mailbericht te adresseren en onderwerp en berichttekst toe te voegen aan het e-mailbericht. Gebruikers zien de gebruikersinterface van hun vertrouwde e-mailtoepassing. Deze functionaliteit wordt geleverd door twee CDocument lidfuncties: OnFileSendMail en OnUpdateFileSendMail.
MAPI moet het bestand lezen om de bijlage te verzenden. Als het gegevensbestand van de toepassing geopend blijft tijdens een OnFileSendMail functieaanroep, moet het bestand worden geopend met een sharemodus waarmee meerdere processen toegang hebben tot het bestand.
Opmerking
Een overschrijvende versie van OnFileSendMail voor klasse COleDocument verwerkt samengestelde documenten correct.
Een opdracht E-mail verzenden implementeren met MFC
Gebruik de Menu-editor van Visual C++ om een menu-item toe te voegen waarvan de opdracht-id is ID_FILE_SEND_MAIL.
Deze opdracht-id wordt geleverd door het framework in AFXRES.H. De opdracht kan worden toegevoegd aan elk menu, maar deze wordt meestal toegevoegd aan het menu Bestand .
Voeg handmatig het volgende toe aan de berichtkaart van uw document:
ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)Opmerking
Deze message map werkt voor een document dat is afgeleid van ofwel
CDocumentofCOleDocument— in beide gevallen wordt de juiste basisklasse geselecteerd, ook al bevindt de message map zich in de afgeleide documentklasse.Bouw uw toepassing.
Als e-mailondersteuning beschikbaar is, schakelt MFC uw menu-item in met OnUpdateFileSendMail en verwerkt vervolgens de opdracht met OnFileSendMail. Als e-mailondersteuning niet beschikbaar is, wordt uw menu-item automatisch door MFC verwijderd, zodat de gebruiker deze niet ziet.
Aanbeveling
In plaats van handmatig berichtkaartvermeldingen toe te voegen zoals eerder beschreven, kunt u de Class Wizard gebruiken om berichten aan functies toe te wijzen. Zie Berichten toewijzen aan functies voor meer informatie.
Zie het MAPI-overzicht voor verwante informatie.
Zie voor meer informatie over de CDocument lidfuncties die MAPI inschakelen: