Installing legacy software with group policies in the Active Directory can cause some challenges. The first is machine assigned software. Machine assigned software can only be installed using a Windows Installer msi file.
The second is allowing users to install software by publishing it to the user. Publishing software to the user can be done using .zap files, but the software will run in the user’s security context and this is a problem when local administrator permissions are required. Publishing the software using a Windows Installer msi file can remedy this problem because, by default, published msi software is installed with elevated privileges.
With WIWW you can create msi files that will execute any command you specify and gives system administrators additional flexibility to remedy these challenges.
Install
To perform the installation, you must have installed the .NET Framework 2.0 and the user executing the installation must have local administrator privileges.
Download the Windows Installer Wrapper Wizard 0.2.0 from the download section. Extract the files and run the “Windows Installer Wrapper Wizard 0.2.0.msi” setup.

Click Next, Next, Finish and installation is done.
From Start menu -> Programs, start “WIWW 0.2.0” to use the Windows Installer Wrapper Wizard.
Windows Installer Wrapper Wizard Usage
Start WIWW 2.0, the first wizard screen appears.

Welcome to the Windows Installer Wrapper Wizard
Click Next

Windows Installer File
Note: At this moment it is (still) not possible to open an existing Windows Installer wrapper file that was previously created using the wizard.
Click the Browse button and navigate to the location you want to save the Windows Installer wrapper file and Click Next.

Install Commands/Uninstall Commands
At this point you can add the commands you want to execute during the installation of the Windows Installer wrapper file. Click Add.

In Program to run you can select a Windows Installer folder property.
The folder properties are CLSID’s pointing to predefined Windows Installer folders on all computers. A tooltip is set on the Windows Installer folder showing you which folder is resolved and a short description about this folder.
The Use [SourceDir] option allows you to execute commands in the source file tree of the Windows Installer wrapper installation package.
Important: When you use this property when you specify the uninstall commands, the source must be available. If the source msi file is unavailable, it will cause an unintended prompt for the source media.

In this example I’ve created a new folder “My Subfolder” and saved the executable I want to run “Sample Command.EXE”.
When you click the Browse button, it will automatically resolve the SourceDir folder. Navigate to the folder and open the executable you want to run.
The program parameters are optional. In this example I’ve added some parameters to run and clicked the OK button.
Repeat this process to add as many install and uninstall commands as you like.

You can Add/Remove/Modify/Move Up and Move Down the commands using the buttons or by using the context menu. Moving commands can also be achieved by drag and drop.
Important: The commands you specify will be executed during installation and during repair of the wrapper. Also, the commands are executed synchronously during installation and uninstallation. The errorlevel from the commands are ignored by Windows Installer.
If you want the computer to prompt for a restart, check the Reboot the system at the end of installation/uninstallation checkbox. Windows Installer will ask the user to restart the computer if product installation is performed interactively and will automatically reboot when the UILevel is reduced.
Click Next

Product Appearance and Requirements
Here you can select which options will be available when the user opens Add Remove Programs in Control Panel:
- Disable the Change button. This disables the Change button for the product in Add or Remove Programs in Control Panel.
- Prevent the application from being displayed. This hides the product in Add or Remove Programs in Control Panel.
- Disable the Remove button. This disables the Remove button for the product in Add or Remove Programs in Control Panel.
- Disable the Repair button. This disables the Repair button for the product in Add or Remove Programs in Control Panel.
You can also select the Windows requirement for the Windows Installer wrapper, including the servicepack level.
The Windows version and servicepack level requirements are by default set to allow this version or later.
For example:
Minimum Windows version: Windows XP
The product will install on Windows XP or later (Windows Server 2003/Vista/Server 2008).
Servicepack level: Servicepack 2
The product will install on the selected operating system with servicepack 2 or later (servicepack 3/4/5/6).
If you use the combination in this example, the product will only install on Windows XP servicepack 2 or later, Windows Server 2003 servicepack 2 or later, Windows Vista servicepack 2 or later, Windows Server 2008 servicepack 2 or later.
If you check the Enforce this Windows version only, the wrapper will only install on Windows XP with servicepack 2 or later. For other operating systems or Windows XP with a lower servicepack level, the Windows Installer wrapper will abort the install.
Click Next

Package Meta Data and Language
When creating a wrapper, the Product name is the same as the filename. Also the Product version will initially always be 1.0.0. You can change these values if you like.
When creating a new wrapper, the Product language will initially be set to the same value as the operating system on which WIWW is running. This setting specifies the language the installer should use for any strings in the user interface that are not authored into the database.
If you check the Enforce language ckeckbox option, the Windows Installer wrapper will abort the install if the operating system language doesn’t match the selected wrapper language.
Click Next

The wizard is ready to create your wrapper.
This summary shows a summary of the wrapper that will be created for you. Click Next to start creating the wrapper.

The Windows Installer wrapper is created. This will take a few moments. Finally, click Finish to close the wizard and start using your new wrapper.
Executing the created “VinsVision Example.msi” wrapper file:

Troubleshooting
It’s possible the wrapper file doesn’t run the commands as expected. In this case you can try to run the wrapper file with logging enabled. From the command line:
Msiexec /I myfile.msi /l*v mylogfile.log
You can enable logging with Group Policies by editing the appropriate OU or Directory Group Policy. Under Group Policy, expand Computer Configuration, expand Administrative Templates, expand Windows Components, and then select Windows Installer.
Double-click Logging, and then click Enabled. In the Logging box, enter the options you want to log. The log file, Msi.log, appears in the Temp folder of the system volume.
Let me know how it worked out for you and add a comment!