2011-11-16 122 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

相关问题