关于Jmail的使用介绍网上已经不少,我把自己的体验纪录一下,既帮助跟我一样的初学者也是个积累。
Jmail的使用主要有以下几点:
一. 安装:要在机器上安装Jmail组件,其实就是一个“Jmail.dll”,一般会被安装到C:\windows\system32\目录中。如果下载到的仅仅是Jmail.dll这个文件,就可以手动放到这个目录,不过别的目录应该也可以,我没试过。
二. 注册:自动安装一般同时会自动注册,无需关心这个。但是下载的仅仅是Jmail.dll这个文件,那么必须自己手动注册。注册的方法如下:在命令行窗口里运行命令“regsvr c:\windows\system32\jmail.dll”,当然文件路径自己指定。
三. 引用:把jmail.dll复制到Web站点的bin目录里,然后给站点添加COM引用。
四. 写代码:类似如下,记得引用命名空间。
![]()
实例代码
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Web;
5
using System.Web.Security;
6
using System.Web.UI;
7
using System.Web.UI.WebControls;
8
using System.Web.UI.WebControls.WebParts;
9
using System.Web.UI.HtmlControls;
10![]()
11
using jmail;
12![]()
13
public partial class _Default : System.Web.UI.Page
14![]()
![]()
{
15
protected void Page_Load(object sender, EventArgs e)
16![]()
{
17![]()
18
}
19
protected void Button1_Click(object sender, EventArgs e)
20![]()
{
21
jmail.MessageClass mail = new jmail.MessageClass();
22![]()
23
DateTime t = DateTime.Now;
24
string subject = "Jmail test! " + t.ToString();
25
string body = "Hello world!<br/>";
26
27
28
string fromemail = "mymail@126.com";
29
string toemail = "mail@china.com";
30
//silent属性:如果设置为true,jmail不会抛出例外错误. jmail. send( () 会根据操作结果返回true或false
31
mail.Silent = true;
32
//jmail创建的日志,前提loging属性设置为true
33
mail.Logging = true;
34
//字符集,缺省为"us-ascii"gb2312
35
mail.Charset = "UTF-8";
36
mail.Encoding = "BASE64";
37
//信件的contentype. 缺省是"text/plain") : 字符串如果你以html格式发送邮件, 改为"text/html"即可。
38
mail.ContentType = "text/html";
39
//添加收件人
40
mail.AddRecipient(toemail, "", "");
41
mail.From = fromemail;
42
//发件人邮件用户名
43
mail.MailServerUserName = "mymail@126.com";
45
//发件人邮件密码
46
mail.MailServerPassWord = "123";
47
//设置邮件标题
48
mail.Subject = subject;
49
//邮件添加附件,(多附件的话,可以再加一条jmail.addattachment( "c:\\test.jpg",true,null);)就可以搞定了。[注]:加了附件,讲把上面的jmail.contenttype="text/html";删掉。否则会在邮件里出现乱码。
50
//mail.AddAttachment("c:\\test.jpg", true, null);
51
//邮件内容
52
mail.Body = body + t.ToString();
53
//jmail发送的方法
54
if (mail.Send("smtp.126.com", false))
55![]()
{
56
Response.Write("<script language='javascript'>alert('OK!')</script>");
57
}
58
else
59![]()
{
60
Response.Write("<script language='javascript'>alert('False!')</script>");
61
Response.Write(mail.ErrorCode.ToString() + "<br/>" + mail.ErrorMessage.ToString() + "<br/>" + mail.ErrorSource.ToString() + "<br/>");
62
}
63
mail.Close();
64
}
65
}
66![]()