FPropContainsProp

适用于:Outlook 2013 | Outlook 2016

比较两个属性值(通常是字符串或二进制数组),以确定一个值是否包含另一个。

属性
标头文件:
Mapiutil.h
实现者:
MAPI
调用者:
客户端应用程序和服务提供商
BOOL FPropContainsProp(
  LPSPropValue lpSPropValueDst,
  LPSPropValue lpSPropValueSrc,
  ULONG ulFuzzyLevel
);

参数

lpSPropValueDst

[in]指向 SPropValue 结构的指针,该结构定义属性值,该属性值可能包含 lpSPropValueSrc 参数指向的搜索字符串。

lpSPropValueSrc

[in]指向 SPropValue 结构的指针,该结构定义 FPropContainsPropProp 在lpSPropValueDst 参数指向的属性值中查找的搜索字符串。

ulFuzzyLevel

[in]用于定义在比较中使用的精确级别的选项设置。

  • 较低的 16 位适用于 PT_BINARY 和 PT_STRING8 类型的属性。 它们必须正好设置为以下值之一:

    • FL_FULLSTRING: lpSPropValueSrc 搜索字符串必须等于 lpSPropValueDst 标识的属性值。

    • FL_PREFIX: lpSPropValueSrc 搜索字符串必须出现在 lpSPropValueDst 标识的属性值的开头。 应仅将这两个值与 lpSPropValueSrc 指示的搜索字符串长度进行比较。

    • FL_SUBSTRING: lpSPropValueSrc 搜索字符串必须包含在 lpSPropValueDst 标识的属性值中的任何位置。

  • 16 位上限仅适用于 PT_STRING8 类型的属性。 可以将其设置为任意组合的以下值:

    • FL_IGNORECASE:应在不考虑区分大小写的情况下进行比较。

    • FL_IGNORENONSPACE:比较应忽略 Unicode 定义的非步长字符,例如音调符号。

    • FL_LOOSE:比较应尽可能指示匹配项,忽略区分大小写和非节奏字符。

返回值

TRUE

参数都是有效的, 并且 lpSPropValueSrc 搜索字符串包含在 lpSPropValueDst 属性值中指定的。

FALSE

要比较的属性值的类型不是PT_STRING8或PT_BINARY,属性值是不同类型的,或者 lpSPropValueSrc 搜索字符串未包含在 lpSPropValueDst 属性值中指定的类型。

备注

比较方法取决于 SPropValue 属性定义中指定的属性类型和 ulFuzzyLevel 参数中提供的模糊级别启发。 FPropComparePropFPropContainsProp 函数可用于准备生成表的限制。

对于属性类型PT_BINARY忽略 ulFuzzyLevel 的上限 16 位。 如果 ulFuzzyLevel 中的设置缺失或无效,则执行全字符串完全匹配。 有关属性包含的详细信息,请参阅 SContentRestriction 结构。