本实例需下载hMailServer与foxMail配合使用,达到接收邮件功能,下面用C#代码实现接收邮件功能。

注:安装包已经放到百度云盘上,若需要请自己下载,里面包含安装步骤与环境配置教程!

链接:https://pan.baidu.com/s/1au4mLB7Mu1DUPulLa4Uz7Q
提取码:uqcr
C#编写代码方式,实现邮件发送

主界面:

实现代码:

        private void button1_Click(object sender, EventArgs e)
        {
            //引用命名空间:using System.Net.Mail;
            //1、创建一个邮件对象
            MailMessage mailObject = new MailMessage();
            //设置发件人
            mailObject.From = new MailAddress("sam@chenyanbin.cn"); //发件人地址
            //设置收件人
            mailObject.To.Add(new MailAddress("alex@chenyanbin.cn")); //收件人,可以多个
            //mailObject.CC 抄送的人
            //设置邮件主题
            //为了防止乱码,设置主题编码格式
            mailObject.SubjectEncoding = Encoding.UTF8;
            mailObject.Subject = "吃了吗?";
            //设置正文编码格式
            mailObject.BodyEncoding = Encoding.UTF8;
            mailObject.Body = "吃了吗?吃的什么晚饭";
            //2.创建一个发送邮件的对象
            SmtpClient smtpClient = new SmtpClient();
            smtpClient.Host = "192.168.0.108"; //设置服务器ip地址
            smtpClient.Port = 25; //端口号
            //引入命名空间:using System.Net;
            smtpClient.Credentials = new NetworkCredential("sam","1234");
            //发送
            smtpClient.Send(mailObject);
            MessageBox.Show("ok");
        }

接收成功!

 写一封带HTML的邮件

方式一:

        private void button2_Click(object sender, EventArgs e)
        {
            #region 方式一
            //引用命名空间:using System.Net.Mail;
            //1、创建一个邮件对象
            MailMessage mailObject = new MailMessage();
            //设置发件人
            mailObject.From = new MailAddress("sam@chenyanbin.cn"); //发件人地址
            //设置收件人
            mailObject.To.Add(new MailAddress("alex@chenyanbin.cn")); //收件人,可以多个
            //mailObject.CC 抄送的人
            //设置邮件主题
            //为了防止乱码,设置主题编码格式
            mailObject.SubjectEncoding = Encoding.UTF8;
            mailObject.Subject = "吃了吗?";
            //设置正文编码格式
            //-------------------------------------
            mailObject.BodyEncoding = Encoding.UTF8;
            mailObject.Body = "吃了吗?<font color=\'red\' size=\'7\'>吃的</font>什么晚饭呀";
            mailObject.IsBodyHtml = true;
            //--------------------------------------
            //2.创建一个发送邮件的对象
            SmtpClient smtpClient = new SmtpClient();
            smtpClient.Host = "192.168.0.108"; //设置服务器ip地址
            smtpClient.Port = 25; //端口号
            //引入命名空间:using System.Net;
            smtpClient.Credentials = new NetworkCredential("sam", "1234");
            //发送
            smtpClient.Send(mailObject);
            MessageBox.Show("ok");
            #endregion
        }

方式二:

 1         private void button2_Click(object sender, EventArgs e)
 2         {
 3             #region 方式二
 4             //引用命名空间:using System.Net.Mail;
 5             //1、创建一个邮件对象
 6             MailMessage mailObject = new MailMessage();
 7             //设置发件人
 8             mailObject.From = new MailAddress("sam@chenyanbin.cn"); //发件人地址
 9             //设置收件人
10             mailObject.To.Add(new MailAddress("alex@chenyanbin.cn")); //收件人,可以多个
11             //mailObject.CC 抄送的人
12             //设置邮件主题
13             //为了防止乱码,设置主题编码格式
14             mailObject.SubjectEncoding = Encoding.UTF8;
15             mailObject.Subject = "吃了吗?";
16             //设置正文编码格式
17             //-------------------------------------
18             mailObject.BodyEncoding = Encoding.UTF8;
19             //创建一个html正文对象
20             AlternateView htmlBody = AlternateView.CreateAlternateViewFromString("吃了吗?<font color=\'red\' size=\'7\'>吃的</font>什么晚饭呀", null,"text/html");
21             //把html正文对象加到邮件对象mailObject中
22             mailObject.AlternateViews.Add(htmlBody);
23             //--------------------------------------
24             //2.创建一个发送邮件的对象
25             SmtpClient smtpClient = new SmtpClient();
26             smtpClient.Host = "192.168.0.108"; //设置服务器ip地址
27             smtpClient.Port = 25; //端口号
28             //引入命名空间:using System.Net;
29             smtpClient.Credentials = new NetworkCredential("sam", "1234");
30             //发送
31             smtpClient.Send(mailObject);
32             MessageBox.Show("ok");
33             #endregion
34         }

