Next Release

  • Feature: Added ARM to the list of available platforms in the SIS.
  • Feature: Import Reg File from the Components tab now supports the RegEdit 5.0 syntax for removing registry keys/values: [-HKEY_CURRENT_USER\deleted key] and "deleted value"=-
  • Bug Fix: Can now merge modules with no cab file.
  • Bug Fix: Information columns in the Component table are accurate.
  • Bug Fix: Reverting the File table in a differenced view doesn't cause a crash.
  • Bug Fix: MsiFileHash table correctly filled out for 0 byte files.
  • Bug Fix: File systems without short filenames no longer confuse the makecab ddf generation.
  • Bug Fix: Merging multiple merge modules with similar GUIDs should no longer result in cabinet name clashes.
  • Bug Fix: Revert to base works for binary fields.
  • Bug Fix: Dropping the File table from a transform or diffed view will not crash the program.

1.5.15.26

  • Bug Fix: Changing tables when the focused field has an index larger than the new table's field count no longer crashes InstEd. Introduced with the only briefly available 1.5.14.25.

1.5.14.25

  • Feature: Ships with validation files from the Windows SDK for Windows 8 Consumer Preview.
  • Feature: When pasting rows, there is now the option to specify which key field to modify to prevent duplicates.
  • Feature: Component table now has informational columns for target and source path.
  • Feature: Count of selected row is shown.
  • Feature: Context menu on a cell provides a Find function which initialises the Find dialog with that cell's value, Table and Column.
  • Usability: Doesn't fail when trying to change a string column's length in the schema editor to greater than 255.
  • Usability: Automatically adds the IniFile and Registry tables if they are missing when importing .reg and .ini files.
  • Usability: IniFile table rows added when importing a .ini file via the Components tab will now use the component's Directory_ entry rather than TARGETDIR.
  • Usability: Deleting a CustomAction entry will remove it from the sequence tables.
  • Usability: Information columns that contain file paths are sorted with files in a directory listed before subdirectories.
  • Usability: Sorting informational path columns on large msis takes about a quarter of the time.
  • Usability: Added an option to make external cabs available for external tool commands operating on an mst saved as an msi. In this way the external cabs accompany the temporary msi generated from the mst.
  • Usability: F1 in the Summary Info Stream dialog launches the msdn Sumary Information Property Description page in a browser window.
  • Usability: Empty tables are consistently hidden by default when a file is loaded.
  • Correctness: Files with no language will have a null Language value instead of 0 when updating the file details.
  • Bug Fix: File->Save As allows editing of the saved file without having to close and open it.
  • Bug Fix: Successfully opens msi's on Windows 8 Consumer Preview.

1.5.13.24

  • Feature: Transform->Generate against allows the quick creation of an mst based on a diff between the current state of the open file (msi or mst) and a base msi.
  • Feature: Latest cub files from Windows 7 and .NET 4 SDK.
  • Feature: Import ini files into a component by right clicking a component from the Components view.
  • Usability: Much faster code in almost all use cases.
  • Bug Fix: Dropping tables that exist only in a transform won't cause a crash.
  • Bug Fix: Diffing files where a table has been deleted won't cause a crash.
  • Bug Fix: Corrected the value for Sunken controls.
  • Bug Fix: Windows resources are no longer leaked when working with many tabs, and browsing through Validation results.
  • Bug Fix: The predefined table for MsiShortcutProperty will have the correct column names.
  • Bug Fix: Various other miscellaneous fixes.

1.5.12.21

  • Bug Fix: MakeCab calls from the gui work again.
  • Bug Fix: Dropping tables in a transform with the _Tables field selected won't cause fields from the dropped table to display.

1.5.11.19

  • Feature: Replace/Replace All now works on integer fields, when the resulting value is valid for the field.
  • Feature: When using regular expressions for Replace/Replace All, the replace text specifies a regex format string.
  • Bug Fix: Merging modules into a transformed file now works.
  • Bug Fix: Various fixes to Replace/Replace All logic preventing infinite loops.

1.5.10.18

  • Feature: Plugin interface improvements, allowing plugin command line handlers.
  • Usability: Validation Profile editor dialog now displays the ICEs for first checked cub.

