2010-11-30 27 views
0

私はKoolwired.Imapライブラリを使ってメールボックスからすべてのメールを削除しようとしています。私はすべてのメッセージをマーキングする必要があり、次のコードを持っていて、一度すべてがマークされ、それらを削除し、Koolwired.Imap - メッセージを削除するにはどうすればいいですか?

 _mailbox = _command.Fetch(_mailbox); 
     foreach (ImapMailboxMessage m in _mailbox.Messages) 
     { 
      try 
      { 
       _command.SetDeleted(m.ID, true); 
      } 
      catch (Exception e) 
      { 
       Console.WriteLine("Marking Error: " + e.Message + "(" + m.MessageID + ")"); 
      } 
     } 
     try 
     { 
      _command.Expunge(); 
     } 
     catch (Exception e) 
     { 
      Console.WriteLine("Expunge Error: " + e.Message); 
     } 

私は上記のコードを実行すると、私は次のエラーを取得:

Marking Error: Input string was not in a correct format.() 
Marking Error: No UID found for message number3() 
Marking Error: No UID found for message number1() 
Marking Error: Input string was not in a correct format.() 
Marking Error: Input string was not in a correct format.() 
Marking Error: Input string was not in a correct format.() 

私はメッセージのほとんどにメッセージUIDの問題があるように見えます。この実行後、約99%のメッセージが削除されず、2-3件が削除されます。私がプログラムを再実行すると、私は同じエラーが出ますが、いくつかのエラーは少なくなり、別の2-3の電子メールは削除されます。

Koolwired.Imapライブラリで電子メールを削除する方法を教えてください。 C#で動作する他のImapライブラリはありますか?私が探していたとき、これが私が見つけた唯一のものです。

答えて

0

あなたのコードはhttp://imapnet.codeplex.com/Thread/View.aspx?ThreadId=73377に従って動作するように見えますが、あなたもそこに投稿されています。あなたはgmailアカウントを設定しようとしましたが、何が起こるか見るためにそれをテストしましたか?

他のライブラリに関しては、私は以前のプロジェクトでEAGetMail POP3 & IMAP4コンポーネント(私の新しいアカウントのためにリンクを追加できません:www.emailarchitect.net/eagetmail/)を使用しました。

+0

私はこのコードをgmailアカウントでテストしています。あなたがリストしたライブラリを見ていきます。 – Justin808

関連する問題