月光博客

青青子衿, 悠悠我心, 但为君故, 沉吟至今

« 电脑围棋软件和围棋动画片博客的专业、专注、专心 »

Z-Blog发送邮件插件的修改

  先前我曾经介绍过一个Z-Blog发送邮件插件的插件,可以用于发送邮件到邮件列表,用于邮件订阅博客。其实这个插件还有一个功能,就是自动同步日志到Google Blogspot和MSN Live Spaces上面的博客。

  由于Google Blogspot和MSN Live Spaces都支持电子邮件的发布,因此将发布邮件地址加入到插件的收信人,并以逗号分隔即可,经过我的测试,原始的程序发送过程中,中文会出现乱码,我将该插件代码修改了一下,经过我的实际测试,发送到Blogspot上的邮件已经没有乱码了,以下是修改后的include.asp文件,请替换修改即可。

Const MailPost_MailTo="email1@blogger.com,email2@spaces.live.com"
Const MailPost_MailFrom="webmaster@williamlong.info"
Const MailPost_SmtpServer="127.0.0.1"
Const MailPost_uname=""
Const MailPost_upass=""
Dim MailPost_objArticle
Dim isNew
'注册插件
Call RegisterPlugin("MailPost","ActivePlugin_MailPost")
'具体的接口挂接
Function ActivePlugin_MailPost()
 '挂上接口
 Call Add_Action_Plugin("Action_Plugin_ArticlePst_Begin","Call MailPost_Main()")
End Function
Function MailPost_getArticle(ByRef objArticle)
 Set MailPost_objArticle=objArticle
 If MailPost_objArticle.ID = "0" Then
  isNew=True
 Else
  isNew=False
 End If
End Function
Function MailPost_gotoPingTB()
 If isNew Then
 Call Send_Email(MailPost_SmtpServer,MailPost_MailFrom,MailPost_uname,MailPost_upass,MailPost_MailTo,"MailPost",MailPost_objArticle.title,MailPost_objArticle.content & " ")
 End If
End Function
Function MailPost_Main()
 Call Add_Filter_Plugin("Filter_Plugin_PostArticle_Core","MailPost_getArticle")
 Call Add_Action_Plugin("Action_Plugin_ArticlePst_Succeed","Call MailPost_gotoPingTB()")
End Function
Function Send_Email(smtpHost,FromEmail,smtpUser,smtpPass,mailTo,FromName,subject,content)
 '处理收件人
 If InStr(mailTo,",")<1 Then
  mailTo=mailTo &","
 End If
 Dim tos,i
 tos = Split(mailTo,",")
 Dim jmail
 Set jmail = Server.CreateObject("JMAIL.Message")
 jmail.silent = true
 jmail.logging = true
 'jmail.ContentType = "text/html"
 jmail.Charset = "GB2312" 
 jmail.ContentTransferEncoding = "base64"
 Jmail.ISOEncodeHeaders = True
 For i = LBound(tos) To UBound(tos)
  If tos(i)<>"" Then jmail.AddRecipient tos(i)
 Next
 jmail.From = FromEmail
 jmail.FromName = FromName
 jmail.Subject = subject
 jmail.HTMLBody = content
 jmail.Priority = 1
 jmail.MailServerUserName = smtpUser
 jmail.MailServerPassword = smtpPass
 jmail.Send(smtpHost)
 jmail.Close()
End Function
 


原创文章如转载,请注明:转载自月光博客 [ http://www.williamlong.info/ ]

本文链接地址:http://www.williamlong.info/archives/1622.html
  • 文章排行:
  • 1.沙发
  • 仰天长啸,十年了,老子今天总算坐了次沙发!
  • 2008-12-20 21:55:17   回复该留言
  • 20.哆啦B梦博客
  • 这个只需要在
    Const MailPost_MailTo="email1@blogger.com,email2@spaces.live.com"
    Const MailPost_MailFrom="webmaster@williamlong.info"
    Const MailPost_SmtpServer="127.0.0.1"
    Const MailPost_uname=""
    Const MailPost_upass=""
    这里填上相应内容就可以发送到邮箱了吗??
  • 2008-12-21 21:05:52   回复该留言
  • 22.哆啦B梦
  • Const MailPost_SmtpServer="127.0.0.1"
    这个应该怎么填写呢?
    我用gmail发表日志,该怎么填写?
  • 2008-12-21 21:22:31   回复该留言
  • 26.哆啦B梦
  • 月光的售后质量不高哇,我的提问都没看见
  • 2008-12-22 13:59:06   回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 通过Google订阅本站
  • 通过鲜果订阅本站
  • 通过电子邮件订阅本站

站内搜索

热文排行

最新评论及回复

最近发表

网站收藏

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.

This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.