【问题标题】:OpenPop deleting messagesOpenPop 删除消息
【发布时间】:2013-08-14 13:18:36
【问题描述】:

当我尝试删除一条消息时,它一次删除 4 条消息,即使我另有明确说明,因为我有 700 条消息,所以我最多只能显示 4 条。

public void inboxupdate()
    {
        client.Connect("pop.googlemail.com", 995, true);
        if (client.Connected)
        {
            client.Authenticate(tbxEmail.Text, tbxPassword.Text, OpenPop.Pop3.AuthenticationMethod.UsernameAndPassword);
        }
        int MessageCount = client.GetMessageCount();

        for (int i = 1; i <= 4; i++ )
        {
            try
            {
                cbxInbox.Items.Add(client.GetMessage(i).ToMailMessage().Subject, false);
            }
            catch
            {
            }
        }
    }

要删除的代码:

private void btnDelete_Click(object sender, EventArgs e)
    {
        if (cbxInbox.CheckedItems.Count > 1)
        {
            for (int i = 1; i <= cbxInbox.CheckedItems.Count; i++)
            {
                client.DeleteMessage(i + 1);
            }
        }
        cbxInbox.Items.Clear();
        client.Disconnect();
        inboxupdate();
    }

即使我这样做了

client.DeleteMessage(1)

一次删除 4 个。 此外,这些消息似乎很旧,因为当我访问 mail.google.com 时它们没有出现在第一页上 有没有办法区分垃圾邮件和邮件?

【问题讨论】:

    标签: c# visual-studio email pop3 openpop


    【解决方案1】:

    Gmail 有一些有趣的 POP3 实现。一旦你下载了一条消息,下次它就不会再显示给你了。因此,您的问题很可能不是 OpenPop 删除了 4 条消息,而是您下载了 4 条 Gmail 然后向您隐藏的消息。

    请看What non-standard behaviour features does Gmail exhibit, when it is programmatically used as a POP3 server?

    附带说明:下次您提出问题时,请花一些时间提出问题,清理它。例如,为什么要包含注释掉的代码?

    第二个旁注。以下代码没有考虑哪些消息被“标记”为应该删除。你不应该查找索引吗?如果用户选择了n 项目,您总是会删除第一个n 项目,但如果他选择了n 最后一个项目呢?

    if (cbxInbox.CheckedItems.Count > 1)
    {
        for (int i = 1; i <= cbxInbox.CheckedItems.Count; i++)
        {
            client.DeleteMessage(i + 1);
        }
    }
    

    希望对你有帮助。

    【讨论】:

    • 邮件以是否在checklsitbox、cbxInbox中签入来标记。
    • 所以如果我登录到我的hotmail,删除命令会起作用吗?
    • 哦,它似乎将最旧的电子邮件读取为第一,我如何阅读最新的电子邮件?
    • 无论哪种方式,OpenPop 只向服务器发送一个 DELETE 命令。由服务器决定如何向您呈现消息。
    猜你喜欢
    • 1970-01-01
    • 2015-07-27
    • 2018-06-29
    • 2018-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-10
    相关资源
    最近更新 更多