随笔-3  评论-26  文章-41  trackbacks-0

 

sina的smtp验证太厉害了,不管怎么样传数据都说验证失败,去www. 126 .com申请一个50MB的邮箱,报告“无效的user”,于是把msg.From也改成tindy@ 126 .com,奇迹发生了,邮件发出去了,也!!!代码如下:
Set  msg  =  Server.CreateObject( " JMail.Message " )
msg.silent 
=   true
msg.Logging 
=   true
msg.Charset 
=   " gb2312 "
msg.MailServerUserName 
=   " tindy@126.com "  
msg.MailServerPassWord 
=   " 我的邮箱密码 "
msg.AddHeader 
" Originating-IP " , Request.ServerVariables( " REMOTE_ADDR " )
msg.From 
=   " tindy@126.com "   '  就是这个家伙,不能随便写的,一定要填你在126.com上申请的邮箱,很纳闷
msg.FromName  =  Request.Form( " Name " )

msg.AddRecipient 
" tindy@sina.com "
msg.Subject 
=   " test "
body
= request.form( " Content " )
msg.Body 
=  body 

if   not  msg.Send ( " smtp.126.com " then  
Response.write 
" <pre> "   &  msg.log  &   " </pre> "  
else  
set  msg  =   nothing  
Response.Write 
" 邮件已发送! "  
end   if

' ========================================
已知问题是,对于sina的smtp验证,同样的方法,却无法通过,一直纳闷中,希望高手能够帮我解决,因为俺可不想每个月登陆126.com的邮箱,没空呀。

首先是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     ' 关闭邮件对象
% >

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

< %
     
Set  jmail  =  Server.CreateObject( " JMAIL.Message " )    ' 建立发送邮件的对象
     jmail.silent  =   true      ' 屏蔽例外错误,返回FALSE跟TRUE两值j
      jmail.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()    ' 关闭对象
% >

微软自带的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)

%
>

Source: http://www.blueidea.com/tech/program/2003/721.asp





  <  % 
 
Set   jmail   =   Server.CreateObject(  "  JMAIL.Message  "  )  '  建立发送邮件的对象  
'
 response.Write(sendFrom&"-"&sendTO&"-"&smtpserver&"-"&sendusername&"-"&sendpassword&"-"&subject&"-"&message&"-"&SendName)  
 jmail.silent   =     false     '  屏蔽例外错误,返回FALSE跟TRUE两值  
 jmail.logging   =     false     '  启用邮件日志  
 jmail.Charset   =     "  GB2312  "     '  邮件的文字编码为国标  
 jmail.ContentType   =     "  text/html  "     '  邮件的格式为HTML格式  
 jmail.AddRecipient   "  gaingame@163.com  "     '  邮件收件人的地址  
 jmail.From   =     "  gaingame@163.com  "     '  发件人的E-MAIL地址  
 jmail.FromName   =     "  gaingame  "     '  发件人的名字  
 jmail.MailServerUserName   =     "  gaingame  "     '  登录邮件服务器所需的用户名  
 jmail.MailServerPassword   =     "  gaingame  "     '  登录邮件服务器所需的密码  
 jmail.Subject   =     "  fine to see you friend  "     '  邮件的标题  
 jmail.Body  =   "  ddd  "     '  邮件的内容  
'
 jmail.Prority =1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值 (我使用的是w3jmail4不知道为什么不注释此项就是发送不成功) 
'
 jmail.Send("smtp.163.com") '执行邮件发送(通过邮件服务器地址)  
  if  (  not   jmail.Send (  "  smtp.163.com  "  ))   then     '  发送并判断发送是否成功 
 SendMail  =   "  <center>Fail to send the Email 2!</center>  "   
 
else   
SendMail 
=   "  <center>Success!</center>  "   
 
end     if   
response.Write(sendmail) 
jmail.Close()  
'  关闭对象 
 %  >
Source: http://blog.csdn.net/kepeizong/archive/2006/05/18/744908.aspx
posted on 2007-03-10 17:21 百年 阅读(962) 评论(5)  编辑  收藏 所属分类: Asp Article

评论:
# re: Jmail邮件发送方式 2007-03-11 17:25 | 百年
# re: Jmail邮件发送方式 2007-03-11 18:10 | 百年
# re: Jmail邮件发送方式 2007-03-11 18:20 | 百年
# re: Jmail邮件发送方式 2009-01-13 11:17 | xuyifan
请问有没有sykd的邮件发送方式  回复  更多评论
  
# re: Jmail邮件发送方式 2012-02-20 10:18 | 杨森博
记得联系我!  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: