java - 访问 Outlook 表单和 Exchange Web 服务中的自定义字段

标签 java vbscript exchangewebservices ewsjavaapi outlook-form

我们的应用程序有两个部分,并且希望两个部分都能够访问 Outlook 项目的相同字段。通过字段,我的意思是可以存储在项目上的任何类型的键值类型的数据,因为显然它们似乎有多种类型。所以应用程序的两个部分是:

  • 使用 MS 提供的官方 EWS 库的 Java 应用程序
  • 使用 VBScript 的 Outlook 表单

我们能够从 Java 应用程序访问 Outlook 项目,甚至存储和检索所谓的扩展属性。但仅限那些通过相同 API 存储的内容。据我所知,C# 中的代码也非常相似。

ExtendedPropertyCollection epc = appointment.getExtendedProperties();
for (ExtendedProperty ep : epc) {
    // these do not print anything, epc.getCount() returns 0
    System.out.println(" extendedpropC: " + ep.getClass());
    System.out.println(" extendedpropV: " + ep.getValue());
}

在 Outlook 表单中,我们可以按照描述的方式将文本框映射到字段,从而将文本框的值存储到字段中 here 。因此,保存并重新打开项目后,自定义文本框将填充字段中的值。但当尝试通过 EWS 访问这些值时,它们根本不存在,反之亦然。

那么对于多种 API/语言来说,这些扩展属性是否有多个“槽位”?

或者,扩大问题范围,您将使用什么方法/API 将键值类型数据放入 Outlook 项目中,而这些数据应该可以通过 Java 进行访问?

最佳答案

您可以使用 AppointmentItem.PropertyAccessor.GetProperty 访问任何 MAPI 属性。

您可以在 OutlookSpy 中查看属性及其 DASL 名称(调用 GetProperty 时需要使用该名称)。 (我是它的作者):选择约会,单击 IMessage 按钮,选择有问题的属性,查看 DASL 编辑框。

关于java - 访问 Outlook 表单和 Exchange Web 服务中的自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19228725/

相关文章:

java - 字符串数组抛出错误-Java

java - r.raw 中的 android 图像

java - 如何检索添加到 JMenu 的组件数?

xml - 交换 : Find items in EWS conversation using XML request?

java - EWS java检查电子邮件是否加密

java - Lombok build 者的继承

ruby - 当通过 OLE 从 Ruby 或 VBS 调用时,Word Document.SaveAs 忽略编码

VBScript - 不知道为什么我的参数没有像变量一样使用

sql-server - ASP 和 ADO 错误 : No value given for one or more required parameters

go - 如何通过 golang 或 C# 以外的其他语言将 EWS 获取项目正文传输到 PST 文件