0

我在我的电子邮件客户端上使用 Imap 和 Chilkat。我想设置电子邮件的优先级并将此更新应用于服务器。

我的电子邮件列表中的每封电子邮件都有星形图标,我想通过单击此星形图标来切换优先级。

我收到带有 imap.FetchSingle() 的特定电子邮件,并使用以下代码在标题中设置“X-Priority”:

            Email email = imap.FetchSingle(uniqueId, bIsUid);


            if (email.GetHeaderField("X-Priority") == "1 (Highest)")
            {
                //email.RemoveHeaderField("X-Priority");
                email.AddHeaderField("X-Priority", "3 (Normal)");

            }
            else
            {
                //email.RemoveHeaderField("X-Priority");
                email.AddHeaderField("X-Priority", "1 (Highest)");
            }

更新电子邮件标头部分内的 x-priority 字段后,它不会更新服务器上的标头。当我刷新页面时,我会在列表中看到具有旧优先级的电子邮件。

所以可能的问题是我如何将这些更改应用于服务器?

提前致谢...

4

1 回答 1

1

你不能。IMAP 中的消息是不可变的。您必须上传新副本。通常使用 \Flagged 标志。

于 2014-03-03T23:25:14.687 回答