一.利用Jmail发送邮件
1
/// <summary>
2
/// 利用Jmail发送邮件
3
/// </summary>
4
private void SendMailByJmail()
5
{
6
///建立发邮件类
7
jmail.MessageClass oJmailMessage = new jmail.MessageClass();
8
9
/// 字符集
10
oJmailMessage.Charset = "GB2312";
11![]()
12
///附件的编码格式
13
oJmailMessage.Encoding = "BASE64";
14
oJmailMessage.ContentType = "text/html";
15![]()
16
///是否将信头编码成iso-8859-1字符集
17
oJmailMessage.ISOEncodeHeaders = false;
18![]()
19
/// 优先级
20
oJmailMessage.Priority = Convert.ToByte(1);
21
22
///发送人邮件地址
23
oJmailMessage.From = TxtEmail.Text.Trim();
24
25
///发送人姓名
26
oJmailMessage.FromName = TxtName.Text.Trim();
27![]()
28
/// 邮件主题
29
oJmailMessage.Subject = txtSubject.Text.Trim();
30![]()
31
///身份验证的用户名
32
oJmailMessage.MailServerUserName = TxtSmtpUser.Text.Trim();
33![]()
34
///用户密码
35
oJmailMessage.MailServerPassWord = TxtSmtpPwd.Text.Trim();
36![]()
37
///添加一个收件人,抄送人和密送人的添加和该方法是一样的,只是分别使用AddRecipientCC和RecipientBCC两个属性
38
///要是需要添加多个收件人,则重复下面的语句即可。添加多个抄送和密送人的方法一样
39
oJmailMessage.AddRecipient(txtReciver.Text.Trim(),"","");
40
if("" != upFile.PostedFile.FileName)
41
{
42
string attpath = upFile.PostedFile.FileName;
43
oJmailMessage.AddAttachment(@attpath,true,attpath.Substring(attpath.LastIndexOf(".")+1,3));//添加附件
44
}
45![]()
46
///邮件内容
47
oJmailMessage.Body = txtContent.Text.Trim();
48![]()
49
if(oJmailMessage.Send(TxtSmtServer.Text.Trim(),false))
50
{
51
Response.Write("发送成功!");
52
}
53
else
54
{
55
Response.Write("发送失败,请检查邮件服务器的设置!");
56
}
57![]()
58
oJmailMessage = null;
59
}
60![]()
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
二.利用Jmail接收邮件
1
/// <summary>
2
/// 利用Jmail接收邮件
3
/// </summary>
4
private void ReciveByJmail()
5
{
6
///建立收邮件对象
7
jmail.POP3Class popMail = new POP3Class();
8
9
///建立邮件信息接口
10
jmail.Message mailMessage;
11![]()
12
///建立附件集接口
13
jmail.Attachments atts;
14![]()
15
///建立附件接口
16
jmail.Attachment att;
17![]()
18
try
19
{
20
popMail.Connect(TxtPopUser.Text.Trim(),TxtPopPwd.Text.Trim(),TxtPopServer.Text.Trim(),Convert.ToInt32(TxtPopPort.Text.Trim()));
21
22
///如果收到邮件
23
if(0 < popMail.Count)
24
{
25
///根据取到的邮件数量依次取得每封邮件
26
for(int i=1;i <= popMail.Count;i++)
27
{
28
///取得一条邮件信息
29
mailMessage = popMail.Messages[i];
30![]()
31
///取得该邮件的附件集合
32
atts = mailMessage.Attachments;
33
34
///设置邮件的编码方式
35
mailMessage.Charset = "GB2312";
36
37
///设置邮件的附件编码方式
38
mailMessage.Encoding = "Base64";
39
40
///是否将信头编码成iso-8859-1字符集
41
mailMessage.ISOEncodeHeaders = false;
42
43
///邮件的优先级
44
txtpriority.Text = mailMessage.Priority.ToString();
45
46
///邮件的发送人的信箱地址
47
txtSendMail.Text = mailMessage.From;
48
49
///邮件的发送人
50
txtSender.Text = mailMessage.FromName;
51
52
///邮件主题
53
txtSubject.Text = mailMessage.Subject;
54
55
///邮件内容
56
txtBody.Text = mailMessage.Body;
57
58
///邮件大小
59
txtSize.Text = mailMessage.Size.ToString();
60
61
for(int j=0;j<atts.Count;j++)
62
{
63
///取得附件
64
att = atts[j];
65
66
///附件名称
67
string attname = att.Name;
68
69
///上传到服务器
70
att.SaveToFile("e:\\attFile\\"+attname);
71
72
}
73
74
}
75
panMailInfo.Visible = true;
76
att = null;
77
atts = null;
78
}
79
else
80
{
81
Response.Write("没有新邮件!");
82
}
83![]()
84
popMail.DeleteMessages();
85
popMail.Disconnect();
86
popMail = null;
87
}
88
catch
89
{
90
Response.Write("Warning!请检查邮件服务器的设置是否正确!");
91
}
92
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
浙公网安备 33010602011771号