如何区分pop3服务器发送和接收的电子邮件(usingPOCO c ++)

时间:2013-03-07 09:11:53

标签: c++ ssl gmail poco pop3

我发现在从gmail的pop3服务器检索邮件列表时,所有内容都被拉,读/未读,已发送/收到的邮件:

int idx, count;
Poco::Net::Context::Ptr pContext = new
    Poco::Net::Context (Poco::Net::Context::CLIENT_USE,
                        "", Poco::Net::Context::VERIFY_NONE, 9, true);
pContext->enableExtendedCertificateVerification(false);
Poco::Net::SocketAddress addr("pop.gmail.com", p995);
Poco::Net::SecureStreamSocket sss(addr, pContext);
POP3ClientSession session(sss);

try
{
    vector<POP3ClientSession::MessageInfo>::const_iterator i;
    session.login(the_user.data(), the_pass.data());
    POP3ClientSession::MessageInfoVec messages;

    count = session.messageCount();
    session.listMessages(messages);

    for(idx = 0, i = messages.begin(); i != messages.end(); ++i, idx++)
    {
        MailMessage message;
        session.retrieveMessage((*i).id, message);
        // ..
    }
}

在相关帖子(How to retrieve just unread emails using pop3?)中,有人提到“POP3无法跟踪邮件是已读取还是未读取” - 这是否也适用于入站和未读?出站邮件? 如果是这样,您如何区分消息类型?通过解析消息体?

我真的可以用一种方法来跳过发送的邮件,有成千上万的程序需要整夜运行才能收到入站邮件。

0 个答案:

没有答案