【问题标题】:System.Net.Sockets.SocketException: A system call has failedSystem.Net.Sockets.SocketException:系统调用失败
【发布时间】:2015-02-21 09:09:57
【问题描述】:

我有以下代码 sn-p 与 VS2012 的 IIS Express 一起运行。它能够发送电子邮件并与 smtp 服务器一起正常工作。 然后将其部署为 IIS 7 上的新应用程序。当我运行它时,我收到错误“System.Net.Sockets.SocketException: A system call has failed 11.29.83.49:25”。

您知道导致错误的原因吗? 我是否错过了配置 IIS 服务器以与 smtp 服务器一起使用的内容?

protected void Page_Load(object sender, EventArgs e)
{
    System.Net.Mail.MailMessage _message = new System.Net.Mail.MailMessage();
    _message.Subject = "Hi Testing";
    _message.SubjectEncoding = System.Text.Encoding.UTF8;
    _message.From = new System.Net.Mail.MailAddress("sender@gmail.com","Test");        
    _message.To.Add(new System.Net.Mail.MailAddress("receiver@gmail.com", "Test"));
    System.Net.Mail.AlternateView _content_view = System.Net.Mail.AlternateView.CreateAlternateViewFromString("Message Body");
    _message.AlternateViews.Add(_content_view);
    sendEmailMessage(_message);
}
public void sendEmailMessage(System.Net.Mail.MailMessage message)
{
    getClientFromConfig().Send(message);
}
private static System.Net.Mail.SmtpClient getClientFromConfig()
{
    System.Net.Mail.SmtpClient _client = new System.Net.Mail.SmtpClient();
    _client.Host = "host name/ip here";
    _client.Port = 25;
    return _client;
}   

有人可以建议让它工作吗?

【问题讨论】:

    标签: asp.net iis smtp


    【解决方案1】:

    我认为原因是防火墙。

    打开 IIS 管理器 -> 应用程序池并选择您的池,然后单击高级设置。

    将您的身份更改为

    网络服务

    -在流程模型之下

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 2018-01-29
      • 1970-01-01
      • 2019-02-08
      • 1970-01-01
      • 2013-10-02
      • 1970-01-01
      相关资源
      最近更新 更多