在QTP里面用CDONTS组件发送邮件
上一篇 /
下一篇 2007-08-03 12:24:49
/ 个人分类:QTP
今天查了一下QTP Code Samples里面用Outlook发送邮件的代码,发现在帮助文档里面提供了两段代码例子。很显然第一段代码是在QTP中用Outlook发送邮件,那第二段代码是什么呢?
' Example 2 Function SendMail(SendFrom, SendTo, Subject, Body) Set ōbjMail=CreateObject("CDONTS.Newmail") ObjMail.From = SendFrom ObjMail.To = SendTo ObjMail.Subject = Subject ObjMail.Body = Body ObjMail.Send Set ōbjMail = Nothing End Function |
第3行语句中的CDONTS.Newmail比较可疑,好像不属于Outlook组件。会不会是系统内的其他可以发送邮件的组件呢?在QTP中运行这段代码,CreateObject方法报告创建CDONTS.Newmail对象失败。看来CDONTS这不是系统中现成的组件。
用Google查了一下才明白,原来CDONTS EMail是IIS提供的组件。使用这个组件有两个前提:
- 系统安装并启动了SMTP服务
- CDONTS.dll被注册到系统中(系统默认没有注册这个组件,从网上下载该组件并RegSvr32命令注册即可)
重新检查并保证系统符合上面两个条件,再次在QTP中运行这段代码。这次顺利通过了,邮件被成功的发送到了制定邮箱。
回想一下刚才的操作以及查阅资料中的解释,其实通过CDONTS组件发送邮件的基本步骤就是:
- 创建CDONTS.Newmail对象
- 给Newmial对象的各个属性赋值用于创建一个邮件
- 用Newmail.Send方法向本地SMTP服务器发送了邮件
用这种方式发送邮件的好处是可以直接发送邮件,不需要配置发送邮箱。当运行QTP脚本的测试机器为公用的时候可以考虑。而它的缺点是必须在本地机器上安装并运行SMTP服务。
收藏
举报
TAG:
QTP