In this section we will review some peculiarities of the installation and uninstallation of the MSI packages from the running Windows Installer setup. Then the component definition will look as follows:. We will install these packages with standard Microsoft utility msiexec.
Here is the corresponding custom actions definition:. Generally speaking, the Windows Installer technology supports the installation of only one MSI package at a time. Thus the custom action will be launched right after the main installer finishes. In this case two installations will not interfere. Probably, this method is good for one additional MSI setup. The second method does not have this disadvantage. When it completes, the execution mutex is released. So if we schedule some Windows Installer custom actions after it we will be able to execute as many MSI installations as we want before the actual finish of the main installation.
Please note that for the correct work of this method the main installation must be launched in full UI mode. Otherwise the actions from InstallUISequence will be skipped.
Again we will use msiexec to uninstall the MSI packages. In our examples we will perform the uninstallation with the package GUID. The uninstallation of the MSI package from the running Windows Installer package setup has the same problem with execution mutex as the installation. The more universal solution which allows multiple MSI uninstallations during the main package setup is to schedule the uninstallation custom actions after the ExecuteAction standard action of the InstallUISequence :.
Yet again please note that for the correct work of this method the main installation must be launched in full UI mode. The topic of the driver installation using Windows Installer is very wide. This article is not supposed to describe it all. The author has tried to collect the main problems which he has met working on the driver installer and describe the solutions which he has found. DeleteFiles YesNoType If set to "yes", configures DIFxApp to delete binary files that were copied to the system from the driver store when a driver package was installed.
If this attribute is set to "no" or not present, DIFxApp does not remove these files from a system. Note that configuring DIFxApp to delete these files is controlled by the Flags entry value of the component that represents the driver package in the MsiDriverPackages custom table.
Setting DeleteFiles to "yes" sets the corresponding bit in the Flags entry value. Setting DeleteFiles to "no" clears the corresponding bit in the Flags entry value. Post by Stephen Connolly [I see you don't mention catalog files, but for forward compatibility you might want to investigate using them. Post by Stephen Connolly Create 2 components, one for your x86 files and another for your x64 files, and give them mutually exclusive component conditions based on the processor architecture so that only one of the components is ever installed on a particular system.
That way you don't need to worry about file name collisions on the target system as you'll only ever install one or other of the components. And it keeps the install footprint smaller. This browser is no longer supported. Download Microsoft Edge More info. Contents Exit focus mode. Please rate your experience Yes No.
0コメント