QTP 使用 CDONTS 发送邮件
2010-06-10 15:53
302 查看
在QTP中可以outlook 和 cdonts发送邮件,但是使用Outlook 需要在运行QTP的点脑安装Outlook,而且发送时要打开Outlook还会出现一个对话框,要求点击确认,无法实现真正的自动发送,所以本人还是推荐使用CDONTS来发送邮件。
CDONTS EMail是IIS提供的组件。使用这个组件有两个前提:
1. 系统安装并启动了SMTP服务
2. CDONTS.dll被注册到系统中(系统默认没有注册这个组件,从网上该组件并RegSvr32命令注册即可)
CDONTS安装方法:
Step1: 将该文件拷贝至 %SystemRoot%//System32 下;
Step2: 开始 -> 运行 -> Regsvr32 cdonts.dll;
Step3: 确认
然后输入脚本
Function SendMail(SendTo, Subject, Body, Attachment)
Set ol=CreateObject("Outlook.Application")
Set Mail=ol.CreateItem(0)
Mail.to=SendTo
Mail.Subject=Subject
Mail.Body=Body
If (Attachment <> "") Then
Mail.Attachments.Add(Attachment)
End If
Mail.Send
ol.Quit
Set Mail = Nothing
Set ol = Nothing
End Function
' Example 2
Function SendMail(SendFrom, SendTo, Subject, Body)
Set objMail=CreateObject("CDONTS.Newmail")
ObjMail.From = SendFrom
ObjMail.To = SendTo
ObjMail.Subject = Subject
ObjMail.Body = Body
ObjMail.Send
Set objMail = Nothing
End Function
调用脚本 SendMail "aa@aa.com", "bb@bb.com","Test","Testbody"
执行脚本,检查邮箱是否收到邮件
如果邮件顺利收到固然很好,而且这个流程网上也有很多,我也无需再此多说一遍,但是很多时候,事与愿违,并不能顺利收到邮件,经过一步步地分析推理,发现其中更有玄机,这才是我最想分享给大家的:
如果收不到邮件,需要到IIS,SMTP虚拟邮件服务器的属性里面去看一下,安全是否加了允许匿名访问,或者加了来宾用户。
另外到默认的邮件路径下,看一下C:/Inetpub/mailroot/Queue里面是否有违发送的邮件,如果有稍等一下,看是否消失,如果消失;然后再到C:/Inetpub/mailroot//Badmail 查看你的邮件是否还留在此文件夹下,如果有则说明发送失败了。 然后再给mairoot文件夹的访问权限增大,允许普通用户操作。
一切操作完成,再次运行脚本,邮件就可以发送成功。
CDONTS EMail是IIS提供的组件。使用这个组件有两个前提:
1. 系统安装并启动了SMTP服务
2. CDONTS.dll被注册到系统中(系统默认没有注册这个组件,从网上该组件并RegSvr32命令注册即可)
CDONTS安装方法:
Step1: 将该文件拷贝至 %SystemRoot%//System32 下;
Step2: 开始 -> 运行 -> Regsvr32 cdonts.dll;
Step3: 确认
然后输入脚本
Function SendMail(SendTo, Subject, Body, Attachment)
Set ol=CreateObject("Outlook.Application")
Set Mail=ol.CreateItem(0)
Mail.to=SendTo
Mail.Subject=Subject
Mail.Body=Body
If (Attachment <> "") Then
Mail.Attachments.Add(Attachment)
End If
Mail.Send
ol.Quit
Set Mail = Nothing
Set ol = Nothing
End Function
' Example 2
Function SendMail(SendFrom, SendTo, Subject, Body)
Set objMail=CreateObject("CDONTS.Newmail")
ObjMail.From = SendFrom
ObjMail.To = SendTo
ObjMail.Subject = Subject
ObjMail.Body = Body
ObjMail.Send
Set objMail = Nothing
End Function
调用脚本 SendMail "aa@aa.com", "bb@bb.com","Test","Testbody"
执行脚本,检查邮箱是否收到邮件
如果邮件顺利收到固然很好,而且这个流程网上也有很多,我也无需再此多说一遍,但是很多时候,事与愿违,并不能顺利收到邮件,经过一步步地分析推理,发现其中更有玄机,这才是我最想分享给大家的:
如果收不到邮件,需要到IIS,SMTP虚拟邮件服务器的属性里面去看一下,安全是否加了允许匿名访问,或者加了来宾用户。
另外到默认的邮件路径下,看一下C:/Inetpub/mailroot/Queue里面是否有违发送的邮件,如果有稍等一下,看是否消失,如果消失;然后再到C:/Inetpub/mailroot//Badmail 查看你的邮件是否还留在此文件夹下,如果有则说明发送失败了。 然后再给mairoot文件夹的访问权限增大,允许普通用户操作。
一切操作完成,再次运行脚本,邮件就可以发送成功。
相关文章推荐
- 使用CDONTS发送HTML邮件
- QTP使用outlook发送邮件
- 在SQL Server中,使用CDONTS发送邮件,并让发件人显示姓名而不是单纯的邮件地址
- 如何使用cdonts组件发送html格式邮件
- 使用CDONTS发送邮件
- QTP:使用outlook发送邮件
- 使用CDONTS发送邮件
- 使用MailMessage和SmtpClient类实现asp.net的邮件发送(有详细注释并已测试通过)
- Web_PHP_PHPMailer使用教程_使用PHPMailer发送邮件;
- python使用smtp发送邮件
- django使用smtp发送邮件
- 使用perl的Mail::SendEasy模块来发送邮件
- asp.net 邮件发送,使用外部stmp服务器,呵呵!简单例子
- 如何使用sendEmail发送邮件
- Python3使用smtplib发送邮件
- Java mail使用QQ邮箱发送邮件配置方案
- 如何使用outlook发送邮件教程
- 一步一步教你使用Jmail实现邮件的接收与发送
- 如何使用Python发送带(附件)的邮件
- 使用C#发送邮件