Jmail组件实现电子邮件收发

利用VC++开发电子邮件成型组,可以使用windows自带的MAPI及相关通信协议如POP3等来实现,但是利用MAPI实现需要写很多代码。因此软件厂商提供了方便、简易与服务器无关且稳定的Jmail组件供程序员使用。使用前必须先注册,可以在网上看教程。

Jmail组件有以下对象(前3个常用):

1,POP3对象,是对POP3邮件接收服务器的操作。

2,Messages对象,是有关邮件集合的对象,是指针对象,也是POP3的成员指针。

3,Message对象,是有关邮件的对象,其是Jmail组件最常用的对象,能发送邮件信息,也能接收邮件信息。具体的信息存在Messages指针指向的Item数组中。

4,Header对象,是与邮件头相关的对象。

5,Recipients对象,是有关接收邮件集合的对象。

6,Recipient对象,是有关接收邮件的对象。

7,Attachments对象,是有关邮件附件集合的对象。

8,Attachment对象,是有关邮件附件的对象。

9,MailMerge对象,是有关邮件模板的对象。

10,PGPKeys对象,是有关邮件PGP密钥集合的对象。

11,PGPKeyInfo对象,是有关邮件PGP密钥信息的对象。

……  

接收邮箱通常设置为一线程,核心程序如下:

...

Jmail::IPOP3Ptr pPOP3("Jmail.POP3");

Jmail::IMessagesPtr pMessages;

pPOP3->Timeout = 30; //设置连接服务器超时

pPOP3->Connect((LPCTSTR)User,(LPCTSTR)Psd,(LPCTSTR)Server,110); //110为POP3默认端口号

pMessages = pPOP3->Messages;

long lCount = pMessages->Count-1;

if(lCount == 0)

MessageBox("empty!");

else

{

Jmail::IMessagePtr pMessage;

for(i = 1;i<=lCount;i++) //遍历每封信

{

pMessage = pMessages->Item[i[;

From = pMessage->From;

Subject = pMessage->Subject;

Body = pMessage->Body;

Date = pMessage->Date;

pMessage.Release();

}

}

pPOP3->Disconnect();

...


发送邮件则设置一个按钮,添加单击事件即可。核心程序如下:

...

Jmail::IMessagePtr pMessage("Jmail.Message");

pMessage->From = (LPCTSTR)m_Sender;

pMessage->FromName = "hunterlew";

pMessage->AddRecipient((LPCTSTR)m_Address,"","");

pMesasge->Priority = 3; //优先级设置,1~5级逐次降低,3为中级

pMessage->Charset = "GB2312"; //编码方式设置

pMessage->Subject = (LPCTSTR)m_Title;

pMessage->Bpdy = (LPCTSTR)m_Content;

if(m_File != "") //附件

pMessage->AddAttachment((LPCTSTR)m_File,VARIANT_TRUE,"image/gif");

pMessage->Send((LPCTSTR)m_MailServer,VARIANT_FALSE);

pMessage.Release();

MessageBox("发送成功");

...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值