The project of U-WA-
http://uwa.potetihouse.com/
戻る
TKMP.DLL   プログラミングTips

メールボックスからメールを削除する

 メールを削除するにはTKMP.Net.MailDataクラスのDeleteメソッドを実行します。 TKMP.Net.MailDataクラスはTKMP.Net.PopClientクラスから配列として求められるので、目的のメールを検出した後そのクラスに対して実行してください。
 メールボックスら実際に削除されるのは、コネクションが切断されたときです。 それ以前ならTKMP.Net.PopClientクラスのResetDeleteメソッドで取り消すことが可能です。
 また、メール配列のインディックスは接続毎に変化するので、 インディックスを特定後に再接続してから削除を行うと意図しないメールが削除されることがあるので注意してください。
C#.NET
//接続情報
string server = "mail.example.jp";
int port = 110;
string userid = "userid";
string pass = "pass";

//サーバへの接続用クラスを作成する
System.Net.IPAddress address = System.Net.Dns.GetHostByName(server).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 DeleteNumber = 1; // 削除するメールのインディックス
TKMP.Net.MailData Mail = pop.MailDatas[DeleteNumber];
Mail.Delete();
System.Windows.Forms.MessageBox.Show(DeleteNumber.ToString() + "番目のメールを削除しました");

//切断
pop.Close();
VB.NET
'接続情報
Dim server As String = "mail.example.jp"
Dim port As Integer = 110
Dim userid As String = "userid"
Dim pass As String = "pass"

'サーバへの接続用クラスを作成する
Dim address As System.Net.IPAddress = System.Net.Dns.GetHostByName(server).AddressList(0)
Dim logon As New TKMP.Net.BasicPopLogon(userid, pass)
Dim pop As New TKMP.Net.PopClient(logon, address, port)

'接続開始
If Not pop.Connect() Then
   System.Windows.Forms.MessageBox.Show("接続失敗")
   Return
End If

'メールの削除
Dim DeleteNumber As Integer = 1 ' 削除するメールのインディックス
Dim Mail As TKMP.Net.MailData = pop.MailDatas(DeleteNumber)
Mail.Delete()
System.Windows.Forms.MessageBox.Show((DeleteNumber.ToString() + "番目のメールを削除しました"))

'切断
pop.Close()
VB.NETのコードはC#.NETを元に「C#.NET to VB.NET Translator」によって作成したものです

トップページへ移動
The project of U-WA-
http://uwa.potetihouse.com/