Vb.net 你收到POP3消息了吗

Vb.net 你收到POP3消息了吗,vb.net,pop3,Vb.net,Pop3,我正在使用连接到gmail和下载邮件 正在访问的收件箱是仅用于代码访问的事务性收件箱。也就是说,邮件附带订单文件,代码将对其进行处理,然后删除邮件。不过,代码的一个规定是调试标志,如果设置了调试标志,将阻止代码删除消息,以便以后可以在没有调试标志的情况下再次运行程序并重新处理消息。所以,在我的代码中 如果不是Arguments.Debug,则为pop.DeleteEmaileid 这个很好用。问题是,即使不删除邮件,第二次运行该程序也不会重新检索邮件,即使我登录到gmail并查看收件箱,它仍然在

我正在使用连接到gmail和下载邮件

正在访问的收件箱是仅用于代码访问的事务性收件箱。也就是说,邮件附带订单文件,代码将对其进行处理,然后删除邮件。不过,代码的一个规定是调试标志,如果设置了调试标志,将阻止代码删除消息,以便以后可以在没有调试标志的情况下再次运行程序并重新处理消息。所以,在我的代码中

如果不是Arguments.Debug,则为pop.DeleteEmaileid

这个很好用。问题是,即使不删除邮件,第二次运行该程序也不会重新检索邮件,即使我登录到gmail并查看收件箱,它仍然在那里。我能让程序再次看到邮件的唯一方法是将邮件转发回同一个收件箱。但在Peter的代码中,我看不到他在会话之间跟踪看到的消息

这是gmail端做的事情吗?拒绝第二次向同一客户机传递消息?如果是这样的话,我有没有办法更改我的gmail帐户,以便在检索邮件列表时,即使是已经看到的邮件,它也会向客户端显示收件箱中的所有邮件?我在gmail设置屏幕上看不到任何东西


更新:我尝试添加一个方法来向服务器发送RSET命令,如codeproject页面上的。然后,我在检索消息后但在断开连接之前调用新的重置方法。。。但我还是有同样的问题。

好吧。。。在阅读了关于codeproject的几页评论后,找到了一种答案

据介绍,当你处理gmail的服务器时,RSET命令实际上并没有做任何事情


答案是在用户名前面加上字符串recent:,这样就不用用[myaccount@gmail.com]您使用[最近:myaccount@gmail.com]. 相当粗俗。。。但它是有效的。

我第一次读到这篇文章是因为对POP3消息感到遗憾,我开始想起所有我后悔发送的电子邮件。哈哈,你不是第一个这么说的人。希望连字符能让它更清楚!