在 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数据。
我有一个 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数据。