【发布时间】:2010-09-27 11:08:47
【问题描述】:
喂,
我正在使用此库http://mailsystem.codeplex.com/ 以编程方式从 gmail 帐户中检索邮件。
在“转发和 POP/IMAP”中将“为所有邮件启用 POP”设置为“OK”后第一次运行我的应用程序时,一切正常(我得到了邮件计数和所有邮件的列表)设置菜单中的选项卡。但是当我再次运行它时,没有消息被检索到。如果我再次为所有邮件设置启用 POP,应用程序将再次运行。
我认为我必须在运行检索消息代码之前以编程方式设置“为所有邮件启用 POP”。
有人知道如何在 C# 和 asp.net 中以编程方式执行此操作吗?
我正在使用的代码:
Pop3Client pop = new Pop3Client();
try
{
Label7.Text = string.Format("Connection to the pop 3 server : {0}", "pop.gmail.com ");
pop.ConnectSsl("pop.gmail.com", 995, TextBox4.Text, TextBox5.Text);
Label7.Text += string.Format("Message Count: {0}", pop.MessageCount.ToString());
MessageCollection mc = new MessageCollection();
for (int n = 1; n < pop.MessageCount + 1; n++)
{
Message newMessage = pop.RetrieveMessageObject(n);
mc.Add(newMessage);
Label7.Text += string.Format("Message ({0}) : {1} ", n.ToString(), newMessage.Subject);
}
}
catch (Pop3Exception pexp)
{
Label7.Text = string.Format("Pop3 Error: {0} ", pexp.Message);
}
catch (Exception ex)
{
Label7.Text = string.Format("Failed: {0} ", ex.Message);
}
finally
{
if (pop.IsConnected)
{
pop.Disconnect();
}
}
我正在使用我之前提到的来源的 ActiveUp.Net.Mail 库。
【问题讨论】:
-
您为 POP 下的问题 1 和 2 选择了哪些选项?对于第一季度,您可能应该选择第一个选项 - 为所有邮件启用 POP(即使已经下载),对于第二季度,您可能希望选择第一个选项 - “将 Gmail 的副本保留在收件箱中”。
-
是的,但我如何在 C# 中以编程方式执行此操作?