工具软件   办公软件   操作系统   网络安全   设计在线   程序开发   教程宝典   软件下载   软件论坛
您的位置:软件 > 开发者网络 > 开发工具 > 开发专栏 > Delphi > 正文
用Delphi设计能携带附件的EMail
[文章信息]
作者:小刀轻舞
时间:2004-06-23
出处:天极软件频道
责任编辑:方舟
[文章导读]
在Delphi的Form上,放置IdSMTP、IdMessage、OpenDialog三个主要的组件,
advertisement
热点推荐
· 真没想到VB也可以这样用之指针技术
· 禁止QQ登录的方法
· 给你的XML文件做个数字签名
· ImageReady制作“焰火”小动画
· Java加密和数字签名编程快速入门
[正文]

  平时从来不使用Foxmail、Outlook这样的的客户端软件的用户,每次发邮件的时候都会小心翼翼地打开IE,击开收藏夹,点击某个网站的地址,然后填入用户名、密码,添加附件,等待ing…,发送失败,回退到前页,再次发送,等待ing…,直到发送成功。每次让他们经历这些动作不啻于一种折磨。用什么办法能减轻他们的负担呢?那就在你的程序中加入邮件发送功能吧,同时别忘了加上附件功能(附件功能在电子邮件中实在太有用了),让你的用户只要点击一次就能搞定一切,为他们带来一些轻松。

  实现上面讲的功能会不会很难呢?或许以前是这样的,可是现在我们有了Delphi和Indy组件,开发的过程就会像是静坐窗前,一边欣赏窗外的景致,一边品尝着杯中的咖啡一般惬意而自然。现在就让我们双击Delphi,开始这一段愉快之旅吧。

  在Delphi的Form上,放置IdSMTP、IdMessage、OpenDialog三个主要的组件,这三个组件是这次邮件发送程序的核心组件,大部分功能都由它们来实现,其它还有一些Label、LabeledEdit和Memo组件,具体的布局如下图所示:


 
(图一)

  本程序的实现思路是这样的,邮件的发送功能由Indy组件来实现,(笔者注:这是一套十分著名的用来开发网络程序的组件,从Delphi6开始,这套组件成为Delphi内置的组件,它的最新版本可以到http://www.nevrona.com/indy/上去下载),IdSMTP组件用来实现与邮件发送服务器(即SMTP服务器)的联接与通信,而IdMessage组件则用来对邮件内容进行存储和编码。当邮件写好后,数据被编码并“填充”进IdMessage,然后通过IdSMTP与SMTP服务器进行联接和通信。

  邮件发送的主要代码如下:

procedure TMailerForm.btnSendMailClick(Sender: TObject);
begin
 StatusMemo.Clear;

 //设置SMTP
 SMTP.Host := ledHost.Text; //具体使用的SMTP,可以到你申请的邮箱所在的网站中去找
 SMTP.Port := 25;

 //设置邮件内容
 MailMessage.From.Address := ledFrom.Text;
 MailMessage.Recipients.EMailAddresses := ledTo.Text + ',' + ledCC.Text;

 MailMessage.Subject := ledSubject.Text;
 MailMessage.Body.Text := Body.Text;

 if FileExists(ledAttachment.Text) then
  TIdAttachment.Create(MailMessage.MessageParts,
  ledAttachment.Text);

  //发送邮件
  try
   try
    SMTP.Connect(1000);
    SMTP.Send(MailMessage);
   except on E:Exception do
    StatusMemo.Lines.Insert(0, 'ERROR: ' + E.Message);
   end;
  finally
   if SMTP.Connected then
   SMTP.Disconnect;
 end;

end;

//添加附件代码
procedure TMailerForm.btnAttachmentClick(Sender: TObject);
begin
 if AttachmentDialog.Execute then
  ledAttachment.Text := AttachmentDialog.FileName;
end;

  邮件发送程序的应用十分的广泛,随着宽带的普及,“时刻在线”成为了可能,为你的应用软件加入邮件收发功能将为你的用户带来不少的方便。在软件开发中更多的为用户着想,才能使你的软件真正受到大众的欢迎!


发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容焦点新闻
  • Delphi中利用网页打造程序界面
  • Delphi控件的“拿来主义”
  • Delphi设计PhotoShop型弹出菜单
  • 用Delphi获取Windows及系统路径
  • Delphi控制Excel自动生成报表
  • 民营家电商排队造手机 设备商全面杀入
  • 英特尔澄清杨旭任职传闻 官方没宣布此消息
  • 国资委河北密制联通拆分方案
  • 垃圾邮件害人害企害国 清除垃圾邮件不手软
  • 中兴携手阿尔卡特 全球逐鹿CDMA
  • 用友总裁王文京:誓将ERP变成“大众消费”
  • 香港消费者委员会:数码相机最贵未必最好
  • 外电称中兴正评估西门子手机业务 或能并购
  • Advertisement

    天极无线


    奇妙科幻|美好风光|清风车影|漫画卡通|星座生肖|明星写真|动物世界
    老鼠爱大米
    挥着翅膀的女孩
    女人味
    栀子花开
    白月光
    刚刚好
    江南
    快乐崇拜
    亲爱的你怎么不在我身边
    小薇
    2002年的第一场雪
    有多少爱可以重来
    我的地盘
    七里香
    情人
     
    老鼠爱大米 老板电话
    冲动的惩罚 七里香
    我不是黄蓉 女生撒娇
    盛夏的果实 坚持到底
    孤单北半球 眉飞色舞
    挪威的森林 可爱女人
    最浪漫的事 老板电话

    CSEEK搜索