我正在尝试查找一些代码,这些代码可以让我删除Gmail帐户中的每封电子邮件,但目前使用Atom阅读器的代码似乎只会读取未读邮件。
我想阅读所有内容,主题,身体和附件。
是否有可能,是否有人有一些工作代码。
戴夫
答案 0 :(得分:1)
您想要做的不是一个简单的应用程序,我们可以帮助您编写邮件客户端应用程序,需要花费大量精力阅读有关POP3或IMAP邮件客户端如何工作的许多文章,您还必须了解与这些协议相关的RFC 1939和RFC 1081文档。无论如何你必须使用IMAP或POP3协议来实现你的邮件客户端应用程序有很多文章可以参考它们。
和RFC文档:
答案 1 :(得分:0)
你可以通过例如IMAP。它应该在帐户设置中启用。
有很多关于使用/实施IMAP的C#教程,只需google for。
答案 2 :(得分:0)
正如其他人所说,你最好的选择是使用IMAP协议。但请注意,Google IMAP实施需要安全连接,因此不仅仅是实施IMAP。
有一个C#实现here,它还包含安全连接的东西,但要注意其中有很多错误,涉及头编码等问题,所以要准备修复一些如果您决定使用它,则会出现错误。
答案 3 :(得分:0)
了解如何从XML中读取信息,您可以通过此Feed https://mail.google.com/mail/feed/atom获取Gmail上的所有信息。我在下面有一个示例代码,它读取未读消息的数量并读取标题和摘要,但您可以获取其他信息,例如来自谁,附件等。不需要额外的库:)
try
{
System.Net.WebClient objClient = new System.Net.WebClient();
string response;
string title;
string summary;
//Creating a new xml document
XmlDocument doc = new XmlDocument();
//Logging in Gmail server to get data
objClient.Credentials = new System.Net.NetworkCredential("Email", "Password");
//reading data and converting to string
response = Encoding.UTF8.GetString(objClient.DownloadData(@"https://mail.google.com/mail/feed/atom"));
response = response.Replace(@"<feed version=""0.3"" xmlns=""http://purl.org/atom/ns#"">", @"<feed>");
//loading into an XML so we can get information easily
doc.LoadXml(response);
//nr of emails
nr = doc.SelectSingleNode(@"/feed/fullcount").InnerText;
//Reading the title and the summary for every email
foreach (XmlNode node in doc.SelectNodes(@"/feed/entry"))
{
title = node.SelectSingleNode("title").InnerText;
summary = node.SelectSingleNode("summary").InnerText;
}
}
}
catch (Exception exe)
{
MessageBox.Show("Check your network connection");
}