Windows Installer packages may contain streams identified in the Media table if the Cabinet column value begins with the number sign #, as documented for the Cabinet data type. This cabinet is embedded as a stream within the .msi file and contains files referenced in the File table using their File key column value.
I defined several private properties and several privileged methods that can access those private properties,
Some time back I made modifications to the previous version of my shell extensions for .NET assemblies to display differences in the column handler for both native and managed binaries targeting the x86, IA64, and x64 platform architectures. Now that the Microsoft .NET Framework 2.0 has released,
Since Windows Installer 1.0 was first released, msiexec.exe has always run in the Windows subsystem. That means that when it is executed from the console or by a batch script control returns to the console or script immediately. If you depend upon the %ERRORLEVEL% variable being set accordingly it won’t be.
Because newer versions of Windows Installer are released with new functionality dependent on operating system features, and older versions of Windows reach the end of their support lifecycle, different versions of Windows Installer are supported on different versions of Windows. Below is the supportability matrix for what versions of Windows Installer shipped on what versions of Windows,
Aaron Stebner has posted a compilation of links to many great posts about troubleshooting setup issues regarding, primarily, Visual Studio 2005 and the .NET Framework 2.0. It’s important to note that much of this is relevant to patch issues, too; though,
Beginning with Windows Installer 3.0 you can install multiple patches at once, i.e. in a single install transaction. To do this you pass a semicolon-delimited list of fully-qualified paths to patches to the PATCH property. Windows Installer 2.0-style patches are sequenced first in the ordered specified,