电子邮件群发系统的设计与实现
傅卓军 罗益荣 戴小鹏
(湖南农业大学计算机与信息工程学院湖南长沙410128)
摘 要邮件群发这一手段则被广泛应用于电子商务和网络营销中拥有局域网的单位也可以通过邮件群发方便迅速地发送通知和传达文件。简单阐述了发送电子邮件的原理提出了两种基于C++Builder和Access2000数据库实现电子邮件群发的方法详细介绍了C++Builder中TIdSMTP组件的使用并给出了用TIdSMTP组件实现群发的核心示例代码。 关键词电子邮件群发; 认证; TIdSMTP; TIdMessage; ADO; C++Builder
中图法分类号TP393098 文献标识码A 文章编号 1000-7024(2006) 10-1876-03
Design and implementation of bulk email sending system
FU Zhuo-jun, LUO Yi-rong, DAI Xiao-p eng
(Computer and Information Engineering College, Hunan Agricultural University, Changsha 410128, China)Abstract The method of bulk email sending has been applied in e-businesses and network selling The enterprises with intranet couldsend informs and document by using bulk email quickly and conveniently The theory of email sending is introduced And two methodsof implementation of bulk email sending based on C++Builder and Access2000 are presented Finally, TIdSMTP component of C++Builder in detail and the example codes using C++Builder to carry out bulk email sending are given
Key words bulk email sending; authentication; TIdS MTP; TidMe ssage; ADO; C++Builder
0 引 言
客户端与服务器之间来建立一种认证机制执行认证协议的交
换同时扩展也为以后的协议交互进行了安全层的协商。该扩
关电子邮件系统的标准协议组中的一员它的目的就是实现
有效和可靠的邮件传输主要对怎样将电子邮件从发送方地
址传送到接收方地址也就是对传输的规则做了规定。 SMTP
收稿日期 2005-03-18。
作者简介傅卓军(1978)男湖南长沙人讲师研究方向为计算机网络应用和网络安全 罗益荣男博士研究生讲师研究方向为图像处理和分布式计算 戴小鹏博士研究生副教授硕士生导师研究方向为网格计算和计算机虚拟技术。
1876
等几种 目前使用得比较多的是LOGIN方式认证。 SMTP认 注意代码中加粗的部分是必须的在访问有密码保护的证一般是在发送邮件之前进行一次采用口令-应答方式即 Access2000数据库时必须以独占方式打开 如果没有加粗部由服务器发送命令要求客户端回答客户端根据服务器发送 分的代码则连接数据库时会报错。
信息进行回答如果应答通过了则认证成功即可继续下一 23 使用TIdSMTP组件实现群发方法一
步处理。 在C++Builder60中新增加了一套INDY组件这是一套
开放源代码、功能强大的Intern et组件 目前该套组件的最新2 邮件群发系统的设计与实现 版本是INDY 10虽然在60以前的C++Builder版本中未集成21然后才能通过SMTP服务器发送邮件 由于SMTP服务器可 RFC821、RFC1869和RFC2544的规范利用TIdSMTP组件能能需要身份认证所以要编写实用的邮件群发软件还必须使其 够轻松的实现与SMTP服务器的认证连接、邮件的发送和回具有SMTP认证得功能。通过C++Builder中的TIdSMTP组 执请求。表1是要实现邮件群发将使用到TIdSMTP组件的基本属性和方法
并发送邮件从而实现群发。考虑到管理和获取邮件地址的方
便性地址列表存储的安全性以及基于该邮件地址列表的其 表1 TIdSMTP组件的基本属性和方法
Void fastcall TForm1: :N_OpenClick(TObject 在TIdSMTP中执行邮件发送的是S它的参数
是一个TIdMessage类的实例所以要实现完整的邮件发送TId-
SMTP组件还必须配合INDY中的TIdMessage组件使用。TId-
Message组件封装了一个完整的符合RFC822和RFC1036规
*S ender) 范的Internet消息实际上TIdS MTP组件是用来实现连接
OpenD ialog 1->InitialDir=" \\" ;
void fastcall TForm1: :SEND_BTNClick(TObject *Sender) while(!ADOTable1 ->Eof)
SMTP服务器地址和端口号 {Ans iString tmpstr;
IdS MTP 1->P ort=25; tmpstr=Trim(ADOTable1->FieldByName("Email")->AsString) ;if (ChSMT P服务器是否需_要认证 addr=tmp str ;
IdM essage 1->Subj ect=Ed it3->Text Trim();
for(k=0;k<=recnum-1;k++) 虽然以上的示例代码基本实现了邮件群发功能
{addr=Trim(ADOTable 1->Fi eldByName("Email")- 认证采用的是LOGIN认证方式LO GIN方式对用户名和密码>As String) ; 的B ASE64编码是一种公共的编码标准其实并不安全。同时
{ IdSMTP 1->Connect(); } 有些邮件服务商为了防止他人利用SMTP服务器上合法用户服务器失
{ IdSMTP 1->Send(IdMessage1); }
} [1] 陈招伟,车文刚,张海洲邮件系统中的SMTP认证机制[J]昆
AD OTab le 1->Next(); } 明理工大学学报(理工版), 2003,28(2):83-86唐磊,金连甫大
//与SMTP服务器认证、建立连接 [9]
AD OTab le1->First();
1878
轻云互联成立于2018年的国人商家,广州轻云互联网络科技有限公司旗下品牌,主要从事VPS、虚拟主机等云计算产品业务,适合建站、新手上车的值得选择,香港三网直连(电信CN2GIA联通移动CN2直连);美国圣何塞(回程三网CN2GIA)线路,所有产品均采用KVM虚拟技术架构,高效售后保障,稳定多年,高性能可用,网络优质,为您的业务保驾护航。官方网站:点击进入广州轻云网络科技有限公司活动规则:1.用户购...
HostKvm 商家我们算是比较熟悉的国内商家,商家主要还是提供以亚洲数据中心,以及直连海外线路的服务商。这次商家有新增香港和俄罗斯两个机房的高防服务器方案。默认提供30GB防御,且目前半价优惠至4.25美元起步,其他方案的VPS主机还是正常的八折优惠。我们看看优惠活动。香港和俄罗斯半价优惠:2021fall,限购100台。通用优惠码:2021 ,八折优惠全部VPS。我们看看具体的套餐。1、香港高...
RAKsmart 商家从原本只有专注于独立服务器后看到产品线比较单薄,后来陆续有增加站群服务器、高防服务器、VPS主机,以及现在也有在新增云服务器、裸机云服务器等等。机房也有增加到拥有洛杉矶、圣何塞、日本、韩国、中国香港等多个机房。在年前也有介绍到RAKsmart商家有提供年付129元的云服务器套餐,年后我们看到居然再次刷新年付云服务器低价格。我们看到云服务器低至年79元,如果有需要便宜云服务器的...