一、先造一个邮件发送的窗体

二、编辑邮件发送的代码(包括附件)

  1. ①附件添加对话框
  2. string file;
  3. private void button6_Click(object sender, EventArgs e) //添加附件
  4. {
  5. openFileDialog1.Filter = "Word文件.doc|*.doc|表格文件.xls|*.xls|所有文件|*.*"; //筛选文件类型
  6. DialogResult dk = openFileDialog1.ShowDialog(); //创建一个枚举类型的变量dk来接收打开这个对话框
  7. if (dk == DialogResult.OK) //如果点的是确定,才会执行下面的代码
  8. {
  9. file = openFileDialog1.FileName;//定义一个变量来接收路径
  10. //创建文件流 来将路径转换
  11. StreamReader path = new StreamReader(file, Encoding.Default); //Encoding.Default 编码方式
  12. MessageBox.Show("添加附件成功");
  13. path.Close();//用完流之后必须关闭
  14.  
  15. }
  16. }
  17. ②发送邮件函数
  18. //下面开始写SendEmail函数
  19. public void SendEmail(string Emailshoujian, string Emailbiaoti, string Emailzhengwen, MailAddress EmailFrom)
  20. {
  21. try
  22. {
  23. //创建发送邮箱,并获取发件人地址,收件人地址,以及邮件标题与正文
  24. MailMessage msg = new MailMessage(); //创建一个MailMessage的类,用来发送邮件
  25. msg.To.Add(Emailshoujian); //将收件人的邮箱地址添加进来
  26. msg.Subject = Emailbiaoti; //获取一下发送邮件的标题
  27. msg.SubjectEncoding = System.Text.Encoding.UTF8;//邮件标题改成国际编码方式
  28. msg.From = EmailFrom;//获取一下发件人的邮箱地址
  29. msg.Body = Emailzhengwen;//邮件的正文内容
  30. msg.BodyEncoding = System.Text.Encoding.UTF8; //将邮件的正文内容改一下编码方式
  31. msg.IsBodyHtml = false; //确认正文内容是不是以网页格式发送的
  32. msg.Priority = MailPriority.High;//邮件发送的优先等级为最高
  33.  
  34. //添加附件
  35. Attachment att = new Attachment(file); //file是所选择的文件的路径
  36. msg.Attachments.Add(att);
  37.  
  38. // //设置用于验证发件人身份的凭据
  39. SmtpClient client = new SmtpClient(); //允许应用程序使用简单邮件传输协议 (SMTP) 来发送电子邮件。
  40. client.Host = "smtp.qq.com"; //设置一下应用程序的服务器名称
  41. client.Credentials = new System.Net.NetworkCredential("527384244@qq.com", "lk19920619"); //输入发件人邮箱的用户名密码来发送邮件
  42. //注意!!必须在发送的时候将发件人的邮箱账户POP3/IMAP协议开启,然后输入的密码是QQ邮箱独立密码,而不是QQ密码!!!!
  43. client.Send(msg);//发送
  44. //mail from address must be same as authorization user 若出现这个错误,证明没有将发件人邮箱的POP3/IMAP协议打开,并且密码是QQ邮箱独立密码,而不是QQ密码
  45. //打开方式在最有一张截图
  46. MessageBox.Show("发送成功");
  47. }
  48. catch (Exception )
  49. {
  50.  
  51. MessageBox.Show("请正确输入信息");
  52. }
  53.  
  54. }
  55. ③点击发送按钮
  56. //当点击发送按钮的时候调用 SendEmail函数,并且将所有的参数输入进去
  57. private void button1_Click(object sender, EventArgs e) //发送按钮
  58. { // MailAddress 表示电子邮件发件人或收件人的地址。
  59. MailAddress EmailFrom = new MailAddress("527384244@qq.com"); //发件人邮箱地址 //创建一个MailAddress的类来写发件人的地址
  60. string Emailshoujian = txtshoujian.Text; //收件人邮箱地址
  61. string Emailbiaoti = txtbiaoti.Text; //邮件标题
  62. string Emailzhengwen =textBox1.Text; //邮件内容
  63. SendEmail(Emailshoujian, Emailbiaoti, Emailzhengwen, EmailFrom); //调用发送邮件函数
  64.  
  65. }

