OpenPOP.Net:无法通过C#删除电子邮件

时间:2015-09-12 11:39:08

标签: c# windows-services openpop

我们正在使用OpenPop.NET dll通过gmail访问电子邮件。我们能够收到电子邮件,但遗憾的是我们无法通过C#删除电子邮件。每当我们尝试删除电子邮件时,都会抛出错误,如下所述:

  

如果不对自己进行身份验证,则无法删除邮件   服务器首先。

我们已经在第一行对服务器进行了身份验证,然后我们正在处理消息并删除。最后,我们调用Disconnect以便从POP服务器中删除它。

请在下面找到我们的代码段:

string Mailaddress = Convert.ToString(ConfigurationManager.AppSettings["EmailAddress"]);
string Password = Convert.ToString(ConfigurationManager.AppSettings["Password"]);
pop3Client = new Pop3Client();
pop3Client.Connect("pop.gmail.com", 995, true);
pop3Client.Authenticate(Mailaddress, Password);
messages.Clear();
int count = pop3Client.GetMessageCount();

for (i = count; i >= 1; i -= 1)
{
    Message message = pop3Client.GetMessage(i);
    ParseMessageBody(message);
    pop3Client.DeleteMessage(i);
}

请告诉我们我们失踪的是什么。

2 个答案:

答案 0 :(得分:0)

I used Using sentence:
using (Pop3Client client = new Pop3Client())
            {
                // conectamos al servidor
                client.Connect(hostname, port, useSsl);

                // Autentificación
                client.Authenticate(username, password);

                client.DeleteAllMessages();
            }
Work ok in my Proyect

答案 1 :(得分:0)

删除邮件后必须断开连接。所以检查一下