Platform SDK: MAPI

WIZARDENTRY

The WIZARDENTRY function prototype defines a service provider entry point function which the Profile Wizard calls to retrieve enough information to display the provider's configuration property sheets.

Quick Info

Header file: MAPIWZ.H
Defined function implemented by: Service providers
Defined function called by: MAPI Profile Wizard

ULONG WIZARDENTRY(
  HINSTANCE hProviderDLLInstance,   
  LPTSTR FAR * lpcsResourceName,   
  DLGPROC FAR * lppDlgProc,        
  LPMAPIPROP lpMAPIProp,           
 
   );    

Parameters

hProviderDLLInstance
[in] Instance handle of the service provider's DLL.
lpcsResourceName
[out] Pointer to a string containing the full name of the dialog resource that should be displayed by the Profile Wizard during configuration. The maximum size of the string, including the NULL terminator, is 32 characters.
lppDlgProc
[out] Pointer to a standard Windows dialog box procedure that will be called by the Profile Wizard to notify the provider of various events.
lpMapiProp
[in] Pointer to a property interface implementation that provides access to the configuration properties.
lpMapiSupportObject
[in] Pointer to the MAPI support object applicable to this session.

Return Values

S_OK
The service provider's WIZARDENTRY function was called successfully.
MAPI_E_CALL_FAILED
An error of unexpected or unknown origin prevented the operation from completing.

Remarks

The Profile Wizard calls the WIZARDENTRY based function when it is ready to display the service provider's configuration user interface. When the Profile Wizard is finished configuring all providers, it writes the configuration properties to the profile by calling IMsgServiceAdmin::ConfigureMsgService.

Notes to Implementers

The name of the WIZARDENTRY – based function must be placed in the WIZARD_ENTRY_NAME entry in MAPISVC.INF.

The resource name is that of the dialog resource that will be rendered in the pane of the Profile Wizard. The resource that is passed back needs to contain all the pages — in a single dialog resource — that should be displayed by the Profile Wizard. When the Profile Wizard receives this resource, it ignores the dialog style, but not the control styles, and creates all the controls as children of the Profile Wizard page. All controls are initially hidden. Providers should ensure that the coordinates for their controls are zero or zero-based, and that they do not exceed a maximum width of 200 dialog units and a maximum height of 150 dialog units. Control identifiers below 400 are reserved for the Profile Wizard. The Profile Wizard displays the provider's title in bold text above the provider's user interface.

The property interface pointer supplied in the lpMapiProp parameter should be retained by the provider for future reference. The Profile Wizard deals with only the most basic set of properties, and the provider can use the property interface implementation to include additional properties. During configuration, providers should add their configuration properties to the object implementing the property interface. After all providers have been configured, the Profile Wizard adds these properties to the profile.

For more information on using this function, see Supporting Message Service Configuration.

See Also

Profile Wizard Functions