This is a beta release. I have tested the release on my own machine (Windows 2000 Professional SP2, Visual C++ SP6, IE 5.01), but not on any others. If you encounter problems with the software, please file a bug report on the izfreeProject page.
This version 1.1 release improves upon the previous 1.0 release as follows.
Help now provided via HTML Help
Version 1.0 used a homebrew help system implemented through a second
HTML window activated by a scripted hotlink. Version 1.1 uses HTML help
and provides a standard .CHM
help file that is activated bypressing F1
.
database-centric model replaces task-centric model
Previously, izfree used a task-centric model and treated each tool as its own isolated world, opening and closing the database each time a tool was selected. izfree now has a database-centric model, where the current open database is shown at the top of the main window. An asterisk next to the database name indicates that changes have been made to the database but not yet saved. All the tools operate on the open database.
New package tool is now a modal dialog
In accordance with the new database-centric model of izfree, creating a new package is now done through a modal dialog. You either open an existing database, or create a new one. After you create a new database, it becomes the open database.
Improved dialog preview
izfree now lists the names of standard dialogs corresponding to the negative sequence numbers of the InstallUISequence table, the dialog named by the ErrorDialog property, as well as all authored dialogs listed in the InstallUISequence table.
For each dialog, any NewDialog control events that move to the next dialog in a sequence are displayed for the selected dialog. Selecting an event shows any condition and ordering information associated with the control event. Double-clicking an event selects the corresponding dialog invoked by the event, allowing a quick click-through of a dialog wizard sequence.
Once the preview window has been displayed, it remains visible until the preview window is cleared or another tool is selected. The preview window always tracks the selected dialog in izfree. You can preview an entire dialog sequence simply by navigating the event table in izfree with the preview window displayed.
Most UI sequence dialogs are coded to appear in the center of the screen. However, once the preview window has been displayed, new dialogs will appear in the same relative location making it easy to access izfree's GUI once the preview window has been moved out of the way.
New Table Validation tool
The table validation tool shows all pertinent information for any column in any table in the open database. This is handy for learning more about the allowed values when editing columns in Orca.
Enhanced New Component tool
The previous version supported creating new components from a directory tree in a blank database. No attempts were made to coordinate the new database table entries with existing database table entries.
The new components tool now coordinates more with the existing database table entries so that new components can be added to an existing installation database.
Each component created from the directory scan has a matching feature. The features from the scan are placed under an existing feature in the database. If no existing feature is appropriate, a form is provided for creating a new feature under which the features from the scan can be placed.
The directory table entries resulting from the scan also must be
rooted underneath an existing directory in the database. Typically
this will be TARGETDIR
.
The previous version of the New Component tool enforced the sequence of operations by enabling and disabling buttons that performed steps in the process. New Component is now organized as a wizard sequence, building up information about the new components to be added until a final confirmation from the user commits those components to the database.
Version information extracted from files
Previously, the new component tool built entires in the File table and left the version column blank. For files with versions, you had to manually edit the version field in Orca.
The new component tool now extracts the version number of the file from its version resource.
New COM Registration Tool
Previously, all COM registration information had to be entered by hand through Orca in a tedious and error-prone process.
The COM registration tool takes a self-registering COM server and monitors the changes made to the registry during self-registration. The changes in the registry are used to populate the AppId, Class, ProgId, TypeLib, Registry, ServiceControl, and ServiceInstall tables.
These are some of the ideas for things I will be adding to izfree over time. If you have something specific you'd like automated, feel free to add a feature request on the izfree SourceForge.net project page.
I've entered specifics about these ideas there in the Feature Requests tracker and the Tasks tracker. If you are interested in helping with the development of izfree, join SourceForge and email Rich, the project maintainer, and request to be added to the project.