C#使用163的SMTP服务器发送邮件,在自己家里的电脑测试是好的,但是在公司的电脑却发送失败。有遇到过类似问题的吗,求救啊

lb213182 2016-08-23 07:53:30
C#使用163的SMTP服务器发送邮件,在自己家里的电脑测试是好的,但是在公司的电脑却发送失败。有遇到过类似问题的吗,求救啊. 代码入下.



//发送邮件
MailMessage SendMsg = new MailMessage();
SendMsg.From = new MailAddress("XXXX@163.com");
SendMsg.To.Add("247286021@qq.com");
SendMsg.To.Add("1823323995@qq.com");
SendMsg.Subject = "设备转移";
SendMsg.Body = "3个I7 CPU转移到研发验证中心";
SmtpClient smtpclient = new SmtpClient();
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpclient.EnableSsl = false;
smtpclient.Host="smtp.163.com";
smtpclient.Port=25;
smtpclient.Credentials = new System.Net.NetworkCredential("XXXX@163.com", "XX080113");
smtpclient.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
string userState = "测试";
smtpclient.SendAsync(SendMsg, userState);


private static void SendCompletedCallback(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
{
if (e.Cancelled) //邮件发送被取消
{
Console.WriteLine("发送被取消!");
}
if (e.Error != null) //邮件发送失败
{
Console.WriteLine("发送失败!");
}
else //发送成功
{
Console.WriteLine("发送成功!");
}
}
...全文
1667 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bb_Sam 2016-08-24
  • 打赏
  • 举报
回复
具体怎么失败,程序显示发送成功但没收到,还是程序就显示发送失败
圣殿骑士18 2016-08-24
  • 打赏
  • 举报
回复
学习学习学习
姑苏画中烟 2016-08-24
  • 打赏
  • 举报
回复
1.要使用自定义验证机制的system.net.mail类发送。不要用system.web.mail类发送,通常后者发送的邮件都会被当垃圾邮件,这是跟验证机制和有关。 2.要声明邮件地址和头信息(msg.Headers.Add("X-Mailer", "Microsoft Outlook ExPRess 6.00.2900.2869");披上outlook的马甲) 3.特殊情况,就是可能有些服务器在你已经披上合法的马甲后还是会当作垃圾邮箱处理,如网易,那是因为你的邮件内容可能存在一些,敏感的字眼,或者违法的信息导致的。
姑苏画中烟 2016-08-24
  • 打赏
  • 举报
回复
你去看一看,你接收的邮箱,是不是对你发送的邮件当成了垃圾邮件了。你要在发送邮件这做一层伪装。
秋的红果实 2016-08-23
  • 打赏
  • 举报
回复
我曾经也用过,这个关键是拦截,要频繁换发送邮箱,163的发几个,其他的发几个,交替进行
wanghui0380 2016-08-23
  • 打赏
  • 举报
回复
检查公司防火墙,看看stmp的端口号又没有被封堵
shoppo0505 2016-08-23
  • 打赏
  • 举报
回复
公司对163和/或qq有屏蔽吧。 自己先手动发一下看看

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