Com Outlook互操作复制邮件项
我知道我以前见过这个问题,但我似乎再也找不到了 我想使用Microsoft Interop将邮件从收件箱复制到其他文件夹。我知道其他对象,如appointment和folder都有CopyTo()方法,但MailItem缺少该方法。我现在的做法是调用MailItem.Copy,然后将副本移动到另一个文件夹。我不喜欢这样,因为它会在outlook的屏幕上引起一些“闪烁”,在那里你可以看到收件箱随着电子邮件的复制和移动而增长和收缩 还有别的解决办法吗Com Outlook互操作复制邮件项,com,interop,outlook,add-in,Com,Interop,Outlook,Add In,我知道我以前见过这个问题,但我似乎再也找不到了 我想使用Microsoft Interop将邮件从收件箱复制到其他文件夹。我知道其他对象,如appointment和folder都有CopyTo()方法,但MailItem缺少该方法。我现在的做法是调用MailItem.Copy,然后将副本移动到另一个文件夹。我不喜欢这样,因为它会在outlook的屏幕上引起一些“闪烁”,在那里你可以看到收件箱随着电子邮件的复制和移动而增长和收缩 还有别的解决办法吗 谢谢悲伤,但这是唯一的方法 查看,可以使用扩展M
谢谢悲伤,但这是唯一的方法
查看
,可以使用扩展MAPI(-C++或Delphi)进行。 如果using是一个选项,它将实现方法。类似于以下的方法应该可以工作:
set Session = CreateObject("Redemption.RDOSession")
Session.MAPIOBJECT = Application.Session.MAPIOBJECT
set Item = Session.GetMessageFromID(Application.ActiveExplorer.Selection(1).EntryID)
set Folder = Session.GetDefaultFolder(olFolderDeletedItems)
Item.CopyTo(Folder)