Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Outlook 2013自动化对象:使用hotmail EAS帐户。移动,复制失败_C#_Vba_Outlook_Outlook Addin - Fatal编程技术网

C# Outlook 2013自动化对象:使用hotmail EAS帐户。移动,复制失败

C# Outlook 2013自动化对象:使用hotmail EAS帐户。移动,复制失败,c#,vba,outlook,outlook-addin,C#,Vba,Outlook,Outlook Addin,我理解用户不能跨越EAS帐户边界移动邮件。从Outlook windows手动在同一EAS帐户内移动邮件是完全正确的,但通过自动化对象移动邮件则失败。这里怎么了 Outlook.MailItem item = Outlook.Namespace.GetItemFromID(MailItemEntryEid, MailItemStoreEid); Outlook.MAPIFolder folder = Outlook.Namespace.GetFolderFromID(MAPIFolderEntr

我理解用户不能跨越EAS帐户边界移动邮件。从Outlook windows手动在同一EAS帐户内移动邮件是完全正确的,但通过自动化对象移动邮件则失败。这里怎么了

Outlook.MailItem item = Outlook.Namespace.GetItemFromID(MailItemEntryEid, MailItemStoreEid);
Outlook.MAPIFolder folder = Outlook.Namespace.GetFolderFromID(MAPIFolderEntryEid, MailItemStoreEid);
Outlook.MailItem newItem = item.Move(folder);
但是,项目和文件夹对象构造正确,并且属于同一EAS存储。最后一行的移动失败,出现以下错误:

(0x80040102):抱歉,Exchange ActiveSync不支持您尝试执行的操作

如果我使用item.Delete()将项目移动到“已删除项目”文件夹中,本文将描述类似的问题。你使用公共文件夹吗


无论如何,您可以先使用方法,然后使用源项

尝试使用MailItem.Copy,后跟MailItem.Move,然后调用Save:

  set Item = Application.ActiveExplorer.Selection(1)
  set Target = Application.Session.GetDefaultFolder(olFolderDrafts)
  set newItem = Item.Copy
  set newItem = newItem.Move(Target)

复制也会产生同样的错误。我只处理我的收件箱。代码在