发新话题
打印

Visual Basic 6中发送邮件的新方法

Visual Basic 6中发送邮件的新方法

用VB6编写发送邮件的程序,有多种E-mail组件可供选择,如MAPIMessages、IIS4.0附带的CDONTS(NTS Collaboration Data Objects)以及许多第三方厂商开发的Email软件等。本文介绍用CDONTS开发VB下的邮件程序方法。  

  1. 确认已安装SMTP服务器  

  首先,必须确认在IIS服务器上已安装SMTP服务器,这是安装Option Pack时被缺省安装的选项。如果SMTP服务器已安装,在System32目录下会存在一个名为cdonts.dll的文件。  

  2. 最简单的邮件发送程序  

  以下是一个最简单的邮件发送程序,它由me@hotmail.net向abc@263.net发出一封标题为 “Title”、内容为“Hello”的E-mail:  

  Private Sub cmdSendMail_Click()  

  Dim objMail as Object  

  Set objMail=CreateObject("CDFONTS.DLL"  

  ObjMail.Send "me@hotmail.net ", "abc@263.net","Titl e","Hello"  

  Set objMail=nothing  

  End Sub  

  3. 发送邮件附件  

  如果有附加的文件需要随同邮件传送,可以使用CDONTS的AttachFile方法:  

  Private Sub cmdSendMail_Click()  

  Dim objMail as Object  

  Set objMail=CreateObject("CDFONTS.DLL"  

  With ObjMail  

  .From= "me@hotmail.net "  

  .To= "abc@263.net"  

  .Subject="Title"  

  .Body="Hello"  

  .AttachFile "c:\document\ sample.doc","sample.doc"  

  .Send  

  End With  

  Set objMail=nothing  

  End Sub  

  4. CDONTS组件常用属性和方法  

  CDONTS组件常用的属性和方法列举如下:  

  属性:  

  Version:返回CDONTS组件的版本号  

  MailFormat:邮件格式,1-普通文本类型;0-MIME类型  

  Cc:设置一个或多个参阅的邮件地址  

  From:邮件发送者的地址  

  To :邮件接受者的地址  

  Subject:标题  

  Body:内容  

  BodyFormat:内容格式,1-普通文本;0-超文本  

  方法:  

  AttachFile:附加一个文件  

  AttachURL:附加一个地址  

  Send:发送邮件  

  5. 发送超文本格式的E-mail  

  你一定见到过许多使用超文本格式的E-mail,其中不但可以有图片、声音,甚至还可以嵌入动画。如果给你的朋友也发送一封这样的邮件,一定会带给他(她)意外的惊喜,因为这用一般的邮件发送程序是无能为力的。以下使用CDO NTS组件发送一个HTML格式的邮件,其中包含有一幅名为sample.gif的图片,程序如下:  

  Private Sub cmdSendMail_Click()  

  Dim objMail as Object  

  Set objMail=CreateObject("CDFONTS.DLL"  

  Dim strHTML as String  

  StrHTML=""  

  StrHTML= StrHTML+""  

  StrHTML = StrHTML +"

  用CDONTS发送Email的例子"  

  StrHTML= StrHTML+"

  " StrHTML= StrHTML+"

  以上例子嵌入了图片sample.gif

  "  

  StrHTML= StrHTML+""  

  With ObjMail  

  .From= "me@hotmail.net "  

  .To= "abc@263.net"  

  .Subject="Title"  

  .Body=strHTML  

  .AttachURL "c:\mydata\sample.gif","sample.gif"  

  .BodyFormat=0  

  .EmailFormat=0  

  .Send  

  End With  

  Set objMail=nothing  

  End Sub  

  到这里,相信大家一定发现SMTP邮件处理的一个缺陷了。SMTP服务器接收你的输出消息,但并不做发送者名字和地址的验证,这本是由SMTP的异步发送机制所决定的,但有人可能别有用心地用它来假扮别人发送邮件!本文强烈建议各位切勿轻易试用,一旦让ISP知道你的行径,你的帐号极可能会被立即删除

大家灌啊

TOP

发新话题