What’s New in InstallShield 2011 Express Edition

InstallShield 2019 Express Edition

New Features

InstallShield includes the following new features.

Integration with Team Foundation Server (TFS)

InstallShield has enhanced support for integrating with Team Foundation Server (TFS) 2010.

Now when you are using InstallShield from within Visual Studio 2010, you can access the Source Control Explorer to integrate your InstallShield project with Team Foundation version control and manage changes to your InstallShield projects and your Visual Studio solutions.

You can also use Team Foundation Build to compile, test, and deploy your InstallShield projects and your Visual Studio solutions on a regular basis, or on demand. Your installation is automatically updated with your latest source files every time that your solution is built.

In addition, if you install Team Explorer on the same machine that has InstallShield and Visual Studio, you can use Team Explorer from within your InstallShield projects that are open in Visual Studio. This enables you to perform tasks such as the following:

Use Source Control Explorer when you are working on your InstallShield projects.
Configure builds for your InstallShield projects and Visual Studio solutions.
Queue new builds.
Track work items such as bugs and tasks for your InstallShield projects and your Visual Studio solutions.

For more information, see:

Integrating with Microsoft Visual Studio Team Foundation Server
Adding InstallShield Projects to Team Explorer

New InstallShield Prerequisites for SQL Server 2008 R2 Express, SQL Server Native Client, Visual C++ 2010, and Other Redistributables

InstallShield includes a number of new InstallShield prerequisites that you can add to Express projects:

Microsoft SQL Server 2008 R2 Express
Microsoft SQL Server 2008 Native Client 10.00.2531
Microsoft SQL Server Native Client 9.00.4035
Microsoft SQL Server System CLR Types 10.00.2531
Microsoft SQL Server 2008 Management Objects 10.00.2531
Microsoft Visual C++ 2010 Redistributable Package
Microsoft Visual C++ 2008 SP1 Redistributable Package
Windows Installer 3.1 - Japanese
MSXML 6.0 SP1 - Japanese
Microsoft .NET Framework 4.0 Client Japanese Language Pack
Microsoft .NET Framework 4.0 Full Japanese Language Pack

Ability to Specify a Search Path for InstallShield Prerequisites

InstallShield now lets you specify the folders where InstallShield should search for InstallShield prerequisite files (.prq files). This functionality makes it easier for teams of users to share InstallShield prerequisites with each other, and for storing prerequisites in source code control. Previously, InstallShield searched for .prq files in the following location only: InstallShield Program Files Folder\SetupPrerequisites.

InstallShield offers several ways for specifying the folders:

If you are editing or building from within InstallShield, use the new Prerequisites tab on the Options dialog box—which is displayed when you click Options on the Tools menu—to specify a comma-delimited list of machine-wide folders and current-user folders. This tab is similar to the Merge Modules tab on the Options dialog box, which lets you specify search paths for merge modules.
If you are building from the command line with ISCmdBld.exe, use the new -prqpath parameter to specify a comma-delimited list of folders.

If you use an .ini file to specify ISCmdBld.exe parameters, you can use the new PrerequisitePath parameter in the [Mode] section of your .ini file to specify a comma-delimited list of folders.

If you are building through MSBuild or Team Foundation Server (TFS), use the new PrerequisitePath parameter on the InstallShield task. This parameter is exposed as the ItemGroup InstallShieldPrerequisitePath when the default targets file is used. To specify multiple paths, use an ordered array of paths.

To learn more, see:

Specifying the Directories that Contain InstallShield Prerequisites
Prerequisites Tab
IsCmdBld.exe
Passing Command-Line Build Parameters in an .ini File
Microsoft Build Engine (MSBuild)

Ability to Specify Custom Version Resource Properties for Setup.exe and Update.exe

InstallShield now lets you use a custom version resource properties for Setup.exe files that you create at build time. The version resource properties are displayed on the Properties dialog box for Setup.exe; this Properties dialog box opens when end users right-click the Setup.exe file and then click Properties. This support is available in Express projects. The ability to specify custom version resource properties is also now available for Update.exe files that you create in QuickPatch projects.

Two new settings—Launcher Copyright and File Description—are available on the Setup.exe tab for a release in the Releases view. These settings let you specify a custom copyright notice and file description.

When InstallShield is configuring the following version resources of your Setup.exe setup launcher at build time, it now uses the custom information that you entered in the General Information view and the Releases view:

Company name
Product name
Product version
Copyright
File version
File description

Previously, InstallShield did not use any custom information in many cases. For example, the Setup.exe files that InstallShield previously created contained details that pertained to the version of InstallShield that was used to build the Setup.exe file. Thus, the copyright notice that was displayed in the Setup.exe Properties dialog box was the copyright notice for InstallShield, rather than the copyright notice for your product.

