我正在使用OpenPop.NET客户端通过Pop3协议访问我的邮箱。一切都很好,除了一件事:我无法删除消息。即使来自官方网站的sample也无济于事。 我已经尝试过几个邮件服务器:gmail.com,yandex.ru,rambler.ru情况是一样的。
更新 - 添加了代码。
static void Main(string[] args)
{
DeleteMessageOnServer("pop.gmail.com", 995, true, USERNAME, PASSWORD, 1);
}
public static void
DeleteMessageOnServer(string hostname, int port, bool useSsl, string username,
string password, int messageNumber)
{
// The client disconnects from the server when being disposed
using (Pop3Client client = new Pop3Client())
{
// Connect to the server
client.Connect(hostname, port, useSsl);
// Authenticate ourselves towards the server
client.Authenticate(username, password);
// Mark the message as deleted
// Notice that it is only MARKED as deleted
// POP3 requires you to "commit" the changes
// which is done by sending a QUIT command to the server
// You can also reset all marked messages, by sending a RSET command.
client.DeleteMessage(messageNumber);
// When a QUIT command is sent to the server, the connection between them are closed.
// When the client is disposed, the QUIT command will be sent to the server
// just as if you had called the Disconnect method yourself.
}
}
答案 0 :(得分:5)
在调用.DeleteMessage(messageNumber);
方法时,会删除通过.Disconnect();
方法标记的电子邮件。
答案 1 :(得分:0)
如上所述,当关闭连接时,电子邮件将被删除,消息编号也应以1而不是0开头。对于gmail,您需要转到“设置->转发POP / IMAP->当邮件通过POP进入时”,然后选择“删除gmail的副本”。
您可以here对其进行检查。