\
Introduction
Change History
Change History - Older Entries
| Change History - Older Entries |
This page does not contain
the latest MAKEMSI change history entries.
It is meant as a bit of an archive in case you are upgrading from a really old
release or maybe you are just interested.
Just note that any change described here could easily have been superceeded
in a newer release.
- 06.355 (21 December 2006)
- 06.352 (18 December 2006)
- 06.342 (8 December 2006)
- 06.339 (5 December 2006)
- The code handling the "Delimiter" parameter of the
"PropertyList" command was fixed
(it was incorrectly spelled "Delimter").
- Modified property "stamps" in "COMPANY.MMH".
Added extra but can now also be turned off.
- 06.333 (29 November 2006)
- 06.305 (1 November 2006)
- The "Property" command now deletes the property
if value resolves to "".
- 06.299 (26 October 2006)
- Better error message when creating components with the
the "component" command and
directory information was not passed.
- Better error message on the "file" and
"files" commands when both the component and
destination directories are supplied.
- 06.293 (20 October 2006)
- By default the "Icon" command now adds
to the "BINARY" section of the generated documentation.
The command now has "DOCO" and "COMMENT" parameters.
- You can now override the default messages returned when
a "@validate" (on a "row" command) fails.
- 06.286 (13 October 2006)
- If you were updating a Windows Installer database such as an MSI
or MSM and it had a "_Validation" table
but this was missing
entries for the "LaunchCondition" table
then by default
MAKEMSI would display a "MISSINGDATA" messages.
- Minor changes to the new debug mode.
- 06.267 (24 September 2006)
- "PPWIZARD" has a debug mode which can be very useful at times but
it produces a huge amount of low level information.
I have created a new debug mode which
produces more relevant higher level output.
- 06.254 (11 September 2006)
- The "STRFINFO.EXE" tool was updated from
version "02.235" to "03.310".
- Minor changes to some error/text messages.
- New more compact document formatting.
- 06.237 (25 August 2006)
- Updated MAKEMSI to make it easy to set the new Vista
"msidbSumInfoSourceTypeLUAPackage" summary attributes for packages
that don't require elevated privledges.
- Relatively minor improvements to upgrade code handling.
- New "progress bar moving"
tip.
- 06.228 (16 August 2006)
- Major changes to how "COMPANY.MMH" updates the
"Upgrade" table
(created reusable code).
The UpgradeCode version file
keyword now supports "named" GUIDS which are now the recommended
approach as it makes it easier to examine the generated MSI or
VerboseLog.
- Minor improvements to the "MsiExtraFiles" command.
- Minor changes to the zipping code.
- 06.215 (22 July 2006)
- New "MacroCfg" command.
- If you were allowing the generated documentation to be added to your
MSI but there were no other files, you'd get an error adding the entry
to the "File" table.
While this bug was introduced in 06.203, the root cause has been
waiting for a while...
- 06.203 (22 July 2006)
- Major compile changes to support the use of the
"File" and "Files" commands in
all frameworks.
This will allow multiple compiles to take place, you can
invoke a compile with the new "Compile" command.
This required changes to the "MergeModule" command.
A compile now takes place in pass 1 as well as a pass 2
(which now may not be executed if its not required).
If you currently produce multiple media or cabinet builds
I recommend you double check the output
If you do have problems try preventing the addition of the generated doco (and please tell me).
- The "NeedEarly" parameter of the "MergeModule"
command is no longer a validation but a request.
Many other changes to this command to support the compile changes.
- New "HookInto" command.
- 06.196 (15 July 2006)
- The exclusions (if any) on the "@Validate" parameter of the
"Row" command can now be limited to particular
columns.
The displayed error message now formats the exclusions better
(formatting may have devolved in the 05.314 release).
- The "File" and "Files" commands
are not currently allowed in all frameworks, where not allowed we
will now display an error message when you use them.
- 06.187 (6 July 2006)
- Added options to how the "Transform" command
generates the summary information (for error handling and validation).
- 06.177 (26 June 2006)
- Since the "06.173" release the component enumeration would probably
fail if creating merge modules.
- An error message is now generated if the "DESTDIR" parameter of the
"Files" command was passed but components are not
being automatically created.
- The directory alias change introduced in the 06.045 release worked
well except when "PrimaryFolder", "Change", or some other
"DirectoryTree" parameters were also used.
It would then use the incorrect key for generated references.
- By default "Directory:TARGETDIR" merge errors are now ignored.
- Internally MAKEMSI now refers to "AnyDir" rather
than "TARGETDIR" when its value doesn't particularly matter.
- Corrected a minor issue with the "TryMeCreateMergeModule.mm"
sample (it now redefines "AnyDir").
- 06.175 (24 June 2006)
- The "early" merging introduced in the 06.132 release was failing
for merge modules which contained files (error 1334 during install).
It created media table entries which Windows Installer didn't like
(correct behaviour like so many things mostly undocumented by Microsoft).
- Minor change to file logging initialization code
("VbsCa" command).
- 06.173 (22 June 2006)
- These "MergeModule" changes:
- Added the "NeedEarly" parameter.
- Now displays merge module table/keys if these caused
an error (other reporting improvements).
- Some improvement to the ignore error capability.
- No longer support version 1 of "MergeMod.dll" (not sure that it worked previously anyway).
- If a merge module (or you) create a component with a name which
is too long (invalid), it would fail near the end of pass 1, this
now continues and I rely on validation to inform the user
(in a more friendly manner)
plus also allowing it to be ignored if the user wishes.
- 06.168 (17 June 2006)
- The "MergeModule" command now uses version
"Msm.Merge2.1" by default and acceptable versions are
now configurable.
- 06.159 (8 June 2006)
- If you are using "schedule" command with the
"JT.EXE" program it would fail if this program didn't exist
on uninstall (user deleted).
Fair enough, however as its not actually required to uninstall these
schedules it is no longer validated.
- Minor change to "MM.CMD" so as to log
better version information into log.
- The "Html2Text()" routine now uses
a "poor man's" conversion mechanism in place of IE automation by default.
IE automation even with all the recovery code I built in is too flakey
(on some machines) to be the default.
If you know of a better way let me know...
- 06.153 (2 June 2006)
- 06.147 (27 May 2006)
- The "VbsCaCadGet()"
function now supports an enumeration operation.
- New "Dynamically Update Dialog Controls" tip
demonstrates making temporary (in memory) database changes
during installation.
- Minor change to the dialog's title width produced by the
"Dialog" command.
Added parameter validation.
- These "DialogEntry" command changes:
- Now validates passed parameters.
- The "SORT" parameter no longer exists
(replaced with "PreSorted").
- Now supports the "ListBox" and "ListView" controls.
- You can now specify the exact ordering for the ComboBox
control.
- You will no longer have problems creating a second
"TEXT" control on the one dialog.
- 06.138 (18 May 2006)
- On attempting to override some "SUMMARY" items in the HTML report,
you could get two entries, the original plus your changed one!
- Lots of changes to the "ADSI" command.
The Site IDs this command assigns to new web sites are now
date based (YYYYMMDD##) by default as it seems to work fine in
IIS 5 as well as 6.
You can also assign (or propose) specific numbers if you wish.
Error handling of "user" code improved
(code isolated in its own subroutine).
- The "VbsCaCadGet()"
function now supports a query key operation.
- 06.132 (12 May 2006)
- The "MergeModule" command now attempts to
invoke the merge when the 1st merge module is encountered rather
than waiting until all other processing completes.
This required significant changes to the
"File" command as well as the compile code.
- New "TryMeCreateIisSite.MM" sample which creates
IIS web sites.
- Added the "ExistingOK" parameter to the
"TableCreate" command.
- 06.124 (4 May 2006)
- The "ADSI" command could fail on IIS v6 with an
"overflow" (vbscript runtime) error because of its use of
huge site ID numbers.
- 06.119 (29 April 2006)
- Sundry improvements to the "RunCmd" command including
adding a "@" parameter to make the command much more general purpose.
- The color of the large text on the "FatalError" dialog is now changed
(by default) to red to make it more obvious that the install has
failed.
- The "UISAMPLE_ADD_INSTALL_INSTRUCTIONS_BUTTON_URL"
will no longer generate a "2732" error dialog if pressed during
lengthy "AppSearch" (it will simply not work if pressed too early).
- You can now specify a password for the optional
zipped source code.
- The log header created by the "VbsCa" command
now logs whether it is "immediate" or "deferred".
- Includes newer PPWIZARD (version 06.112) which can now
determine rexx syntax error locations better than previously.
- 06.111 (21 April 2006)
- Fixed some "features" in the handling of
the "Access" command/parameter.
Now correctly handles multiple attributes such as "GENERIC READ GENERIC_EXECUTE".
Now handles user names containing spaces (need to quote for backwards compatability).
- Updated "VbsCa" to better handle DCOM
configuration/permission issues that may cause Windows Installer
not to work correctly.
Basically we now correctly identify the fact that "Installer" (and "Session")
objects don't exist!
- The "DESTINATION" parameter of the "File" command
now allows you to specify the installation directory without you
needing to supply the filename as well.
- Minor tweaks to the "DllCa-C" command.
- Fixed a minor bug which could cause single quotes to be treated as
a delimiter on a number of commands (unlikely to have caused any problems).
- 06.096 (6 April 2006)
- 06.079 (20 March 2006)
- The "UpgradeCodes" keyword
probably didn't work (at least always) since the 06.045 release.
- Better error handling when generating zip files.
- 06.067 (8 March 2006)
- You can now create transforms with the new
"Transform" command.
- Added some parameters to the "VBS" command and
changed internal code making use of it to generate better error
messages.
- 06.053 (22 February 2006)
- Updated the "DirectoryTree" command and all others
that use the "ACCESS" parameter to allow a list of aliases to be
supplied.
- 06.045 (14 February 2006)
- Updated the "DirectoryTree" command so that rather
than complaining about "naming" a key it automatically creates the
"alias" for you.
- Better "missing primary key" error message when incorrectly
defining tables.
- Minor change to the handling of the "UpgradeCodes" keyword in
a version file.
- 06.040 (9 February 2006)
- Improvements to documentation.
- 06.015 (15 January 2006)
- The "Options4Component" parameter on the
the "Files" command was a bit dodgy
(could cause rexx syntax error).
- The error message that gets generated on Windows Installer row
validation errors has been improved to make it obvious that its
Windows Installer complaining.
A GUID error will now also indicate that all letters should be
upper case. Bad "8.3" type messages now also include an example
of a good one.
- The Display a file's Properties tool didn't seem to
work if the filename contained spaces.
- 05.341 (7 December 2005)
- MAKEMSI how has a go at setting the
"PLATFORM_SDK_DIR" macro if you don't.
- More tweaks to the "DllCa-C" command.
- Modified the "summary" command to work
around the "summary write bug".
- This is intended to be the last release until at least mid Jan 2006.
- 05.330 (26 November 2005)
- More tweaks to the "DllCa-C" command.
- Bit more validation on the products version number.
- The "SelfRegister" command would fail if
ordering was requested.
- No one reported any document properties
initialization failures however it failed on my new WinXP computer
so I have modified it to hopefully work better.
- 05.314 (10 November 2005)
- Simplified the "DllCa-C" code to build the DLL
so that it should be simple to plug on other compilers, tools or
steps.
- The "DllCa-C" DLL command now supports user
resources (.rc file) and adds versioning information to
the generated DLL.
- The "RegistryImport" command now drops leading
zeros on imported "dword" values (cosmetic).
- The "TryMeCreateMergeModule.mm" sample was failing.
I think I broke it in the v05.238 release.
- The exclusions (if any) on the "@Validate" parameter of the
"Row" command were not working for "pass 2"
updates (MAKEMSI internal). Modified caching of this data.
- 05.310 (6 November 2005)
- New "DllCa-C" DLL command which creates C/C++
source, compiles it, links to create the DLL and adds the DLL to
the MSI without you having to worry about separate build steps or
export decorators etc.
- Major improvements to "SelfRegImport.MMH" with some help from
Merl Schmits (thanks).
- The "VALUE" parameter of the "INI" command can now
be empty and MAKEMSI will work around the Windows Installer
restriction.
- Added the "*VALUE" parameter to the "INI" command.
- New "TryMeDllCustomAction.MM" sample.
- 05.299 (26 October 2005)
- The "RunProcess.EXE" program can be a quirky
beast and what works on WinXP doesn't on WIN2000.
I think I've got it right now...
Improved logging.
- 05.298 (25 October 2005)
- The "RegistryImport" command was not MSI formatting
the registry "NAME" if required (rare).
The "MsiFormatted" parameters value is now only used as required
and only specifies whats actually formatted.
- The sorting of the "Time" column of the file report wasn't working
for columns containing "*" (this probably broke in the "05.078" release).
- Slight changes to "Adsi" code to improve logging.
- The HTML report now looks better for files without an extension.
- Most available document properties
were not being used (for example "Dimensions" for graphics).
- The document properties
initialization step was hanging on a users computer (faulty 3rd party shell extension).
I have creates a generic workaround for this and generally
made the coding more robust.
- 05.285 (12 October 2005)
- New "DATA" parameter on the ComPlusApp command.
- Improved the handling of the "VALUE" parameter of the
ComPlusProperty command.
Made some logging improvements.
- Better error message if the "RowKey" parameter of the File
command passes an invalid identifier.
- Fixed the weekday used in the logfile generated by the
VbsCa command (VBSCA_LOGFILE_BASENAME_SUFFIX definition).
- Includes newer PPWIZARD (version 05.285).
- 05.280 (7 October 2005)
- You can now define a URL for installation instructions,
if supplied a push button is added to the welcome dialog.
- Added a lot of .PCH (patch file) table definitions.
- Julian has supplied a new version of
"PATCH.MMH" (thanks).
This is now installed (so no more need to re-create from documentation).
- Fixed what I believe to be a misplaced "#endif" in "ver.mmh".
- Includes newer PPWIZARD (version 05.278).
- Started a "Python To MSI" framework which will
compile python (.py) scripts into ".exe" files and create an MSI.
- 05.259 (16 September 2005)
- Improved the positioning of some "popup" dialogs like
"ErrorDlg".
- Added the "NoPrefix" attribute to the "bottom line text".
- Updated the "Display a file's MD5" facility to
no longer use a logon script.
- 05.247 (4 September 2005)
- The "CaDebug()" routine now
regenerates any "err" object entry state on exit.
This is to prevent the debug function from clearing details.
- Added the "NoPrefix" attribute to the error dialog's text and
Progress dialog lines 1 and 2.
These will now correctly display strings containing "&"
characters.
- You can now define your own filter on the
"FilesExclude" command
(you can decide to remove files based on your criteria).
- Added the "SHARED" and "HK??" persistance options to the
"Property" command.
- Minor changes to the "DialogEntry" command.
- 05.238 (26 August 2005)
- Updated the "Component" command's
feature to component linking so that by default the feature must
exist at the time of the linking.
- Improved the handling of "MAKECAB.EXE" (compile) related errors.
- Now adjusts the console buffer length (by default), configured with
the "MAKEMSI_MM_CONBUFFSIZE" environment variable.
- Minor changes to the "DialogEntry" command.
- 05.222 (10 August 2005)
- The "FEATURE" parameter on the "Component" command
now also functions if CREATE="N" used.
- To prevent a partially built or updated MSI from being installed
(in case you forget) a temporary
launch condition
is now added when starting updates and removed after all
changes are complete.
- Fixed the "EXLIST" parameter on the "WrapInstall"
command.
Also added "WorkDirI" and "WorkDirU" parameters.
- The "EXLIST" parameter used by a number of file related commands
can now accept any characters
(prevents the "incorrect call to routine" error message on previously "invalid" names).
- 05.214 (2 August 2005)
- 05.209 (28 July 2005)
- New "IniImport" command and a
"INI Conversion" explorer option.
- Added the "Options4Component" parameter to
the "File" and "Files" commands.
- Added a simple test to check for an incomplete MSI script which
can result from certain user errors so as to produce a better
(non-cryptic) error message.
- Now also includes a newer PPWIZARD which enables better nesting
validation so that the "incomplete MSI script" is less likely to
occur in the first place.
- 05.202 (21 July 2005)
- The generated doco can now include the complete contents of
any MSI tables you wish, the
default includes
"ServiceControl" and "ServiceInstall".
- All MAKEMSI commands with a "DOCO" parameter now support
a configurable default.
- 05.194 (13 July 2005)
- Huge improvement in performance, particularly for large numbers
of files.
On a simple test of a single "Files" command
loading 5,000 small files installed by a single component,
it initially took nearly 116 minutes,
after the change it went to 41 minutes (the more files the bigger the improvement).
Removing the files part of the generated documentation
(see the "performance" section)
reduced this time to 14 minutes!
- Made an improvement to the way you
specify directory trees
in commands such as "DirectoryTree".
The "[key]Rest" is now treated the same as "[key]\Rest", the former
was previously not allowed but would be easy for someone to accidently
use as its correct Windows Installer formatting.
- Fixed a minor error reporting bug in the "Row"
command. If the "@OK" parameter was used and it was about to display
an error a VBSCRIPT syntax error could occur if the "@WHERE" clause
contained double quotes.
- Updated the "Row" command to detect the file "marker"
that "MsiDiff.VBS" uses to represent binary files so it can output a
better error message.
- 05.187 (6 July 2005)
- Added the "InstallDir" parameter to the "WrapInstall"
command.
Other minor tweaks to this command.
- Now have an hour glass etc when sorting tables in the doco.
- You can now easily disable the FILE part of the HTML doco
if you have many files. Other minor report generation tweaks.
- Minor changes to the "Binary" command.
- 05.181 (30 June 2005)
- Now generates more and better (not perfect) "progress" messages
when building MSIs with a large number of files.
- New custom action attributes and support for setting up a
specific value (not just setting and resetting bits).
- Fixed a bug which could cause some of the MAKEMSI custom action
related commands (when using no longer documented parameters)
to generate an error message indicating that a
cryptic attribute (similar to "IMMEDIATE35") was invalid
(spaces were being stripped).
- 05.172 (21 June 2005)
- New "ShortcutUrl" command to simplify creation
of internet shortcuts.
- The "Validate It" command now runs in a window
so you can see the progress.
- The "IniFile" command handling of the
ini file name improved to add 8.3 information if required and
not supplied.
- The "Ini" command wasn't accepting the
"DOCO" parameter.
- 05.165 (14 June 2005)
- The "Schedule" command now allows you to define
some install time command line manipulation code.
- The "DESCRIPTION" keyword's
value can now contain HTML (it could before but tooltips and
add/remove would look silly - the HTML is now stripped).
- New "Html2Text()" routine.
- "MsiSync.VBS" now always logs
(to "TEMP" dir by default), you can override the name.
Logging is not perfect but useful.
Also environment variables such as "%USERDOMAIN%" will be replaced
in all configured values.
- Renamed the incorrectly named "VALID_MSIVAL2_MSM_CUB_BASENAME"
definition to "VALID_MSIVAL2_CUB_BASENAME".
- Fixed version number error in the
MSI updating framework
(probably broke in the last release).
- The "/TableDefinition" command now validates that
you defined the primary column(s).
- Improved validations on the "MSI" and "/MSI"
commands.
- Assorted little fixes and spelling mistakes.
- 05.147 (27 May 2005)
- Fixed a bug in the "Directory" table
create on demand
capability where the parent directory is a drive letter
("TARGETDIR" wasn't being created).
- The "Build MSI" option now displays an error
message if a script is in a UNC formatted directory name
(not supported by Windows).
- Now have a "Beep" configuration option for
"MsiSync.VBS".
- 05.140 (20 May 2005)
- Created a new "Schedule" command option to make it
more WinNT friendly and another to add task debug info into the logs.
- Improved VbsCaRunSync() logging.
Also fixed a rare issue where the function could trap.
- New "TryMeTaskSchedules.MM" sample.
- 05.133 (13 May 2005)
- 05.127 (7 May 2005)
- Created a new "ME.MMH" configuration/branding
file which the examples now use.
- Improved the "Adsi" command's dump code which is
now shared with a new "IisDumpMetaBase.VBS" tool.
- Minor change to the "Icon" command to ignore
the "icon bloat" messages that older versions of MSIVAL2 can
produce for product icons.
- 05.119 (29 April 2005)
- Smartened the log file naming and truncation code for the
"VbsCa" command.
- Minor changes to the default script CA error messages (1720/2740).
- Now capture environment information in the
"MM.CMD" batch files.
- Added some more diagnostic code to detect and report some
environmental issues.
- 05.106 (16 April 2005)
- Improved the "Files" commands handling of the
"DestDir" parameter when "c:\" or similar used.
- Improved the way the "ServiceInstall" and
"ServiceControl" commands generate row keys if
none supplied (ensure valid and unique).
- Better error message in place of a cryptic one if there is
a problem in "Need83Name()" (caused by a user's mistake).
- If you were generating VBSCRIPT to perform "MsiExtraFiles"
validations then a "Expected end of statement" error was generated.
Made a change to "VbsCa" so that this sort of
"mistake" is handled generically.
Also improved checking when all defaults used.
- 05.098 (8 April 2005)
- The file "verify" button is now greyed out (disabled) while a
verify is in progress.
It is now also used as a "status bar" (as a HTA doesn't have one).
- The "verify" of files defined with the
"HtmlDirTable" command was not working correctly
(broken since the 04.231 release).
- Added the "OPTCODE" parameter to the "VbsCa" command.
- Created CaCreateFolder() and
CaDeleteFile() routines for
custom actions.
- Created the MakeSfnLfn()
routine for use in imbedded script.
- 05.089 (30 March 2005)
- 05.078 (19 March 2005)
- The "File" and "Files" commands
now have "DATE" and "TIME" parameters allowing you to override
the file times.
- Updated the "file" report so that by default a
"*" is displayed next to a source
file time that differs from the install time (the comments
column will then also contain the install time).
- You can now directly refer to icon files on the
"Shortcut" command.
- The aliases defined by the "Icon" command were
documented as case sensitive but handled as case insensitive, code
now matches the doco.
- The compile process could cause a partially or
completely incorrect timestamp to be used on some installed
files (no known pattern).
I have worked around this Microsoft "MAKECAB.EXE" bug.
- The "MAKECAB.EXE" issue mentioned above along with
yet another restriction (the seconds value must be even - the
source file's value may or may not be even) could cause incorrect
file time difference warnings ("MD5 matches but ...") from the generated
report's file verification button.
- 05.071 (12 March 2005)
- The "05.025" release introduced a bug, only MAKEMSI generated
directory names should have been uppercased however even user
specified ones were being translated.
- Improved the display and logging of error "locations" in
"VbsCa" custom actions.
- 05.062 (3 March 2005)
- Fixed the "WrapInstall" command to prevent
self registration of any files in the "CD image".
The "Rc0" parameter can now be passed "ASYNC".
- Added some error checking options to the
"Zip Source and Add to MSI" feature
(checking on by default).
- Improved "CaMsgBox()" for VBSCRIPT
so that it returns the message boxes return code and allows you to
specify Yes/No and other variations.
- New CaMkObject() routine.
- Added the "doco" parameter to the "VbsCa" command.
- More improvements and minor fixes to the
"MsiSync.VBS" script.
- 05.056 (25 February 2005)
- Modified "TableDefinition" so that if there is
more than one definition for any particular table all but the
first is ignored (by default).
- Improved "MsiSync.VBS" script so that it
can obtain configuration from an XML file.
The MSI files no longer need to be in the same tree as the script.
- Some database schema changes:
- Changed the default length of feature names
("TABLES_LNG_FEATURE_COLUMN") from 32 to 38.
- Changed the "Version" column of the "TypeLib" table from
"I2" to "I4".
- Changed the "File_Manifest" column of the "MsiAssembly"
table from "s72" to "S72".
- 05.049 (18 February 2005)
- 05.039 (8 February 2005)
- Fixed the "RegistryImport" command and
"Registry Conversion" shell extension.
They were not generating a correct type of "EXPSTRING" for "HEX(2)"
data.
Will no longer hang on incorrectly formatted "HEX(2)" data (ending "00" missing).
- Updated the "MSI MENU..." so that
the "X" for close title bar button is removed
(unfortunately the titlebar is also removed).
I needed to do this as I don't know how to
grey it out and using it at the wrong time can cause problems.
- The "JsCa" command now adds a basic comment to
the "binaries" HTML report (like the "VbsCa" command).
On both commands you can now prevent the binary details going
into the doco at all.
- Added the "Options4Component" parameter to
the "Property" command.
- 05.025 (25 January 2005)
- Any directory keys automatically created by the "DirectoryTree"
and other commands are now all upper case (public properties).
- You can now define the environment variables
"MAKEMSI_MM_ROOTDIR.?" to move the output directory
(perhaps to development and production output separate).
- New "TryMeAddVersionKeywordAndLaunchCondition.MM"
sample.
- Modified the "Validate It" option, now saves
file in "Validate.IT" subdirectory. Minor formatting changes.
- No longer filter out the validation message
"Mismatched component reference" ("MAKEMSI.FLT").
- Minor fix to "MSI MENU..." menu options.
- New PPWIZARD version (05.013).
- 04.347 (12 December 2004)
- The "Binary" command now supports comments for
any generated doco.
- The "VbsCa" command now adds a basic comment to
the "binaries" HTML report.
Sundry other minor changes including improving the default filename.
- Updated MAKEMSI to see if NTFS 8.3 names have been turned off in
the Windows registry (not supported) if it fails to obtain a "shortname".
- Updated the "Invalid ShortName Returned (File System Object)"
detection script.
- Added the "EXLIST" parameter to the "WrapInstall"
command.
- 04.344 (9 December 2004)
- 04.331 (26 November 2004)
- Improved the "Zip Source and Add to MSI" option
to zip up all files defined as "samples".
- MAKEMSI scripts whose filenames contain spaces
are now supported by the
"MM.CMD" batch file as well as the
"explorer options".
- Changed the default for "COMPANY_INSERT_ResolveSourceAction" to
"N" as a related change in the 04.322 release shows that its not
a good idea to have this installed by default.
- New PPWIZARD version (04.328).
- 04.327 (22 November 2004)
- The 04.322 release introduced a bug in the
"Directory command (if "VALUE" used).
- The "Shortcut" command can now create
components for you if required.
- 04.322 (18 November 2004)
- Updated the "Directory command
(and others indirectly) so that MAKEMSI now supports
directory creation on demand for "standard directories".
By default keys such as "ProgramFilesFolder" are now only created
if they are required.
This can eliminate some install issues on "problem" boxes as all
directories whether required or not are validated at install time.
- Fixed an issue with the "Validate It" option.
- Added a "Zip Source and Add to MSI" option.
- Changed the default for "COMPANY_RESOLVE_SOURCE_CONDITION" to
include repair.
- Started a new "Internationalization" section, any
help/information appreciated.
- Added some more table definitions.
- Fixed a minor table creation bug which as far as I know didn't
create any problems.
- Includes a new PPWIZARD (04.322).
- 04.316 (11 November 2004)
- New "Validate It" option.
- Updated the sequence number handling of the "ICE"
command and improved general processing.
- The documentation for the
"Validation Suites (create CUB files)"
section is much improved and now includes documentation for the available
commands and functions.
- 04.309 (4 November 2004)
- New "DirectoryCompress" command.
- You may need to modify your source, see following issues:
- The "Schedule" command has had major changes and
is not backwards compatable, it will however only take minimal
changes to correct and failing code will tell you of the need to
make these changes.
The main improvements are that it now supports rollback,
you can now have conditions on schedules and
use both "JT.EXE" and "SCHTASKS.EXE"
in a single script
(MSI may be being build from reusable components build by
different people and/or at different times).
- 04.302 (28 October 2004)
- Fixed a MAKEMSI install issue with the location of WSCRIPT.EXE
(many thanks to MS for making what should be such a simple task so complicated...).
It could cause "800736B2 - The application binding data format is invalid"
errors when some installed shortcuts and options
were used.
- All html report heading sections are now fully expanded if
scripting is disabled.
- 04.295 (21 October 2004)
- Fixed a minor formatting bug in the generated ".hta"
(">" was visible at the top if the file is renamed to a html extension).
- The top line of buttons are no longer generated if scripting
disabled (simple links are generated instead).
- 04.288 (14 October 2004)
- 04.281 (7 October 2004)
- The default extension for the generated report is now ".hta" to
work around the "IE Script Blocking"
issue in WINXP SP2 (and elsewhere - soon?).
- Not all attributes were being dumped in the logging for the
"ADSI" command (plus other improvements).
- New "Display a file's Properties" option.
- 04.274 (30 September 2004)
- Well Julian Onions has done it again!
I now include a newer version of regina which gives MAKEMSI an
extra 11% performance gain (on my "MAKEMSI.MM" script).
- Fixed a non-fatal "file information" bug when generating the
HTML report.
Restored the "DUMP" "attribute" capability
(its the default in developer mode).
The generation of the html report should now be faster.
- Now always create the "FeatureComponents" table so that
if you encounter the
"no components issue"
then at least Windows Installer won't trap in "MSI.DLL".
- Minor change to how sequence ranges such as "1000-InstallFinalize"
are handled.
Previously 1000 would never have been returned, but it now can be.
This should not effect anyone.
- MAKEMSI now validates that the property used for the
FileFind and RegistryRead
commands doesn't contain lower case characters.
- 04.267 (23 September 2004)
- A user reported problems with the file commands ignoring files
whose name or path contained "scandinavian" characters.
You can now define the codepage MAKEMSI runs under with the
"MAKEMSI_MM_CODEPAGE" environment variable and
the default codepage is 1252.
- The "Directory" command has a new "ASIS"
parameter which replaces the previous use of curley brackets to
indicate the directory name should be left "as is".
- Added "SystemFolder" mappings.
- Many thanks again to Julian Onions for suggesting a PPWIZARD
performance improvement (in PPWIZARD 04.261+).
This makes MAKEMSI about 12% faster for my "MAKEMSI.MM" script.
I have also documented the "PsSuspend.EXE" tool
as it has enabled my builds to be about an extra 30% faster!
- 04.261 (17 September 2004)
- The "WorkDir" parameter change in "04.231" introduced a bug in the
handling of that parameter for Binary custom actions.
Minor improvement to the "args" parameter handling.
- Updated the "FilesExclude" command to take
multiple filemasks on a single command.
- Improved error handling/reporting for MSIVAL2
validation failures.
- Buttons now disabled when a "MSI MENU..." task
is running.
- 04.252 (8 September 2004)
- Fixed the processing of the "REMOVE" parameter of the
"File" command to work when its also creating a
component for the file.
This also affects the "Files" command.
- Reverted the "Install - Verbose Logging" option
to work the way it used to under WINNT+.
The menu is now available by a right click
"MSI MENU..." option which contains a fix for a
truncation bug caused by a Microsoft "InputBox()" bug.
- Improved the "custicon" icon to look better and be more meaningful.
- Includes a new PPWIZARD (04.251) containing a minor performance
improvement as suggested by Julian Onions.
- 04.239 (26 August 2004)
- Fixed "Unknown Variable: NOVERSION" bug with "OPENMSI.MMH"
based scripts.
This bug was introduced in the "04.238" release.
- 04.238 (25 August 2004)
- Improved the "Install - Verbose Logging" option
(it now provides many options as is configurable).
- Updated the "Version" processing on the
"File" and "Files" commands to
support the automatic versioning of "unversioned" files.
- Fixed the "SelfReg='?'" processing on the
"File" and "Files" commands.
- Now display the install date when product info queried in HTML report.
- One of my "DENNIS.MMH" changes in the 04.231
release will prevent builds using it in WIN95-ME.
- For WIN95-ME now set "FILEINFO_GET_DOCUMENTINFO" to "N".
- Modified the default PPWIZARD build summary to add built MSI version
(by default).
- 04.231 (18 August 2004)
- Fixed a bug in the "MergeModule" command which
would fail merging modules which didn't contain files
(bug probably introduced in the "04.007" release).
- If a file has at least one attribute (Hidden, System or ReadOnly)
set, then the values of all these attributes will be displayed in
the generated HTML report.
The files verification button now also checks these file attributes
for all files.
- Changed the default "left side" graphic, this has a "clear"
section on top which can display whatever text you wish,
to turn this off then set the macro "COMPANY_LEFTSIDE_TEXT"
to an empty value (you can also reposition the text etc).
You can restore the original graphic by using defining
"UISAMPLE_DIALOG_FILE_dlgbmp" to "LeftSide-Purple.bmp"
(see "DENNIS.MMH" for example if unsure).
- The "WorkDir" parameter of the ExeCa command can
now take a directory path and not just a key.
- Added the "ValidateAfter" parameter to the FileFind
and RegistryRead commands.
- The "MsiExtraFiles" change introduced in the
"04.177" release would fail in silent install situations.
- Updated the "File" command to be a little more
intelligent (forgiving) with default 8.3 names in cases where
files are being renamed.
- 04.224 (11 August 2004)
- Modified the "Export to .IDT" option so the
".idt" files for empty tables are moved into a separate directory
(makes it easier to examine output).
Empty "binary" folders now removed and the ".ibd" extension
removed and some attempt is made to add an extension if none then
exists.
- New "TryMeLoadDirTreeMaintainingAttributes.MM"
sample file.
- Added the "AlwaysShow" option to the "Extn"
command.
MAKEMSI extensions now always show.
- The "FileMake" command now creates the
"StateFile" directory if required.
- New version of PPWIZARD included
(mainly for better script error reporting).
- Upgraded regina (rexx) from 3.3RC2 to to 3.3 (official release).
- 04.218 (5 August 2004)
- Fixed the "Directory" and
"DirectoryTree" commands to support directories
containing single quotes.
- Minor change to the compile process.
Code safer and supports scripts in the root directory of
a drive (although this is certainly not recommended).
- Minor improvements to the change history table.
- Minor modifications to graphics specification, the
"DENNIS.MMH" file improved to suit.
- Updated the "Invalid ShortName Returned (File System Object)"
detection script.
- 04.210 (28 July 2004)
- Fixed a bug in the handling of integer values in the
"Registry" and "RegistryImport"
commands (actually workaround to a VB flaw).
This issue only affected values specified as hexadecimal and in the
range &H8000 to &HFFFF.
- Fixed the "DirectoryTree" command.
It could cause a VBS syntax error if used in a macro.
- Better error message if the user does not have "MAKECAB.EXE" installed
in WIN98-ME
(it wasn't being displayed because of the Windows command processor return code bug).
- 04.204 (22 July 2004)
- 04.198 (16 July 2004)
- Updated the "Icon" and "Shortcut"
commands to allow "randomish" names (icon keys) to be generated,
this helps work around some windows bugs which can at times prevent
the correct icon being displayed.
- As well as maintaining platform directories MAKEMSI can now log
successful build information.
- 04.190 (8 July 2004)
- The "SelfRegister" command now supports both
ordered and unordered self registration.
- Updated the "SelfReg" parameter of the
"File" and "Files" commands to
support both ordered and unordered registrations.
- The "ExeCa" command has
virtually been rewritten however hopefully the only
change you may notice is that
the "PROPERTY" parameter no longer exists.
The changes were made to support the new "WORKDIR" parameter.
- The "MsiDiff.VBS" tool is no longer included
in the MAKEMSI installer but has its own package.
This required some MAKEMSI package tweaking.
- Builds launched via Explorer now have the windows titlebar
updated to informative text (WINNT+).
- The new "SourceFile" command replaces
"SourceForReport" plus other undocumented commands.
- The optional RTF licence file can now be preprocessed to replace
macros, insert paragraphs etc.
- 04.183 (1 July 2004)
- The default for the "REMOVE" parameter on the "File"
and "Files" commands can now be specified.
- Updated sequencing of the "RegistryRead" and
"FileFind" commands.
- The 04.177 release introduced a bug which could cause the
Adsi and ShortCut commands
to fail.
- The "patch creation" code sample updated to
create a unique GUID for the patch.
- 04.177 (25 June 2004)
- Added the "8.3" parameter to the "FileFind"
command and improved handling on non 8.3 formatted filenames.
- Updated the "MsiExtraFiles" command to default to
performing checks via standard custom actions rather than script.
Also added the "FILE" and "SIZE" parameters.
- Updated "MM.CMD" to recover from any corruption of the
"REGINA_MACROS" environment variable.
- Now handles files that span 3 or more cab files.
- Some script filenames could cause the build to fail when trying
to create the "stamp" properties (for example if its name contained
a "-" or space character).
- Minor reorganisation of logging directories and their macros.
- Some reorganisation or ARP support links (please double check yours).
- 04.168 (16 June 2004)
- Modified all custom action types
(AbortIf, DllCa,
ExeCa,
JsCaSetup, VbsCaSetup
and PropertyCa).
You should now use the "TYPE" parameter to set attributes.
The older parameters such as "deferred" are still supported
but are not documented or recommended.
Note that if you used "type='35'" on the
PropertyCa command then remove this and add
"DIR='Y'".
- The Adsi, ComPlusApp,
RunCmd, Schedule
and possibly other commands modified
to conform to and make use of recent custom action
sequence and type changes.
- We now have multiple cab/media support.
- New "TryMeWithMultipleMedia.MM" sample file.
- 04.162 (10 June 2004)
- Document information for all sorts of files (including MS Office)
can now be added to the generated HTML report.
I have defined default templates for some extensions.
- Fixed a bug introduced in "04.155", custom action data may not
always have had macros replaced.
- Should never generate duplicate shortnames for directories when
using the "SUBDR=TREE" parameter on the "Files"
command (or directory related commands).
- Now cleans up after the "V1_?????.TMP" temporary files.
- Minor change to the formatting of the generated ".inf" file
(in compile step).
- 04.155 (3 June 2004)
- Better custom action sequence number assignment options for
the AbortIf, DllCa,
ExeCa,
JsCaSetup, VbsCaSetup
and PropertyCa commands.
- The "ExeCa" command could fail if
creating properties.
- The Custom Action Data for deferred
JSCRIPT and VBSCRIPT
custom actions may not have been correctly set up
when multiple sequence tables were also specified.
- A bug was preventing the definition of more than one
dialog.
- Improved the DialogEntry command so
that it is easy to have multiple entry fields on one line
(added "SameLine", "LabelWidth", "X" and "Y" parameters).
- Added some more options to the "MsiDiff.VBS"
tool and added an example of how the generated output
could be post-processed.
- Better handling of very long product names.
- 04.148 (27 May 2004)
- Minor change to the "ComponentId" parameter of the
"Component" command.
- Fixed a bug in the RegistryImport command when
creating empty keys.
- Fixed minor issue with "property stamping" introduced in the
last release (04.142).
- New "TryMeWithFixedGuids.MM" sample file.
- 04.142 (21 May 2004)
- 04.134 (13 May 2004)
- The Access" command improved
(including support for "GENERIC_READ").
- Improved the formatting of the dumped record (on some errors)
to make it easier to understand and more informative.
- 04.128 (7 May 2004)
- Added an "ACCESS" parameter to the
File, Files,
Directory, DirectoryTree
and Registry commands.
- Modified "MsiDiff.VBS" so that it generates output
which almost requires no tweaking to be able to replay via MAKEMSI.
- The install now sets up the extensions generated by the
"Compare -> MAKEMSI Format" and
"Dump -> MAKEMSI Format" options so that it
has the right click build options.
- Modified the "MergeModule" command to eliminate
the "MISSINGDATA" error that may have occured on some
merge modules (on the "ModuleSignature" table).
The error occured when using merge modules with incomplete or
missing "_Validation" tables.
Improved some error logging and reporting.
- 04.120 (29 April 2004)
- Reorganised the samples directories.
Added "readme.txt" files to directories.
- By default VBSCRIPT custom actions built in production mode now
don't log to a file by default.
This is to reduce the chance you will have issues with
"Norton's Malicious Script Detection" messages.
- Rewrote all exclude list processing to be cleaner, faster and reuse
common code.
- 04.112 (21 April 2004)
- If you were letting the "File"
and "Files" commands create components for you
then the components were not always being "associated" to the correct
feature (they ended up "belonging" to another feature).
- New "HtmlDirTable" command.
- Fixed the "INSTALLED" version file
keyword so as not to fail if its value contained lower case characters.
- Many smallish tweaks.
- New "TryMeWithNoRootFeature.MM" sample.
- 04.105 (14 April 2004)
- Modified the "SeqTable" parameter of the AbortIf
and PropertyCa commands so that multiple
tables can be specified at once
(all custom actions now support multiple tables).
- Clicking on a heading in the generated HTML report now expands or
contracts contents.
- Modified the handling of the "feature" parameter of the
"Component" command to allow the aliases that
other commands allow as well as the specification of any number
of features (instead of only one).
- Modified "RegistryRead" and
"FileFind" commands so that it can take a default
of "".
- Fixed shortcuts that use WSCRIPT to work in WIN95/98/ME
(another one to thank MS for...).
Made other tweaks as required to get MAKEMSI to build MSIs in these
DOS based operating systems (tested in WIN98).
- 04.097 (6 April 2004)
- Simplified the process of creating merge modules in MAKEMSI.
Created a sample called "TryMeCreateMergeModule.MM".
- Improved the HTML reporting by the "Binary"
command.
- The query buttons in the html report can now tell if a
product was installed per-user or per-machine.
- 04.092 (1 April 2004)
- Improved the file verification reporting to be generally more
informative.
It will now expand any standard Windows Installer keys (if required).
It also no longer reports a file as differing if it has a
different time when the MD5 information (contents)
matches (the time difference is highlighted).
- New "Query Installed State" button under the summary in the generated
documentation.
- Added code to the "Compare -> MAKEMSI Format"
to detect if you try to compare a database with itself.
- Fixed a rare error reporting bug in the "Files" command.
- If there were no files in the MSI (rare due to doco) then
MAKEMSI was failing in the "compile" step.
- The Dialog and related commands modified to work
even if user has made the default validation mode "NEW".
- 04.084 (24 March 2004)
- The file "verify" button now handles many more situations including
the user overriding the install location.
- Improved the "PersistHow" parameter of the "Property"
command.
- The "Key" parameter of the "PropertyCa"
command now exists (to match doco).
The command now also supports setting directory values.
- The "File" command updated so that if it generates
a component name this will not be too long.
This could have been a problem if the "SubDir=TREE" parameter
was used on a "Files" command (deep tree etc).
- Better error messages on the Component and
Feature commands for invalid IDs.
- Improved error handling for the MergeModule
command.
The HTML report now shows the version of the merge module.
MAKEMSI now reports and optionally fails when the "TARGETDIR" bug
exists in a merge module
(see "Files Go into ROOT (can't be redirected)").
- The "Desc" parameter of the Platform command can
now be "" for a group.
- Added a "KEY" parameter to the "AbortIf" command.
- Changed the progress bar to be continious by default, if you
don't like this then set "UISAMPLE_PROGRESSBAR_WANT_CONTINUOUS"
to "N".
- The "MM.CMD" now logs the command used in the console log instead of
displaying it.
This makes it easier for diagnosis or for people who want to include
in automated builds etc.
The "MMMODE" it passes is now never empty.
The error file is no longer generated as it is of little use anyway.
- By default if you are updating an MSI in place the MSI is now
opened in transaction mode and no commit is performed on failure,
if you copy the MSI file before invoking MAKEMSI you may wish to
alter this as a debugging aid.
- 04.078 (18 March 2004)
- Many Dialog and related command changes.
They now also support "MaskedEdit", "CheckBox" and
"RadioButtonGroup" controls.
- The "MergeModule" command could fail depending on
the source files filename!
- Rather than output a tabs warning (which most people ignore anyway)
MAKEMSI now assumes a tab spacing of 4 (by default) and no longer
warns.
- Now using "regina" version 3.3 (RC2) which fixes a number of leaks
that I reported.
MAKEMSI now uses heaps less memory and has been tested to build
32,700 files although even Windows Installer has a hard time on an
MSI with that many files, probably best to compress to cab or zip
(or split into a number of smaller MSIs) if you have that many files.
- 04.072 (12 March 2004)
- Fixed "OPENMSI.MMH", it probably broke in the "04.064" release.
- Updated the TryMeWithUserDialog.MM sample to fix
issue with licence dialog and to add realistic supporting code.
- Added nesting validations to the Dialog
and related commands.
- Modified the Property command for "PERSIST"
related handling (the "VALUE" parameter is now allowed to
supply a empty value and the property need no longer populated
by its internal "RegistryRead").
- Modified "RegistryRead" and
"FileFind" commands to not duplicate sequence
numbers when multiple used.
Also added the "VALIDATE" parameter to make the validation optional.
- By default if you select "Yes" on the cancel dialog you will no
longer get the normal (annoying to most people) "final" dialog.
- 04.071 (11 March 2004)
- The where clause of the RowsDelete command can
now contain double quotes.
- Updated the handling of the "LogFile" parameter on the
VbsCa command to agree with its doco.
- The new Dialog and related commands allows you to
very easily create a new dialog and populated it with entry fields.
- New DialogRemove command.
- Created a new DllCa command.
- Modified the "SeqTable" parameter of the ExeCa
command so that multiple tables can be specified at once.
- Updated the Column command to create some macros
to make it easier to refer to columns within a table record
in your own VBSCRIPT.
- Quite a reorganisation of MSI dialog handling code and neither
"LicenseAgreementDlg" or "UserRegistrationDlg" are now controlled
via properties
(this was making dialog insertion and deletion too hard).
- Renamed "Regina4MM.EXE" to "Reg4MM.EXE"
(and "Regina.DLL" to "Reg4MM.DLL"), if you are invoking MAKEMSI
directly then you will need to change this.
Upgraded the rexx interpreter from v2.2 to v3.2 and changed things
as required (who said life was meant to be easy?).
- 04.064 (4 March 2004)
- Added a "PERSIST" parameter to the Property command.
- Fixed the handling of the "MsiExtraFiles" commands
"MsiRelDir" parameter (it did not create required directories).
It now also has a "CHECK" parameter which allows install time
validation that the required files are OK.
- Fixed a bug in the RegistryImport command.
Filtering was preventing proper operation.
Now detects and warns if tabs found.
Now handles empty key creation.
Most of this affects the "Registry Conversion"
shell extension.
- Modified the "SeqTable" parameter of the
VbsCaSetup and JsCaSetup commands
so that multiple tables can be specified at once.
- You can now set the priority MAKEMSI
runs under, this might improve multitasking so you can do
other work (if CPU slow or low on RAM etc).
- 04.058 (27 February 2004)
- Added some optional "Component" command validation
for references (referenced component must already exist).
- The RegistryRead command updated to support "HKCU"
and similar aliases (and reports errors better).
- The "Registry" command now has a "HK??" alias.
Made a minor html reporting change.
- Modified the default PPWIZARD build summary to add built MSI name
and build mode.
Removed some generally useless items.
- Files specified with the "MsiExtraFiles" command
now appear in the doco (by default).
- 04.050 (19 February 2004)
- The Shortcut command now supports a new
MAKEMSI specific shortcut type which allows advertising of
any command line.
- Added the "SELFREG" parameter (for automatic self registration)
to the File and Files commands.
Fixed "KEYCASE" processing error for "L".
- The "Registry" command can now create its own
components if required.
I have also added a new "COMMENTS" parameter.
- Depending on a few things it was possible for some of the information
in the generated doco for the "Registry" command to
be mangled.
- The "FILE_EXTENSIONS_WHICH_NEED_OWN_COMPONENT" list was wrong for
".ocx" files.
- The FileComment command can now be nested.
- General improvements to file and registry html reporting.
- Created a new RegistryComment command.
- The arguments information in the generated doco for
shortcuts may not have always been correct.
Made some other minor reporting tweaks.
- In some unusual situations the MSIVAL2 filter process could
fail if the windows "FIND.EXE" executable was overridden.
The code has been changes so as not to require this
program at all.
- Now include new version of PPWIZARD as it improves detection and
reporting of rare environmental issues which may prevent
proper operation.
- 04.042 (11 February 2004)
- The "TryMeShortcuts.MM" actually created
a non-advertised shortcut which may have been confusing. I have
updated the samples, created more and
included them in this doco
as well.
- Added a "PAUSE" parameter to the "JsCa"
and "VbsCa" commands.
I also created the "CaDebugPause()"
function.
- Improved "CaMsgBox()" so that as a
CA the "I" box has the correct icon!
- Updated "Registry" command to support
"HKCU", "HKLM" and "HKCR".
- Now include new version of PPWIZARD as it adds detection code for
infinite loops in parameter replacement.
- 04.036 (5 February 2004)
- Updated the "MsiDiff.VBS" command so "lonely"
carriage return characters are handled better.
It now also works around the MS 259 character summary read bug.
- Added the "REMOVE" parameter to the
File and Files commands.
- The new /FileComment command now
allows default file comments to be specified.
- 04.030 (30 January 2004)
- New "PerUser.VBS" tool.
- Added a /Transform parameter to "MsiDiff.VBS".
- You can now dump transforms via explorer.
Renamed the compare and dump shell extensions to
"Compare -> MAKEMSI Format" and
"Dump -> MAKEMSI Format".
These now also display the generated output in a text editor.
- Updated the binary mode of the "Registry" command
so that it can take commas or spaces (to agree with
what "RegistryImport" already generates).
- Some of the hypertext links in the generated HTML document's
source code used mixed case urls (should have been lower case).
- 04.022 (22 January 2004)
- The HTML reports summary now also displays mangled product and package GUIDs.
- Now have a "GUID Conversion" shortcut to
convert between "mangled" and MSI formatted GUIDs.
- The "Files" command now has a "NoneOK" parameter.
- If a specific sequence number was requested on the
"AbortIf" command then it was being ignored.
- Fixed the location of the "progress" text on the "PrepareDlg"
dialog.
- Added very limited support for patch files
("MsiDiff.VBS") (the issue is that very little of
a patch is in the tables as well as the MS 259 character bug on summary items).
- Now validate the rowkey identifier used on
"Binary" and "Icon" commands
(produces better error message).
- Small change to the "Build MSI via Explorer"
shell extensions to handle script file names
containing multiple "." characters.
- 04.007 (7 January 2004)
- You can now specify that MAKEMSI should ignore all merge errors generated
by the "MergeModule" command, also improved its doco
and error reporting to try to make any issues more understandable.
- The "Feature_" column in the "MsiAssembly" table was defined
as 38 characters , changed this to be 32
(now consistent with other tables).
- Default summary items tweaked in "COMPANY.MMH" so
explorer's "tooltip" supplies better/more info (at least in XP).
- You now have more flexability in the use of upgrade codes
(in "COMPANY.MMH") so you can easily have
upgrade "sets" which define which versions can be installed at the
same time versus which can't.
- Fixed bug in handling of deferred VBS custom action data
(double quotes not doubled up).
- Parameter validation on the "Property" command
improved (including earlier detection of null values - with better error message).
- Minor change to the "UISAMPLE.MMH" header to make it easier
to change "install" button text if you don't like "&Install".
- Fixed tab handling for the version file
version history information.
- 03.339 (5 December 2003)
- New "View Verbose MSI Log" explorer option.
- Now validate that any masks on the "Files" command
are not actually directories (can get confusing).
- Better parameter validation on the "Directory" command.
- Added an optional parameter to the "/Component" and
"/Feature" commands to allow for better
validation of closing tags.
- Sundry minor tweaks.
- 03.333 (29 November 2003)
- Updated the "Feature" and "Component"
commands to ensure that the "CREATE" parameter is only used
once for each ID.
- The version file product information
now supports tabs with the default tab stop being 8.
- 03.325 (21 November 2003)
- The "Binary" command now supports other
tables.
- The "MergeModule" command now supports merge
modules which don't contain any files (fairly rare).
Some more debugging aids added.
- Added the "Product" parameter and better parameter
validation to the "Icon" command.
- Modified the "FEATURE" parameter of the
File, Files and
MergeModule commands to be
consistent with others that support "." etc.
- Any GUID found in the VER file (by the "Guid"
command) now has all macros expanded.
- The default complete feature's "ID" now includes as much
of the product name and version that will fit.
This helps overcome Windows Installer event logging
deficiencies.
- The "component" information (now with GUID in tooltip),
now starts the HTML reports "Comment" column for the
"file" report, allowing sorting of this column by component.
- Merge Module related associations should now work whether
or not "ORCA" is installed.
- Better parameter validation on "Binary"
"Table", "TableCreate",
"TableDelete" and "RowsDelete"
commands.
- Now contains PPWIZARD version "03.318".
- 03.312 (8 November 2003)
- Fixed bug in the "Msi" command which would
cause a syntax error to be generated in the created VBS if the
"TEMPLATE" parameter was not used.
- 03.304 (31 October 2003)
- New "MsiExtraFiles" command.
- New "MsiValFilter" command.
- The tooltip for file entries now includes the row key.
An MD5 hash is now always generated where possible for the
HTML report even if you don't want the MSI to make use of it.
- Better error message if the generation of an "8.3" name fails
(because invalid long name was provided).
- New "LM" parameter on the Component command.
- Some basic "progress" output will be generated for long running
tasks (frequency of messages configurable).
- By default the "UISAMPLE.MMH" header now removes the
CD-KEY fields from the "AdminRegistrationDlg" dialog (although the whole
dialog is now also removed by default).
- 03.290 (17 October 2003)
- Better parameter validation on the
"File" and "Files" commands.
- Fixed error reporting bug in "compile" step.
- Improved the "Compare -> MAKEMSI Format" option.
- The "MsiDiff.VBS" command now outputs row columns
in database order and also sorts the generated table rows
(needs a bit more work).
- 03.283 (10 October 2003)
- Added a "DATA" parameter to the Adsi command.
- The default extension for a licence is now
"".licence.rtf"".
You can now also configure whether "licence" or "license" is
displayed in the licence dialog.
- Fixes some error handling issues in the generated VBS which
might in unusual situations allow the script to "plow on".
- 03.276 (3 October 2003)
- New "Registry Conversion" option.
- New "CU" parameter on the Component command.
- New "Remove" parameter on the DirectoryTree command.
- Now validate the "MsiFormatted" parameter of the
"Registry" command.
- If you tried to update a write protected MSI then this would
invoke a Windows Installer bug resulting in an infinite loop.
The read-only attribute is now reset if you are using a template
MSI else processing aborts with an error message.
- 03.269 (26 September 2003)
- Work around to a Microsoft validation bug which causes "ICE20" to fail
and prevents all following validations from occurring.
Expect to see some more validation messages.
- Better VBSCRIPT return code validation under DOS based Windows
versions (workaround to a Microsoft "command.com" bug).
- The console file generated in the "out" directory now contains the
VBSCRIPT output under NT based operating systems.
- If you allowed the File or File
commands to create components the
"FILE_EXTENSIONS_WHICH_NEED_OWN_COMPONENT" definition was not
working.
- No longer update the "MsiFileHash" table for versioned files
(produces validation errors).
- The ADSI command could not create
"IIsWebFile" objects (and probably others).
- Fixed the "DirectoryTree" command as well as some
others so that it will not fail on some directory names which include
a "." character and extensions which contained all "invalid"
characters (such as ".$$$").
- Made it easier to prevent individual (or certain groups) of
"standard" directory table entries being created in
"COMPANY.MMH".
- Newer PPWIZARD with less restrictive "#{" (loop) nesting.
- Added the "IgnoreErrors" parameter to the
MergeModule command.
- Added the "EXLIST" parameter to the File command.
- 03.255 (12 September 2003)
- Fixed the "DirectoryTree" command as well as some
others so that it will not fail on directory names such as "c++".
- Windows Installer can produce corrupt databases if a key into the
"_Streams" table
is too long, an error message is now
generated instead.
- 03.248 (5 September 2003)
- The "ServiceInstall" and
"ServiceControl" commands now report unexpected
parameters.
- Most commands updated to report an error if a parameter is used as
a PPWIZARD keyword (a relatively easy mistake).
- Added a "PrimaryFolder" parameter to the
"Directory" and "DirectoryTree"
commands.
- If you allow "COMPANY.MMH" to create a
"complete" feature then
it now by default will also set "PRIMARYFOLDER" and
"ARPINSTALLLOCATION" properties
(when this directory known).
- The "MsiSync.VBS" command now uses "ReallySuppress"
as a reboot option for the uninstall, not just the install!
- New "SelfRegister" command.
- 03.233 (21 August 2003)
- New "New -> Command Prompt (here)" explorer
option.
- The version file now fully
supports inline comments.
- Now supports a set of JSCRIPT custom action commands
(see "JsCa" etc).
Support will grow to match the VBSCRIPT set.
- Added a workaround to a Windows XP add-remove
"support information" bug (can be wider than the screen).
This should work except where comments are really long.
- Normally at least 1 file is contained in the MSI
(the HTML report), if this was disabled and there were no other
files then the compile step would fail.
- Fix to the "RunCmd" command (was completely broken).
- 03.227 (15 August 2003)
- The "destination" parameter of the "File" command
was not always performing any requested rename
(I think this broke in the 03.206 release).
- Modified the COMPILE step to work help around some
"MAKECAB.EXE" bugs/features.
- Fix "MsiDiff.VBS" generation of "time" summary
type entries so that they will work correctly when passed back
though MAKEMSI (on the same box).
- Fix to "RegistryImport" for empty
"REG_MULTI_SZ" type values.
- Fixed a minor bug in the HTML report which occurred when more than
999 files were listed.
- The "MsiSync.VBS" command now uses "ReallySuppress"
as a reboot option and displays the results of any uninstalls
and installs.
- Minor improvement to "FileFind" and
"RegistryRead" so that the message shown to users
at install time is nicer (property by default).
- Improved the title length in the UISAMPLE progress dialog to
display long product names better.
- Included new PPWIZARD with default support for
".J"->".JS" (JSCRIPT) file extensions (with syntax checking).
- 03.220 (8 August 2003)