Several new settings—Company Name, Product Name, Product Version, Description, and Copyright—let you specify the custom information that you want InstallShield to use when you build an Update.exe file. These settings are available on the Advanced tab of the Build Settings area in the General Information view of QuickPatch projects.

Previously, InstallShield did not use any custom version resource information for Update.exe files.

To learn more, see:

Customizing File Properties for the Setup Launcher
Setup.exe Tab
Customizing File Properties for the Update Launcher
Advanced Tab

Improvements for Custom Actions: New Custom Action Types; New Maintenance Mode Sequence Options; Support for Rollback and Commit Custom Actions

InstallShield includes several new features for custom action support.

MSI DLL Custom Actions

InstallShield now lets you add MSI DLL custom actions to your projects. An MSI DLL custom action calls an entry-point function that is exported from a C or C++ DLL. The DLL can be installed at run time during the installation, or it can be embedded within the Binary table of the .msi package. The MSI DLL custom action offers more flexibility for the DLL file’s source location than the standard DLL custom action, which was the only type of DLL custom action that was supported in earlier versions of InstallShield. During some parts of the installation, standard DLL actions cannot be stored in the Binary table; instead, they must be installed with the product. However, during those same parts of the installation, MSI DLL actions can be stored in the Binary table or installed with the product.

Note that for MSI DLL custom actions, a return value of zero indicates success; non-zero return values indicate statuses such as failure or cancellation. This is consistent with all other custom action types, except for standard DLL custom actions. For standard DLL custom actions, a non-zero return value indicates success, and a return value of zero indicates failure.

JScript Custom Actions

InstallShield also lets you add JScript custom actions to your projects. If you convert a Visual Studio setup project (.vdproj) that has a JScript custom action into an Express project (.ise), InstallShield now includes the JScript custom action.

Separate Maintenance and Uninstallation Sequences

The Custom Actions view contains a new Custom Actions During Maintenance node that lets you schedule actions that you want to occur only during maintenance. The following sequence nodes have been moved from the Custom Actions During Uninstallation node to this new Custom Actions During Maintenance node:

After Initialization (before first dialog)
After Maintenance Welcome dialog
After Maintenance Type dialog
After Ready to Remove dialog
After Setup Progress dialog
After Setup Complete Success dialog

The following two sequences are still applicable to uninstallation, so they remain under the Custom Actions During Uninstallation node: the Before System Changes sequence and the After System Changes sequence. Any custom actions that are scheduled during these sequences are run during uninstallation, but not during maintenance operations such as repair.

Rollback Actions, Commit Actions, and Related Settings

The Custom Actions view has a new In-Script Execution setting that lets you select which iteration of the execute sequence—deferred, rollback, or commit—should trigger your custom action. Deferred actions make the run-time changes to the system. Rollback actions occur if the installation encounters an error or the end user cancels the installation before it completes; these actions are intended to undo the changes to the system. Commit actions perform cleanup for any temporary information that is saved by a deferred action. The In-Script Execution setting also lets you specify whether your action should be run in the user context (using the privileges of the user running the installation) or in the system context (with elevated privileges).

This new In-Script Execution setting is displayed in the Custom Actions view when you select a custom action that is not sequenced to run in immediate execution mode; actions that run in immediate-execution mode can set Windows Installer properties and check the target system, and they are always run in the user context.

Previously in the Express edition of InstallShield, any custom actions that were scheduled for deferred sequences of the installation were launched in deferred-execution mode in the user context. InstallShield did not have support for rollback or commit custom actions, and it did not have support for running custom actions in the system context.

For more information, see:

Using Custom Actions
Windows Installer DLL Custom Actions
VBScript and JScript Custom Actions
Action Execution Options

Ability to Import Visual Studio Setup and Merge Module Projects into Existing InstallShield Projects; Improvements for the Project Converter

InstallShield now lets you import a Visual Studio setup project or a Visual Studio merge module project (.vdproj) into an Express project (.ise). This functionality enables you to develop InstallShield installation projects that contain the same data and settings that were in your Visual Studio project. The wizard imports the project outputs, files, registry keys, file extensions, custom actions, target system searches, and launch conditions from your Visual Studio project into your existing InstallShield project.

To import a Visual Studio project into an existing InstallShield project, use the new Visual Studio Deployment Project Import Wizard in InstallShield. The wizard lets you choose whether to import or ignore certain settings in the Visual Studio project.

The existing support for converting a Visual Studio project into a new InstallShield project has been expanded. If your Visual Studio project contains predefined prerequisites, InstallShield now converts them to equivalent InstallShield prerequisites during the conversion process. This same prerequisite conversion functionality is available if you use the new wizard to import a Visual Studio project into an InstallShield project.

If your Visual Studio project contains one or more project outputs, use the import wizard instead of the conversion process. The InstallShield project must be in the same Visual Studio solution that contains the Visual Studio setup or merge module project and all of its project dependencies. Note that you must be using InstallShield from within Visual Studio when you use the import wizard in order for the wizard to import the project outputs into your InstallShield project.

