2011-11-16 170 views
3
  1. Windows應用程序調用業務邏輯
  2. 業務邏輯創建使用Exchange Web服務新的電子郵件和返回的電子郵件條目號到Windows應用程序
  3. Windows應用程序嘗試通過Outlook Interop根據電子郵件的條目ID查找並顯示新電子郵件。

使用緩存Exchange模式時以上不起作用。 Outlook僅檢查消息的本地緩存,並且由於它只是在服務器上創建的,因此它不會立即在本地可用。顯示新的電子郵件在Outlook

但是,當帳戶不使用緩存Exchange模式時它工作得很好,因爲Outlook會檢查Exchange Server的電子郵件。

所以,問題:

如何確保展望尋找消息之前,服務器會檢查Exchange服務器,而不是本地緩存的,或至少同步?

下面是我們用來顯示基於其條目ID電子郵件(簡化)代碼:

void ShowEmail(string entryId) 
{ 
    // (COM release and error handling removed for readability) 
    var app = new Microsoft.Office.Interop.Outlook.Application(); 
    var ses = app.Session; 
    var mailItem = 
    (Microsoft.Office.Interop.Outlook.MailItem)ses.GetItemFromID(entryId); 
    mailItem.Object.Display(true); 
} 

回答

2

你有過的郵箱上傳或同步的控制。見this post。如果用戶正在使用緩存Exchange模式 - 他們不能使用此功能。

如果您有權訪問註冊表 - 您可以嘗試禁用緩存Exchange模式,然後重新啓用它。請參閱this post修改註冊表以啓用/禁用CEM。

+0

這是個壞消息。 – bernhof

相關問題