Choosing a Windows Installer Deployment Tool
You can use one of several different deployment tools to create a Windows Installer file (.msi).
The following table compares the features of Windows Installer Setup Projects, InstallShield 2010 Limited Edition, and the Windows Installer XML Toolset.
Feature |
Visual Studio Setup and Deployment Projects |
InstallShield 2010 Limited Edition |
Windows Installer XML Toolset |
---|---|---|---|
Integrate with Visual Studio |
Yes |
Yes |
Yes |
Use designers to customize the installer |
Yes |
Yes |
No |
Generate .msi file |
Yes |
Yes |
Yes |
Target multiple versions of the .NET Framework |
Yes |
Yes |
Yes |
Configure Windows services |
Yes |
Yes |
Yes |
Configure user groups and accounts |
No |
No |
Yes |
Configure properties for Internet Information Services (IIS) |
Yes |
Yes |
Yes |
Create new Web sites |
No |
No |
Yes |
Install and configure IIS certificates |
No |
No |
Yes |
Install and configure SQL databases |
No |
No |
Yes |
Modify XML files |
No |
No |
Yes |
Install prerequisites |
Yes |
Yes |
No |
Customize the Setup UI |
Yes |
Yes |
MSI UI only |
Integrate with MSBuild |
No |
Yes |
Yes |
Manage custom actions |
Yes |
Yes |
Yes |
Support major upgrades |
Yes |
Yes |
Yes |
Support minor upgrades and patching |
No |
No |
Yes |
Migrate Setup projects |
N/A |
Yes |
Yes1 |
Notes
1. To convert Setup projects, you can use dark.exe to decompile the output .msi file to create a .wxs file. Create a new Windows Installer project, and open the .wxs file.
InstallShield 2010 Limited Edition
The InstallShield 2010 Limited Edition (ISLE) is a free version of InstallShield for Visual Studio developers and replaces the functionality in the Visual Studio setup and deployment project templates.
You can use an importing tool to convert Setup projects to an ISLE project. In Visual Studio 2010, create a new InstallShield LE project from the New Project dialog box. Then, click Visual Studio Deployment Project Import Wizard on the InstallShield LE menu.
Obtaining InstallShield 2010 Limited Edition
You must register to download the InstallShield 2010 Limited Edition. After you complete the following procedure, you can see the InstallShield Limited Edition Project template in Visual Studio 2010.
On the File menu, point to New, and then click Project.
Expand the Other Project Types node.
Expand the Setup and Deployment node.
Click InstallShield LE.
Click Enable InstallShield Limited Edition, and then click OK.
Click Download Now.
Note
You must register by using your e-mail address before downloading the product.
To unlock all the features of InstallShield 2010, you can pay to upgrade to the full version of InstallShield.
Windows Installer XML Toolset
You can create and manage deployment projects by using the Windows Installer XML Toolset 3.5, an open-source project that supports the full feature set of the Windows Installer SDK (MSI SDK).
The following table lists the Windows Installer XML project templates and their functionality.
Project Type |
Description |
---|---|
Setup Project |
Create a Windows Installer file (.msi). |
Merge Module Project |
Create a Windows Installer merge module file (.msm), whose content can be merged into multiple Windows Installer projects. |
Setup Library Project |
Create a Windows Installer XML library (.wixlib), which can be shared across different packages based on the Windows Installer XML toolset. |
Obtaining the Windows Installer XML Toolset
Download the Windows Installer XML toolset from Windows Installer XML toolset, and then you can use Visual Studio and the toolset together to create Windows Installer files (.msi).
Visual Studio Setup and Deployment Projects
You can use the setup and deployment project templates to create a Windows Installer file to deploy your application. The Visual Studio setup and deployment project templates offer limited functionality of the Windows Installer SDK. To modify the Windows Installer file (.msi) beyond what Visual Studio offers in the UI, you can use Orca.exe to open and edit the MSI database. For more information, see Orca.exe (Windows).
Warning
Future versions of Visual Studio will not include the Visual Studio Installer project templates. To preserve existing customer investments in Visual Studio Installer projects, Microsoft will continue to support the Visual Studio Installer projects that shipped with Visual Studio 2010 per the product life-cycle strategy. For more information, see Expanded Microsoft Support Lifecycle Policy for Business & Development Products.
The following table lists the project templates and their functionality.
Project Type |
Description |
---|---|
Setup Project |
Builds an installer for a Windows-based application. The files for a Setup project are installed into the Program Files directory on end-user computers. |
Web Setup Project |
Builds an installer for a Web application. The files for a Web Setup Project are installed into a Virtual Root directory on Web servers. |
Merge Module Project |
Packages components that can be shared by multiple Windows-based applications. Merge Module projects let you package files or components into a single module, which makes the module easier to share. The resulting .msm files can be included in any other deployment project. |
Setup Wizard |
Walks the developer through the process of creating a Setup or Web Setup project. |
CAB Project |
Creates a CAB file for downloading to an earlier Web browser. You can use CAB projects to package ActiveX components that can be downloaded from a Web server to a Web browser. |
Obtaining the Setup and Deployment Projects
The setup and deployment project templates are available in Visual Studio Professional, Visual Studio Premium, and Visual Studio Ultimate. These project templates are not available separately to install into the Visual Studio Express Editions.
You can see the templates and the wizard in the New Project dialog box. Expand the Other Project Types node, select the Setup and Deployment Projects node, and then click Visual Studio Installer.