2011-05-05 48 views
1

發生奇怪的事情。我試圖使用GetSharedDefaultFolder將本地MAPI文件夾中的項目和項目移動到remtoe Sent Items文件夾。它適用於收件箱文件夾,但不發送項目,即使我有權限。任何想法都會非常感謝你。Outlook Interop 2010 C#將項目移動到共享OlDefaultFolders.olFolderSentMail

錯誤是'無法完成操作。一個或多個參數值不是有效的」

的代碼示例是:

Outlook.MailItem cItem = (mailmsg as Outlook.MailItem).Copy() as Outlook.MailItem; 
Outlook.NameSpace ns = this.Application.GetNamespace("MAPI"); 
//ns.Logon() 
Outlook.Recipient recipient = ns.CreateRecipient("[email protected]"); 
recipient.Resolve(); 
if (recipient.Resolved) 
{ 
    MessageBox.Show("Resolved user"); 
    Outlook.MAPIFolder mapifld = ns.GetSharedDefaultFolder(recipient, Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderSentMail); 
    cItem = (Outlook.MailItem)cItem.Move(mapifld); 
} 

回答

1

根據此API MS文檔中,olFolderSentMail是不允許的默認文件夾中的一個。

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._namespace.getshareddefaultfolder.aspx

摘錄:

FolderType可以是以下OlDefaultFolders常量之一:olFolderCalendar,olFolderContacts,olFolderDrafts,olFolderInbox,olFolderJournal,olFolderNotes,或olFolderTasks。 (常量olFolderDeletedItems,olFolderOutbox,olFolderJunk,olFolderConflicts,olFolderLocalFailures,olFolderServerFailures,olFolderSyncIssues,olPublicFoldersAllPublicFolders,olFolderRssSubscriptions,olFolderToDo,olFolderManagedEmail和olFolderSentMail不能爲這個參數中指定。)

+0

感謝馬克,我想我想通一些其他關於Outlook體系結構的事情一樣,並決定放棄上述,因爲它永遠不會工作。很想知道官方文件,所以謝謝你 -Steve – user512628 2011-09-09 05:53:02