Last modified: July 23, 2011

Applies to: Outlook

Presents a dialog box that enables the user to select a form, and returns a form information object that describes that form.

HRESULT SelectForm(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  LPCSTR pszTitle,
  LPMAPIFORMINFO FAR * ppfrminfoReturned


[in] A handle to the parent window of the displayed dialog box.


[in] A bitmask of flags that controls the type of the passed-in strings. The following flag can be set:


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


[in] A pointer to a string that contains the caption of the dialog box. If the pszTitle parameter is NULL, the form library provider supplies a default caption.


[in] A pointer to the folder from which to select the form. If the pfld parameter is NULL, the form can be selected from the local, personal, or organization form container.


[out] A pointer to a pointer to the returned form information object.


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.


The user canceled the operation, typically by clicking the Cancel button in the dialog box.

Form viewers call the IMAPIFormMgr::SelectForm method to first present a dialog box that enables the user to select a form and then to retrieve a form information object that describes the selected form. The dialog box constrains the user to select a single form.

The SelectForm dialog box displays only forms that are not hidden (that is, forms that have their hidden properties clear). If a form viewer passes the MAPI_UNICODE flag in the ulFlags parameter, all strings are Unicode. Form library providers that do not support Unicode strings should return MAPI_E_BAD_CHARWIDTH if MAPI_UNICODE is passed.

For MFCMAPI sample code, see the following table.






MFCMAPI uses the IMAPIFormMgr::SelectForm method to select a form and send information about the form to one or more logs.