outlook属性值获取时,使用PropertyAccessor,GetProperty/GetProperties易出现错误

GetProperty

操作

获取一个 object 类型的值, 该值代表由_SchemaName_指定的属性的值, 前提是该属性不是一个被阻止的属性。 如果属性不存在,则返回错误。

属性类型支持

返回对象的类型将与 SchemaName 指定的属性的类型相同。 如果您需要将 raw 属性类型转换为字符串 (对于 MAPI 中的PT_BINARY ) 或本地时间 (PT_SYSTIME), 请使用PropertyAccessor helper 方法PropertyAccessor。 UTCToLocalTimePropertyAccessor. row.binarytostring。 PropertyAccessor不支持某些 MAPI 属性类型 (例如, PT_OBJECT), 尝试获取此类类型的属性值将返回 “不支持属性操作” 错误。

适用对象

使用ItemProperty获取显式内置项目级属性。 对不包含显式名称、自定义属性或任何以下对象的属性的项目级属性使用PropertyAccessor : AddressEntry、 AddressList、附件、 ExchangeDistributionList、 ExchangeUser、文件夹、收件人 和存储区

GetProperties

操作

对于_SchemaNames_中的每个属性, 只要属性不是一个被阻止的属性, 就会将该属性的值获取到 variant 数组中的相应元素中。 当 GetProperties 获取_SchemaNames_中所有属性的值时, PropertyAccessor返回具有属性值的 variant 数组。 否则, 返回数组中的错误。

属性类型支持

属性类型支持与 GetProperty 列相同,因为每个值的类型应该与 SchemaNames 中的相应属性类型相同。 包括类型不匹配在内的所有错误都将返回到结果数组中。

适用对象

与 GetProperty 列中描述的对象相同。

总结

因为属性类型不支持,不匹配等原因,导致无法获取属性,返回错误。使用的时候要注意。如果不确定,可以选择其他的替代方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值