SERVICEWIZARDDLGPROCSERVICEWIZARDDLGPROC

適用されます: OutlookApplies to: Outlook

プロバイダーのプロパティ シートまたはページが表示されているときに、ユーザー イベントに応答するサービス プロバイダーを使用してプロファイル ウィザードによって呼び出されるコールバック関数を定義します。Defines a callback function invoked by the Profile Wizard to allow a service provider to react to user events when the provider's property sheets or pages are being shown.

ヘッダー ファイル:Header file:
Mapiwz.hMapiwz.h
によって実装される関数の定義:Defined function implemented by:
サービス プロバイダーService providers
によって呼び出される関数を定義します。Defined function called by:
MAPI プロファイル ウィザードMAPI Profile Wizard
BOOL SERVICEWIZARDDLGPROC(
  HWND hDlg,
  UINT wMsgID,
  WPARAM wParam,
  LPARAM lParam
);

ParametersParameters

hDlghDlg

[in]プロファイル ウィザード] ダイアログ ボックスのウィンドウ ハンドルです。[in] Window handle to the Profile Wizard dialog box.

wMsgIDwMsgID

[in]ウィンドウ メッセージを処理します。[in] The window message to be processed. モーダル ダイアログ ボックスで、通常のウィンドウ メッセージの他、次のメッセージを受信できます。In addition to the regular window messages expected by a modal dialog box, the following messages can be received:

WM_CLOSEWM_CLOSE

プロファイル ウィザードが完了しました。The Profile Wizard has completed. サービス プロバイダーは、割り当てられたメモリのいずれかを動的に割り当て解除など、すべての必要なクリーンアップを行います。The service provider should do all required cleanup such as deallocating any dynamically allocated memory.

WM_COMMANDWM_COMMAND

プロバイダーのコントロールのいずれかが選択されているか、[次へ] または [戻る] ボタンがクリックしてされました。One of the provider's controls has been selected, or the Next or Back button has been clicked. _WParam_パラメーターの値は、これらのユーザー イベントが発生したを示します。The value in the wParam parameter indicates which of these user events has occurred.

WM_INITDIALOGWM_INITDIALOG

ユーザーは、ダイアログ ボックスを初期化する必要があります別のプロパティ ページに移動します。The user has moved to another property page, for which the dialog box must be initialized. プロバイダーは、プロファイル ウィザード、ダイアログ ボックスに追加したコントロールを初期化する必要があります。The provider should initialize the controls that the Profile Wizard has added to the dialog box.

WIZ_QUERYNUMPAGESWIZ_QUERYNUMPAGES

プロファイル ウィザードはページを表示する必要のあるプロバイダーの数のメッセージを表示します。The Profile Wizard is prompting for the number of pages that the provider needs to display. プロバイダーには、TRUE または FALSE の代わりにページ数を返す必要があります。The provider should return the number of pages instead of TRUE or FALSE. たとえば、3 つのページを表示する必要があることを示すために次の return ステートメントを使用します。For example, use the following return statement to indicate that three pages should to be displayed:

return (BOOL)3;

wParamwParam

[in]ウィンドウのメッセージに関連付けられている 32 ビットのパラメーター。[in] A 32-bit parameter associated with window messages. 使用可能な値は、 _wMsgID_パラメーターで指定されたメッセージに依存します。Possible values depend on the message specified in the wMsgID parameter. 値に加え、モーダル ダイアログ ボックスの通常のウィンドウ メッセージが期待どおり、次の値を受け取ることができます。In addition to the values expected with the regular window messages for a modal dialog box, the following values can be received:

WIZ_NEXTWIZ_NEXT

_WMsgID_に WM_COMMAND が含まれている場合、[次へ] ボタンをクリックします。When wMsgID contains WM_COMMAND, the user has clicked the Next button.

WIZ_PREVWIZ_PREV

_WMsgID_に WM_COMMAND が含まれている場合、[戻る] ボタンをクリックします。When wMsgID contains WM_COMMAND, the user has clicked the Back button.

lParamlParam

[in]ウィンドウのメッセージに関連付けられている 32 ビットのパラメーター。[in] A 32-bit parameter associated with window messages. 使用可能な値は、 _wMsgID_パラメーターで指定されたメッセージに依存します。Possible values depend on the message specified in the wMsgID parameter.

�߂�lReturn value

SERVICEWIZARDDLGPROCベースの関数によって返される値は、ウィンドウ メッセージを受信しました。The value returned by a SERVICEWIZARDDLGPROC based function is dependent on the window message received. 比類のない WIZ_QUERYNUMPAGES メッセージの値を返すに特に注意してください。Note in particular the exceptional return value for the WIZ_QUERYNUMPAGES message. 通常の戻り値は次のとおりです。The normal return values are:

TRUETRUE

サービス プロバイダーが、受信ウィンドウ メッセージを処理します。The service provider has processed the received window message.

