What’s New in InstallShield 2013 SP1

InstallShield 2016

InstallShield 2013 Service Pack 1 (SP1) includes changes that offer support for the final released versions of Windows 8.1, Windows Server 2012 R2, and Visual Studio 2013.

Ability to Target Windows 8.1 and Windows Server 2012 R2 Systems

InstallShield enables you to specify that your installation requires Windows 8.1 or Windows Server 2012 R2. It also lets you build feature and component conditions for these operating systems.

The InstallShield prerequisites that should be installable on Windows 8.1 and Windows Server 2012 R2 have been updated so that they are installed on those systems if needed. Previously, the prerequisites were not run by default on those systems. This applies to the following InstallShield prerequisites:

FSharp Redistributable Package 2.0
JRE_SE 1.7.0_02 (x64)
JRE_SE 1.7.0_02 (x86)
Microsoft .NET Framework 3.0 OS Component
Microsoft .NET Framework 3.5 SP1 (Windows Feature)
Microsoft .NET Framework 4.5 Full
Microsoft .NET Framework 4.5 Web
Microsoft App-V 5.0 SP1 Desktop Client (x64)
Microsoft App-V 5.0 SP1 Desktop Client (x86)
Microsoft ReportViewer 2010
Microsoft SQL CE 3.5 SP2
Microsoft SQL Server 2005 Express SP3 (x86 & x64Wow)
Microsoft SQL Server 2005 Express SP3 (x86)
Microsoft SQL Server 2008 Express SP1 (x64)
Microsoft SQL Server 2008 Express SP1 (x86 & x64Wow)
Microsoft SQL Server 2008 Express SP1 (x86)
Microsoft SQL Server 2008 Management Objects 10.00.2531 (IA64)
Microsoft SQL Server 2008 Management Objects 10.00.2531 (x64)
Microsoft SQL Server 2008 Management Objects 10.00.2531 (x86)
Microsoft SQL Server 2008 Native Client 10.00.2531 (IA64)
Microsoft SQL Server 2008 Native Client 10.00.2531 (x64)
Microsoft SQL Server 2008 Native Client 10.00.2531 (x86)
Microsoft SQL Server 2008 R2 Express RTM (x64)
Microsoft SQL Server 2008 R2 Express RTM (x86 & x64Wow)
Microsoft SQL Server 2008 R2 Express RTM (x86)
Microsoft SQL Server 2008 R2 Express SP2 (x64)
Microsoft SQL Server 2008 R2 Express SP2 (x86 & x64Wow)
Microsoft SQL Server 2008 R2 Express SP2 (x86)
Microsoft SQL Server 2008 R2 Native Client 10.50.1600.1 (IA64)
Microsoft SQL Server 2008 R2 Native Client 10.50.1600.1 (x64)
Microsoft SQL Server 2008 R2 Native Client 10.50.1600.1 (x86)
Microsoft SQL Server 2012 Express LocalDB RTM (x64)
Microsoft SQL Server 2012 Express LocalDB RTM (x86)
Microsoft SQL Server 2012 Express RTM (x64)
Microsoft SQL Server 2012 Express RTM (x86 & x64Wow)
Microsoft SQL Server 2012 Express RTM (x86)
Microsoft SQL Server 2012 Native Client (x64)
Microsoft SQL Server 2012 Native Client (x86)
Microsoft SQL Server Compact 4.0 (x64)
Microsoft SQL Server Compact 4.0 (x86)
Microsoft SQL Server Native Client 9.00.4035 (IA64)
Microsoft SQL Server Native Client 9.00.4035 (x64)
Microsoft SQL Server Native Client 9.00.4035 (x86)
Microsoft SQL Server System CLR Types 10.00.2531 (IA64)
Microsoft SQL Server System CLR Types 10.00.2531 (x64)
Microsoft SQL Server System CLR Types 10.00.2531 (x86)
Microsoft Visual C++ 2005 SP1 Redistributable MFC Security Update KB2538242(x64)
Microsoft Visual C++ 2005 SP1 Redistributable MFC Security Update KB2538242(x86)
Microsoft Visual C++ 2005 SP1 Redistributable Package (x64)
Microsoft Visual C++ 2005 SP1 Redistributable Package (x86)
Microsoft Visual C++ 2008 SP1 Redistributable MFC Security Update KB2538243(x64)
Microsoft Visual C++ 2008 SP1 Redistributable MFC Security Update KB2538243(x86)
Microsoft Visual C++ 2008 SP1 Redistributable Package (x64)
Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)
Microsoft Visual C++ 2010 Redistributable Package (x64)
Microsoft Visual C++ 2010 Redistributable Package (x86)
Microsoft Visual C++ 2010 RTM Redistributable MFC Security Update KB2467173 (x64)
Microsoft Visual C++ 2010 RTM Redistributable MFC Security Update KB2467173 (x86)
Microsoft Visual C++ 2010 SP1 Redistributable Package (x64)
Microsoft Visual C++ 2010 SP1 Redistributable Package (x86)
Microsoft Visual C++ 2012 Redistributable Package (x64)
Microsoft Visual C++ 2012 Redistributable Package (x86)
Microsoft Visual C++ 2012 Update 1 Redistributable Package (x64)
Microsoft Visual C++ 2012 Update 1 Redistributable Package (x86)
Microsoft VSTO 2010 Runtime (x64)
Microsoft VSTO 2010 Runtime

