Partager via


FPropContainsProp

Applies to: Office 2010 | Outlook 2010 | Visual Studio

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

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.