效果图:

 发送带图片的邮件:

 1         private void button3_Click(object sender, EventArgs e)
 2         {
 3             #region 方式二
 4             //引用命名空间:using System.Net.Mail;
 5             //1、创建一个邮件对象
 6             MailMessage mailObject = new MailMessage();
 7             //设置发件人
 8             mailObject.From = new MailAddress("sam@chenyanbin.cn"); //发件人地址
 9             //设置收件人
10             mailObject.To.Add(new MailAddress("alex@chenyanbin.cn")); //收件人,可以多个
11             //mailObject.CC 抄送的人
12             //设置邮件主题
13             //为了防止乱码,设置主题编码格式
14             mailObject.SubjectEncoding = Encoding.UTF8;
15             mailObject.Subject = "吃了吗?";
16             //设置正文编码格式
17             //-------------------------------------
18             mailObject.BodyEncoding = Encoding.UTF8;
19             //创建一个html正文对象
20             AlternateView htmlBody = AlternateView.CreateAlternateViewFromString("吃了吗?<font color=\'red\' size=\'7\'>吃的</font>什么晚饭呀<img src=\'cid:pho\'/>", null, "text/html");
21             //创建一个资源,该资源与html正文中的相关内容一一对应
22             LinkedResource lr = new LinkedResource(@"01.jpg", "image/jpg");
23             lr.ContentId = "xxx";
24             //把这个资源加到html正文中
25             htmlBody.LinkedResources.Add(lr);
26             //把html正文对象加到邮件对象mailObject中
27             mailObject.AlternateViews.Add(htmlBody);
28             //--------------------------------------
29             //2.创建一个发送邮件的对象
30             SmtpClient smtpClient = new SmtpClient();
31             smtpClient.Host = "192.168.0.108"; //设置服务器ip地址
32             smtpClient.Port = 25; //端口号
33             //引入命名空间:using System.Net;
34             smtpClient.Credentials = new NetworkCredential("sam", "1234");
35             //发送
36             smtpClient.Send(mailObject);
37             MessageBox.Show("ok");
38             #endregion
39         }

 发送带附件的邮件:

 1         private void button4_Click(object sender, EventArgs e)
 2         {
 3             #region 方式二
 4             //引用命名空间:using System.Net.Mail;
 5             //1、创建一个邮件对象
 6             MailMessage mailObject = new MailMessage();
 7             //设置发件人
 8             mailObject.From = new MailAddress("sam@chenyanbin.cn"); //发件人地址
 9             //设置收件人
10             mailObject.To.Add(new MailAddress("alex@chenyanbin.cn")); //收件人,可以多个
11             //mailObject.CC 抄送的人
12             //设置邮件主题
13             //为了防止乱码,设置主题编码格式
14             mailObject.SubjectEncoding = Encoding.UTF8;
15             mailObject.Subject = "吃了吗?";
16             //设置正文编码格式
17             //-------------------------------------
18             mailObject.BodyEncoding = Encoding.UTF8;
19             //创建一个html正文对象
20             AlternateView htmlBody = AlternateView.CreateAlternateViewFromString("吃了吗?<font color=\'red\' size=\'7\'>吃的</font>什么晚饭呀<img src=\'cid:pho\'/>", null, "text/html");
21             //创建一个资源,该资源与html正文中的相关内容一一对应
22             LinkedResource lr = new LinkedResource(@"01.jpg", "image/jpg");
23             lr.ContentId = "xxx";
24             //把这个资源加到html正文中
25             htmlBody.LinkedResources.Add(lr);
26             //把html正文对象加到邮件对象mailObject中
27             mailObject.AlternateViews.Add(htmlBody);
28             //----------------------增加附件------------------
29             Attachment attach1 = new Attachment("a.jpg");
30             mailObject.Attachments.Add(attach1);
31             //----------------------增加附件------------------
32             //--------------------------------------
33             //2.创建一个发送邮件的对象
34             SmtpClient smtpClient = new SmtpClient();
35             smtpClient.Host = "192.168.0.108"; //设置服务器ip地址
36             smtpClient.Port = 25; //端口号
37             //引入命名空间:using System.Net;
38             smtpClient.Credentials = new NetworkCredential("sam", "1234");
39             //发送
40             smtpClient.Send(mailObject);
41             MessageBox.Show("ok");
42             #endregion
43         }

 


版权声明:本文为chenyanbin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/chenyanbin/p/10928414.html