您的位置:首页 > 编程语言 > ASP

ASP.NET中常用功能代码总结(7)——利用Jmail发送和接收邮件

2006-03-16 11:36 1131 查看
ASP.NET中常用功能代码总结(7)——利用Jmail发送和接收邮件
整理:Terrylee
一.利用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



二.利用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

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: