我们正在使用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);
}
请告诉我们我们失踪的是什么。
答案 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)
删除邮件后必须断开连接。所以检查一下