いくつかのショートカット オプションを提供 SetupProgress するダイアログを表示するダイアログの前に挿入した単純なカスタム アクションがあります。AskOptions
ほとんどの場合、期待どおりに動作していますが、理解できない動作が 1 つあります。ユーザーが戻るボタンをクリックすると、前のダイアログに移動し、ダイアログを続行しないようにしSetupProgressます。ダイアログに次のコードを使用します (実際にショートカットを作成するコードは除きます)。
function MyFunction(hMSI)
NUMBER nResult;
STRING szMsg, szText1, szText2, szText3;
NUMBER nReturn, nValue, nvCheck1, nvCheck2, nvCheck3;
begin
SetDialogTitle(DLG_ASK_OPTIONS, "More Options");
szMsg = "Select from the additional options below.";
szText1 = "Shortcut option 1";
szText2 = "Shortcut option 2";
szText3 = "Shortcut option 3";
nvCheck1 = TRUE;
nvCheck2 = TRUE;
nvCheck3 = FALSE;
// Display the check box (NONEXCLUSIVE) dialog.
nValue = NONEXCLUSIVE;
nResult = AskOptions (nValue, szMsg,
szText1, nvCheck1,
szText2, nvCheck2,
szText3, nvCheck3);
//This is the troublesome code... Not sure how to handle this...
//if (nResult = BACK) then
// goto [Where?];
//endif;
end;
ご覧のとおり、一番下に戻るボタンを処理できる行がありますが、実際に前のダイアログに戻る方法がわかりません。