• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP用JMail、CDO发送邮件
    前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单的例子:
    首先是jmail.smtpmail的核心代码:
     程序代码

    %
      Set jmail = Server.CreateObject("JMAIL.SMTPMail")   '创建一个JMAIL对象
      jmail.silent = true   'JMAIL不会抛出例外错误,返回的值为FALSE跟TRUE
      jmail.logging = true   '启用使用日志
      jmail.Charset = "GB2312"  '邮件文字的代码为简体中文
      jmail.ContentType = "text/html"  '邮件的格式为HTML的
      jmail.ServerAddress = "Server Address"   '发送邮件的服务器
      jmail.AddRecipient Email    '邮件的收件人
      jmail.SenderName = "SenderName"    '邮件发送者的姓名
      jmail.Sender = "Email Address"    '邮件发送者的邮件地址
      jmail.Priority = 1   '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
      jmail.Subject = "Mail Subject"  '邮件的标题
      jmail.Body = "Mail Body"   '邮件的内容
      jmail.AddRecipientBCC Email   '密件收件人的地址
      jmail.AddRecipientCC Email   '邮件抄送者的地址
      jmail.Execute()   '执行邮件发送
      jmail.Close    '关闭邮件对象
    %>


    现在还有很多程序是使用这种方式来发信,这种方式有一个很大的缺陷,那就是发信是使用服务器本地smtp服务发出的,并没有通过任何smtp身份验证,
    如果服务器设置了需要使用身份验证,则发信会失败。现在因为反垃圾邮件的需要,越来越多的服务器开始注重这方面的设置问题,如果你使用此种方法发信突然出现不正常,
    则可能是服务器限制了匿名发信,上面的代码则就不会正常运作了。

    这种方法我们不建议使用,但是现在还有很多asp程序使用此种方法,可能还是可以正常运作的,但是很难保证以后会一直正常,并且某些邮件服务器会拒收这种方法发出的信件,所以如果有可能的话,尽量不要使用这种方式。


    w3 Jmail4.3组件重新设计了其内部结构——使用Message对象代替原来的单一对象Jmail.smtpmail发送邮件,有些方法需要身份验证的(如163、yahoo等),可以用下面的方法解决:
     程序代码

    %
         Set jmail = Server.CreateObject("JMAIL.Message")   '建立发送邮件的对象
         jmail.silent = true    '屏蔽例外错误,返回FALSE跟TRUE两值j
         mail.logging = true   '启用邮件日志
         jmail.Charset = "GB2312"     '邮件的文字编码为国标
         jmail.ContentType = "text/html"    '邮件的格式为HTML格式
         jmail.AddRecipient Email     '邮件收件人的地址
         jmail.From = "Email From for Sender"   '发件人的E-MAIL地址
         jmail.MailServerUserName = "UserName of Email"     '登录邮件服务器所需的用户名
         jmail.MailServerPassword = "Password of Email"     '登录邮件服务器所需的密码
         jmail.Subject = "Mail Subject"    '邮件的标题 
         jmail.Body = "Mail Body"      '邮件的内容
         jmail.Prority = 1      '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
         jmail.Send("Server Address")     '执行邮件发送(通过邮件服务器地址)
         jmail.Close()   '关闭对象
    %>


    使用这段代码发信,是当前最为稳定,也最为适用的发信方法,我们推荐使用Jmail发信的客户,使用此种方法来发信。


    再讲一下 微软自带的CDONTS组件的发信的方法:
     程序代码

    %
        Set cdomail = Server.CreateObject("CDONTS.NewMail")  '建立邮件对象
        cdomail.Subject = "Mail Subject"   '邮件标题
        cdomail.From = "Sender's Mail"   '发件人的地址
        cdomail.To = "Email will from"   '收件人的地址
        cdomail.Body = "Mail Body"   '邮件的内容
        cdomail.Send    '执行发送
    %>

    我们写程序,一般情况下都是说要代码模块化,这样方便维护,同时也方便移植。因此,我在这里将这个发邮件的写成一个子程,在调用的时候可以直接调用(当然,如果你高兴写成函数的话也是可以的,这个主要是看个人兴趣):
    推荐
    复制代码 代码如下:
    %
      '参数说明
      'Subject     : 邮件标题
      'MailAddress : 发件服务器的地址,如smtp.163.com
      'Email       : 收件人邮件地址
      'Sender      : 发件人姓名
      'Content     : 邮件内容
      'Fromer      : 发件人的邮件地址

      Sub SendAction(subject, mailaddress, email, sender, content, fromer) 
          Set jmail = Server.CreateObject("JMAIL.SMTPMail")   '创建一个JMAIL对象
          jmail.silent = true   'JMAIL不会抛出例外错误,返回的值为FALSE跟TRUE
          jmail.logging = true   '启用使用日志
          jmail.Charset = "GB2312"  '邮件文字的代码为简体中文
          jmail.ContentType = "text/html"  '邮件的格式为HTML的
          jmail.ServerAddress = mailaddress   '发送邮件的服务器
          jmail.AddRecipient Email    '邮件的收件人
          jmail.SenderName = sender   '邮件发送者的姓名
          jmail.Sender = fromer    '邮件发送者的邮件地址
          jmail.Priority = 1   '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
          jmail.Subject = subject  '邮件的标题
          jmail.Body = content   '邮件的内容
          '由于没有用到密抄跟抄送,这里屏蔽掉这两句,如果您有需要的话,可以在这里恢复
          'jmail.AddRecipientBCC Email   '密件收件人的地址
          'jmail.AddRecipientCC Email   '邮件抄送者的地址
          jmail.Execute()   '执行邮件发送
          jmail.Close    '关闭邮件对象
      End Sub

      '调用此Sub的例子
      Dim strSubject,strEmail,strMailAdress,strSender,strContent,strFromer
      strSubject     = "这是一封用JMAIL发送的测试邮件"
      strContent     = "JMail组件发送测试成功!"
      strEmail       = "runbing@eyou.com"
      strFromer      = "runbing@eyou.com"
      strMailAddress = "mail.ubbcn.com"

      Call SendAction (strSubject,strMailaddress,strEmail,strSender,strContent,strFromer)

    %>
    您可能感兴趣的文章:
    • asp+JMAIL实现发送邮件
    • Jmail发送邮件与带附件乱码解决办法分享
    • .net jMail邮件发送(含抄送、密送、多发、日志记录)实例代码
    • Jmail 图文安装教程 asp在线发送邮件组件
    • asp jmail发邮件 详细解析
    • Jmail组件发送邮件之绝对能用的函数
    • Jmail发邮件的例子
    • Jmail发送邮件工具类分享
    上一篇:一句话木马入侵EASYNEWS新闻管理系统
    下一篇:保存远程图片函数修改正版
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP用JMail、CDO发送邮件 ASP,用,JMail,CDO,发送,邮件,