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 参数中提供的模糊级别启发。 FPropCompareProp 和 FPropContainsProp 函数可用于准备生成表的限制。
对于属性类型PT_BINARY忽略 ulFuzzyLevel 的上限 16 位。 如果 ulFuzzyLevel 中的设置缺失或无效,则执行全字符串完全匹配。 有关属性包含的详细信息,请参阅 SContentRestriction 结构。