QQ邮箱附件发送的更多相关文章

  1. 使用plupload做一个类似qq邮箱附件上传的效果

    公司项目中使用的框架是springmvc+hibernate+spring,目前需要做一个类似qq邮箱附件上传的功能,暂时只是上传小类型的附件 处理过程和解决方案都需要添加附件,处理过程和解决方案都可 ...

  2. 技术笔记:Indy IdSMTP支持腾讯QQ邮箱邮件发送

    1.腾讯QQ邮箱的授权码问题 因为腾讯邮箱折腾了个底朝天,其要搞什么授权码登录第三方客户端,否则会报这个错误: 'Error: 请使用授权码登录.详情请看: http://service.mail.q ...

  3. yii2 qq邮箱配置发送

    'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'useFileTransport' =>false,//这句一定有,false ...

  4. prometheus告警模块alertmanager注意事项(QQ邮箱发送告警)

    配置alertmanager的时候,都是根据网上的教程来配置的. 因为我是用QQ邮箱来发送告警的,所以alertmanager.yml的邮箱配置如下: global: resolve_timeout: ...

  5. Java发送带附件的QQ邮箱

    由于腾讯公司给QQ邮箱增加了一个授权码的密码保护,导致之前网上很多代码都不能用,于是就自己敲了一份demo. 注意在密码那里可能需要授权码,具体设置:http://service.mail.qq.co ...

  6. Email系列(QQ邮箱 + 含附件的邮箱案例 + 项目实战)

    平台之大势何人能挡? 带着你的Net飞奔吧! http://www.cnblogs.com/dunitian/p/4822808.html 邮箱系列:https://github.com/duniti ...

  7. 2016ASP.NET使用QQ邮箱发送信息最全+无错误

    public static bool SendEmail(string mailTo, string mailSubject, string mailContent) { // 设置发送方的邮件信息, ...

  8. javamail模拟邮箱功能发送电子邮件-中级实战篇【新增附件发送方法】(javamail API电子邮件实例)

    引言: JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html 此篇是紧随上篇文章而封装出来的,阅读本 ...

  9. C#邮件发送(最坑爹的邮箱-QQ邮箱)---转发(SmallFlyElephant)

    C#邮件发送(最坑爹的邮箱-QQ邮箱) 最近工作挺清闲的,有空的时候陪妹子出去玩玩,自己看看小说,看看电影,日子过的挺欢乐的,这个星期幡然悔悟,代码才是我的最爱,做点小东西,就写个邮件发送程序.说的邮 ...

随机推荐

  1. 手写PE文件(一)

    DOS Header(IMAGE_DOS_HEADER)->64 Byte DOS头部 DOS Stub 112字节 "PE"00(Signature) 4个字节 IMAGE ...

  2. OpenLayers3 online build

    openlayers3使用了一个比较复杂的build工具,从github上下载下来的代码中并没有build之后的版本,要配置build环境又比较繁琐,好在官方的example中提供了在线的版本,下面就 ...

  3. 《JavaScript基础教程(第8版)》PDF

    简介:JavaScript基础教程(第8版)循序渐进地讲述了JavaScript及相关的CSS.DOM.Ajax.jQuery等技术.书中从JavaScript语言基础开始,分别讨论了图像.框架.浏览 ...

  4. Java常用类库

    System System:类中的方法和属性都是静态的. out:标准输出,默认是控制台. in:标准输入,默认是键盘. System描述系统一些信息.获取系统属性信息:Properties getP ...

  5. 很好的一款思维导图工具XMind使用教程

    1.首先,下载并安装该软件Xmind.安装完毕后,在[开始菜单]寻找Xmind快捷方式,点击打开主程序. 2.打开时出现[新建]页面,可以选择创建空白主题的文档,也可以选择从模板创作.本例选择创建空白 ...

  6. 如何开启Centos6.4系统的SSH服务

    无论是Centos6.4系统的虚拟电脑还是服务器,始终感觉直接在命令行中操作不方便:比如全选.复制.粘贴.翻页等等.比如服务器就需要在机房给服务器接上显示器.键盘才操作感觉更麻烦.所以就可借助SSH( ...

  7. lintcode:恢复IP地址

    恢复IP地址 给一个由数字组成的字符串.求出其可能恢复为的所有IP地址. 样例 给出字符串 "25525511135",所有可能的IP地址为: [ "255.255.11 ...

  8. lintcode:寻找旋转排序数组中的最小值 II

    寻找旋转排序数组中的最小值 II 假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2). 你需要找到其中最小的元素. 数组中可能存在重复的元 ...

  9. VBA高效删除不连续多行

    最近在搞VBA,在感叹Excel功能强大的同时,对于新接触的一门编程语言也很烦恼.很多基础的语法都要靠网上搜索.现总结一些学习到的心得. VBA高效删除不连续多行 在一个拥有几万条数据的Excel中, ...

  10. linux下如何查看和修改系统BLOCK的大小

    http://blog.163.com/drachen@126/blog/static/162607494201271435333906/ 查看os系统块的大小 [root]# /sbin/tune2 ...