Tuesday, November 18, 2008 Login
VinsVision
Articles
 Search articles Minimize
  
 Article archive Minimize
  
 Article list Minimize
Windows Installer .msi
Policies
Deployment


  
 Windows Installer Wrapper Wizard (WIWW) 0.2.0 Minimize
Location: BlogsVinsVision's articlesWindows Installer .msi    
Posted by: Vincent Friday, July 06, 2007
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.

Windows Installer Wrapper Wizard 0.2.0 Installation.jpg

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.jpg

Welcome to the Windows Installer Wrapper Wizard

Click Next

 Windows Installer File - Create a new Windows Installer msi file.jpg

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 and Uninstall Commands.jpg

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.

 Program to run.jpg

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.

 Program to run Sample Command.jpg

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.

Install and Uninstall Sample Commands.jpg

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 Apearance and Requirements.jpg

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.jpg

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.jpg

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.

Finished creating your wrapper.jpg
 

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:

 VinsVision Example Setup.jpg

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!

Permalink |  Trackback

Comments (11)   Add Comment
Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Andy Britton on Thursday, July 19, 2007
Glad to see this very useful util back on the net.

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Randall on Wednesday, July 25, 2007
I see a potential issue, and I am sure you do as well. It seems that there needs to be a different interface for the SP level, as requirements from OS to OS are different. Many things that run only on XPSP2 run correctly in Server 2003 SP1, and good luck finding Vista or Server 2008 SP2! ;)

For the opening of an existing wrapped file, maybe a solution (if you have not thought about it already) is a manifest file that lists in some fashion the files, steps, parameters, etc that are used in the build, then open/edit/save that instead of the MSI directly, and use that to build the MSI.

I know this is a 0.2.0.0 release and there is a lot of work to do, but I can really see potential for this tool and look forward to what it can and hopefully will be.

Thank you!

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Unimatrixx0 on Wednesday, October 17, 2007
I tried excuting wrapper MSI after I finished creating it, but it comes up with a GUI and prompts the user. How do you get wrapper to run silent with no user interaction. Why does the GUI come up? Idealy, it should just install silently.

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Robert Kok on Thursday, October 18, 2007
I tried to deploy an InstallShield 7 package, which refuses to install directly from MSI even when using the issetupdriven parameter to override InstallShield. Tried to wrap the setup.exe /s inside WIWW, but then I get error 1607 about InstallShield engine not being able to install. This is probably caused by two instances of msiexec running at the same time, because setup.exe is using the msi that refuses to install without setup.exe while WIWW is still running. Installing isscript.msi before doesn't make a difference. I give up trying to deploy this msi directly and I'm going to create a snapshot, unless someone has a solution preventing InstallShield error 1607.

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Kirk Fuemmeler on Wednesday, November 21, 2007
I installed on my XP/SP2 machine. When I try to run WIWW.exe on the screen where it asks about about the new "windows installer file" to create -- the "Next" button is greyed out. How do I move beyond this point?

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By tarrant miller on Monday, January 07, 2008
There's something weird with the way the paths such as [SourceDir] work - or rather don't work on our w2ksp4 and xpsp2 machines.

I had to edit the final MSI that WIWW created using Orca to strip the paths added by WIWW and insert the correct ones in order to get the MSI to work.

Either way this is a totally nifty little tool to use to get the first part of the msi creation process done. Much appreciated.

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Jim on Monday, March 03, 2008
I installed on my XP/SP2 machine. When I try to run WIWW.exe on the screen where it asks about about the new "windows installer file" to create -- the "Next" button is greyed out. How do I move beyond this point?

is WIWW free?    By kia on Tuesday, March 11, 2008
is WIWW free? if a company uses it to create commercial software, do the company need to ask permission from VinsVision?
actually i am looking for a freeware to do EXE to MSI wrapping.

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By Arend on Friday, August 08, 2008
It works like a charm, especially deploying SAP with BW. I've added 3 commands for the patches, all are the same path just diff filenames. 2 of the 3 get installed and 1 doesn't. Does this have anything to do with long filenames or the [SourceDir] ?

Re: Windows Installer Wrapper Wizard (WIWW) 0.2.0    By M. Anselmi on Tuesday, August 12, 2008
Hello,

Is there a limitation as far as running the native setup gui from the msi wrapper. I'm assuming that's the case because I can't get it to run.

Solution for executing an setup which calls another MSI?    By JM on Friday, October 24, 2008
Great tool, I was rather far creating my own MSI. But this works great.
I'm trying to do Project 2007 this way, but I have somewhat the same problem as Robert Kok wrote a year ago.
Is there allready a solution / workaround for this problem?


Your name:
Title:
Comment:
Add Comment   Cancel 
  
Copyright 2007 by VinsVision  | Terms Of Use | Privacy Statement