FPropContainsProp

Applies to: Outlook 2013 | Outlook 2016

Compares two property values, generally strings or binary arrays, to see if one contains the other.

Property Value
Header file:
Mapiutil.h
Implemented by:
MAPI
Called by:
Client applications and service providers
BOOL FPropContainsProp(
  LPSPropValue lpSPropValueDst,
  LPSPropValue lpSPropValueSrc,
  ULONG ulFuzzyLevel
);

Parameters

lpSPropValueDst

[in] Pointer to an SPropValue structure defining the property value that might contain the search string pointed to by the lpSPropValueSrc parameter.

lpSPropValueSrc

[in] Pointer to an SPropValue structure defining the search string that FPropContainsProp is seeking in the property value pointed to by the lpSPropValueDst parameter.

ulFuzzyLevel

[in] Option settings defining the level of preciseness to use in the comparison.

  • The lower 16 bits apply to properties of type PT_BINARY and PT_STRING8. They must be set to exactly one of the following values:

    • FL_FULLSTRING: The lpSPropValueSrc search string must be equal to the property value identified by lpSPropValueDst.

    • FL_PREFIX: The lpSPropValueSrc search string must appear at the beginning of the property value identified by lpSPropValueDst. The two values should be compared only up to the length of the search string indicated by lpSPropValueSrc.

    • FL_SUBSTRING: The lpSPropValueSrc search string must be contained anywhere in the property value identified by lpSPropValueDst.

  • The upper 16 bits apply only to properties of type PT_STRING8. They can be set to the following values in any combination:

    • FL_IGNORECASE: The comparison should be made without considering case sensitivity.

    • FL_IGNORENONSPACE: The comparison should ignore Unicode-defined nonspacing characters such as diacritical marks.

    • FL_LOOSE: The comparison should indicate a match whenever possible, ignoring case sensitivity and nonspacing characters.

Return value

TRUE

The parameters are all valid and the lpSPropValueSrc search string is contained as specified in the lpSPropValueDst property value.

FALSE

The property values being compared are not of type PT_STRING8 or PT_BINARY, the property values are of different types, or the lpSPropValueSrc search string is not contained as specified in the lpSPropValueDst property value.

Remarks

The comparison method depends on the property types specified in the SPropValue property definitions and the fuzzy level heuristic provided in the ulFuzzyLevel parameter. The FPropCompareProp and FPropContainsProp functions can be used to prepare restrictions for generating a table.

The upper 16 bits of ulFuzzyLevel are ignored for property type PT_BINARY. If the settings in ulFuzzyLevel are missing or invalid, a full-string exact match is performed. For more information about property containment, see the SContentRestriction structure.