To learn more, see the following:

Converting or Importing Visual Studio Projects into InstallShield Projects
Visual Studio Deployment Project Import Wizard

Predefined System Searches for SQL Server 2008 Express SP1 and Adobe Reader 9

InstallShield has new predefined system searches:

SQL Server 2008 Express SP1
Adobe Reader 9

If your installation requires one or both of these, you can use the Requirements view or the Installation Requirements page in the Project Assistant to add these system searches to your project. When end users launch your installation, Windows Installer checks the target system to see if the requirements are met; if they are not met, the installation displays the error message that is defined for the system search.

This feature applies to Express projects.

Ability to Configure MIME Types for IIS Web Sites, Applications, and Virtual Directories

The Internet Information Services view has a new MIME Types setting that you can configure for a Web site, application, or virtual directory in your project. This setting lets you identify the types of content that can be served from the Web server on the target system to a browser or mail client.

This feature applies to the Express project.

For more information, see:

MIME Types setting for a Web site
MIME Types setting for an application or virtual directory

Support for Looping Through Image Billboards

The Billboards view has a new Loop Billboards setting that lets you specify whether you want your installation to continuously loop the image billboards until the file transfer completes and the installation displays the appropriate Setup Complete dialog.

If you select Yes for this setting and the file transfer takes more time than you have allocated for the billboards, the installation restarts the display of billboards from the beginning. The loop continues, if necessary, until the file transfer ends. The default value for this setting is No, which matches the behavior in earlier versions of InstallShield.

Previously, if the file transfer took more time than what you had allocated for the billboards, the installation continued to display the last billboard until the file transfer finished; it did not loop the billboards.

This feature applies to Express projects.

For more information, see:

Run-Time Behavior of an Installation that Includes Billboards
Billboard Settings

New FlexNet Connect 12.01 Redistributables Available

InstallShield includes support for FlexNet Connect 12.01 in InstallShield projects. Use the Update Notifications view in InstallShield to include one of the two FlexNet Connect 12.01 merge modules—one has the Common Software Manager, and the other does not.

Enhancements

InstallShield includes the following enhancements.

Unicode Views in InstallShield

Some of the views InstallShield have been enhanced to display and allow you to enter characters from all languages. For example, now you can use Chinese characters in system software requirement messages if you are configuring software requirements in the Requirements view on an English machine. Previously, the characters in the messages were displayed as question marks.

The areas in InstallShield that have been enhanced to include the Unicode support are the Requirements view and the tabs for a release in the Releases view. Note that Unicode support was previously introduced in many other views in InstallShield 2010 Express Edition.

The improvements are applicable to Express projects.

Support for Adding Project Outputs from Visual Studio Web Setup Projects

If you create a Visual Studio solution that includes a Web setup project and an InstallShield installation project and you are using InstallShield from within Visual Studio, you can now add project outputs from the Web setup project to your InstallShield project.

Ability to Specify the Required Execution Level for Update.exe Manifests

The Required Execution Level setting is now available on the Advanced tab of the Build Settings area in the General Information view of QuickPatch projects. Use this new setting to specify the minimum execution level that is required by your project’s Update.exe file for running the upgrade on Windows Vista and later platforms. InstallShield adds a manifest that specifies the required level. By default, InstallShield uses the level that was configured in the previous setup launcher’s manifest.

Previously, the Required Execution Level setting was available only for the Setup.exe setup launchers. If you created an Update.exe patch, InstallShield used the same required execution level that was configured in the previous setup launcher’s manifest.

To learn more, see Advanced Tab.

Ability to Create .cab Files Without Compression

A new Cab Optimization Type setting is available on the Build tab for a release that is selected in the Releases view. If Compressed or one of the custom options is selected for the Compression setting, use the Cab Optimization Type setting to specify the type of compression that InstallShield should use when building the release’s .cab files. The available options are LZX compression, MSZIP compression, or no compression.

The Cab Optimization Type setting replaces the Optimize Size setting, which had support for only LZX compression and MSZIP compression; it did not let you skip compression.

This enhancement is available in Express projects.

For more information, see Build Tab.

New Refresh Button in the Redistributables and Prerequisites Views

The Redistributables view contains a new Refresh button that you can use to refresh the list of redistributables that are displayed in the view. Previously, if you added redistributables to your machine when this view was open in InstallShield, it was necessary to close and then reopen the project in order to see an updated list in the view.

Important Information

Installing More than One Edition of InstallShield

Only one edition of InstallShield 2011—Premier, Professional, or Express—can be installed on a system at a time.

Installing More than One Version of InstallShield

InstallShield 2019 Express Edition can coexist on the same machine with other versions of InstallShield.

See Also