POP3Clientは日本語に弱いので困る。
受信のサンプル
{ //接続情報 string server = "sample.jp"; int port = 110; string userid = "user"; string pass = "pass"; //サーバへの接続用クラスを作成する IPHostEntry hostInfo = System.Net.Dns.GetHostEntry(server); System.Net.IPAddress address = hostInfo.AddressList[0]; TKMP.Net.IPopLogon logon = new TKMP.Net.BasicPopLogon(userid, pass); TKMP.Net.PopClient pop = new TKMP.Net.PopClient(logon, address, port); //接続開始 if (!pop.Connect()) { System.Windows.Forms.MessageBox.Show("接続失敗"); return; } int MailNumber = 1; TKMP.Net.MailData Mail = pop.MailDatas[MailNumber]; if (!Mail.ReadHeader()) { System.Windows.Forms.MessageBox.Show("データ受信に失敗しました"); } else { System.IO.Stream Header = Mail.HeaderStream; System.Windows.Forms.MessageBox.Show("ヘッダ情報を受信しました"); //件名の表示 TKMP.Reader.MailReader reader = new TKMP.Reader.MailReader(Header, true); string subject = reader.HeaderCollection["Subject"]; System.Windows.Forms.MessageBox.Show("メールの件名は「" + subject + "」です"); } if( !Mail.ReadBody() ){ System.Windows.Forms.MessageBox.Show("データ受信に失敗しました"); }else{ System.IO.Stream Body = Mail.DataStream; TKMP.Reader.MailReader reader = new TKMP.Reader.MailReader(Body, false); string maintext = reader.MainText; System.Windows.Forms.MessageBox.Show("メールの件名は「" + maintext + "」です"); } //切断 pop.Close(); return; }
送信のサンプル
//メールの送信先サーバー名 string smtpserver = "mail.example.jp"; int port = 25; string userid = "userid"; string pass = "pass"; System.Net.IPAddress address = System.Net.Dns.GetHostByName(smtpserver).AddressList[0]; //ログオンクラスを作成します TKMP.Net.ISmtpLogon logon ; //AUTH CRAM-MD5でログオンを行ないます logon = new TKMP.Net.AuthCramMd5(userid , pass); //AUTH LOGINでログオンを行ないます //logon = new TKMP.Net.AuthLogin(userid , pass); //AUTH PLAINでログオンを行ないます //logon = new TKMP.Net.AuthPlain(userid , pass); //CRAM-MD5 PLAIN LOGINの順で利用可能なものを優先してログオンを行ないます //logon = new TKMP.Net.AuthAuto(userid , pass); //POP Before SMTPでログオンを行ないます //使用するにはPOPへの接続情報が必要です //logon = new TKMP.Net.PopBeforeSMTP(popclient); //ログオン処理は行ないません //logon = null; //SMTPへの接続クラスを作成 TKMP.Net.SmtpClient smtp = new TKMP.Net.SmtpClient(address , port , logon); //サーバーへ接続 if(!smtp.Connect()) { System.Windows.Forms.MessageBox.Show("接続失敗"); return ; } //-------ここでメール送信を行ないます---------- //サーバーから切断 smtp.Close();