Enhancements to the InstallScript Language for Windows 8.1 and Windows Server 2012 R2

The following structure members and predefined constants were added to the InstallScript language:

SYSINFO.WINNT.bWin81—This is a new SYSINFO structure member. If the operating system is Windows 8.1 or Windows Server 2012 R2, this value is TRUE.
ISOSL_WIN81—This is a new predefined constant that is available for use with the FeatureFilterOS function and the SYSINFO structure variable. It indicates that the target system is running Windows 8.1 or Windows Server 2012 R2.

For more information, see FeatureFilterOS function and the SYSINFO structure variable.

Automation Interface Enhancement: OSFilter Property Value for Windows 8.1 and Windows Server 2012 R2

The following constants are now available for use with the OSFilter member of the ISWiComponent and ISWiRelease objects in the automation interface:

eosWin81 = &H8000000 (134217728)—These are for Windows 8.1 and Windows Server 2012 R2.

In addition, the value for the eosAll constant is now &HFD100D0 (265355472); previously, it was &7D100D0 (131137744).

The OSFilter member applies to the ISWiComponent object in InstallScript and InstallScript MSI projects. The OSFilter member applies to the ISWiRelease object in InstallScript projects.

For more information, see the following:

ISWiComponent Object
ISWiRelease Object

Support for Microsoft Visual Studio 2013

InstallShield includes support for Visual Studio 2013. You can create InstallShield projects from within this version of Visual Studio.

New InstallShield Prerequisites for Microsoft SQL Server 2012 Express SP1

InstallShield includes several new SQL Server–related InstallShield prerequisites that you can add to Basic MSI, InstallScript, and InstallScript MSI projects:

Microsoft SQL Server 2012 Express SP1 LocalDB (x64)
Microsoft SQL Server 2012 Express SP1 LocalDB (x86)
Microsoft SQL Server 2012 Express SP1 (x64)
Microsoft SQL Server 2012 Express SP1 (x86 & x64Wow)
Microsoft SQL Server 2012 Express SP1 (x86)
Microsoft SQL Server 2012 Express SP1 Management Objects (x64)
Microsoft SQL Server 2012 Express SP1 Management Objects (x86)
Microsoft SQL Server 2012 Express SP1 System CLR Types (x64)
Microsoft SQL Server 2012 Express SP1 System CLR Types (x86)

These InstallShield prerequisites install the technology on supported target systems.

Support for Defining Custom Themes for the Controls on Wizard Pages and Windows in Suite/Advanced UI and Advanced UI Installations

