0
SMTPサーバーを指定する
自身の備忘録として
SmtpClientを使ったメール送信の方法について
以下のようなフォームを作成してメール送信処理を記載したのでそのメモとして
■引数あり(SMTPサーバー、ポート)のコンストラクタを使用した方法
private String SendMail01() { // SMTPサーバーを指定する var client = new SmtpClient(TextBoxSmtpServerName.Text, int.Parse(TextBoxSmtpServerPort.Text)); // 送信元、宛先、件名、本文を指定する string fromAddress = TextBoxMailSendUser.Text; string toAddress = TextBoxMailResponceUser.Text; string subject = TextBoxMailHeader.Text; string body = TextBoxMailMessage.Text; //メールアカウント認証のユーザ名、パスワードを指定する string mailUser = TextBoxMailUser.Text; string mailPassword = TextBoxMailPassword.Text; try { client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; //ユーザー名とパスワードを設定する client.Credentials = new System.Net.NetworkCredential(mailUser, mailPassword); //SSLを使用する client.EnableSsl = true; // Send client.Send(fromAddress, toAddress, subject, body); //MessageBox.Show("送信しました"); //後始末(.NET Framework 4.0以降) client.Dispose(); } catch (SmtpException ex) { // SMTP Server connect miss. //MessageBox.Show(ex.Message); return ex.Message; } return "送信されました"; }
■引数なしのコンストラクタを使用した方法
private String SendMail02() { try { //Hotmailでメールを送信する //MailMessageの作成 MailMessage msg = new MailMessage( TextBoxMailSendUser.Text, TextBoxMailResponceUser.Text, TextBoxMailHeader.Text,TextBoxMailMessage.Text); SmtpClient sc = new SmtpClient(); //SMTPサーバーなどを設定する sc.Host = TextBoxSmtpServerName.Text; sc.Port = int.Parse(TextBoxSmtpServerPort.Text); sc.DeliveryMethod = SmtpDeliveryMethod.Network; //ユーザー名とパスワードを設定する sc.Credentials = new System.Net.NetworkCredential(TextBoxMailUser.Text,TextBoxMailPassword.Text); //SSLを使用する sc.EnableSsl = true; //メッセージを送信する sc.Send(msg); //後始末 msg.Dispose(); //後始末(.NET Framework 4.0以降) sc.Dispose(); } catch (SmtpException ex) { // SMTP Server connect miss. return ex.Message; } return "送信されました"; }