日期:2014-05-17 浏览次数:20858 次
Public Function SendMail() As Boolean Try Dim jm As New jmail.Message jm.Charset = "utf-8" jm.From = _mailFrom '发送的邮件地址 jm.FromName = _mailName '发件人姓名 jm.AddRecipient(_mailTo) '收件人E-mail jm.ContentType = "text/html" jm.MailServerUserName = _smtpUser jm.MailServerPassWord = _smtpPwd jm.ReplyTo = _mailFrom '回复邮件地址 jm.Subject = _mailSubject '邮件主题 jm.Body = _mailBody '邮件内容 If jm.Send(_smtpServer, False) Then Return True Else Return False End If Catch ex As Exception Return False End Try End Function
------解决方案--------------------
Sub sendJMail() Dim JMail, contentId On Error Resume Next Set JMail = Server.CreateObject("JMail.Message") ' 邮件字符集,默认为"US-ASCII" JMail.CharSet = "gb2312" ' 邮件格式 ' JMail.ContentType = "text/html" ' 是否进行ISO编码,默认为True JMail.ISOEncodeHeaders = False ' 发送者地址 JMail.From = "username@163.com" ' 发送者姓名 JMail.FromName = "宇宙" ' 设置优先级,范围从1到5,越大的优先级越高,3为普通 JMail.Priority = 3 JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR") ' 加入一个收件人【变量email:收件人地址】可以同一语句重复加入多个 JMail.AddRecipient("444444444@qq.com") JMail.AddRecipient("555555555@qq.com") ' 邮件主题 JMail.Subject = "邮件主题" ' 邮件主体(HTML(注意信件内链接附件的方式)) JMail.HTMLBody = "<html><head><META content=zh-cn http-equiv=Content-Language><meta http-equiv=""Content-Type"" content=""text/html; CharSet=gb2312""><style type=text/css>A:link { FONT-SIZE: 9pt; TEXT-DECORATION: none; color: #000000}A:visited {FONT-SIZE: 9pt; TEXT-DECORATION: none; color: #666666}A:hover {COLOR: #ff6600; FONT-SIZE: 9pt; TEXT-DECORATION: underline}BODY {FONT-SIZE: 9pt} --></style></head><body><font color=red>邮件正文</font><br><font color=green>邮件正文</font><br><b>邮件正文</b></body></html>" ' 邮件主体(文本部分) JMail.Body = "我们的邮件采用了HTML格式,但是您的邮件查看软件可能不支持。。。邮件正文,邮件正文,邮件正文" ' 加入附件【变量filename:附件文件的绝对地址,确保用户IUSR_机器名有访问的权限】 ' 【参数设置是(True)否(False)为Inline方式】 'contentId = JMail.AddAttachment (Server.MapPath("1.txt"), False) ' 身份验证 ' JMail.MailServerUserName = "username" ' 身份验证的用户名 ' JMail.MailServerPassword = "password" ' 身份验证的密码 ' 发送【调用格式:objJMail.Send([username:password@]SMTPServerAddress[:Port])】 JMail.Send("username:password@smtp.163.com:25") ' 关闭并清除对象 JMail.Close() Set JMail = Nothing If Err then Err.Clear Response.Write "邮件发送失败!"'&Err.Description Else Response.Write "邮件发送成功!" End If End Sub
------解决方案--------------------
用jmail需要在iis上注册 jmail.dll
------解决方案--------------------
首先试下发自己邮箱或者内部邮箱试试,如果成功,表示发送没问题,然后再试发其他外网邮箱,建议用企业邮箱作为发件邮箱,因为其他的免费邮箱群发的邮件会被视为垃圾邮件甚至被拦截。
------解决方案--------------------