第一次开始使用.net的System.Web.Mail消息组件,觉得很好用,而且简单。但后来发现.net自带的SmtpMail不支持SMTP认证,而且许多许多SMTP服务器不只需要登陆验证,还对MAIL From作了验证(比如263),如果和登陆用的用户名不符也不能发信。再有就是pop3邮件的信息解析问题,比如说解析出中文。 总结起来邮件问题也就2个问题:
一是smtp的身份验证,二是pop3邮件的信息解析问题。
以上两个问题,也正是ms没有提供部分的核心问题。我也问过ms的专家,有关mail解决方案的问题,他们也没给我一个什么样答复。网上也有不少高手倾情奉献自己的源码,可上述的两个问题始终都没有(或我没在网上找到)。看有些coder们现在正在找这些,所以,还是把我的解决方案提供给大家,只是给大家一个参考。
用Jmail 组件:可以解决上述两个问题,Jmail组件(Ver 4.3)发送时提供身份验证,而且接收的信息解析问题也能得到很好解决!
'发送Email
<WebMethod()> Public Function Jmail_Send(ByVal fromEmailAddress As String, _
ByVal toEmailAddress As String, _
ByVal ccEmailAddress As String, _
ByVal bccEmailAddress As String, _
ByVal subject As String, _
ByVal body As String, ByVal MailServer As String) As Boolean
Dim email As New jmail.Message()
email.Logging = True
email.Silent = True
' email.MailServerUserName = "" 'smtp服务器用户名
' email.MailServerPassWord = "" 'smtp服务器密码
email.From = fromEmailAddress
email.Subject = subject
email.Body = body
email.AddRecipient(toEmailAddress)
If email.Send(MailServer) Then
Return True
Else
Return False
End If
End Function
'接收Email
<WebMethod()> Public Function Jmail_Receivemail(ByVal UserName As String, _
ByVal Password As String, ByVal MailServer As String) As Boolean
Dim email As New jmail.POP3()
Dim MSG As New jmail.Message()
email.Connect(UserName, Password, MailServer, 110)
If email.Count() > 0 Then
MSG = email.Messages.Item(1)
Debug.Write(MSG.FromName)
Debug.Write(MSG.Subject)
Debug.Write(MSG.Date)
Debug.Write(MSG.Body)
Return True
End If
email.Disconnect()
End Function
以上代码是利用Jmail发送、接收邮件代码的一个原形,大家可以在此基础上扩充。Jmail提供了强大的邮件发送及处理功能,你不用自己费太长的时间,就可以完成所有需要的功能,不是很好么?当然,你也可以自己写组件,接收邮件可以用Imports System.Convert来进行Base 64的处理,进行解码!但愿大家都能找到适合自己的解决方案!
Author:李洪根 lihonggen0
个人专栏:http://www.csdn.net/develop/author/netauthor/lihonggen0/
欢迎指教!
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |