ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> ASP技术
简单快捷实现ASP在线发邮件功能
  在编写网上应用程序时,经常碰到需要在线发送邮件的问题,邮件内容是由程序动态决定的,如果你采用的是ASP方式来编写网上应用程序,如何简单、快捷地实现这一功能呢?



  笔者在实践中利用ASP的com组件功能,在vb中实现了一个发邮件的小组件,在ASP中只通过轻松调用,就可以实现该功能。所有邮件处理机制都被封装在这个组件中,使用起来极为方便。下面将详细介绍该组件的基本开发原理以及在ASP中的应用。



  1. 利用Winsock控件与发送邮件的smtp联系



  和smtp的联系包括握手、发送数据以及关闭等全过程,主要程序如下:



  建立一个frmsendmail 的窗体,其中包含一个winsock控件,有以下几个公共变量:



  public mstmp as string



  //发送邮件的stmp



  public mfrom as string



  //from 地址



  public mto as string



  //到达地址



  public msubject as string



  //邮件主题



  public mtext as string



  //邮件正文



  sock.connect mstmp, 25



  //和发送邮件的stmp建立联系



  private sub sock_connect()



  sflag = sfconn



  //连接成功后设置参数



  end sub



  private sub sock_dataarrival(byval bytestotal as long)



  on error goto daerr



  dim s as string



  sock.getdata s



  select case sflag



  case sfstart



  case sfconn



  sflag = sfhelo



  //发出握手信息hello



  send "helo " && mmyname



  case sfhelo



  sflag = sffrom



  send "mail from:" && getreal(mfrom)



  case sffrom



  if left(s, 3) 〈〉 "250" then goto srverr



  //如果成功发送接收邮件地址



  sflag = sfrcpt



  send "rcpt to:" && getreal(mto)



  case sfrcpt



  if left(s, 3) 〈〉 "250" then goto srverr



  //如果成功开始发送数据



  sflag = sfdata



  send "data"



  case sfdata



  if left(s, 3) 〈〉 "354" then goto srverr



  sflag = sfsendover //数据包括4项,最后以 . 结束



  send "from: " && mfrom



  send "to: " && mto



  send "subject: " && msubject && vbcrlf



  send mtext



  send "."



  case sfsendover



  if left(s, 3) 〈〉 "250" then goto srverr



  sflag = sfstart



  sendok = true



  send "quit"



  end select



  exit sub



  end sub

  2. 将上述功能封装在一个类中



  由于ASP能使用的组件中不能存在控件,所以要通过类模块来封装上述窗体。首先在类初始化时建立一窗体:



  private sub class_initialize()



  set frm = new frmsendmail



  end sub



  把窗体的公共变量作为属性封装在类模块中。



  该窗体的函数接口为:



  public sub send()



  frm.sendstart



  end sub



  3. 注册该组件



  将上述工程编译成dll文件,通过vb注册或手工注册都可以。



  4. 在ASP中的应用



  调用方法如下:



  set smail=server.createobject("sendmailx.mail")



  smail.stmp="166.166.1.1"



  smail.logfile="e:logsmail.log"



  smail.mfrom = mfromname && " 〈" && mfromaddr && "〉"



  smail.mto = mtoname && " 〈" && mtoaddr && "〉"



  smail.msubject = msubject



  smail.mtext = mtext



  smail.send



  其中变量可以通过赋值,也可以来自上一个request页面。


 
 
本站关键词:
|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞||东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有