1.5.9.17

  • Feature: Find and Replace/ReplaceAll implemented. (String values only.)
  • Usability: Pasting duplicate rows into FeatureComponents table adds unique suffix to the Component field instead of the Feature field.sion in tact when adding unique suffixes to pasted rows (as the MSI view has always done).
  • Usability: Searching will find multiple matches in the same field.
  • Bug Fix: Adding a table when _Columns or _Tables is selected or subsequently selected no longer causes a crash.
  • Bug Fix: Copying the informational columns (only available from the Select Columns.... context menu) such as target_path works now.
  • Bug Fix: InstEd Plus does not crash InstEd when adding rows to tables that are hidden in the treeview.
  • Bug Fix: Crash when importing merge modules is fixed.
  • Bug Fix: The combobox drop down buttons in the Find dialog are clickable on Windows 7.
  • Bug Fix: Importing a registry file that contains a hex specification of a string value now imports correctly.
  • Bug Fix: Rebuilding a cabinet that is referenced from another table now correctly names the stream ine the _Streams table.(e.g. Media.Cabinet=#Cabs.CabName)
  • Bug Fix: Rebuilding a cabinet that is not referenced from another table now works if the relevant _Streams row already exists.

1.5.8.16

  • Feature: Copying specific columns of the selected rows is now supported. Respects displayed row and column order. CTRL+SHIFT+L.
  • Feature: _Storages table can be manipulated like any other (read only from transforms), including saving binary data.
  • Conformance: Summary Information Stream Template (Platform) property editor now lists x64 instead of AMD64.
  • Conformance: Windows 7 SDK .cub validation files.
  • Usability: Pasting rows with too few columns will succeed where the missing columns are nullable. This better supports pasting from excel.
  • Usability: Error messages with line numbers when pasting of rows fails.
  • Usability: DPI aware.
  • Usability: Copy Cell context menu option added.
  • Usability: Weird window focus changes when a field changes (e.g. from InstEd Plus) have been fixed.
  • Usability: Updated relationship details.
  • Usability: Large edit boxes is now the default on first installation.
  • Bug Fix: Plus->Find more features... won't cause a crash on x64.
  • Bug Fix: Hashing of binary files for diffing purposes works regardless of permissions to create key containers.
  • Bug Fix: On pre-Vista operating systems, having InstEd maximised on a non-primary screen will not leave a rendering artifact on the primary screen upon startup.
  • Bug Fix: View Patch function analyses the transforms embedded in the patch so that only applicable ones are applied.
  • Bug Fix: Binary field editor will correctly cancel when the user clicks off it after the browse dialog has been clicked.

1.5.7.15

  • Usability: Option to not highlight strings that are too long for their fields.
  • Usability: Increase in performance when many validation errors are added.
  • Plugin architecture version 2. Required by InstEd Plus 1.0.1.2.
  • Bug fix: Actions which require a reload of the tables (e.g. merging) now close plugin windows to prevent them working on stale data.

1.5.6.14

  • Feature: Command line validation.
    start /wait InstEd validate <validation profile name> <msi> [<transform1> <transform2>...] [-out:<output file>]
  • Usability: Keyboard shortcut for Sort by Differences: CTRL+D
  • Important bug fix: On Windows versions prior to Vista, makecab stores files in cabinets with their creation timestamp. Since copying a folder on the same NTFS volume sets all the creation timestamps to the time of the copy, this can result in cabinets conatining files with undesired timestamps. InstEd now forces makecab to use the modification timestamp when running on Windows version 5 or less.
  • Bug Fix: Context menus will display in the correct location when InstEd is placed negative compared to the main display (e.g. a dual monitor system with the secondary screen above or to the left of the main monitor).
  • Bug Fix: Navigation of a table by typing a value updates the row references window.
  • Bug Fix: The target product codes of a patch are correctly compared against an msi.
  • Bug Fix: The bitflags editor menu is fixed for a not-commonly used field.
  • Bug Fix: External Tools that have been added appear in the Tools menu again, rather than the Plus menu.

1.5.5.13

  • Breaking Change!!! Due to a change in the way that Validation Profiles are stored, existing validation profiles will be initially reset to use all ICEs in the selected cubs. Subsequent configuration of the Profile will work as normal. While this is an unfortunate breaking change, it is necessary in order to properly support the scenario when upgraded cubs add ICEs, such as with the new Windows Installer 5.0 cubs. Without this change, the new ICEs could go unnoticed, and never be run.
  • Feature: Windows Installer 5.0 schema supported.
  • Feature: InstEd Plus plugin support.
  • Bug Fix: RegPath fields (specifically Registry::Key) are considered Formatted for the purpose of relationship tracking.

1.5.4.12 BETA

  • Feature: Transform (and compared msi) tables show changed rows at the top by default. At any point, the table can be sorted by the differences, showing the changes in a transform or compared msi at the top of the table. Sort by differences will respect previous sorting where appropriate, thereby allowing "sort by x, THEN sort by y, THEN sort by differences". (View->Sort By Differences)
  • Feature: View a summary of the transform's changes (_TransformView table) and use it to navigate the tables. (Transform->View Transform Summary)
  • Feature: Highlight the cumulative changes of multiple transforms as though it were one transform. (Transform->Change Transform Base)
  • Feature: Allow merging of transforms using the above mechanism. (File->Save while the base has been changed)
  • Feature: Apply a patch to an msi or mst to see the resulting changes. (Transform->View Patch)
  • Feature: Edit the schema of database tables. (Right click the table -> Edit Schema)
  • Feature: Build a custom table. (Tables->Add Custom Table)
  • Feature: Configure configurable merge modules when merging.
  • Feature: Open patch (*.msp) files to view the database tables.
  • Usability: Specifying an invalid language when merging a module now presents a better error message, listing the valid languages for that module.
  • Usability: Read-only text fields in Summary Information Stream dialogs can be copied from.
  • Usability: Extracting cabs from a patch file (*.msp) will name them according to the _Streams table.
  • Bug Fix: Merging a table with binary data from a .idt file will work.
  • Bug Fix: Null values will be not appear at the top when sorting descending.
  • Bug Fix: Rebuilding a cab when the target is not a table (i.e. the _Streams table only) will work.
  • Bug Fix: Opening an msp to dump the storages and streams no longer leaks a handle to the msp file.
  • Bug Fix: Fixed a leak of one temporary file per transform opened.

1.5.3.7

  • Feature: Rebuild cabs for one or more media table entries from source paths.
  • Feature: Expanded target and source columns in the File table.
  • Feature: Condition fields (e.g. Component.Condition) are evaluated for relationships.
  • Feature: Importing tables (idt files) supports merging into existing tables.
  • Feature: View the Summary Information Stream of the base msi when editing a transform.
  • Feature: Change the code page on a transform.
  • Feature: Validate the strings against the new code page when changing it.
  • Feature: System supported code pages are listed in the "Edit codepage dialog".
  • Feature: Periodically checks for newer versions.
  • Feature: External Tools commands have environment variables expanded before use.
  • Usability: Table nodes are highlighted in red if they contain validation errors.
  • Usability: Option for "zebra striping".
  • Usability: Allow setting of the font size.
  • Usability: Navigation of listview via typing the value of a field in the selected column.
  • Usability: Option for large edit boxes, to cope with when the text won't fit in the edit box.
  • Usability: Splitter bar reworked so that an entire redraw doesn't happen on each mouse move.
  • Usability: Hiding validation errors will affect whether fields/tables are drawn with error highlighting.
  • Usability: When validating, every 5 seconds the window will be updated to highlight any new errors.
  • Bug Fix: Specifying recursive hierarchies in the Directory table will not cause infinite loops.
  • Bug Fix: Tables treeview performs a single draw of the node text, resulting in clearer text.
  • Bug Fix: Mislabeled key combination for "Add Row" corrected.
  • Bug Fix: Copying a deleted row from a saved transform and pasting it will flag the file as "dirty" so it can be saved.

1.5.2.3

  • Feature: History, allowing back and forward between clicked fields.
  • Windows Installer Compatibility: Installs and uses the cub and dll files from the Windows Server 2008 SDK, including the Vista Logo cub.
  • Windows Installer Compatibility: Support for Windows Installer 4.5 tables and columns.
  • Usability: Reduced time to build relationships so that even very large databases will only take seconds to analyse instead of many minutes.
  • Usability: Much faster building, rendering and navigation of the Feature and Component treeviews.
  • Usability: Much faster releasing of memory when many nodes are in the treeviews.
  • Usability: Faster scrolling of the tables list in transforms.
  • Usability: Eliminated flicker from the listview.
  • Usability: When sorting tables, null fields are considered less than non null fields, instead of being sorted lexically ("<null>").
  • Usability: Vista (at least) will have less flicker when navigating indirectly (clicking the relationship/validation rows, etc).
  • Usability: Validation Profile Editor dialog displays the available cubs in a more useful fashion.
  • Usability: Treeview nodes are sorted ignoring case.
  • Usability: Allow setting of nullable binary fields to null (click load with an empty path).
  • Usability: Non-nullable integer values are initialised to 0 in the Add New Row dialog.
  • Usability: Combo boxes with many values in selection editors will initialise quicker, and switch to multi-threaded initialisation if they are to contain 50000 or more values.
  • Usability: Put the InstEd start menu shortcut into the ProgramMenuFolder instead of a sub folder, as per the MS recommendations.
  • Bug Fix: When merging a merge module, the _Sequence table is no longer "fixed" as this was causing validation to fail. All other tables ending in "Sequence" are still "fixed".
  • Bug Fix: Performing Save As followed by Save on a transform now saves the second changes to the Save As target, instead of the original mst.
  • Bug Fix: Rendering of treeview nodes now always displays the font correctly.
  • Bug Fix: Installation MSI includes mergemod.dll, allowing merge functionality to work independently of Orca installation.
  • Bug Fix: Merging of modules is more robust.
  • Bug Fix: Invalid .cub files (registered via the PublishComponent table or manually referenced) no longer prevent the validation dialogs from working.

1.5.1.2

  • Feature: Merge module merging support, including insertion of media and cab, and fixing of duplicate sequence table entries.
  • Feature: Added source_path informational field to the Directory table.
  • Feature: "Fix duplicate sequence entries" feature added to the context menu for *Sequence table nodes.
  • Usability: Moved the bitflags editor button to the left, to make it faster to access after clicking the field for editing.
  • Usability: Clearer colour scheme.
  • Usability: Searching starts from the current location, instead of the top of the file.
  • Usability: Searching is now possible with the F3 and CTRL+F3 keys.
  • Usability: Flicker reduced when jumping to table locations.
  • Bug Fix: Pasting multiple copies of a row containing binary data now works.
  • Bug Fix: Adding a row to the _Streams table in a transform doesn't add a duplicate for _Streams.Row.
  • Bug Fix: Hovering the cursor just to the left of a row in the listview when a transform is open will not cause a crash.