Last modified: July 23, 2011

Applies to: Outlook

Returns an array of the properties used by all forms installed in a form container.

HRESULT CalcFormPropSet(
  ULONG ulFlags,


[in] A bitmask of flags that controls how the property array in the ppResults parameter is returned. The following flags can be set:


The returned array contains the intersection of the forms' properties.


The returned array contains the union of the forms' properties.


The strings returned in the array are in Unicode format. If the MAPI_UNICODE flag is not set, the strings are in ANSI format.


[out] A pointer to a pointer to the returned SMAPIFormPropArray structure. This structure contains all properties used by the installed forms.


The call succeeded and has returned the expected value or values.


Either the MAPI_UNICODE flag was set and the implementation does not support Unicode, or MAPI_UNICODE was not set and the implementation supports only Unicode.

Client applications call the IMAPIFormContainer::CalcFormPropSet method to obtain an array of properties used by all forms installed in a form container. IMAPIFormContainer::CalcFormPropSet works like the IMAPIFormMgr::CalcFormPropSet method, except that it operates on every form registered in a particular container.

Form library providers that do not support Unicode strings should return MAPI_E_BAD_CHARWIDTH if MAPI_UNICODE is passed.

IMAPIFormContainer::CalcFormPropSet takes either an intersection or a union of the forms' property sets, depending on the flag set in the ulFlags parameter, and it returns an SMAPIFormPropArray structure that contains the resulting group of properties.

If a client passes the MAPI_UNICODE flag in ulFlags, all returned strings are Unicode.