[ SourceForge.net | Project | izfree | Tutorials | Tutorial 2 ]

Tutorial 2: Removing Unnecessary Dialogs

The installation created from Tutorial 1 gives you a functioning installation database created from a set of templates. There are three templates that are used to create the installation database: a database schema, a collection of install sequences, and a user interface.

Because these templates are very general, you will usually want to refine the basic installation by editing the database with Orca.

In the case of 'zoom', you might want to remove the user registration dialog and the license dialog. To remove a dialog with Orca, follow these steps.

  1. Open the database with Orca and select the Dialog table.

    33K PNG,
    178K JPEG

  2. In the database rows pane, click the Dialog column to sort the dialog rows by the name of the dialog.

    33K PNG,
    178K JPEG

  3. Select the rows for the dialogs you wish to delete. Select Edit / Cut Row(s), Tables / Drop Row(s), or press the Delete key to remove the rows from the table.

    33K PNG,
    183K JPEG

  4. Now we remove the controls that were associated with those dialogs. Display the Control table and sort the rows by the Dialog column. Select the rows corresponding to the controls on the deleted dialogs and remove them.

    41K PNG,
    214K JPEG

  5. Display the ControlCondition table and sort the rows by the Dialog column. Select any rows corresponding to the deleted dialogs and remove them.

  6. Display the ControlEvent table and sort the rows by the Dialog column. Select any rows corresponding to the deleted dialogs and remove them.

  7. Now the dialogs and their controls have been cut out of the middle of the dialog sequence. However, the dialogs before and after the removed dialogs still refer to the deleted dialogs with their Next and Back buttons.

    To find these dangling references, select Tools / Validate... from the menu. The validation dialog box appears. Select Full MSI Validation Suite for the Evaluation File and click Go. This will validate the contents of the tables in the database.

    Any informational, warning or error messages generated by the internal consistency evaluators will be displayed in the validation dialog box. Click 'Close' to close the validation dialog box, and Orca will then display the validation errors in a pane at the bottom.

    35K PNG,
    188K JPEG

  8. Correct the errors in the dialog sequence. The original sequence was as follows: WelcomeDlg, LicenseAgreementDlg, UserRegistrationDlg, SetupTypeDlg. With the LicenseAgreementDlg and UserRegistrationDlg removed, the sequence becomes: WelcomeDlg, SetupTypeDlg.

    In the ControlEvent table, modify the row for the Next control on the WelcomeDlg. Change the Argument column to the value SetupTypeDlg.

    Similarly, modify the row for the Back control on the SetupTypeDlg. Change the Argument column to the value WelcomeDlg. There are two rows for the Back control on the SetupTypeDlg with different values for the Condition column. Delete one of the rows. On the remaining row, change the value of the Argument column to WelcomeDlg and NULL out the Condition column.

    34K PNG,
    183K JPEG

  9. Revalidate the database to ensure that the sequence errors are corrected and that no other errors have been made during editing.

    31K PNG,
    172K JPEG

  10. Save the modified database.

You can follow the same steps in this tutorial to modify the template database izfree uses to create your new package. So that you can keep the original database templates distributed with izfree, make a copy of the templates directory before editing the templates. Then tell izfree to use the new template location the next time you use the New Package tool.