首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OpenPop.dll errors c#读取gmail

使用OpenPop.dll errors c#读取gmail
EN

Stack Overflow用户
提问于 2016-01-18 22:30:30
回答 1查看 629关注 0票数 0

我正在尝试使用c#中的gmail使用OpenPop.dll读取电子邮件正文。我已经尝试过gmail,但是我无法让它工作,所以我尝试了这个。不管怎样,这是我的代码和错误。

代码语言:javascript
复制
            using (Pop3Client client = new Pop3Client())
            {
                client.Connect("pop.gmail.com", 995, true);
                client.Authenticate("signalxxxxxx@gmail.com", "xxxxxxxx", AuthenticationMethod.UsernameAndPassword);
                int messageCount = client.GetMessageCount();
                List<OpenPop.Mime.Message> allMessages = new List<OpenPop.Mime.Message>(messageCount);
                for (int d = messageCount; d > 0; d--)
                {
                    allMessages.Add(client.GetMessage(i));
                }

allMessages.Add部件上的错误。(运行时)

代码语言:javascript
复制
An unhandled exception of type 'OpenPop.Pop3.Exceptions.InvalidUseException' occurred in OpenPop.dll

Additional information: The messageNumber argument cannot have a value of zero or less. Valid messageNumber is in the range [1, messageCount]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-18 22:46:58

您可能是在另一个for循环中使用这段代码,并且错误地选择了索引变量。GetMessage方法中的参数应该是d,而不是i。它应该是这样的:

代码语言:javascript
复制
using (Pop3Client client = new Pop3Client())
{
     client.Connect("pop.gmail.com", 995, true);
     client.Authenticate("signalxxxxxx@gmail.com", "xxxxxxxx", AuthenticationMethod.UsernameAndPassword);
     int messageCount = client.GetMessageCount();
     List<OpenPop.Mime.Message> allMessages = new List<OpenPop.Mime.Message>(messageCount);
     for (int d = messageCount; d > 0; d--)
     {
          allMessages.Add(client.GetMessage(d));
     }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34865281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档