用Visual C++编写电子邮件程序
2010-09-29 20:03:32 来源:WEB开发网3-2-3 释放内存
在访问另一条信件以前应当释放内存,否则会出现内存泄漏。
程序示例:
// 释放内存
lpfnMAPIFreeBuffer(pMessage);
3-2-4 定位到下一条信件
定位到下一条信件依然使用MAPIFindNext函数,
该函数声明及参数意义详见3-2-1节。下面示范如何定位到下一条信件。
程序示例:
// 定位到下一条没有阅读的信件
ULONG lResult = lpfnMAPIFindNext(lhSession, NULL, NULL,
pMessageID, MAPI_LONG_MSGID|MAPI_UNREAD_ONLY,
0, pMessageID);
3-3 发送电子邮件
发送电子邮件的一般步骤:
1. 建立MapiMessage结构对象
2. 调用MAPIResolveName使发送者名称合法
3. 添加附件
4. 调用MAPISendMail发送电子邮件
5. 调用MAPIFreeBuffer释放内存
下面详细分别详细阐述。
3-3-1 建立MapiMessage结构对象
对于MapiMessage结构,3-2-2节已经做过介绍,下面一步步介绍如何设置其中的值:
1. 为MapiMessage对象分配内存:
MapiMessage message;
Memset(&message, 0, sizeof(message));
2. 将ulReserved设置为0:
message.ulReserved = 0;
3. 设置信息类型指针lpszMessageType,可以为NULL:
message.lpszMessageType = NULL;
4. 设置信件标题(lpszSubject):
char subject[512];
strcpy(subject, sSubject);
message.lpszSubject = subject;
5. 设置信件内容:
char text[5000];
strcpy(text, sMessage);
message.lpszNoteText = text;
- ››Visual Basic 2008 数学函数
- ››Visual Studio2005中Smart Device的问题
- ››Visual Studio 中根据数据库字段动态生成控件
- ››编写Linux定时处理程序
- ››Visual Studio 11全新黑色主题
- ››Visual Studio 2011 Beta新特性(一):安装VS201...
- ››编写Linux系统下Daemon程序的方法步骤
- ››电子邮件解析android.net.MailTo类
- ››Visual Studio自定义调试窗体两个小技巧
- ››Visual Studio 2005 Team Edition for Database P...
- ››Visual C#两分钟搭建BHO IE钩子
- ››编写组件,使用JavaScript更新UpdatePanel
更多精彩
赞助商链接