c# - 语法错误,命令无法识别。服务器响应是 ''

标签 c# email

到目前为止,我已经在这里查看了 3 或 4 个问题,但它们还没有帮助。

我已经在客户的机器上设置了 SmarterMail 14.x。我对设置邮件服务器知之甚少(我不知道他为什么认为我知道)但我已经安装了它,一个域设置指向 MX 记录,端口打开(9998)并且我能够发送电子邮件从 Web 界面就可以了。

但是,我无法从 Sql 或 C# 发送电子邮件。我创建了一个快速但肮脏的应用程序,允许我输入服务器、端口、凭据和往返,我每次都会收到此响应:

[Inner Exception] Unable to connect to the remote server

[Details] System.Net.Mail.SmtpException: Failure sending mail. ---> > System.Net.WebException: Unable to connect to the remote server ---> > System.Net.Sockets.SocketException: No connection could be made because the > target machine actively refused it 204.12.49.188:25

我试过多次登录。我还确认 SMTP 已打开并且 IMAP/POP3 已关闭。我会发布它的图片,但遗憾的是我现在还不能。

要发送的代码如下,它非常简单:

SmtpClient client = new SmtpClient(ServerTextBox.Text, Convert.ToInt32(PortTextBox.Text));
NetworkCredential login = new NetworkCredential(UsernameTextBox.Text, PasswordTextBox.Text);
client.Credentials = login;

MailMessage message = new MailMessage(FromTextBox.Text, ToTextBox.Text, "Wine and Spirits Jobs Alerts", "Below are this week's job alerts: There are no job alerts at this time");

client.SendCompleted += HandleSendCompleted;
client.SendAsync(message, null);

我还在他们的 VPS 和我的机器上本地尝试过。我已经打开和关闭防火墙,并且我有一个特定的规则允许 9998 上的传出流量(并且您可以远程登录到 Web 界面)所以这不是能够联系它的问题。

我不知所措。如果有人可以帮忙??

编辑:很明显我使用了错误的端口 - 9998 而不是 25。现在使用端口 25 会告诉我超时或被主动拒绝。防火墙确实对允许所有流量的端口 25 有特定规则,因此不应将其停止。

编辑 2:我在域上重新创建了 MX 记录并确保它指向正确的 IP 地址。我还在 Smartermail 中重新创建了域,并确保 SMTP 已打开,需要身份验证,不需要 SSL,POP 和 IMAP 已关闭,并且我的登录名是正确的。我也试过打开和关闭防火墙。没有骰子。

最佳答案

我终于解决了这个问题。

它与防火墙或 MX 记录或使用/不使用 IP 地址无关,而与以下事实有关:虽然端口 25 确实已分配给 SMTP 并且 SMTP 确实已打开,但域本身未分配给 SMTP 配置,因此 SmarterMail 实际上并未监视该端口。

问题已解决 - 电子邮件已发送。好玩的东西!谢谢大家的回复!

关于c# - 语法错误,命令无法识别。服务器响应是 '',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31750861/

相关文章:

c# - Clipboard.GetText 返回 null(空字符串)

c# - DataBinding DataGridView 到 EF.DbSet,如何将新的 DataGridView 行发送到 DbSet?

c# - Entity Framework 6 : Adding child object to parent's list vs. 将子项的导航属性设置为父项

php - PHP Mailer header 编码问题

java - 乘法运算在速度模板中不起作用

email - 确定电子邮件地址的健康/有效性

c# - 测试 ASP.NET MVC Controller Httpget

c# - 将字符串清理为 url 安全格式

python - 使用 send_mail() [Python - Django] 发送的邮件不发送嵌入图像

php - 如何在 PHP 中规范化电子邮件地址?