C# 入門 & 実践 / C sharp
301-1. メール送受信 - 1 - メール送信
SmtpClient を使用してメール送信を行います。
smtpサーバ無しの自前送信は、tcpでコマンド実行しないと出来ないようです。
using System.Net.Mail;
using System.Net.Mime;
public static bool SendMail( string to , string from , string title, string message )
{
// check mail address
try
{
SmtpClient sc = new SmtpClient();
sc.Host = @"192.168.1.123";// SMTPサーバ名orIP
//sc.Port = 25; // ポートデフォルトで25
MailMessage myMessage = new MailMessage("jitmailer@gmail"
,to );
// iso-2022-jp を指定しておきます。
myMessage.Subject = title;
myMessage.SubjectEncoding = Encoding.GetEncoding("iso-2022-jp");
myMessage.BodyEncoding = Encoding.GetEncoding("iso-2022-jp");
myMessage.Body = message;
sc.Send(myMessage);
return true;
}
catch
{
return false;
}
}
とこれだけでOKです^-^。
■この後
・pop before smtp
普通のプロバイダでは必須なので
・非同期による送信
このままだとタイムアウトまで何も出来なくなってしまうので
非同期で送信して、途中でキャンセルできるようにしましょう。
メール送受信 »
301-2. メール送受信 - 2 - pop before smtp
C# 入門 & 実践 / C sharp