0

我正在编写一个 Outlook 加载项,我需要在收到电子邮件时,正常进入默认收件箱文件夹,但它会复制收到的电子邮件并将其放入另一个文件夹(例如垃圾文件夹)。但我遇到异常“无法移动项目”。我一直在移动电子邮件的副本。有任何想法吗?

private void items_ItemAdd(object Item)
 {


    Outlook.MAPIFolder inBox = (Outlook.MAPIFolder)
    this.Application.ActiveExplorer().Session.GetDefaultFolder
    (Outlook.OlDefaultFolders.olFolderInbox);


    // the incoming email
    Outlook.MailItem mail = (Outlook.MailItem)Item;
    //make a copy of it but error occurs
    Outlook.MailItem cItem = mail.copy();
    //
    cItem = (Outlook.MailItem)cItem.Move((Outlook.MAPIFolder)
    this.Application.ActiveExplorer().Session.GetDefaultFolder
    (Outlook.OlDefaultFolders.olFolderJunk));
4

1 回答 1

1

您在 ItemAdd 事件处理程序中。尝试将项目的条目 ID 存储在变量或列表中并启动计时器(使用 Forms 命名空间中的计时器)。当时间触发时,您将退出事件处理程序并且应该能够调用 MailItem.Move。

于 2014-08-19T04:09:18.683 回答