2017-09-14 157 views
-1

我测试了用gmail发送电子邮件的代码如下。它运作良好。如何知道我公司电子邮件的SmtpClient主机?

SmtpClient client = new SmtpClient(); 
client.Host = "smtp.gmail.com"; 
client.Port = 587; 
client.DeliveryMethod = SmtpDeliveryMethod.Network; 
client.UseDefaultCredentials = false; 
client.EnableSsl = true; 
client.Credentials = new NetworkCredential("[email protected]", "mypassword"); 
client.Send("[email protected]", "[email protected]", "Test Send Email", "Good Job"); 

但我想从gmail更改为我公司的电子邮件。我在公司的电子邮件地址,如[email protected]。然后我用下面的代码更改我的代码。它不起作用。

SmtpClient client = new SmtpClient(); 
client.Host = "smtp.companyname.co.th"; 
client.Port = 587; 
client.DeliveryMethod = SmtpDeliveryMethod.Network; 
client.UseDefaultCredentials = false; 
client.EnableSsl = true; 
client.Credentials = new NetworkCredential("[email protected]", "mypassword"); 
client.Send("[email protected]", "[email protected]", "Test Send Email", "Good Job"); 

我认为这是错误的。

client.Host = "smtp.companyname.co.th"; 

如何知道我的公司早些的电子邮件的SmtpClient主机?

或我在做什么错?

对不起英语不好。

+2

询问您的IT /电子邮件管理员。它可以作为DNS条目提供,但是同样的,你的电子邮件在到达公共互联网之前可能会反弹。 –

回答

1

这适用于我,不知道它是否适合你。

1)打开CMD,然后键入:

nslookup 

2)这将返回DNS服务器的名称和IP。接下来类型:

set type=mx 

3)最后键入:

companyname.co.th 

你应该让你的SMTP服务器名称后面。为了记录,我公司的SMTP服务器名称与域名不同。

+0

非常感谢。这是节省我的时间 – user2955394

0

最好的猜测是要做到:

dig MX smtp.companyname.co.th

如果你没有安装挖,你可以使用一个在线工具,如:https://toolbox.googleapps.com/apps/dig/#MX/

只选择MX记录。

+0

在将参数放入代码之前,我总是使用[swaks](http://www.jetmore.org/john/code/swaks/)发送消息。测试smtp功能和认证更容易。 – jgrocha

相关问题