FALSEFALSE

サービス プロバイダーは、受信されたウィンドウ メッセージを処理していません。The service provider has not processed the received window message.

備考Remarks

ユーザーを移動する 1 つのプロパティ ページから、ときに、プロバイダーは、次または前のページのコントロールの表示と古いページのコントロールを非表示にします。When the user moves from one property page to another, the provider is responsible for hiding the old page's controls and showing the controls for the next or previous page. ユーザーは、[次へ] をクリックすると、 SERVICEWIZARDDLGPROCベースの機能、 _wParam_パラメーターに WM_COMMAND メッセージと WIZ_NEXT で呼び出されます。When the user clicks the Next button, the SERVICEWIZARDDLGPROC based function is called with the WM_COMMAND message and WIZ_NEXT in the wParam parameter. 次の手順では、最初のプロバイダーの構成ページが表示される時間と、ユーザーはをクリックすると時間の間で行われる処理について説明します。The following steps describe what occurs between the time the user clicks Next and the time the first provider's configuration pages are rendered.

  1. プロファイル ウィザードでは、ウィンドウ上にあるすべてのコントロールを非表示にします。The Profile Wizard hides any controls that are on the window.

  2. プロファイル ウィザードでは、プロバイダーの非表示のコントロールをページに追加します。The Profile Wizard adds the provider's hidden controls to the page.

  3. プロファイル ウィザードでは、 SERVICEWIZARDDLGPROCプロバイダーは、コントロールを初期化できるように、WM_INITDIALOG メッセージの送信を呼び出します。The Profile Wizard calls SERVICEWIZARDDLGPROC, sending the WM_INITDIALOG message, so that the provider can initialize the controls.

  4. プロファイル ウィザードでは、 SERVICEWIZARDDLGPROC、WIZ_QUERYNUMPAGES メッセージを送信を呼び出します。The Profile Wizard calls SERVICEWIZARDDLGPROC, sending the WIZ_QUERYNUMPAGES message. プロバイダーは、表示されるページの数を返します。The provider returns the number of pages that are to be shown.

  5. プロファイル ウィザードでは、 SERVICEWIZARDDLGPROC、WIZ_NEXT または WIZ_PREV のいずれかに設定、 _wParam_パラメーターを持つ WM_COMMAND メッセージを送信を呼び出します。The Profile Wizard calls SERVICEWIZARDDLGPROC, sending the WM_COMMAND message with the wParam parameter set to either WIZ_NEXT or WIZ_PREV. この時点では、プロバイダーか、{エラー} の FALSE を返しますまたはそのコントロールが表示し、{成功} は TRUE を返します。At this point, the provider either returns FALSE {error} or reveals its controls and returns TRUE {success}. プロファイル ウィザードは、ID_NEXT に合格した場合は、プロバイダーの最初のページが表示されます。If the Profile Wizard passes in ID_NEXT, the provider's first page is displayed. ID_PREV が渡されると、最後のページが表示されます。If ID_PREV is passed in, the last page is displayed.

  6. プロファイル ウィザードでは、WIZ_NEXT または (ボタンによって、ユーザーがクリックした) WIZ_PREV のいずれかに設定、 _wParam_パラメーターを持つ WM_COMMAND メッセージを送信するプロバイダーのSERVICEWIZARDDLGPROC関数を呼び出します。The Profile Wizard calls the provider's SERVICEWIZARDDLGPROC function, sending the WM_COMMAND message with the wParam parameter set to either WIZ_NEXT or WIZ_PREV (depending on which button the user clicked). プロバイダーは、そのコントロールを非表示のページのシーケンスをステップ実行するにはプロファイル ウィザードに渡されるIMAPIPropにそのデータを記述します.The provider is responsible for showing or hiding its controls and writing its data to the IMAPIProp passed to the Profile Wizard to step through its sequence of pages. プロバイダーする必要があります TRUE を返す場合は、次または前のページが正常に表示すると、次または前のページもない場合に FALSE が表示される可能性があります。The provider should return TRUE if the next or previous page was successfully shown, and FALSE if neither the next nor previous page could be shown. プロバイダーは、その一連のページの外部でステップ実行するのに注意してくださいし、そのコントロールを非表示し、プロファイル データの書き込みが適切に応答する必要があります。The provider needs to be aware of when it is stepping outside of its sequence of pages, and respond appropriately by hiding its controls and writing its data to the profile.

  7. プロバイダーの範囲のページの手順は、ユーザー、プロファイル ウィザード] ダイアログ ボックスからプロバイダーの非表示のコントロールを削除し、次のプロバイダーを呼び出してか最後のプロバイダーをされている場合、次のページが表示されます。If the user steps outside the provider's range of pages, the Profile Wizard deletes the provider's hidden controls from the dialog box and calls the next provider or displays its next page if that was the last provider.