This is a free tool from Microsoft (comes with the "Windows Installer SDK"). The product is not installed with the SDK, you should be able to locate "msival2.msi" (probably in the "bin" directory) and double click it to begin the install.
A number of complete SDK collections appear to be available online allowing you to bypass the download and install of the SDK if you don't need it for other reasons (click here for the "bin" directory which contains "MsiVal2.EXE").
This tool allows you run the same validations that "ORCA" does but from the command line.
It is highly recommended that this tool be run over any MSI that you generate. MAKEMSI does not try to do complete validation and assumes you will validate the MSI after generation.
The FINDMULT.VBS can be very useful as it can be used to filter you results to remove warnings or even erronious error messages.
If you are using Windows 2003 then you should be aware of the "Failed to create MSI Engine" bug.
Sometimes this program just hangs (its possible that one of the ICE's is not handling errors correctly and stuck in an infinite loop), these hangs tend to occur once and then go away.
I have reported a bug in the "Message() method of the session object" which can hang on long messages. This sort of error will reoocur every validation until the reason is resolved, this has only occurred once to me and once I knew what the problem was easy to resolve.
|Failure after UAC elevation in Vista|
On a Vista Ultimate (6.0.6001 Service Pack 1) system "dancingguy2000" was getting UAC prompts after this MAKEMSI would fail, the error message included something like:
I/O failure on "C:\Users\freddy\Documents\MySetups\MyProduct\out\MyProduct.MM\Log\Validation\msival2-redirected.txt" (Repositioning at or after EOF).
After "dancingguy2000" reininstalled the product, it no longer displayed the UAC dialog and it worked.
|Error 2228 During Installation of MSIVAL2|
If you are installing MSIVAL2 on an older version of Windows like WINXP then you may not have the required version of Windows Installer on it. If so it might fail and log an event which includes "The error code is 2228. The arguments are: , Extension, SELECT `Extension`.`Extension` FROM `Extension` WHERE `Extension`.`ProgId_` = ?".
Try installing the "Windows Installer 4.5 Redistributable".