可以用MailEnable搭建SMTP服务,发送邮件不需要配置POP3
我用的是hMailAdmin,这个可以么?
这是我写的代码:
MailAddress from = new MailAddress("***@163.com"); MailAddress to = new MailAddress("***@163.com"); MailMessage message = new MailMessage(from, to); message.Subject = "测试一下"; message.Body = "希望成功"; SmtpClient client = new SmtpClient("175.174.63.9"); client.Port = 25; client.Host = "175.174.63.9"; client.Send(message);//由于目标计算机积极拒绝,无法连接。 127.0.0.1:25 Console.WriteLine("发送成功"); Console.ReadKey();
代码对么?
@火悬崖: 使用163的邮箱,需要加上用户名与密码:
smtpClient.UseDefaultCredentials = false; smtpClient.Credentials = new System.Net.NetworkCredential(userName, password);
@dudu: 用户名和密码指的是账号么还是什么?
@火悬崖: 是163的邮箱帐号
@dudu: 嗯,我试了,自己建的域名可以收发邮件,但是往163发就失败,是什么原因呢,用户名和密码也加上了,是我hmailserver配置的错误么?
@火悬崖: 往163发时,from的邮箱地址是自己的域名吗?
@dudu: 写程序发的话,无论是自己的域名还是163的域名都失败,用Foxmail的话用163的域名可以发,用自己的域名就不能发了。
@dudu: 现在用163的域名给163发邮件可以成功了。但是163和我的域名之间不能发邮件,如果我用我的域名给163域名发邮件SmtpClient client = new SmtpClient("175.174.63.9");这里的ip地址应该写成谁的呢,反过来又是谁的呢??
@火悬崖: 写你搭建的邮件服务器的IP
@dudu: 嗯,好的,收发邮件和搭建的hmailserver服务器有关么?
@火悬崖: 有关,最好在域名的dns中加上mx记录,不然很容易被当作垃圾邮件
@dudu: 原来如此,对了!为什么我用hmailserver搭建的服务器,并且添加了一个qwe.com域名,无法和163.com域名的邮箱进行互发邮件呢
@火悬崖: 如果随便弄个域名就能发,那岂不垃圾邮件满天飞
@dudu: 那我如何实现二个域名之间收发邮件呢,我看看网上有很多人都说能实现?不知道怎么我实现起来就这么难!
@火悬崖: 参考阿里云CentOS Linux服务器上用postfix搭建邮件服务器,虽然是Linux,但原理是一样的
@dudu: 嗯,我正在看呢,谢谢前辈的耐心解答,帮了我很多,感谢!
这种东西网上有很多,一般发送邮件都有次数限制,发送太多了就直接进垃圾邮件了。