Last modified: July 23, 2011

Applies to: Outlook

Resolves a group of message classes to their forms within a form container, and returns an array of form information objects for those forms.

HRESULT ResolveMultipleMessageClasses(
  ULONG ulFlags,
  LPMAPIFOLDER pFolderFocus,


[in] A pointer to an array that contains the names of the message classes to resolve.


[in] A bitmask of flags that controls how the message classes are resolved. The following flag can be set:


Only message class strings that are an exact match should be resolved.


Do not include cached forms.


[in] A pointer to the folder that contains the form whose message class is being resolved. The pFolderFocus parameter can be NULL.


[out] A pointer to a pointer to an array of form information objects. If a form viewer passes NULL in the pMsgClasses parameter, the ppfrminfoarray parameter contains form information objects for all forms in the container.


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

Form viewers call the IMAPIFormMgr::ResolveMultipleMessageClasses method to resolve a group of message classes to forms within a form container. The array of form information objects returned in ppfrminfoarray provides further access to each of the forms' properties.

To resolve a group of message classes to forms, a form viewer passes in an array of message class names to be resolved. To force the resolution to be exact (that is, to prevent resolution to a base class of the message class when an exactly matching form server is not available) the MAPIFORM_EXACTMATCH flag can be passed in the ulFlags parameter.

Message class names are always ANSI strings, never Unicode.

If a message class cannot be resolved to a form, NULL is returned for that message class in the form information array. Therefore, even if the method returns S_OK, form viewers should not work on the assumption that all message classes have been successfully resolved. Instead, form viewers should check the values in the returned array.