2

このコードを使用して、iis サーバーにデプロイされたアプリから gmail から電子メールを送信しています。リモートサーバーへの接続に失敗しましたというメッセージが表示され続けます。

これを解決するのを手伝ってください--

    protected void SendMail()
    {
        MailMessage msg = new MailMessage();
        System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
        try
        {
            msg.Subject = "download complete";
            msg.Body = "download is completed";
            msg.From = new MailAddress("xxx@gmail.com");
            msg.To.Add("yyy@gmail.com");
            msg.IsBodyHtml = true;
            client.Host = "smtp.gmail.com";
            System.Net.NetworkCredential basicauthenticationinfo = new System.Net.NetworkCredential("xxx@gmail.com", "xxx");
            client.Port = int.Parse("587");
            client.EnableSsl = true;
            client.UseDefaultCredentials = false;
            client.Credentials = basicauthenticationinfo;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.Send(msg);
        }
        catch (Exception ex)
        {
            TextBox1.Text = ex.Message;
        }
    }
4

1 に答える 1

0

まず最初に、そのポート (587) で (smtp.gmail.com)にtelnetできるはずです。hostnameそれができる場合にのみ、アプリケーションからメールを送信できます。

コマンドプロンプトを起動し、上記のコマンドを確認します

telnet smtp.gmail.com 587

このようなエラーが発生した場合Connecting To smtp.gmail.com...Could not open connection to the host, on port 58 7: Connect failed

これは、ホスト サーバーに接続できないことを意味します。そのため、その smtp を使用してメールを送信することはできません。

于 2013-11-15T07:00:23.063 に答える