5

System.Net.Mail名前空間を使用すると、使用されるコードは次のようになります。

MailMessage MyMailMessage = new MailMessage("example@gmail.com", "example@gmail.com",

"write your subject Here ", "Hi,This is the test message ");

MyMailMessage.IsBodyHtml = false;

NetworkCredential mailAuthentication = new NetworkCredential("example@gmail.com","xxxxxxxx");

    SmtpClient mailClient = new SmtpClient("smtp.gmail.com", 465);

    mailClient.EnableSsl = true;

    mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;

    mailClient.UseDefaultCredentials = false;

    mailClient.Credentials = mailAuthentication;

    mailClient.Send(MyMailMessage);

上記のコードタイムアウト例外を使用すると、465ポートが使用された場合に発生します。25ポートは正常に動作します。yahooアカウントの場合、465と25の両方でメールの送信に失敗します。

とにかく、Gmailまたはyahooアカウントを使用してメールを送信するために465ポートをサポートできますか?

次のリンクを参照 http://blogs.msdn.com/b/webdav_101/archive/2008/06/02/system-net-mail-with-ssl-to-authenticate-against-port-465.aspx

WindowsメールがSystem.Net.Mailを使用してメッセージを送信することを示しています-暗黙のSSLでは機能しません。

この問題を解決するための解決策はありますか?

前もって感謝します

4

1 に答える 1

2

これは問題の解決策ではありませんが、.NET 組み込みのメール クラスは、必要な暗黙的 SSL メソッドをサポートしていません。この目的には、明示的 SSL と暗黙的 SSL の両方が可能なサードパーティの SMTP クライアント コンポーネントを使用する必要があります。

于 2013-01-31T11:44:39.620 に答える