ボールドテキストC#(Visual Studio2015)で、メールの送信をしたいと思っています。
以下のようなエラーでメールの送信を行うことができません。
'System.Net.Mail.SmtpException' のハンドルされていない例外が System.dll で発生しました
追加情報:メールを送信できませんでした。
###ソースコード
using System;
using System.Windows.Forms;
using System.Net.Mail;
using System.Net.Sockets;
using System.IO;
private void button1_Click(object sender, EventArgs e) { TcpClient tcp = new TcpClient(); StreamWriter wr = null; string send= "USER ユーザー名\nPASS パスワード\nQUIT\n"; //POPサーバーに接続する tcp.Connect("popサーバーのアドレス", ポート番号); //認証用のユーザー名とパスワードをストリームに送る wr = new StreamWriter(tcp.GetStream()); wr.Write(send); SmtpClient sm = new SmtpClient("smtpサーバーのアドレス",ポート番号); sm.EnableSsl = true; //件名と本文を送信する sm.Send("送信元のアドレス", "送信先のアドレス", //送信先のメールアドレス "入室のお知らせ", //件名 "あいうえ様が入室しました。"); //メール本文 wr.Close(); tcp.Close(); }
エラーの理由の検討もつきません。
お力をお貸しいただければと思います。
宜しくお願いします。
サーバーの情報がないので、よくわからないのですが、SMTPコネクションの前に POP認証を実施しているのは、 「POP before SMTP」が必要だからでしょうか? それともSMTP認証が必要だからでしょうか?
サーバーは、ヤフーメールを使っています。
こちらのサイトを参考にしました。
http://www.kisoplus.com/net/mail.html
POP認証は必要ないのでは? と思ったのですが、
このサイトに書いてあったので、記述しました。
回答2件
あなたの回答
tips
プレビュー