Suite/Advanced UI and Advanced UI projects now enable you to define themes for wizard interface controls. A control theme is a collection of colors for various parts of controls—text color, background color, and border color—and for various states of controls—such as clicked and hovered. You can specify the control theme that you want to use for the controls in your user interface by default. You can also override the theme for specific controls on wizard pages and windows in your user interface. Control themes give buttons and other items in your installation’s user interface a flat look (without the three-dimensional effects) that is reminiscent of the style of Windows Store apps.

The following types of controls support the use of control themes:

Buttons, including the navigation buttons
Check boxes
Radio buttons
Command links

To add a control theme to your project, right-click the Control Themes node in the Wizard Interface view, and then click Add Control Theme. Then configure the theme’s settings as needed.

To specify the theme that you want to use by default for the controls in your user interface, select the appropriate theme in the new Default Control Theme setting that is displayed in the Wizard Interface view when the Wizard Pages node is selected. This setting is blank by default.

To override the control theme for a specific control, select the appropriate theme in the Control Theme setting for that control.

For details, see:

Using Styles, Brushes, and Control Themes to Customize the Wizard Interface
Defining a Custom Control Theme for the Wizard Interface
Applying a Theme to a Control in the Wizard Interface

New Predefined Path Variable for the Visual Studio Solution Folder

A new predefined path variable called VSSolutionFolder is available in projects to reference a higher-level base directory. This support enables you to have in your InstallShield projects static links to files in sibling projects that are within the Visual Studio solution folder; if you work on the projects on a different machine, the static links that use the VSSolutionFolder path variable can reference the correct paths for the files in sibling projects.

The VSSolutionFolder path variable is defined automatically whenever an InstallShield project is opened from within a Visual Studio solution. It is also defined automatically if you are using MSBuild to build a solution that contains an InstallShield project. However, in other scenarios, when the InstallShield project is opened without the Visual Studio solution, VSSolutionFolder cannot be defined automatically. For example, if you open the InstallShield project in InstallShield directly, without having Visual Studio open, VSSolutionFolder is not defined. Similarly, if you use the command-line tool IsCmdBld.exe, or if you use MSBuild with an .isproj file, VSSolutionFolder is not defined. If you are using IsCmdBld.exe to build a release in InstallShield project, use the -L command-line parameter to set the value of VSSolutionFolder. If you are using MSBuild, use the PathVariables parameter to set the value of VSSolutionFolder. This parameter is exposed as the ItemGroup InstallShieldPathVariableOverrides when the default targets file is used.

If you include in your InstallShield project a source file whose path includes the VSSolutionFolder path variable and build it in an environment that does not support the VSSolutionFolder path variable, build errors such as the following ones may occur:

-6103: Could not find file <VSSolutionFolder>\MyFile.exe
-6271: File <VSSolutionFolder>\MyFile.exe not found. An error occurred building the MsiFileHash table record for this file. Verify that the file exists in the specified location.

This functionality is available in the following project types: Advanced UI, Basic MSI, InstallScript, InstallScript MSI, Merge Module, Suite/Advanced UI.

To learn more, see:

Using the VSSolutionFolder Path Variable with Visual Studio Solutions
Predefined Path Variables
Microsoft Build Engine (MSBuild)
ISCmdBld.exe

Ability to Easily Update the Product Codes of Instances in a Multi-Instance Project

If you are creating major upgrades for a project that includes multi-instance support, it is necessary to update the product code of each instance. InstallShield now enables you to easily update the product code of a specific instance that is defined in your project. InstallShield also now lets you easily update the product code of all instances that are defined for a product configuration in your project.

To update the product code of a specific instance, use the new Generate a new GUID command that is available when you right-click the value in the ProductCode setting for an instance that is defined on the Multiple Instances tab for a product configuration in the Releases view.

To update the product code of each instance that is defined for a product configuration in your project, use the new Change ProductCode of Each Instance command that is available when you right-click the Instances node on the Multiple Instances tab for a product configuration in the Releases view.

This functionality is available in Basic MSI projects.

For details, see Updating the Product Code of One or More Instances.

See Also