第一次开始使用.net的System.Web.Mail消息组件,觉得很好用,而且简单。但后来发现.net自带的SmtpMail不支持SMTP认证,而且许多许多SMTP服务器不只需要登陆验证,还对MAIL From作了验证(比如263),如果和登陆用的用户名不符也不能发信。再有就是pop3邮件的信息解析问题,比如说解析出中文。 总结起来邮件问题也就2个问题:
一是smtp的身份验证,二是pop3邮件的信息解析问题。
以上两个问题,也正是ms没有提供部分的核心问题。我也问过ms的专家,有关mail解决方案的问题,他们也没给我一个什么样答复。网上也有不少高手倾情奉献自己的源码,可上述的两个问题始终都没有(或我没在网上找到)。看有些coder们现在正在找这些,所以,还是把我的解决方案提供给大家,只是给大家一个参考。
用Jmail 组件:可以解决上述两个问题,Jmail组件(Ver 4.3)发送时提供身份验证,而且接收的信息解析问题也能得到很好解决!
以下是两个WEB Service 方法
'发送Email
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
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/
欢迎指教!
打开: http://www.qqread.com/dotnet/f346502.html相关专题
- 数字化校园网解决方案 (5661篇文章)
- 大型实用解决方案专题 (5177篇文章)
- 应用解决方案 (5177篇文章)
- 中小型应用解决方案 (5177篇文章)
- 多媒体应用解决方案 (5951篇文章)
- 行业解决方案 (5177篇文章)
- 行业解决方案 (5177篇文章)
- 中小企业防病毒解决方案 (6033篇文章)
- .NET移动与嵌入式技术 (5974篇文章)
- .NET开发手册 (5673篇文章)
- WPF的Attached属性 (0次浏览)
- WPF,将颠覆的设计世界? (0次浏览)
- Windows是否已经变成了一个怪物? (0次浏览)
- Windows2008用RODC保证分支机构安全 (0次浏览)
- Windows2008的NLB配置攻略 (0次浏览)
- Windows SharePoint Services 和 SharePoint P (0次浏览)
- Windows Forms中实现统一的数据验证(一) (0次浏览)
- Windows API一日一练:DrawText函数 (0次浏览)
- Win2008初次体验的几个心得 (0次浏览)
- WEB应用数据库访问的优化 (0次浏览)



