在 Citrix 上执行时,mailItem 上的 SetProperty / GetProperty 无法按预期工作

SetProperty / GetProperty on a mailItem does not work as expected when executed on Citrix

我有一个 Outlook VSTO 插件。

我使用 mailItem.PropertyAccessor.SetProperty (https://docs.microsoft.com/en-us/office/vba/api/outlook.propertyaccessor.setproperty) and mailItem.PropertyAccessor.GetProperty (https://docs.microsoft.com/en-us/office/vba/api/outlook.propertyaccessor.getproperty) 来保存和检索有关邮件项目的一些信息。它工作得很好。

但是,当 (且仅当) 在 Citrix 环境中执行时,SetProperty 不会抛出任何错误,并且 GetProperty 就像没有属性 存在。所以我没有任何错误。

知道如何解决这个问题吗?

如果仅供您内部使用并且永远不需要保存,请不要设置 属性 - 这可能会导致不良影响:项目变脏,您浪费了 属性 映射(每个邮箱最多可以有 0xFFFF 命名属性 - 一旦达到限制,邮箱几乎就死了)。

创建一个包装器 class 将 MailItem 对象保存为 属性 以及一个列表或字典或一组显式属性来保存您的临时 per-item数据。