Last modified: July 23, 2011

Applies to: Outlook

Describes an exist restriction which is used to test whether a particular property exists as a column in the table.

Header file:


typedef struct _SExistRestriction
  ULONG ulReserved1;
  ULONG ulPropTag;
  ULONG ulReserved2;
} SExistRestriction;


Reserved; must be zero.


Property tag identifying the column to be tested for existence in each row.


Reserved; must be zero.

The exist restriction is used to guarantee meaningful results for other types of restrictions that involve properties, such as property and content restrictions. When a restriction that involves a property is passed to IMAPITable::Restrict or IMAPITable::FindRow and the property does not exist, the results of the restriction are undefined. By creating an AND restriction that joins the property restriction with an exist restriction, a caller can be guaranteed accurate results.

Exist restrictions cannot be used with sub-object properties that have type PT_OBJECT.

For more information about the SExistRestriction structure, see About Restrictions.