5

Gmail アカウントから emial を読みたいです。「OpenPop.Pop3」を使用して、Gmail アカウントからメールを読み込んでいます。以下のコードを使用しています:-

using OpenPop.Pop3;    
public DataTable ReadEmailsFromId()
        {
            DataTable table = new DataTable();
            try
            {
                using (Pop3Client client = new Pop3Client())
                {
                    int messageCount = client.GetMessageCount();
                    for (int i = messageCount; i > 0; i--)
                    {
                        table.Rows.Add(client.GetMessage(i).Headers.Subject, client.GetMessage(i).Headers.DateSent);
                        string msdId = client.GetMessage(i).Headers.MessageId;
                        OpenPop.Mime.Message msg = client.GetMessage(i);
                        OpenPop.Mime.MessagePart plainTextPart = msg.FindFirstPlainTextVersion();
                        string message = plainTextPart.GetBodyAsText();                           
                    }
                }
            }
        return table;
        }

ただし、2016 年 3 月 4 日より前にメールを取得し、新しい/最新のメールを取得していません。「OpenPop.Pop3」に制限はありますか、それとも何か不足していますか?

4

2 に答える 2

6

新しいメールを取得するには、ユーザー名の前に「recent:」というキーワードを入力するだけで、過去 30 日間に受信したメールが表示されます。

 using OpenPop.Pop3;    
    public DataTable ReadEmailsFromId()
    {
        DataTable table = new DataTable();
        try
        {
            using (Pop3Client client = new Pop3Client())
            {
                client.Connect("pop.gmail.com", 995, true); //For SSL                
                client.Authenticate("recent:Username", "Password", AuthenticationMethod.UsernameAndPassword);

                int messageCount = client.GetMessageCount();
                for (int i = messageCount; i > 0; i--)
                {
                    table.Rows.Add(client.GetMessage(i).Headers.Subject, client.GetMessage(i).Headers.DateSent);
                    string msdId = client.GetMessage(i).Headers.MessageId;
                    OpenPop.Mime.Message msg = client.GetMessage(i);
                    OpenPop.Mime.MessagePart plainTextPart = msg.FindFirstPlainTextVersion();
                    string message = plainTextPart.GetBodyAsText();                           
                }
            }
        }
    return table;
    }
于 2016-10-21T06:16:35.333 に答える
2

POP3 経由の Gmail にはいくつかの癖があります。これらのリンクを試して、役立つかどうかを確認してください。

OpenPop を使用してメール サーバーから最新のメールを取得する

Gmail をプログラムで POP3 サーバーとして使用する場合、Gmail にはどのような非標準動作機能がありますか?

于 2016-10-20T16:45:33.173 に答える