1

场景是这样的:有一个导出到 Outlook 的应用程序,然后有一个 Outlook 插件将数据发送到您的应用程序。以任何一种方式发送信息,然后在 Outlook 中创建具有用户属性的 Outlook 项目或在应用程序中使用 EWS 创建项目并使用扩展属性,都很容易。

设置扩展属性的方法如下:

    extendedPropertyDefinition = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.PublicStrings, "CustomProperty", MapiPropertyType.String);
    contact.SetExtendedProperty(extendedPropertyDefinition, customPropertyValue);

那么如何在 Outlook 插件中访问您的应用程序(使用 EWS)设置的扩展属性?

4

1 回答 1

3

在插件中,人们不会简单地将这个属性定义为 UserProperty。因此,需要使用 PropertyAccessor 访问该属性,为此您需要扩展属性的架构。这在在线文档中并不容易找到,但我设法发现这些 PublicStrings 扩展属性的架构是:

http://schemas.microsoft.com/mapi/string/ {00020329-0000-0000-C000-000000000046}/CustomProperty”

请注意,如果您使用 PropertyAccessor 并且 Outlook 项目上不存在该属性,则会引发 COM 异常,因此需要 try-catch 以返回空值。

于 2013-11-19T13:51:11.520 回答