gpt4 book ai didi

delphi - 使用 EWS 创建扩展属性并从 Outlook 加载项访问它

转载 作者:行者123 更新时间:2023-12-03 15:45:33 26 4
gpt4 key购买 nike

我目前正在使用 EWS 将我们公司的应用程序与 Exchange 2010 进行一些集成。我正在使用 EWS 创建 Exchange 2010 的约会,并且运行良好;但最近我尝试在创建约会时添加一些自定义/扩展属性,下面是我添加扩展属性的代码。

Dim customField As New ExtendedPropertyDefinition(DefaultExtendedPropertySet.PublicStrings, "MyCustomField", MapiPropertyType.String)

appointment.SetExtendedProperty(customField, "CustomFieldValue")

以上代码能够为约会创建自定义字段。

现在这是我的问题。当我在 Outlook 中打开我创建的约会并转到“开发人员 > 设计此表单”,然后转到“所有字段”选项卡时,我只看到我在“文件夹中的用户定义字段”中创建的自定义字段,但看不到“此项中的用户定义字段”。

我还制作了一个 Outlook 插件,以便当用户在 Outlook 中打开约会时对我使用 EWS 创建的自定义字段使用react,当我尝试查找自定义字段时,找不到自定义字段,因为自定义字段是在“文件夹中的用户定义字段”中创建的,而不是在“此项中的用户定义字段”中创建的。

这是 Outlook 插件中的代码,当用户在 Outlook 中打开约会时将执行。但由于自定义字段不在“在此项目中”,因此 .Find() 返回 Nothing。

Dim appt As Outlook.AppointmentItem
appt = TryCast(inspector.CurrentItem, Outlook.AppointmentItem)
If appt.UserProperties.Find("MyCustomField") Is Nothing Then
'Some action
Else
'Some action
End If

我想要实现的是使用 EWS 创建具有自定义字段(扩展属性)的约会,然后当用户在 Outlook 中打开约会时读取 Outlook 加载项中的自定义字段(扩展属性)。

编辑:

我使用 EWS 分配给自定义字段的值显示在“文件夹中的用户定义字段”中。如何从 Outlook 加载项检索值?也许我可以检索该值并将自定义字段添加到该项目和该值中?

谢谢。

最佳答案

答案在这里: http://social.technet.microsoft.com/Forums/en-US/exchangesvrdevelopment/thread/2a98b4ab-0fbc-4863-8303-48711a18a050

无法访问 EWS 使用 UserProperties 创建的扩展属性。但可以使用PropertyAccessor访问。

outlookItem.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/yourProp")

关于delphi - 使用 EWS 创建扩展属性并从 Outlook 加载项访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6013173/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com