发现用System.Net.Mail发邮件(代码附后),附件稍微大一点就会造成程序假死. 有没有什么简单的解决办法呢? 多谢!!...

附件大,上传,发送一定会慢.程序卡,应该是主线程正在发送,邮件造成的.创建其他线程在后台去发.这样就不影响主线程做其他工作了
 
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Text;
using  System.Windows.Forms;
using  System.Net.Mail;
namespace  WindowsFormsApplication1
{
     public  partial  class  Form1 : Form
     {
         public  Form1()
         {
             InitializeComponent();
         }
 
         private  void  button1_Click( object  sender, EventArgs e)
         {
 
             MailMessage MailMessage =  new  MailMessage();
             //这个是我们的邮件对象,包含主题,内容等主要属性
             SmtpClient SmtpServer =  new  SmtpClient();
             //这个是我们的SMTP客户端对象,通过这个对象将我们的邮件发送出去
 
 
             MailMessage.From =  new  MailAddress( "240848@qq.com" , "网站邮件" , System.Text.Encoding.UTF8);
             //例如xxx@163.com 'MailMessage对象的From属性意为邮件的发送者,顾名思义在此处设置邮件的发件人.
             MailMessage.To.Add( "7218@qq.com" );
             //例如xxx@163.com 'MailMessage对象的To属性意为该邮件的收件人集合,使用该属性的Add方法来添加收件人
             MailMessage.Subject =  "大家好!~我是邮件标题" ;
             //Subject属性就是邮件的标题内容
             //MailMessage.Body = "大家好!~我是邮件内容" 'Body属性是邮件的内容
             MailMessage.Priority = MailPriority.Normal;
             //Normal是普通优先级,这里还可以设置成High或Low
             SmtpServer.Host =  "SMTP.qq.com" ;
             //这里设置我们的SMTP服务器,例如smtp.163.com
             SmtpServer.Credentials =  new  System.Net.NetworkCredential( "9520848" "nnnnnnnnnnnnn" );
             //这里的用户名和密码用于SMTP服务器认证
             //SmtpServer.Timeout = 100 '设定发送超时的时间,默认是100秒
 
             MailMessage.Attachments.Add( new  Attachment( "c:\\网页.txt" ));
             MailMessage.Attachments.Add( new  Attachment( "G:\\Ultt_SC17.rar" ));
             MailMessage.Body =  "111111111111" ;
 
             SmtpServer.Send(MailMessage);
         }
     }
}

转载于:https://www.cnblogs.com/jcz1206/p/4119289.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值