The CreateComposeForm method creates a Compose Message Form.
HRESULT CreateComposeForm( IMessageFormHostEx * phost, LPMESSAGE pmsg, FORMTYPE eFormType, LPMESSAGE pMsgBase, MESSAGEFIELDS * pMsgFields, HWND hwndForm, HWND * phwndBody, IMessageFormEx ** ppForm );
[in] Reference to the IMessageFormHostEx object that allows the form to communicate with Messaging.
[in] Reference to the IMessage object to compose.
[in] The type of form, specified by the IFormProviderEx::FORMTYPE enumeration.
[in] Reference to the IMessage to use to pre-fill the form, if one exists.
[in] Reference to the MESSAGEFIELDS structure for the new message.
[out] Handle of the Compose Message Form's frame.
[out] Reference to the handle belonging to the Compose Message Form's body window.
[out] Reference to the newly created Compose Message Form (IMessageFormEx) object.
CreateComposeForm is called by Messaging to create the form that is used to create messages for your custom form. The form creates a window as a child of the Messaging window.
CreateComposeForm returns a handle to the window it has created and a handle to an IMessageFormEx interface. When Messaging calls this method, it passes an IMessageFormHostEx pointer that allows the custom form to communicate with the Messaging Application.