我正面临着使用VS 2010(C#)添加Outlook 2010的问题。 当用户使用“代理发送”权限发送邮件时,“已发送邮件项目”将保存到用户的个人邮箱,而不是作为邮箱发送的项目发送。 现在我想将它从用户的个人邮箱移到发送邮件发送项目文件夹。 我正在尝试以下代码
Outlook.Application oApp = new Outlook.Application();
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
Outlook.Recipient oRecip = oNS.CreateRecipient(mailboxname);
oRecip.Resolve();
if (oRecip.Resolved)
{
Outlook.MAPIFolder sentItemssendas = oNS.GetSharedDefaultFolder(oRecip, Outlook.OlDefaultFolders.olFolderSentMail);
}
但是这段代码抛出错误“无法完成操作。一个或多个参数值无效。“ 但是使用相同的代码我可以访问olFolderInbox。在谷歌进行一些搜索之后,我才知道“olFolderSentMail”没有授权访问权限。 (http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._namespace.getshareddefaultfolder.aspx) 现在我的问题是有什么方法可以实现我的功能吗?如何将发送邮件从我的个人邮箱发送项目移至“发送为”邮箱发送项目?
*注意:由于用户仅具有“代理发送”权限,因此Outlook仅加载用户的当前个人资料。除了救赎之外还有其他什么吗?。