关于asp.net 发送邮件问题

来源:互联网 发布:一元商品淘宝的怎么卖 编辑:程序博客网 时间:2024/06/05 05:30

    前些天遇到一个客户难题,客户用的是用Microsoft Exchange Server架设的邮件系统,我先后尝试用.net 中的Mails对象发送邮件,在填写smtp服务器上时,填写外网的smtp仅在服务器(安装WEB系统的服务器)可以发送邮件,但如果填写时客户自己的smtp时不能发送邮件,服务器也不能发送邮件。

  后来觉得搞不清他们内部的邮件系统配置,以前接触邮件系统接触的很少,所以不了解。看到客户用的是Outlook发送邮件,一想要不调用他们的Outlook组件发送邮件好了,修改后,在服务上用客户内部邮件发送邮件没有问题,但在客户端发送邮件的时候,需要认证,填写好一些东西,认证没有过去,后来咨询了一些有经验的人都没有解决这个问题,后来一想干脆放弃这个想法,寻找其他出路吧!

  过了一周后,去客户那坐班,上网查资料,发现了JMail,还是免费开源的东东,大喜,估计有戏了!下载安转,写简单代码测试,发现在服务器和客户端上发送邮件都没有问题,一阵狂喜,终于可以解决这个。

 后来将这种发邮件移植到我的WEB系统,WEB系统需要一下发送几十封邮件,测试一下,成功! 终于可以放心了,这个问题一直缠着我焦头烂额,去年一边在念书,一边做兼职,天天催,搞得我几乎崩溃了,期末硕士英语都没有时间准备挂了,还要上一个学期的英语,气死人。

 另外说明一下该系统,该系统原来我认识的一个朋友公司里的人写的,此人是朋友的同学,工作五六年了,写得代码却乱七八糟,asp和asp.net混得极其严重,这个系统根本没有一个地方是可以直接用的,包括这个邮件系统,后来没有办法,由于客户比较牛,他们的需求也老是在变,我们只好把这个系统剥离成两部分,改动比较大的部分重做,改动较小的由我来负责继续完成,比较难做的其实都在我这边,所以说老板还是比较奸诈的,呵呵,其实朋友还是相当地厚道,到目前为止,基本上大的改动没有,还是比较庆幸,比较走运,这个学期改完这个就在学校乖乖学习了。一直都想出国,好好准备一下,英语,准备从科院出去吧!

 

发送邮件代码如下:

   jmail.Message jmessage = new jmail.MessageClass();
   jmessage.Charset = "GB2312";
   jmessage.From = "发件人Email";
   //jmessage.FromName = "addl";
   //jmessage.ReplyTo = "";
   jmessage.Subject = "邮件主题";
   jmessage.AddRecipient("收件人Emial","收件人名称","码之类的东西,我也不清楚写什么,乱填deca");
   jmessage.Body = "jmail 内容";
   jmessage.MailServerUserName = "发件人用户名";
   jmessage.MailServerPassWord = "发件人密码";
   jmessage.Send("发件人邮箱服务(mail.163.com之类的)",false);

   jmessage.Close();