Академический Документы
Профессиональный Документы
Культура Документы
Version 11.5
Copyright Notice
Copyright © 1999–2006 Macrovision Corporation and/or Macrovision Europe Ltd. All Rights Reserved.
This product contains proprietary and confidential technology provided by and/or owned by Macrovision Europe Ltd., UK, and/or Macrovision Corporation
of Santa Clara, California, U.S.A. Any use, copying, publication, distribution, display, modification, or transmission of such technology in whole or in part in
any form or by any means without the prior express written permission of Macrovision Europe Ltd. and/or Macrovision Corporation is strictly prohibited.
Except where expressly provided by Macrovision Europe Ltd. and/or Macrovision Corporation in writing, possession of this technology shall not be
construed to confer any license or rights under any of Macrovision Europe Ltd. and/or Macrovision Corporation’s intellectual property rights, whether by
estoppel, implication, or otherwise.
ALL COPIES OF THE TECHNOLOGY & RELATED INFORMATION, IF ALLOWED BY MACROVISION CORPORATION, MUST DISPLAY THIS NOTICE OF
COPYRIGHT AND OWNERSHIP IN FULL.
Trademarks
Macrovision, DemoShield, FLEXnet, FLEXnet Manager, FLEXnet Publisher, InstallShield, InstallShield Developer, InstallShield DevStudio, InstallShield
Professional, and QuickPatch are registered trademarks or trademarks of Macrovision Corporation in the United States of America and/or other
countries. All other brand and product names mentioned herein are the trademarks and registered trademarks of their respective owners.
2 Welcome to Macrovision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Macrovision Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Macrovision Professional Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Technical Support Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Contacting Macrovision Corporation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Getting Started. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Installation Fundamentals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Overview of Installations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Application Lifecycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Starting InstallShield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
InstallShield Start Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Working with Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Project Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Express Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
QuickPatch Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4 Tutorials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5 Basic Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Create a New Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Organize Your Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Specify Application Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Configure the Target System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Customize the Setup Appearance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Define Setup Requirements and Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Prepare for Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
7 Creating Installations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Introduction to Windows Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Windows Installer and Patching. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Top “Designed for Windows” Logo Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Preparing Installations for Non-Administrator Patches. . . . . . . . . . . . . . . . . . . . . . . . . . 83
22 Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633
For quick and easy installations that support today’s technologies, InstallShield is the
industry standard. InstallShield enables you to build reliable installations in record
time, and avoid installation-related application errors by keeping current with support
for the latest technology.
The InstallShield Help Library contains information about the functionality and
features of InstallShield. The Help Library contains the following sections:
Section Description
What’s New in This Version Informs you about the new features and enhancements in the
current version of InstallShield.
Target System Lists the requirements for target systems.
Requirements
Using Help Provides information about the InstallShield documentation.
Welcome to Macrovision Introduces you to Macrovision Corporation, its history, its products,
its professional services, and the InstallShield Help Library.
Getting Started Contains information to help you become familiar with InstallShield,
begin creating an installation project, and customize the
InstallShield user interface.
Creating Installations Explains how to create user-friendly, reliable installations and guides
you through every step of the process—from specifying information
for Add or Remove Programs to building, testing, and deploying an
installation.
Section Description
Updating Applications Leads you through steps for planning and implementing the various
types of upgrades and patches for updating a product. Also
explains how you can use the Update Service to notify end users
about upgrades and patches that are available.
Additional Installation Discusses a broad range of options available in InstallShield:
Options including the Windows Installer service with an installation,
specifying target system requirements for an application, and
more.
Integrating InstallShield with Contains details about integrating InstallShield with third-party tools
Microsoft Visual Studio such as Microsoft Visual Studio .NET.
Reference Contains comprehensive reference information for the InstallShield
user interface; errors and warnings that might occur when you
create, build, or run your installation, and sample end-user dialogs.
Frequently Asked Questions Directs you to help topics that answer many commonly asked
questions about InstallShield and project creation.
NOTE Because the InstallShield Help Library is designed to interact with InstallShield, it is
recommended that you open the help from within InstallShield. Copying the help files to another
folder or system causes many of its features to work incorrectly.
For answers to many commonly asked questions and new information about
InstallShield that do not appear in the documentation, visit the Knowledge Base.
Setup Prerequisites
Check for and install any prerequisite applications or system components before your
installation is executed. Choose from our preconfigured setup prerequisites, like VSIP
Interop Assembly, Microsoft SQL Server 2005 Express, Internet Explorer 6.0, and Jet
4.0. You can even choose to deploy a setup prerequisite with your installation or
download it from the Web as needed.
Installer
Operating System and Other Requirements
Engine
Windows Windows 95 or later
Installer 1.1
Windows Windows 95 or later
Installer 1.2
Windows Windows 95 or later
Installer 2.0
Windows Windows 2000 SP3 or later, Windows Server 2003
Installer 3.0
Installer
Operating System and Other Requirements
Engine
Windows Windows 2000 SP3 or later, Windows Server 2003
Installer 3.1
Compact Windows 95 or later
Windows 95 or
Internet Explorer 3.02 or later
later
• Hitachi SH4
• i486
• i586
• i686
• MIPS R2000
• MIPS R3000
• MIPS R4000
• SHx SH3
• SHx SH4
• StrongARM-XScale
Using Help
Macrovision understands the importance of having useful information and help
resources at your fingertips. In addition to the inline help embedded within various
views of the InstallShield interface, InstallShield includes the Help Library (the online
help library that is installed with InstallShield) and HelpNet.
You can access the InstallShield Help Library from the Help menu in InstallShield, by
pressing F1, or by clicking Help buttons in the interface.
No Internet connectivity is required to view the online help. Essentially, the online
help viewer is a tool that you can use to display, search, and filter technical
information based on your personal needs.
Help Conventions
The different types of information within the Help Library are flagged or presented as
described below:
Flag Description
The best practice image appears when instructing
you on the best way to accomplish a task.
BEST PRACTICE
This information is critical to the success of the
desired functionality of the product.
CAUTION
This information applies to a specific edition of a
product.
EDITION
This image is used with information that is essential
for users to read, but it does not carry the same
weight as cautions.
IMPORTANT
This image accompanies Microsoft logo compliance
requirements and recommendations.
LOGO
The note image is used to draw attention to pieces
of information that should stand out.
NOTE
Flag Description
The project-specific image is used to highlight
information that may vary depending on the project
type used.
PROJECT
The procedure graphic indicates procedural or
navigational instructions.
TASK
The information is a tip or hint that could assist you
in better utilizing the desired function or feature.
TIP
On the File menu, click Open. User interface elements are presented in bold
typeface when referenced in tasks.
fileName Information that is variable is presented in italics.
import Code snippets are presented in a monospace
com.installshield.product.*; typeface.
Type $D(install). Text that is to be entered as a literal value is
displayed in a monospace typeface.
My files are located in the File names and directory paths are presented in a
C:\MyDocuments\SampleCode monospace typeface.
directory.
Insert the line LimitedUI=Y into the .ini Text in .ini files is presented in a monospace
file to display only the InstallWelcome typeface.
dialog box when the Windows Installer
package is run.
To apply a transform, enter the following: Command-line statements and parameters are
presented in a monospace typeface.
Setup.exe /
v"TRANSFORMS=\"C:\Transforms\M
y Transform.mst\""
Set the value of the windir environment Environment variables are presented in an italicized,
variable to C:\Windows. monospace typeface.
Create two groups, one called Admins and Examples are presented in a bold typeface.
the other called General.
FeatureAddItem adds a new feature to a Functions are presented in presented in a bold
script-created feature set. typeface.
In the Name property, enter a name for Properties are presented in a bold, monospace
this custom control that is unique among all typeface.
of the controls in your project.
Flag Description
If you type an incorrect parameter, the Screen output (from a log file or from the console) is
message The system cannot find displayed in a monospace typeface.
the path specified. is displayed.
Company Information
Macrovision Corporation is the market leader in electronic licensing, installation, and
digital rights management (DRM) technologies. Over 50,000 software vendors and
virtually all of the Fortune 1,000 companies use Macrovision’s technologies to
maximize the value of their software. Software Value Management solutions bridge
the gap between pricing and packaging software on the developer side, and purchasing
and managing that software on the enterprise side. Macrovision’s Software
Technologies Group markets the FLEXnet Software Value Management platform,
which includes the InstallShield suite of software installation, repackaging, and
update solutions; these solutions are deployed on more than 500 million desktops
worldwide. Macrovision holds more than 910 software licensing, DRM, and content
protection patents worldwide. Macrovision is headquartered in Santa Clara,
California, and has offices worldwide.
Macrovision Solutions
Maximize the Value of Your Software
Software Value Management is a set of best practices that allows software vendors
and their enterprise customers to maximize the value of the software applications they
create, use, and maintain.
Once an application is developed by the engineering department, publishers use
Software Value Management tools to maximize its revenue potential. These tools
include installers and licensing tools that help publishers flexibly package, price, and
protect their products. Their enterprise customers use Software Value Management
tools to maximize the productivity that they get from the software they purchase.
Knowledge Base
The Knowledge Base is located in the Support section of the Macrovision Web site at
http://www.macrovision.com/support/index.shtml. It contains answers to many
commonly asked questions and includes new information about InstallShield that may
not appear in the documentation. You can use the Knowledge Base search engine to
search articles by phrases, numbers, platforms, and version.
Support Site
In addition to enabling you to search the Knowledge Base, the Macrovision Support
site at http://www.macrovision.com/support/index.shtml enables you to:
• Obtain InstallShield updates.
• Submit InstallShield feedback.
• View webinars.
• Perform InstallShield registration.
• Obtain InstallShield white papers, case studies, marketing materials, and training
materials.
• Obtain object libraries and sample projects.
Online Communities
The online communities are another excellent resource when you have questions
about using InstallShield. In these communities, users like you share tips and ideas
and help each other get the most out of InstallShield. Visit the communities in the
Support section of our Web site, available at http://community.macrovision.com.
United States
Table 2-3: United States Contact Information
Table 2-4: Europe, Middle East, & Africa Contact Information (cont.)
Asia Region
Table 2-5: Macrovision Asia Region Contact Information
InstallShield provides powerful features and time-saving tools that make authoring
reliable Windows Installer and InstallScript installations easy. The InstallShield Help
Library is a resource that will help you harness the full potential of InstallShield. The
help topics you might want to read first depend upon your previous experience with
InstallShield installation-authoring software. The table below directs you to various
topics based on your level of experience.
Installation Fundamentals
An installation, in its simplest terms, is the “package” used to install your files and
programs onto your user’s machine. It is a complete collection of the application files,
as well as logic that interacts with the installer engine. The primary task of any
installation is to transfer the application files from the source medium to the end user’s
computer. The complexities of the Windows operating system make it anything but
simple to create an effective, coherent installation without the aid of a utility such as
InstallShield.
An installation is divided into three levels: products, features, and components. The
following diagram illustrates this hierarchy:
Overview of Installations
Even if you are unaware of what a setup is, chances are you have used one before. If
you have ever installed a product onto your computer, you have seen a setup in action,
from the end user’s perspective. The setup transfers files from the source medium to
your local drive. It also makes the required registry entries, creates shortcuts, and
registers COM servers. Setups commonly gather information about the target machine
and the user.
Create Shortcuts
Shortcuts are links to files and applications that can be created on the end user’s
machine during a setup. Shortcuts are often placed on the desktop or the Start menu of
the target machine to provide quick and easy access to a program or its files.
Application Lifecycle
Your application lifecycle should not end when your customer installs your
application. As a software vendor, the success of your application goes well beyond
the initial installation on the customer’s desktop. Customers expect to have easy
access to product updates, enhancements, and critical information. Your ability to
communicate with your customers and monitor the health of your application is vital
to your ongoing growth and profitability.
Too often, software vendors require their customers to initiate communication.
Vendors who are not proactively creating an ongoing dialog are missing a tremendous
opportunity. Unless the customer is an active visitor to your Web site or public user
communities, they miss important information about updates, upgrades, hot fixes, and
general technical bulletins. You miss revenue and service opportunities.
The above diagram illustrates how the Update Service is used to manage the
application lifecycle:
1. Create Install—InstallShield makes it easy for software developers to create
installations that run on any platform.
2. Run Install—Installations created with InstallShield technology have
successfully installed on over 400 million machines worldwide.
3. Create Update—InstallShield enables software developers to rapidly build
patches and updates.
4. Notify User—The Update Service notifies every user that a new update is ready
to be installed.
5. Download & Install—The Update Service downloads the update and installs it in
one seamless, integrated process.
6. View Reporting—The Update Service provides immediate feedback on the
update’s adoption rate.
Starting InstallShield
Each time you open InstallShield, you are taken directly to the InstallShield Start
Page. The Start Page provides quick access to product information, to recently opened
projects, and to InstallShield resources.
Project Tasks
Click a project task to quickly create a new project, open an existing project, or
browse to one of the sample projects included with the InstallShield installation.
Help Topics
Frequently accessed help topics are listed in this section. To access the entire
InstallShield Help Library from the Start Page, press F1 or click the Help Library link
in the Resources section.
Resources
The Resources section contains a number of links to connect you to helpful
InstallShield information and Macrovision’s responsive customer support.
Contact Us
To provide feedback about InstallShield or join our Customer Experience
Improvement Program, click one of the links listed here.
Project Types
InstallShield offers a number of different project types to assist you in creating the
optimal project for your end users.
• Express Project—An Express project uses Windows Installer to provide the user
interface for the installation. When you choose this project type, you need to
create features and specify all application files and other distributable data.
• Visual Basic 6.0 Wizard—Select this option to launch the Visual Basic Wizard.
• QuickPatch Project—This project type is recommended for installation authors
who want to ship small, single updates to their end users. Creation of a
QuickPatch begins with the Create New QuickPatch Wizard.
• Visual Basic .NET Wizard—Select this option to launch the Visual Studio .NET
Wizard for Visual Basic .NET, Visual C++ .NET, and C# .NET.
• Visual C++ .NET Wizard—Select this option to launch the Visual Studio .NET
Wizard for Visual Basic .NET, Visual C++ .NET, and C# .NET.
• C# .NET Wizard—Select this option to launch the Visual Studio .NET Wizard
for Visual Basic .NET, Visual C++ .NET, and C# .NET.
• Compact Project—A Compact project uses a special small installer engine to
provide the user interface for an installation. When you choose this project type,
you need to create features and specify all application files and other distributable
data. Although Compact installation projects have some limitations—for
example, English is the only language available for the end user interface—they
enable you to create a very small executable file (Setup.exe) that you can
distribute to end users. This Setup.exe file is a compressed, self-extracting file
that contains all of the application files, as well as the Compact installer engine
developed by Macrovision Corporation.
• Smart Device Setup Wizard—The Smart Device Setup Wizard guides you
through the process of creating installations for smart devices.
Express Projects
Express is the standard project type for creating installations in InstallShield. Express
projects use the Windows Installer service to drive the entire installation. The flow of
your installation’s user interface (UI) is authored directly in the .msi package, and the
Windows Installer service uses its native user interface rendering capabilities to
display the UI to your end users.
QuickPatch Projects
A QuickPatch project is a specific type of project recommended for installation
authors who want to ship small, single updates to their users. Changes that are more
extensive such as adding custom actions and changing .ini data typically require a
standard patch.
QuickPatch authoring provides a simple alternative to creating a patch configuration
in the Patch Design view, even though it provides less customization. Fundamentally,
both patch creation methods produce the same deliverable types: .msp and .exe files.
With a QuickPatch, you can do any of the following:
• Add new files to the original installation or an earlier QuickPatch.
• Delete files in the original installation.
• Delete files that were added with a previous QuickPatch.
• Perform the same set of above operations on registry entries.
• Remove custom actions that were included with the original installation but that
do not apply to the current QuickPatch project.
The creation of a QuickPatch project always begins with the Create New QuickPatch
Wizard. Completing the wizard ensures that all basic requirements for the QuickPatch
project are met. Then you can configure project settings once it opens in InstallShield.
Mobile technology at their core, they all have different requirements for software
development and installation.
PROJECT The Smart Device project type should be used only for straight-to-device installations that do not
use ActiveSync or any other desktop component.
• Create an installation that will be installed directly to the device without being
installed to a desktop computer first—for example, software installed from a
storage card, such as a Compact Flash or Secure Digital card.
• Create an installation where you want only the .cab files that can then be installed
to the smart device.
InstallShield
TASK To run the Smart Device Setup Wizard from within InstallShield:
1. On the File menu, click New. The New Project dialog box opens.
2. On the Mobile tab, select the Smart Device Setup Wizard project type.
3. Enter a project name and location, and click OK. The Smart Device Setup Wizard
opens.
TASK To run the Smart Device Setup Wizard from within Visual Studio .NET 2003:
1. After creating a smart device solution in Visual Studio .NET, right-click the root
of the Solution Explorer, point to Add, and select New Project. The Add New
Project dialog box opens.
2. In the project types list, select the Smart Device Setup Project from the
InstallShield Projects group. The Smart Device Setup Wizard opens.
In either case, the .cab file required to install your application is placed in the root of
the build image. If you chose to redistribute the .NET Compact Framework, create an
Autorun.exe file, or include native code, folders for each processor-platform
combination are created. These folders contain the appropriate .cab files and/or
executable files for that particular processor/operating system ID. This exact folder
structure should be copied to your storage card in order for the auto-run mechanism to
work.
Using Projects
InstallShield allows you to create, edit, upgrade, and save numerous project types—
from installation projects to InstallShield object projects that allow you to reuse
functionality within InstallShield.
The pages in this section cover a variety of topics, including how to create a particular
project type, how to save projects, and related information.
• Click the New Project button on the toolbar or on the Start Page.
• Press Ctrl+N.
• On the File menu, click New.
Any of these steps launches the New Project dialog box, where you can select the
project that you want to create. If you select an installation project in the New Project
dialog box, the Project Assistant launches to help you create your project.
Opening Projects
1. On the File menu, click Open. The Open InstallShield Express Project dialog
box opens.
2. In the Files of type list, select the type of project that you would like to open.
3. Select the project file that you would like to open.
4. Click Open to begin migrating this project.
Saving Projects
When you create a new project, it is saved automatically with the name and location
that you provide in the New Project dialog box.
InstallShield enables you to save a copy of the open project as a new project with a
different name and location.
1. On the File menu, click Save As. The Save As dialog box opens.
2. In the Save in box, select the appropriate location.
NOTE When you save a project with external dependencies, your new project points to the original
copies of these files. Duplicate copies are not made. Therefore, before you delete your original
project, ensure that you do not delete any files that may be used by the new project.
1. On the Tools menu, click Options. The Options dialog box opens.
2. In the Project Location box, enter a new path or click Browse to find the
appropriate location.
3. Click OK.
The default location for all new projects that you create with InstallShield is the one
that you specified. Although this folder is used for all new projects, any existing
projects remain in the previous location.
Converting Projects
GUIDs
GUID stands for Globally Unique Identifier. A GUID is 128 bits long, and the
algorithm used to generate a GUID guarantees each GUID to be unique. Because
GUIDs are guaranteed to be unique, they can be used to identify COM classes,
Product Codes, and various other codes.
For example, after a product is installed, a key is created under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Unin
stall and is named after the installation’s Product Code. At one time, this key was
named after the Product Name. However, this caused a potential conflict. If two
installations were installed on the same machine, and both shared the same Product
Name, they would also share the same registry key. Because a GUID is now used, it
guarantees that this conflict does not occur.
An example GUID is {5D607F6A-AF48-4003-AFA8-69E019A4496F}. Any letters
in a GUID must be in uppercase.
For information on when you need to change GUIDs in your project, see Updating the
Package Code, the Product Version, and the Product Code.
Globalization
You can create an installation that runs in a particular language; that is, the run-time
dialogs that appear during installation contain text in the specified language.
Creating an installation for one language is the first step in completing your
installation project when you plan on distributing your installation in a number of
different languages. When you create your project, you can select one of the supported
languages from the Project Language list on the New Project dialog box. Your
selection determines the language in which all of your installation’s run-time dialogs
appear.
You can create different installation projects for each language in which you want to
distribute your application. If you plan to distribute your installation in both English
and German, for example, you can create two different installation projects—one in
which you select English as the project language and one in which you select German
as the project language.
If you want your installation to appear in a different language, you can export the
string table entries, translate the strings, and then import them back into your project.
NOTE You cannot change the language after you have created your project, except by exporting and
importing the string table entries for translation.
After you have created your project, you can edit the text that appears in the run-time
dialogs in the Text and Messages view.
Supported Languages
InstallShield currently provides support for the following languages:
• Basque
• Bulgarian
• Catalan
• Chinese (Simplified)
• Chinese (Traditional)
• Croatian
• Czech
• Danish
• Dutch
• English
• Finnish
• French (Canada)
• French (France)
• German
• Greek
• Hungarian
• Indonesian
• Italian
• Japanese
• Korean
• Norwegian
• Polish
• Portuguese (Brazil)
• Portuguese (Portugal)
• Romanian
• Russian
• Serbian (Cyrillic)
• Slovak
• Slovenian
• Spanish
• Swedish
• Thai
• Turkish
EDITION The Express project type available in InstallShield supports only one language per installation
project. If you want to create an installation that runs in more than one language, it is
recommended that you upgrade to the Premier edition of InstallShield; this edition has built-in
support for creating projects that run in more than one language. It also offers granular control
at both build time and run time over which files are installed based on the language.
Language Identifiers
Throughout InstallShield, you must refer to specific languages by their language
identifiers, or LCIDs. The identifier is an integer value that identifies a specific
language. The language ID is more commonly given as a hexadecimal value, but you
must specify the decimal version for Windows Installer.
Language Identifier
Basque 1069
Bulgarian 1026
Catalan 1027
Chinese (Simplified) 2052
Chinese (Traditional) 1028
Croatian 1050
Czech 1029
Danish 1030
Dutch 1043
English 1033
Finnish 1035
French (Canada) 3084
French (France) 1036
German 1031
Greek 1032
Hungarian 1038
Indonesian 1057
Language Identifier
Italian 1040
Japanese 1041
Korean 1042
Norwegian 1044
Polish 1045
Portuguese (Brazil) 1046
Portuguese (Portugal) 2070
Romanian 1048
Russian 1049
Serbian (Cyrillic) 3098
Slovak 1051
Slovenian 1060
Spanish 1034
Swedish 1053
Thai 1054
Turkish 1055
Sample Files
Some sample files are included with the InstallShield installation. These files are
stored in the Samples folders in the following location by default:
C:\Program Files\IS11.5 Express\Samples
These files are used in conjunction with the tutorials that are available in the
InstallShield Help Library.
Project Assistant
InstallShield includes a Project Assistant to help you quickly and easily build a basic
installation project. The Project Assistant provides a framework of installation project
tasks to guide you through the project creation process and provides pertinent
information along the way.
TASK To navigate from one page of the Project Assistant to another, do one of the following:
• To navigate directly to a specific page, click the appropriate icon in the navigation
bar at the bottom of the page.
• To follow the Project Assistant steps sequentially, do one of the following:
» Click the Next or Back arrow buttons to move forward or backward.
» Press CTRL+TAB to move to the next page and CTRL+SHIFT+TAB to move
to the previous page.
• To move back to the Home page and view the Installation Design Diagram, click
the Home button on the navigation bar.
NOTE The Installation Designer and the Project Assistant run simultaneously. Any changes you make in
one are reflected instantly in the other.
The check mark next to the Project Assistant command is removed, and the Project
Assistant is hidden.
The Project Assistant remains hidden until it is selected in the View menu. When you
create a new project and the Project Assistant command does not have a check mark,
the Installation Designer becomes the default tab.
NOTE Features can contain subfeatures, subsubfeatures, and so forth, to as many levels as your
installation program requires.
5. To add another feature at the same level, click the Installation Architecture
explorer and then click New. To create a subfeature, click the feature that you
want to be the parent feature, and then click New. The Project Assistant creates
the new feature.
6. Continue adding features and subfeatures as needed.
Default Features
The default feature concept exists only in the Project Assistant. All resources (for
example, files or registry data) that are added to an installation project need to be
associated with a feature. If a resource is not associated with a feature, it is not
installed to the target system at run time.
Using a default feature simplifies the authoring experience in the Project Assistant.
You do not need to worry about associating project resources with a feature to ensure
that they are installed. When you add registry data, create new shortcuts, or add files
when All Application Data is selected, all of these resources are added to the default
feature. This ensures that all of the project resources you add in the Project Assistant
will be installed to the target system when an end user runs your installation.
3. For the new folder’s name, type the drive in which the destination is located—for
example, C:.
4. Beneath the drive letter folder, further define the destination path by adding
subfolders.
TIP To hide predefined folders, deselect them in the list of predefined folders.
File Extensions
File name–extension associations, or file associations, are registry settings that tell
Windows what application to use to open files of a certain type. For example,
Windows typically opens text files (files with the .txt extension) with Windows
Notepad and opens bitmap files (files with the .bmp extension) with Microsoft Paint.
A file extension allows someone to identify the type of file without accessing the file.
A suffix (.abc) is appended to the file name. The file extension is also useful because
another application can recognize whether the application can work with the file (for
example, open the file or modify it), based on the extension.
In InstallShield, you can register your own file extensions in the File Extensions view.
Registering your file extension instructs the target machine’s operating system to use
your application to open files with your file extension when an end user opens a file.
On the Application Shortcuts page, in the Other Options area, click File
Extensions. The File Extensions view opens.
5. Right-click the key, select New, and point to the appropriate command. You can
pick Default Value, String Value, Binary Value, DWORD Value, Multi-String
Value, or Expandable String Value, depending on the type of data you want to
register.
TASK To associate registry data with a feature other than the default feature:
At run time, the value of [INSTALLDIR] is replaced with the installation directory.
Application Paths
The application path registry key contains data that Windows uses as a private search
path for the specified application’s .dll files. If you install an application’s .dll files
into a directory not found in the PATH environment variable (and not into the
application’s directory), you should set the appropriate application path to include the
.dll file directory during installation. Application path information is stored in the
registry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App
Paths\AppName.exe.
4. Do you want users to be able to selectively install only certain parts of your
application?—Select Yes to allow end users to select which parts of the
application they want to install. See Creating Selectively Installable Installations
for more information.
5. Do you want to give users the option to launch your application when the
installation completes?—Select Yes and browse to your application file. When
this option is set to Yes, the final dialog in the installation presents a check box
that allows end users to immediately launch your application upon clicking the
Finish button.
TIP To add a custom graphic to your installation dialogs, click the link in the More Options section of
this page to launch the Dialog Images dialog box.
License Agreements
To install your application, end users must agree to abide by certain legal
requirements. For example, most software vendors do not allow users to copy or
distribute their software to others.
To ensure that the end user understands the legal requirements associated with
installing your software, your installation can present an End-User License Agreement
(EULA) in the License Agreement dialog during run time. The EULA is a legal
contract between you and the end user, with regard to the use of your software.
The License Agreement dialog displays your license agreement text and contains Yes
and No options. If the end user does not agree to accept the EULA, your software is
not installed and the installation terminates.
TASK To add a License Agreement dialog to your project in the Project Assistant:
3. Type the path to your license agreement file or browse to the file. The file must be
a rich text format (.rtf) file.
The Output window opens; it displays information about the progress of the build. The
build is finished when the Output tab displays the log file information.
1. Click the Installation Designer tab at the top of the InstallShield interface.
2. Do one of the following to display the View List:
» On the View menu, click View List. The View List appears on the left side of
the InstallShield interface.
» Click the toolbar’s View List button.
» Press F4 to hide or show the View List.
1. Click the Installation Designer tab. The View List is displayed along the left side
of the IDE. If the View List is not displayed, see Displaying the View List.
2. In the View List, select the view you want to open. To see all available views,
expand the View List folders.
1. Right-click a toolbar and select the toolbar that you want to be displayed or
hidden.
2. On the Tools menu, click Customize. The Customize dialog box opens. Select
the check box for each toolbar that you want to be displayed. Clear the check box
for each toolbar that you want to be hidden.
• On the Tools menu, click Customize. The Customize dialog box opens.
• Select or clear the Show tooltips check box depending on whether or not you
want to display tooltips.
TIP To create your own custom toolbar, drag the button or menu to the empty gray area near the
toolbars.
TIP To create a custom toolbar, drag the button or menu from the Buttons box to an empty gray
area near the existing toolbars.
1. On the Tools menu, click Customize. The Customize dialog box opens.
2. Click New. The New Toolbar dialog box opens.
3. Type a descriptive name for the toolbar in the Toolbar name text box, and click
OK.
4. Customize the new toolbar by adding menus or buttons.
TIP Another way to create a custom toolbar is to drag a button or menu from the Buttons box to the
empty gray area near the existing toolbars. The new toolbar is listed in the Toolbars tab and
given a default name. To change the name, modify the text in the Toolbar name text box.
the vast underlying technical differences between older versions and the current
version, the migration process does not always produce a one-to-one correlation
between what was in your old project and what makes it into the new project. For
example, InstallShield objects, which existed in earlier versions of InstallShield
Express, have since been replaced by merge modules. In some cases, what may have
been two objects in your old project could be replaced by a single merge module in
your new project.
Installation projects created with InstallShield Express 2.0 and later can be migrated to
this version. Those projects still in InstallShield Express 1.x format can be migrated as
well; however much less information may be transferred to your new installation
project.
IMPORTANT In order to successfully migrate your InstallShield Express 2.x projects to the latest version, use
a system or machine that successfully builds your old project file. For example, if you install the
latest version of InstallShield on a Windows 98 machine and try to migrate an InstallShield
Express 2.x project built on a Windows NT machine, the migration fails. The best way to avoid
this problem is to simply install the latest version of InstallShield onto the same machine as your
earlier version. These two applications can coexist.
Migration Specifics
There are many technical differences between the current version of InstallShield and
those prior to InstallShield Express 3.0. InstallShield Express 2.x is based upon
traditional setup architecture, where an executable file called Setup.exe is created.
This executable contains all the logic necessary to perform your installation. In the
current version of InstallShield, the output file is or contains a relational database
(.msi) containing all the needed information to interact with the Windows Installer
service. Due to these vast differences, there may be aspects of your earlier
InstallShield project that do not fit into the current architecture. Additionally, there
will be gaps in the new project created as a result of the migration. These missing
pieces must be filled in before you can build and distribute your setup.
Project Types
In previous versions of InstallShield, when creating a new setup project you were
prompted to select a project type, such as Access 97. The current version of
InstallShield has no equivalent for project types. The type of project you create
depends upon the files you add to your setup and the system changes you make. All
the information gathered from selecting a certain project type is migrated to your new
InstallShield project. For example, if you selected the Access 97 project type in an
earlier version of InstallShield, the Access 97 merge module is added to your new
InstallShield project during migration.
Setup Types
Setup types provide similar functionality in the current version of InstallShield as they
did in earlier versions. The major difference between the two is the fact that setup
types used to be based upon components. In the new version of InstallShield,
components do not exist. Instead they have been replaced by features. The setup types
you specified in your old InstallShield Express project are re-created in the new
InstallShield. To learn more, see Working with Setup Types
InstallShield Objects
InstallShield objects have been replaced with merge modules. If a merge module that
can supply the functionality provided by the object you used in your project exists,
that module is added to your setup. If your setup includes a file that is also included in
a merge module, the module is added to your setup rather than your single file. One
exception to this rule is if the module needed by your setup requires customization,
such as the Access 97 merge module. This module is not added to your setup during
migration due to the customization it requires. The same holds true for the Access
2000/2002/2003 and BDE merge modules. If no module exists that provides the same
functionality as the object you used in earlier versions, add the necessary files by
hand.
To learn more, see Including Redistributables in Your Installation.
InstallShield Extensions
InstallShield extensions have been replaced by custom actions. With custom actions
you can call a function from a DLL or launch an executable. If you had an extension
that performed one of these two tasks, that extension is converted into a custom action
in your new project. For more information, see Using Custom Actions.
Registry Entries
All of the registry data in your old project is added to your new project.
Shortcuts
Shortcuts in the new InstallShield are much more robust than those found in previous
versions. Any shortcuts you had in your old setup are migrated into your new setup
project. However, since there are many more settings for shortcuts in the latest version
of InstallShield, you may want to go to the Shortcuts/Folders view and configure the
settings for each of the shortcuts your project contains, such as the hot key
combination, the icon index, and the working directory. These settings are not
required, however.
For specific details about each of the settings, see Shortcut Settings.
Dialogs
Although the run-time dialogs in the latest version of InstallShield differ in look from
those in earlier versions, they serve similar functions. The Setup Type dialog, for
example, still serves the same purpose it always has: it allows your customers to select
which setup type they want to use. The same dialogs you chose to include in your old
InstallShield Express project are included in your new project.
One major difference between the dialogs in earlier versions of InstallShield Express
and those in the latest version is the use of .rtf files. When linking to a license
agreement or readme file in earlier versions of InstallShield Express, you would use a
text (.txt) file. The latest version of InstallShield requires you to use rich text (.rtf)
files. Your previously created .txt files are converted to .rtf files as part of the
migration process.
Distribution Media
The type of media you selected in previous versions of InstallShield Express is not
migrated into your new InstallShield setup. Select a medium from the list of available
media types in the Build Your Release view. For information about each of the
available types, see Media Types.
If you had previously released your setup on floppy disk, see Building a Release for
Floppy Disk Distribution.
16-bit Setups
Because the Windows Installer service runs only on 32-bit operating systems, your
16-bit setups do not migrate as well as 32-bit setups. All of the files, shortcuts, and
other settings you created for your 16-bit setup are migrated, but any self-registering
16-bit files you include in your setup do not self-register. In reality, since your setup
cannot run on a 16-bit system, there is little reason for you to have 16-bit files
included in the setup.
Languages
InstallShield has built-in support for many languages. If the language of your old
InstallShield Express project matches one of the supported languages, your new
InstallShield setup is created with the run-time strings for that language. For example,
if you have a setup that is localized to French and migrate that setup to the latest
version of InstallShield, all the strings in the new InstallShield project are in French. If
your old InstallShield Express project runs in an unsupported language, the run-time
strings for your new project appear in English. This does not mean, however, that your
setup cannot run in your desired language. You can translate all the run-time strings in
the Text and Messages view.
Customization
Table 3-4: Customization Features and Functionality offered in the Premier and Professional
Editions of InstallShield
Feature Description
Dialog Editor The Dialog Editor allows you to modify the layout of existing end-user
dialogs or create new custom dialogs. Import and export dialogs to
share them across projects. Construct different dialogs for each
language supported in the project. Use the undo/redo capability in the
editor to fine-tune each dialog.
Release Customization Define which project segments to compress, which features to place
on which disk, and which languages to include. Choose to filter
application data based on language to support localization efforts.
Manage Multiple Build versions such as Evaluation, Debug, Standard, and Advanced—
Product Versions from a single project. Allow specific features to be chosen for
inclusion in a release via user-defined flags.
Extensibility
Table 3-5: Extensibility Features and Functionality offered in the Premier and Professional Editions
of InstallShield
Feature Description
InstallScript Custom InstallScript allows you to write and debug custom actions without
Actions leaving InstallShield. Reuse existing InstallScript code to leverage your
investment in previous installations. Calling all other custom action
types is also supported.
Multilingual Use resource strings in the Premier edition of InstallShield for 33
Installations languages. Create one installation that targets all 33 languages. For
additional language support, export all resource strings into a text file,
translate into any language, and reimport.
Merge Module Package pieces of a project for reuse across application installations.
Authoring and Editing Reuse those you create or over 40 included in the product. Edit and
open modules for greater customization.
Export Setup Data Tool Increase efficiency by moving pieces of an existing project (dialogs,
custom actions, or features) to a merge module or another project.
Project Templates Create and manage project outlines that can be used over and over
again, reducing rework and maintaining consistency. InstallShield is
the most powerful and innovative installation authoring product
available.
Feature Description
Automation Interface Use script to add new files, add or delete features, change product
name and upgrade code, change release settings, change summary
information stream items, change release flags, change any property,
initiate the build process, and more.
Patch Creation Patches created with the Premier and Professional editions contain
updates to a previous installation or set of installations on a file-level or
byte-level basis. Distribute on the Internet and save end-user time and
server bandwidth.
Source Code Control Simplify the process of checking projects in and out of your source
Integration code control system and save space when differencing projects. The
SCC integration in the Premier and Professional editions of
InstallShield supports Microsoft Visual SourceSafe, Rational
ClearCase, Merant PVCS, and others, through the Microsoft SCC
Interface.
User Interface Step through the user interface sequence and dialogs of a project,
Debugger while watching variables, to confirm conditional behavior or identify
trouble spots.
Project Validation Use standard Microsoft .cub files to validate both full projects and
merge modules. With the Best Practices Wizard, receive notification of
deviations from setup guidelines and recommendations for changes.
This section contains a tutorial that walks you through the process of creating an
installation using InstallShield. It also contains a tutorial that you can use to learn how
to import a Visual Basic project into your installation.
Tutorial Description
Basic Tutorial Leads you step-by-step through the process of creating a basic installation,
using the InstallShield View List to guide you.
Visual Basic Teaches you how to use the Visual Basic Wizard to import Visual Basic projects
Wizard Tutorial into your InstallShield installation. The wizard scans your project to determine
any file dependencies and displays the results of the scan, showing the files
that can be added to your installation.
This tutorial is designed to walk you through the process of creating a basic
installation, using the InstallShield View List. All of the necessary files are located in
the \Samples\Othello\Data Files subfolder of your main InstallShield Program
File folder.
The basic tutorial consists of the following tasks:
• Create a New Project
• Organize Your Setup
• Specify Application Data
• Configure the Target System
• Customize the Setup Appearance
• Define Setup Requirements and Actions
• Prepare for Release
• Summary
1. Launch InstallShield.
2. On the File menu, click New. The New Project dialog box opens.
3. In the Project Name box, type Othello.ise.
4. In the Project Language box, select English (United States).
5. Click OK.
The InstallShield Installation Development Environment (IDE) opens.
General Information
The General Information view is where you enter information about your application,
from your company’s name to the Web site your customers can access to learn more
about your application.
c. Select Othello.exe.
d. Click Open.
e. Click OK.
7. In the INSTALLDIR field, type [ProgramFilesFolder]Othello.
8. In the Publisher/Product URL, Product Update URL, and Support URL
fields, type the appropriate URLs for your company.
9. In the Publisher field, type your company name
10. Provide the location of the Readme file by doing the following:
a. Click the Readme field, and then click the Browse button (...). The Open
dialog box opens.
c. Select English.txt.
d. Click Open.
Features
The next step in organizing your installation is to create features. These features are
used to install files and data at run time. InstallShield automatically creates one feature
for you: Always Install. This is the only required feature for this project. However,
you need to configure it.
Setup Types
In the Setup Types view, you can configure the setup types that the end user can
choose from during installation. For this installation, you need only one installation
type.
NOTE For this tutorial, you can ignore the remaining views in this step because they are irrelevant to
this project. For your own projects, you may want to explore these views to see if you need to
use them.
Files
Shortcuts/Folders
The Shortcuts/Folders view lets you create application shortcuts on the target system.
NOTE For this tutorial, you can ignore the remaining views in this step because they are irrelevant to
this project. For your own projects, you may want to explore these views to see if you need to
use them.
Dialogs
The Dialogs view lets you select and configure the end-user dialogs that compose the
user interface for your installation. For this tutorial, you can leave the default values
for the Global Dialog Settings properties.
NOTE For this tutorial, you can ignore the remaining views in this step because they are irrelevant to
this project. For your own projects, you may want to explore these views to see if you need to
use them.
Requirements
In the Requirements view, you can define the target system requirements. If these
requirements are not met, your application cannot be installed on the end user’s
system. The Othello application is fairly simple, but it does require a Pentium
processor.
NOTE For this tutorial, you can ignore the remaining views in this step because they are irrelevant to
this project. For your own projects, you may want to explore these views to see if you need to
use them.
As the build begins, the Output window opens at the bottom of the InstallShield
interface to display the progress of the build and any error messages.
When the build process is finished, you can find your installation files in a subfolder
of the folder where your Othello project is located.
TIP Although this tutorial covers building a CD_ROM release, there are several other options for
media types. For example, the WebDeployment type enables you to create an installation that is
specifically designed for deployment over the Web.
6. Click Distribute. InstallShield copies all of the necessary installation files to this
location—if your CD-ROM drive supports direct copying to CD-ROMs.
Summary
Now that you have finished the tutorial, you can apply what you have learned here to
your own installation projects. Most installation projects require the steps and
concepts described in this tutorial.
NOTE This tutorial assists you in understanding how the Visual Basic Wizard works. The application
installed may not work depending on the versions of required files on your system. However, the
process described is the same when using the Visual Basic Wizard for your own projects.
• Summary
1. Launch InstallShield.
2. On the File menu, click New. The New Project dialog box opens.
3. Select the Visual Basic 6.0 Wizard project type.
4. In the Project Name field, type VBWTutorial.ise.
5. In the Project Language box, select English (United States).
6. Click OK. The Visual Basic Wizard opens.
7. Read the information displayed on the first panel of the wizard and click Next.
NOTE In this tutorial, the Visual Basic wizard is launched by creating a new Visual Basic 6.0 project.
You can, however, also launch the Visual Basic Wizard in an existing installation project. To do
so, click the Import Visual Basic Project button in the Dependencies view. When you use this
import method, the wizard scans for all of the files and dependencies and enables you to add
them to your project.
1. Click Browse to navigate to the sample Visual Basic project file called
Alarmclock.vbp located in \Samples\AlarmClock subfolder of your main
InstallShield Program Files folder.
2. If available, select the Rebuild project before scanning check box.
3. Click Next to begin scanning the project.
paying close attention to the features and the destination location of any files that will
be added. If there are duplicate dependency files, InstallShield includes only one copy
of the duplicate files to conserve space.
The table below shows the files added to the installation and their destination
locations:
In addition to the above files, the following merge modules are added to the
installation:
• Microsoft OLE 2.40 for Windows NT and Windows 95 Operating Systems
• Microsoft Standard Data Formatting Object DLL
• Visual Basic Virtual Machine
Select the check boxes for each of the files. Then click Next to implement these
changes. When the wizard makes the changes to the installation project, click Finish
to go to the Static Scanning Wizard.
Property Value
Author John Smith
Subject Alarm Clock
Product Name Alarm Clock
Property Value
INSTALLDIR [ProgramFilesFolder]GamesOnAvon\Alarm Clock
Publisher GamesOnAvon
Creating a Shortcut
Shortcuts give your users easier access to your program. You can create shortcuts on
the Start menu or on the desktop.
Summary
Now that you have finished the tutorial, you can apply what you have learned here to
your own installation projects. Most installation projects that include Visual Basic
projects require the steps and concepts described in this section.
If you have ever installed an application onto your computer, you have seen an
installation in action—from the end user’s perspective. An installation’s primary task
is to transfer files from the source medium to the local drive. An installation often also
displays a user interface to obtain end user selections, configures the target system (for
example, makes any required registry entries and creates shortcuts), and enables
modification or uninstallation of the installed application. Creating an installation
involves performing some or all of the following tasks.
Configure Servers
A server-side installation may need to create and manage new Internet Information
Services (IIS) Web sites or manage COM+ applications and components.
registers an application with the operating system so that it can be easily maintained or
uninstalled.
Much of the information registered in this process is available to the end user through
Add or Remove Programs in the Control Panel (on Windows 2000 and later systems).
For example, technical support contact information, product update information,
product version, and product publisher information are registered in this process.
Format Requirement
The Windows Installer service requires installation packages to be in the Windows
Installer format—a specific, structured storage format. To complement Windows
Installer technology, InstallShield has an intuitive graphical user interface (GUI) to
simplify and automate the process of creating application installations.
Windows features. If you are applying for the logo, your application must use
Windows Installer for its installation and uninstallation programs.
The following requirements list, distilled from the “Designed for Microsoft Windows
XP Application Specification,” discusses the primary installation-related logo
guidelines and explains how you can easily comply with them using InstallShield. For
more information, refer to the Windows Installer help topic Windows Installer and
Logo Requirements.
LOGO This symbol appears throughout the InstallShield Help Library whenever the information relates
to complying with Windows logo guidelines.
EDITION Non-administrator patches cannot be created with InstallShield Express Edition. In order to
create non-administrator patches, you must have InstallShield Premier Edition or InstallShield
Professional Edition.
As you begin creating your installation project, you will need to specify important
installation information at the outset. Installation information can be defined by the
high-level properties and considerations you need to set and determine about the
organization of your installation. This includes specifying product and project
properties and configuring Add or Remove Programs properties.
CAUTION Because the product code uniquely identifies your product, changing the code after distributing
a release of your product is not recommended.
TIP If you want to include an ampersand (&) in your product name, you must use two ampersands
(&&) to display the name properly in end-user dialogs. For example, to display New & Improved
Product, you should enter the product name as New && Improved Product.
LOGO To comply with the Windows XP logo requirements, you must provide Summary Information
Stream data. You can set many of the summary information properties in the General
Information view.
One limitation of using a registry entry to set the value of INSTALLDIR is the fact
that the registry entry must exist on the target system before your installation starts. If
the registry entry cannot be found, INSTALLDIR is set to the last valid value you had
entered for it.
For example, when you first create an installation project, the value of INSTALLDIR
is [ProgramFilesFolder]Your Company Name\Default. If you were to change this
to read from the registry, and the registry entry is not found, INSTALLDIR reverts to
the previous value of [ProgramFilesFolder]Your Company Name\Default.
NOTE The trailing backslash specifies that the final portion of the specifier is the name of a key and not
a value name.
The primary task of an installation is to transfer files from your distribution media to
your end user’s hard drive. In an InstallShield installation, files are organized in a
hierarchy: files are included in features (and optionally subfeatures), and features are
associated with setup types.
At run time, your end user simply selects the setup type—or, if you allow it, the
features and subfeatures—that he or she wishes to install.
A file often relies on functions in other files to perform a task. However, you may not
be aware of all these other files—known as dependencies—when you include your
application’s files in your project. To help you identify dependencies, InstallShield
offers three dependency scanners that automatically add these files to your project.
In addition to including individual files in your project, you can also include
redistributables (merge modules and InstallShield objects), which contain logic and
files needed to install distinct pieces of functionality. For example, to include
Microsoft Visual Basic run-time files in your installation, you can simply associate the
Microsoft Visual Basic Virtual Machine merge module with one of your project’s
features.
Designing Installations
A feature is the smallest separately installable piece of your product from the end
user’s standpoint. Individual features are visible to end users when they select a
Custom setup type during installation.
Features
Features are the building blocks of an application from the end user’s perspective.
Each feature represents a specific piece of functionality for your product—such as the
help files. End users should be able to install and uninstall discrete features of your
product.
For example, an end user with limited hard drive space could elect not to install a
product tutorial. If the user subsequently purchases another computer or frees
resources on an existing one, the previously uninstalled product tutorial could then be
installed.
You should separate your application into features that correspond to functionality of
your application and that can be available in or removed from different setup types.
Setup Types
Setup types enable you to allow your end users to selectively install portions of your
product or all parts of your product. The default setup types are Typical, Minimal, and
Custom.
Setup types are based on features. You select which features you want to associate
with each setup type. Then, when an end user selects a certain setup type, only those
features you associated with that setup type are installed.
Defining Features
A feature is a building block of an application from the end user’s perspective. It
represents a specific capability of your product—such as its help files or a part of a
product suite that can be installed or uninstalled based on the end user’s selections.
Your entire application should be divided into features that perform a specific
purpose. You can define features in the Features view.
A feature should be self-contained, in the sense that a feature should not require
sibling features. For example, a thesaurus feature should not require a dictionary
feature that the end user can choose not to install. However, you can design your
installation to contain subfeatures of a “parent” feature, which allow the end user finer
control over which files and data to install.
Subfeatures are further divisions of a feature. If all features and subfeatures are
visible, your end user can then select which portions of a feature to install in the
Custom Setup dialog.
Although you can create many levels of subfeatures, you should keep the design as
simple as possible for organizational purposes.
Creating Features
Creating Subfeatures
3. Type a name for the subfeature. To rename the subfeature, right-click it and click
Rename.
4. Specify the subfeature’s properties in the property grid.
Feature Advertisement
Windows Installer supports many features of the Windows 2000 and later platforms,
including feature advertisement. This convenience enables any product feature to be
in one of four installation states: locally installed, installed to run from the source,
absent, or advertised.
Feature advertisement is fully supported only on Windows 2000, Windows Me,
Windows XP, and later operating systems, though an updated shell is available for
Windows 95, Windows 98, and Windows NT 4.0. To activate the shell for any of
these platforms, Microsoft’s Internet Explorer 4.01 Service Pack 1 must be installed
with Active Desktop enabled. Advertisement for COM servers is supported only on
Windows 2000 platforms or later.
TIP You can also reorder your features through simple dragging and dropping. Any feature or
subfeature can be moved in this way.
NOTE You cannot create conditions for the Always Install feature.
– Select the check box of the application that must be present on the target
system.
– If the application is not listed, click Create New Requirement. The
System Search Wizard opens, enabling you to create a new condition
based on whether a specified file exists on the target system. The new
condition is created and added to the System Software Requirements
explorer.
5. Click OK.
InstallShield adds the condition to the lower-left pane. If the or operating system
software specified in the condition is not found on the target system, the associated
feature is not installed.
NOTE To provide an accelerator key for your setup type, include an ampersand (&) before a letter in
the name. For example, the name Cu&stom becomes the label Custom, and the end user can
select its option button during setup by pressing the S key. To set the ampersand symbol as an
accelerator key, type &&.
The Setup Type dialog is not included in the run time of the installation; therefore, end
users cannot selectively install only parts of your product.
TASK To access the selected setup type during the run time of an installation, do one of the
following:
• Use the Windows Installer MsiGetProperty function in a new DLL custom action.
• Use the following VBScript code:
' Get the value of the setup type selected
Dim sSetupType
sSetupType= Session.Property("_IsSetupTypeMin")
The _IsSetupTypeMin property contains only the default setup type names—Typical,
Minimal, and Custom. If you rename Minimal in the Setup Types view to
MySetupType and the end user selects the renamed setup type, _IsSetupTypeMin will
contain Minimal and not MySetupType.
Files Explorer
The Files view contains a file explorer that allows you to drag and drop files from
folders on your source machine to folders on the destination machine. The two left
panes in the files explorer contain folders and the two right panes display the files
located within those folders.
6. In the Source computer’s folders pane, navigate to the folder containing the file
you want to add.
7. Select and drag the file you want to add from the Source computer’s files pane to
the Destination computer’s files pane.
TIP If you want to add an entire folder into a destination folder, drag the folder from the Source
computer’s folders window to the destination folder.
NOTE Files that have already been added to projects created with earlier versions of InstallShield
display the absolute path in the Link To column. To display the path variable, you need to delete
the file and re-add it to the project.
Option Description
Add Adds the folder, subfolders, and/or files selected. This is the
same as the default drag-and-drop behavior.
Add Preserving Source Adds the selected folder, subfolders, and/or files while
Structure preserving the file/folder structure found on the source
computer.
This command is available only if the source folder matches
a predefined Windows destination folder. In addition, the
destination on which you drop the file/folder must be the
Destination Computer in the Destination computer’s folders
pane.
Add Folder(s) Only Adds only the folders selected and any subfolders contained
in the selected folder. Does not add any files contained
within the selected folders or subfolders.
Add Folder(s) Only Preserving Adds only the folders selected and any subfolders contained
Source Structure in the selected folder. Does not add any files contained
within the selected folders or subfolders. This option also
preserves the folder structure found on the source
computer.
This command is available only if the source folder matches
a predefined Windows destination folder. In addition, the
destination on which you drop the file/folder must be the
Destination Computer in the Destination computer’s folders
pane.
Cancel Ends the drag-and-drop operation without making any
changes.
TASK To specify folders and subfolders beneath a drive letter folder to create a hard-coded
destination path:
1. Right-click the drive folder (for example, C:) under which you want to add a
folder or the folder under which you want to add a subfolder and then click Add.
InstallShield add a new folder, and the folder name is selected for editing.
2. Type the folder name.
3. Press ENTER.
Merge Modules
A merge module (or .msm file) contains all of the logic and files needed to install
distinct pieces of functionality. For example, many applications require Microsoft
Visual Basic run-time .dll files. Instead of having to include the file in a feature and
figure out its installation requirements, you can simply attach the Visual Basic Virtual
Machine merge module to one of your project’s features.
NOTE Many of the merge modules included in the Redistributables view are authored by Microsoft or
another third party. InstallShield distributes these modules as a courtesy to assist you in
creating your installation project. However, InstallShield cannot modify or fix any problems that
may exist within third party–authored modules. You are encouraged to contact the vendor
regarding issues with specific third party–authored modules.
Objects
Like merge modules, objects contain logic and files needed to install distinct pieces of
functionality. Some objects, such as the Microsoft Access object included with
InstallShield, require customization through a wizard. As soon as you add such an
object to your installation, its customization wizard opens. You can either customize
your object at the time you add it, or cancel the wizard and customize your object later
by right-clicking the object and selecting Change Objects Settings.
Setup Prerequisites
A setup prerequisite is a base application or component that must be installed on the
target machine before your application can be installed. Including setup prerequisites
in your project enables you to chain multiple .msi files together into a single
Setup.exe file, bypassing the Windows Installer limitation that enables only one .msi
file to be executed at a time. If your installation is Web based, you can configure the
EDITION InstallShield Premier Edition and InstallShield Express Edition include the Setup Prerequisite
Editor, which enables you to modify and create setup prerequisites.
NOTE To see information about an object or merge module, such as files it installs and other actions it
performs, select the object or merge module name. The information is displayed in the pane on
the right.
TASK To launch the Access 97 Object Wizard and configure an Access application:
TASK To launch the Access 2000/2002/2003 Object Wizard and configure an Access
application:
InstallShield uses Crystal Reports 8 Object Wizard, the Crystal Reports 8.5 Object
Wizard, and the Crystal Reports 8.5 Service Pack 3 Object Wizard to assist you in
determining the files needed for your application, depending on your database type,
export formats, and other functionality. Based on your selections, InstallShield
includes only the merge modules you need, rather than every possible redistributable
Crystal Reports file, decreasing the size of your installation.
TASK To install the MSDE 2000 merge module for another language:
• SHARED.MSM
• SQLAGENT.MSM
• SQLBASE.MSM
• SQLSVR.MSM
• TOOLS.MSM
• UPGRADE.MSM
• DMO_RES.MSM
• DTS_RES.MSM
• REPL_RES.MSM
• SEM_RES.MSM
• SQLAGENT_RES.MSM
• SQLBASE.MSM
• SQLSVR_RES.MSM
• TOOLS_RES.MSM
CAUTION Follow these guidelines when installing MSDE 2000 for another language:
• Do not delete the English-specific merge modules that the MSDE 2000 Object Wizard
places in Modules\i386\0409. All of Microsoft’s non-.res merge modules depend on the
English version of the corresponding .res merge module. For example, the Italian
REPL.MSM has a dependency on the English REPL_RES.MSM. A setup that does not
contain the English REPL_RES.MSM might install correctly, but it will trigger build errors.
• Do not use more than one set of MSDE 2000 modules at a time. They are not designed to
support more than one language at a time.
To see information about a setup prerequisite, such as the files it installs, select the
prerequisite name. The information is displayed in the pane on the right.
NOTE If Needs to be downloaded is specified in the Location column for the setup prerequisite
that you added to your project, that prerequisite is not installed on your computer. You can
download the prerequisite from the Internet to your computer if you would like to include it in
your project. If you build a release without first downloading one or more required prerequisites,
and if you specify that the prerequisites should be extracted from Setup.exe or copied from
the source media (instead of being downloaded from the Web to the end user’s computer), one
or more build errors may be generated. To eliminate the build errors, remove the prerequisite
from your project, download it to your computer, or change the setup prerequisites location for
the release to the download option; then rebuild the release.
TASK To modify the configuration of any object or merge module after you have included it in
your project:
Redistributables view, and they are available for download to your computer. The
check box list in the Redistributables view shows the name, version, and type of each
redistributable. It also contains a column that specifies whether the redistributable
needs to be downloaded from the Internet to your machine.
In addition, a newer version of a redistributable that you have on your computer may
be available for download.
You can identify the status of a redistributable by its icon. Following is a list of the
possible icons and a description of each:
Icon Description
This object is installed on your computer.
This setup prerequisite is not installed on your computer but it is available for
download.
TIP If you add to your installation project an object or merge module that is not installed on your
computer, a build error is generated when you build your project. To eliminate the build error,
either remove the redistributable from your project or download it before rebuilding your
release. If a redistributable is not installed on your computer, Needs to be downloaded is
specified in the Location column for that redistributable.
Merge Modules
Merge modules are available from a variety of sources. Although InstallShield
includes many redistributable modules, new versions may be available or other
software developers may have released a module that you need.
The source of the merge module files listed in the Redistributables view is the folder
or folders specified on the Merge Modules tab of the Options dialog box. To access
the Options dialog box, on the Tools menu, click Options.
The following directory is the default location for the modules that come with
InstallShield:
InstallShield Program Files Folder\Modules\i386
Objects
InstallShield provides many redistributable objects. Furthermore, you may want to
add to your projects the objects that other developers created.
The default location for the objects that come with InstallShield is:
InstallShield Program Files Folder\Objects
The objects that are included in the above location are listed in the Redistributables
view.
Setup Prerequisites
Several setup prerequisites are available in InstallShield. All setup prerequisite (.prq)
files are stored in the following location:
InstallShield Program Files Folder\SetupPrerequisites
3. Right-click the merge module or object that you would like to download and then
click Download Selected Item.
TASK To download all of the merge modules, objects, and setup prerequisites that are needed
for your installation project:
When you browse to a new module, the module’s folder is added to the list of paths in
the Merge Module Locations box on the Merge Module Options tab of the Options
dialog box. Therefore, all of the modules in that folder are added to the gallery the
next time you enter the wizard or restart the user interface.
Because of the way InstallShield uses the Merge Module Locations box to search, it is
not possible to predict which merge module will be included.
• Using Windows Explorer, copy the merge module you want into one of the
folders that is already listed in the Merge Module Locations box.
• Remove the default folders from the search path so that you are referencing only
the shared location.
NOTE If you delete a merge module that is currently associated with your installation, the message
[Merge Module Not Found] is displayed to inform you that the module cannot be included
in your installation.
1. Close InstallShield.
2. Using Windows Explorer, locate and delete the setup prerequisite that you want to
remove from the gallery. Setup prerequisites are located in the following
directory:
InstallShield Program Files Folder\SetupPrerequisites
3. Launch InstallShield.
The modifications made are reflected in the Redistributables view.
Module Dependencies
When a module is created, dependencies are set for it. This means that a module will
not work if you do not include its dependencies as well. InstallShield automatically
associates a module’s dependencies with your installation project if they are stored in
your local redistributables gallery. If those modules cannot be found, you need to
obtain a copy of each and associate them with your installation project in the
Redistributables view.
Module Exclusions
Some modules do not operate correctly in the presence of certain other modules. If
this is the case, the module’s author should list them as exclusions and they should
appear in the description window of the Redistributables view. If your newly
associated module has exclusions, and those excluded modules have already been
associated with your installation, InstallShield silently removes any reference to them
in your installation.
CAUTION Any excluded modules that are added to the installation after the excluding module has been
added will not be removed; in addition, you will not receive any warning that they are
incompatible.
Setup Prerequisites
InstallShield provides several third-party redistributables that you can incorporate into
your project as setup prerequisites. A setup prerequisite is a base application or
component that must be installed on the target machine before your application can be
installed. If you include more than one setup prerequisite in an installation, you can
specify the order in which the prerequisites should be installed. Some examples of
setup prerequisites are Java Runtime Environment (JRE), Jet 4.0, and Windows
Management Instrumentation (WMI).
Including setup prerequisites in your project enables you to chain multiple .msi files
together into a single Setup.exe file, bypassing the Windows Installer limitation that
enables only one .msi file to be executed at a time. The Redistributables view is where
you add setup prerequisites to your project.
When InstallShield builds a Setup.exe file for a project that does not include any
prerequisites, it starts with the base Setup.exe file stored in the following location:
InstallShield Program Files Folder\redist\Language Independent\i386
However, when InstallShield builds a Setup.exe file for a project that includes
prerequisites, the aforementioned Setup.exe file cannot be used as the base because it
does not have the capability of including prerequisites. A slightly larger file called
SetupPrereq.exe is used instead. This base SetupPrereq.exe file is located in the
same directory as the base Setup.exe file. Since two different base files—Setup.exe
and SetupPrereq.exe—are used, only installation authors who are actually including
prerequisites in their projects incur the additional size overhead in the final, built
Setup.exe file that is distributed to end users.
EDITION InstallShield Premier Edition and InstallShield Professional Edition enable you to configure a
setup prerequisite so that it is installed either before or after any installation of the Windows
Installer engine and the .NET Framework (Dotnetfx.exe).
TASK To specify the order in which the setup prerequisites should be installed on the target
machine:
TASK To specify where the setup prerequisites should be located for a release, do one of the
following:
NOTE If you build a release that includes setup prerequisites and both of the following are true, one or
more build errors may be generated:
• You specify for the setup prerequisite location that the prerequisite should be extracted
from Setup.exe or copied from the source media (instead of being downloaded from the
Web to the end user’s computer).
• The prerequisite files are not on your computer.
To eliminate the build errors, remove the prerequisite from your project, download the
prerequisite from the Internet to your computer, or change the setup prerequisites
location for the release to the download option; then rebuild the release.
Scanner Function
Static Scanner Looks at portable executable (.exe, .ocx, .com, .tlb,
.hlp, and .chm) files in your project and checks for any
dependencies that they may require.
Scanner Function
Dynamic Scanner Monitors your system while an executable file is
running and then adds to your project any .dll or .ocx
files that are required by the application.
Import Visual Basic Project Scans your Visual Basic project for all dependencies
and adds them to your installation project.
If you use the Static Scanner or the Dynamic Scanner, you can specify files that you
want to be included or excluded automatically any time that you perform a static or
dynamic scan through InstallShield. For more information, see Filtering Files in the
Dependency Scanners.
Dynamic Scanning
The Dynamic Scanning Wizard is an easy-to-use tool that helps you add an executable
file’s dependency files to your installation project. This wizard scans a running
executable file for all .dll and .ocx dependency files that it may have and
automatically adds them to your project. The executable file you want to scan can
already be included to your project, or it can be added by the wizard.
To launch the Dynamic Scanning Wizard, open the Dependencies view. Then, click
the Perform Dynamic Scanning button.
Static Scanning
The Static Scanning Wizard enables you to scan the files already added to your project
for any dependencies they may require. This wizard scans all .exe, .dll, .ocx, .sys,
.com, .drv, .scr, and .cpl files in your project and adds any dependencies it detects to
your project.
The new files added to your project are added to the same feature as the file that
depends upon them, thereby ensuring that they are installed when needed.
To launch the Static Scanning Wizard, open the Dependencies view. Then, click the
Perform Static Scanning button.
The Userscan.ini file enables you to specify any files you want the wizard to ignore.
You can also instruct the wizard to include common system files that are normally
ignored during scanning.
TASK To filter files using an .ini file in either the Static Scanning Wizard or Dynamic Scanning
Wizard:
SomeFile.dll = 1
AnotherFile.dll = 1
Any files appearing in this section will not be added to your installation by the
project scanner.
3. In the [Do Not Filer] section, include files that are excluded in the Iswiscan.ini
file. This file lists common system files that are present on all Windows machines.
However, if you need to include one of these files in your installation, you can
override the settings in Iswiscan.ini by placing that file in the [Do Not Filter]
section of Userscan.ini.
Enter the name of the file in the following format (the name of the file followed by
an equal sign and then the number 1):
[Do Not Filter]
MyFile.dll = 1
Note that if you want to recompile the Visual Basic project, Visual Basic must be
installed on your system.
NOTE Visual Basic Group (VBG) file scanning is not supported in the current version of InstallShield.
1. On the Project menu, click Visual Basic 6.0 Wizard. The Visual Basic Wizard
opens.
2. Complete the panels in the wizard to import the project.
IMPORTANT Some applications, like WinRunner, insert hook .dll files into the COM extraction engine. This
causes COM extraction to fail and displays the following message: “ISRegSpy detects following
module %1 hooked into this process, which causes ISRegSpy to malfunction. You need to shut
the application down and restart COM extraction.” If you encounter this message, shut down the
application and restart COM extraction, as the dialog box instructs.
Do not select the self-registering property for .exe files that are not self-registering. To self-
register an .exe file, you need to launch the .exe file with the /regserver command. However,
if the .exe file does not support the command-line switch, the .exe file will be launched during
extraction at build time.
1. Right-click DIM References in the explorer, and click New DIM Reference.
2. Review or update the writable settings in the General, Variables, Meta Info,
Data, and Dependencies tabs associated with the DIM reference.
Every installation changes the target system in some way. The simplest installations
might only copy files. More in-depth installations make registry changes, create file
associations, edit .ini files, or create shortcuts. InstallShield provides the System
Configuration view for making the following advanced configurations.
Registry
In the Registry view, you can create registry entries or import existing registry data
into your installation.
Compact projects do not include this view.
File Associations
Use the File Extensions view to create an association between your application and a
specific file type. For example, all Windows operating systems launch Notepad.exe
when a text (.txt) file is opened.
Compact, QuickPatch, and Smart Device projects do not include the Shortcuts/Folders
view.
Environment Variables
If you need to create, modify, or remove environment variables from the target
system, you can define their properties in the Environment Variables view.
Compact, QuickPatch, and Smart Device projects do not include this view.
Shortcut Locations
The Shortcuts/Folders view contains a set of predefined destination folders under
which you can create shortcuts and subfolders.
You can access additional folders in this view by right-clicking the Shortcuts explorer,
pointing to Show Folder, and then clicking the appropriate folder that should contain
your shortcut.
Shortcut Destinations
Programs Menu and Startup Programs Menu and Startup are located in the Start menu.
The Programs Menu folder is the industry standard and
Microsoft’s suggested method. The Startup folder should
contain shortcuts to only those items that need to be
launched whenever Windows starts.
Send To The Send To folder is accessed when an end user right-
clicks a file. If you create a shortcut for your program in this
folder, an end user can click any file and send it to your
program.
For example, you might want your end user to be able to
open an HTML page in Notepad. If you created a shortcut to
Notepad in the Send To folder of the Shortcuts explorer, the
end user could right-click an HTML file and select Notepad
from your Send To menu. The source file for that page
opens in Notepad.
Desktop The end user’s desktop. When you create a shortcut in the
desktop folder, your application’s icon is displayed on the
end user’s desktop.
Creating Shortcuts
1. Create a feature containing the file that you want the shortcut to launch.
2. Open the Shortcuts/Folders view.
3. In the Shortcuts explorer, right-click a destination folder and then click the type
of shortcut or folder you want to create:
» New Shortcut—Creates a standard shortcut. Launching a shortcut created
this way does not launch the Windows Installer. If any dependent files,
registry entries, or .ini files are missing, the shortcut launches the file anyway.
» New Advertised Shortcut—Creates an advertised shortcut. If anything is
missing when the end user clicks the shortcut, it launches Windows Installer,
which will install all the missing dependencies and then launch the file. If
there are no missing dependencies, it launches the file without launching
Windows Installer.
NOTE An advertised shortcut can be created for a file only if it is designated as a portable executable
file. You can indicate which files you want to be treated as portable executable files on the File
Extensions tab of the Options dialog box.
TASK To create a shortcut that automatically starts your application’s uninstallation process:
CAUTION Microsoft recommends that you do not create a shortcut hot key, because it may conflict with
existing hot key combinations on the target machine.
NOTE Shortcut hot keys do not work on Windows 95 and NT 4.0 platforms when Active Desktop is
used. They also do not work on Windows 98 systems.
After you enter the hot key combination, the dialog box closes and a decimal value
representing the combination appears in the Hot Key property.
CAUTION It is important not to modify or delete registry keys indiscriminately because the registry is a
vital part of the Windows operating system, and the system may fail to function if vital registry
keys are altered.
TASK To specify a registry key to be created on the target system when a feature is installed:
Rename to give it a new name later. Your new key is created with an empty default
string value.
To modify the value name and data, see Creating Registry Values.
TASK To drag and drop a registry entry from the source computer to the destination computer:
NOTE A limitation of this procedure is that it works only if the registry entries exist on your installation
development system. If you have registry data from another machine, you can import that data
with the Import REG Files Wizard.
When you add registry data to a feature, it is installed on the target system if the
associated feature is installed.
Option Description
Default Value The key’s default value.
String Value A fixed-length text string.
Option Description
Binary Value The value is interpreted and stored as a hexadecimal value.
DWORD Value Data represented by a number that is four bytes (32 bits) long.
Multi-String Value Multiple text strings formatted as an array of null-terminated
strings, and terminated by two null characters. Selecting this
command launches the Multi-Line String Value dialog box.
Expandable String The value is interpreted and stored as an expandable string.
Value According to the Microsoft Developer Network (MSDN), an
expandable string registry value is a null-terminated string that
contains unexpanded references to environment variables (for
example, %PATH%).
InstallShield adds a new value with the name New Value #n (where n is a successive
number). Enter a meaningful name now to rename the value, or right-click the value
name and then click Rename to give it a new name later.
Windows Installer properties can be used in your registry value to store information
for later use by your product. For example, if you want to store the destination
location of your software, enter [INSTALLDIR] for your registry value. For more
information, see Windows Installer Properties.
NOTE To add a value that contains square brackets ([]), you must precede each bracket with a
backslash (\) and surround it with an opening and closing bracket. Otherwise, Windows Installer
treats the value as a property. For example, if you wanted to write [stuff] to the registry, use
[\[]stuff[\]] as the value name.
In the Windows 2000/XP registry, the Type field for this entry appears as
REG_MULTI_SZ, and the Data field is File Name Path.
NOTE Windows 95, Windows 98, and Windows NT machines do not have the Type field in the registry.
NOTE Windows 95, Windows 98, and Windows NT machines do not have the Type field in the registry.
3. In the Destination computer’s Registry view pane, right-click the registry key
associated with the primary key that you want to specify, and then click MSI
Value. The MSI Value dialog box opens.
4. Type the name of the key. Since the primary key must be a Windows Installer
identifier, the name should contain only letters, numbers, underscores (_), and
periods (.), and it must begin with a letter or underscore.
If you do not specify a value, InstallShield generates a unique primary key for this
entry in the Registry table.
Registry Flags
Registry flags enable you to control the installation and uninstallation of your registry
entries. By default, your registry entries are installed if the feature to which they
belong is installed. They are then uninstalled when that feature is removed. If you
would like your registry entries to remain on the target system even after the product
has been uninstalled, or if you want to create registry entries only if they do not
already exist, you need to set the installation flag for that key.
In InstallShield, installation behavior is set at the subkey level. All values beneath the
key must have the same installation and uninstallation behavior.
Registry keys that have special registry flags can be identified by the folder icon.
Below is a list of the icons, and the type of registry flags to which they correspond.
• In a per-machine installation, meaning that ALLUSERS is not null and that the
user is an administrator, the entries would be written under
HKEY_LOCAL_MACHINE.
Press F12.
After you have created the reference to the .ini file, you can move on to the next step,
which is to add a section to your .ini file.
InstallShield adds the .ini file to the INI Files explorer; each section and keyword-
value pair in the .ini file is represented by a separate item in the INI Files explorer.
TASK To include a driver that is not listed in the ODBC Resources view:
TASK To include a DSN that is not listed in the ODBC Resources view:
NOTE By default, each ODBC resource is associated with the feature Always Install. Since the ODBC
Resources explorer requires that at least one feature be selected, you cannot clear the Always
Install check box unless you first select the check box for another feature. If only one feature is
associated with a ODBC resource, its check box cannot be cleared until you select at least one
additional feature.
NOTE For target systems running Microsoft Windows 95 or 98, the environment variables are modified
in, created in, or removed from Autoexec.bat. Environment variables are stored in the registry
on systems running Windows NT 4.0 or Windows 2000 and later.
TASK To create a new environment variable or modify the value of an existing environment
variable:
User-Interface Elements
When a product is installed, its shortcuts are created in that user’s profile or in the All
Users profile, depending on the value of ALLUSERS and the current user’s
privileges.
Registry Entries
Because a user may not have rights to modify registry entries under
HKEY_LOCAL_MACHINE, in some cases you may want to write the entries under
HKEY_CURRENT_USER for per-user installations. If you create registry entries in
the Registry explorer under HKEY_USER_SELECTABLE, they are written under the
appropriate hive at run time depending on the value of ALLUSERS.
• New DLL custom action function prototype—To have your DLL function use the
standard Windows Installer custom action signature.
Once your DLL is ready, you must design a custom action to call the entry-point
function. To learn how to create a custom action, see Adding a .dll Custom Action to
Your Project.
InstallShield uses the function prototype to pass the following information to your
DLL:
1. Parameter 1 passes the installation’s window handle. This parameter always
returns NULL.
2. Parameter 2 passes the source directory [SRCDIR].
3. Parameter 3 passes the support directory [SUPPORTDIR].
4. Parameter 4 passes the main target directory [INSTALLDIR].
5. Parameter 5 passes the database directory [DATABASEDIR].
If you are prototyping a custom action to handle the serial number entered in the
Customer Information run-time dialog, then Parameter 4 will be the serial number.
The body of your DLL function can do just about anything you want. Obviously, you
may have good use for the values passed to the function by InstallShield.
Your DLL function must return a value of type LONG as a state flag signaling the
completion of the routine. If your function returns zero, the installation exits. If it
returns any other value, the installation continues.
#ifdef __cplusplus
}
#endif
When a non-zero value is returned by your function, the installation continues. If zero
is returned, the installation exits.
To be able to call the above DLL function, you must also include a definition (.def)
file when you build the DLL to export the function properly. Include the following
definition file with your project. The name after LIBRARY should be the name you
have given your DLL.
; mydll.def : Declares the module parameters for the DLL.
LIBRARY MYDLL
DESCRIPTION 'sample Windows Dynamic Link Library'
EXPORTS
Foo @1
When a non-zero value is returned by your function, the installation continues. If zero
is returned, the installation exits.
Requirements
• Header: Declared in Msiquery.h
• Library: Use Msi.lib
Both Msiquery.h and Msi.lib can be found in the Windows Installer SDK, which
can be downloaded from Microsoft’s Web site. In addition to the two files listed
above, the Windows Installer SDK contains Microsoft’s definitive documentation on
the Windows Installer APIs.
TASK To configure the settings for a .dll custom action in your project:
TASK To configure the settings for an .exe custom action in your project:
NOTE VBScript custom actions require that the scripting engine be installed on the target machine.
The scripting engine is also installed with Internet Explorer 4.0 SP1 or later. If you are unsure if
the engine is present, you can add the VBScriptRuntime merge module. If you are targeting a
Windows 95A platform, your users must upgrade to Internet Explorer 4.0 SP1 for your VBScript
custom actions to work.
See Also
TASK To configure the settings for a VBScript custom action in your project:
add a custom action to your project, you specify when the custom action should be
launched by adding the action to the appropriate installation or uninstallation item.
• Drag the custom action from its current location to the new location.
• Right-click the custom action and click Move Up or Move Down.
• Click the custom action and then press CTRL+SHIFT+UP ARROW or
CTRL+SHIFT+DOWN ARROW.
In this example, the serial number must take the following format:
Field1-1505-XXXXXXXXXX
The first section must appear as it does above, although it is not case-sensitive. The
second section, 1505, must be a number evenly divisible by 5 (for example, 1111
would not work). The last section can be any 10 alphanumeric characters. Keep in
mind that this format is merely an example. Your serial number function can take any
format that you would like it to have.
Further Considerations
The Validate Function, Success Return Value, and Retry Limit properties allow you to
further customize how your serial number validation .dll file works. For the Validate
Function property, enter the name of the function within your .dll file that validates
the serial number provided by the end user.
Your .dll file should return a specific value every time it is run. The example .dll
included with InstallShield returns 1 on success and –1 on failure. Therefore, type 1 in
the Success Return Value field. When you write your own .dll file, the success return
value can be whatever you choose, as long as it is non-zero.
The Retry Limit property lets you set how many failed attempts are allowed. For
example, if you only want users to be able to try entering a serial number three times,
type 3 in this field. After the third failed attempt, the installation exits.
The example .dll file contains a user interface element that breaks down the entered
serial number and displays it to the user. Additionally, it displays the section, if any, of
the serial number that is incorrect. This display is useful when testing and
troubleshooting your serial number verification .dll file, but it should not be left in the
final version of your installation.
{
MessageBox(GetForegroundWindow(),TEXT("Not
Installed"),TEXT("My Product"), MB_OK);
return 0;
}
}
3. Right-click anywhere in the Files pane and then click Insert Files. The Open
dialog box opens.
4. Browse to the file that you want to include. To select multiple files, hold down the
CTRL key while clicking files.
5. Click OK.
1. In the Support Files explorer, click the item that contains the support files and
folders that you would like to sort.
2. In the Files pane, click the heading of a column to sort by that column.
Disk1 Files
The Disk1 feature in the Setup Files view enables you to add files and folders on
Disk1 of the installation media; these files and folders are not automatically installed
to the target system when your installation is run. You can link to the installation
media from your application or from the installation program.
For example, you might include a large redistributable file with your application that
you want end users to be able to access, but do not want to include in the application
installation. This file should be placed in the Disk1 folder.
Disk1 files are taken into account when InstallShield calculates the size of the media;
therefore, InstallShield ensures that the addition of a Disk1 file will not cause the build
to exceed the disk size specification for that release. This feature is useful if you want
to store a redistributable on your disk image so that your installation can launch it
from the source media at installation time.
This section of the help library covers several features of InstallShield that enable you
to define different aspects of the end-user interface. Everything from dialogs and
billboards to the text displayed during the installation is covered.
Option Description
Advertisement Feature advertisement allows files to be installed on
demand after the installation has initially run. In the
Custom Setup dialog, when you click a feature, you
can specify that you want it installed later by selecting
the Will be installed when required option.
However, that default option is present only if the
setup author selects Yes for the feature’s Advertised
property.
Hide a Feature from the End When you set a feature’s Visible property to No, the
User end user cannot see the feature or its subfeatures in
the Custom Setup dialog and therefore cannot change
any of its installation options.
Display All Subfeatures The feature’s Visible property also governs whether its
subfeatures are expanded when the dialog first opens.
Display a Description for a The description that is shown at the bottom of the
Feature Custom Setup dialog when you select a feature is
taken from its Description property.
Change the Feature Order You can change the order in which the features appear
to the end user in the Custom Setup dialog. The order
in which features are displayed is dictated by the
order in the Features view. For more information, see
Changing the Feature Order in the Custom Setup
Dialog.
Require a Feature Be Installed If you set a feature’s Required property to Yes, the end
user will not have the Will not be available option,
meaning that the feature must be installed.
If you set a feature’s Required property to Yes, the end user will not have the Will not
be available option, meaning that the feature must be installed.
Splash Bitmap
The splash bitmap image is displayed in the Splash Bitmap dialog only. This image
must be a bitmap (.bmp) file, and it must be 465 pixels wide by 281 pixels high.
The following sample dialog shows the default splash bitmap, which is enclosed
within the gray box. You can replace the default image with your own bitmap file.
Bitmap Image
The bitmap image is displayed in the background of the Install Welcome dialog and
the Setup Complete Success dialog. This image must be a .bmp file, and it must be
499 pixels wide by 312 pixels high.
You can change the bitmap image for each individual dialog, or you can specify a
global dialog image that should be used in all of the dialogs that contain the bitmap
image.
Following is a sample dialog that has the default bitmap image The image includes the
navy column on the left, as well as the white background behind the text.
Banner Bitmap
The banner bitmap image is displayed directly below the title bar of several dialogs:
License Agreement, Readme, Customer Information, Destination Folder, Database
Folder, Setup Type, Custom Setup, Ready to Install, and Setup Progress. This image
must be a .bmp file, and it must be 499 pixels wide by 58 pixels high.
You can change the banner bitmap for each individual dialog, or you can specify a
global dialog banner that should be used in all of the dialogs that contain the banner
bitmap.
Following is a sample dialog with a banner bitmap. The image includes the navy
image on the right, as well as the white background behind the text.
TASK To change the splash bitmap image in the Splash Bitmap dialog:
TIP You can also set the bitmap image for all end-user dialogs by setting the Global Dialog Image
property for all dialogs. If—after changing the Bitmap Image property for a particular dialog—
you change the corresponding Global Dialog Image property, the Global Dialog Image property
value replaces the value that you entered for the individual dialog’s Bitmap Image property.
TIP You can also set the banner bitmap for all end-user dialogs by setting the Global Dialog Image
property for all dialogs. If—after changing the Banner Bitmap property for a particular dialog—
you change the corresponding Global Dialog Banner property, the Global Dialog Banner property
value replaces the value that you entered for the individual dialog’s Banner Bitmap property.
TASK To change the bitmap image for all end-user dialogs that contain it:
TIP You can also set the bitmap image for individual dialogs.
TASK To change the banner bitmap for all end-user dialogs that contain it:
TIP You can also set the banner bitmap for individual dialogs.
TIP You can use Windows Installer properties in your dialog text. To do this, surround the property
with square brackets—[INSTALLDIR], for example.
TASK To change the font and font size for a specific string:
4. Select the font and font characteristics (such as size, style, and color) for the
selected string.
Exporting Strings
To ease the task of translating all of the run-time strings in your installation project,
InstallShield enables you to export the strings to a text (.txt) file. You can provide that
.txt file to a translator who can update the file with translated text. Then you can
import the .txt file back into your installation project for a localized user interface.
1. On the Project menu, click Export String Table. The Export String Table
Wizard opens.
2. Complete the panels in the wizard to export the strings to a .txt file.
1. On the Project menu, click Import String Table. The Import String Table
Wizard opens.
2. Complete the panels in the wizard to import the strings.
Displaying Billboards
You can use billboards to pass information to your customers during the installation
process. Billboards can be used to communicate, advertise, educate, and entertain the
end user. Billboards offer information—new features of the product being installed or
other products from your company—to your end users. Each billboard is a bitmap
(.bmp) file that you can customize for complete control over the look and feel of the
file transfer.
Adding a Billboard
Removing a Billboard
When you are creating an installation, you may find it necessary to provide server-side
support for some technology that will be installed on a target system. InstallShield
makes it easy to configure server-side installations. You can manage new Internet
Information Services (IIS) Web sites and manage COM+ applications and
components with installations that you create in InstallShield.
EDITION InstallShield Premier Edition and InstallShield Professional Edition provide additional functionality
in the Component Services view; these editions enable you to manage both COM+ server
applications and application proxies. A COM+ application proxy consists of a subset of the
attributes of the server application, and it enables remote access from a client machine to the
machine where the application resides.
During installation of a package that includes IIS settings, InstallShield checks for the
existence of IIS on the target machine. If IIS is not installed, the installation displays a
dialog informing the end user that they do not have IIS installed and asking whether
they want to install and continue. If the end user does not install IIS, the installation
continues, but the virtual directory is not created.
NOTE • IIS 6.0 is available only on Windows Server 2003 platforms. On systems that have Windows
Server 2003, if IIS 6 is not installed, then other IIS directories and sites will still be created.
IIS 6.0-specific items will be skipped.
• IIS 5.1 for Windows XP Professional can service only one Web site at a time. This is a
limitation of IIS 5.1.
• InstallShield supports version 4 and later of IIS. It does not support the version of IIS that is
installed with the NT Option Pack on NT Workstation—only the version that is installed to
the NT server.
TASK To create a Web site and a virtual directory on the target system at run time:
NOTE The View Filter list lets you associate virtual directories with features in your installation. The
View Filter list is not used to associate a Web site with a feature because Web sites are not tied
to features.
5. Right-click the new Web site and click New Virtual Directory. InstallShield
adds a new virtual directory.
6. Select the virtual directory to define its properties.
EDITION You can create more than one virtual directory per Web site for your installation. However, you
can create only one Web site per installation in InstallShield Express Edition. InstallShield
Premier Edition and InstallShield Professional Edition support the creation of more than one Web
site per installation. For more information, visit http://www.macrovision.com.
TASK To configure a setting that is not exposed in the Internet Information Services view:
Refer to the MSDN documentation on how to use the ADSI object model for
configuring IIS virtual directory settings.
1. Add an IIS Web site to your project if you have not already done so. InstallShield
automatically adds the predefined path [IISROOTFOLDER] to the Files view.
2. Open the Files view.
3. In the Feature list, select the feature with which you want the file associated.
4. In the Destination computer’s folders pane, add the file to the
[IISROOTFOLDER] folder, or a subfolder of the [IISROOTFOLDER] folder.
5. Open the Internet Information Services view.
6. Create a new virtual directory.
7. Click the Virtual Directory tab.
TASK To configure custom error messages for a Web site or virtual directory:
1. Create a file that contains your custom error message and add it to your
installation.
2. Open the Internet Information Services view.
3. Select the Web site or virtual directory for which you want to customize HTTP
error messages. The settings for the Web site or virtual directory are displayed on
the right.
4. Select the Custom Errors tab.
5. Select the HTTP error code that you want to change and click Edit. The Error
Mapping Properties dialog box opens.
6. To map the error code to a file:
a. In the Message Type list, select File.
b. In the File box, type the path and file name that points to the custom error
message in your installation, or click the browse button to locate the file.
To map the error code to a URL:
a. In the Message Type list, select URL.
b. In the URL box, type the URL that points to your custom error message.
1. Add an IIS Web site to your project if you have not already done so. InstallShield
automatically adds the predefined path [IISROOTFOLDER] to the Files view.
2. Open the Files view.
3. In the Feature list, select the feature with which you want the Web services
associated.
4. In the Destination computer’s folders pane, select the folder (target directory)
for installing files on the target system. Add your files to this folder. You may
want this folder to be a new folder that you create in the folder called
[IISROOTFOLDER].
5. Open the Internet Information Services view.
6. Create a new virtual directory.
7. Click the Target Directory property of the new virtual directory, and then select
the same target directory as the one that contains the new file that you added in the
Files view.
At installation, files are copied to the target directory folder. In addition, the virtual
directory is configured for that folder on the target system if IIS is present.
in your installation project and you have added a Web site, then IISROOTFOLDER is
automatically added to your project so that you can deploy files to the IIS root folder.
NOTE All of the files that you add to the IISROOTFOLDER directory in the Files view are installed to the
Web server’s root directory on the target machine. If IIS is not on the target machine, the files
are copied to the root folder.
IIS_VERSION Property
When you add a virtual directory to your project, an IIS_VERSION entry is added to
the Requirements view to search for the version of IIS installed on the target system.
The property contains the path to the IIS Home Directory, which is set to
c:\inetpub\wwwroot by default.
The Update Service provides a mechanism that enables you to automatically notify
your Web-connected end users when patches, updates, and product information for
your application are ready for release. The Update Service will reduce the number of
your customers running old releases of your products and prevent them from installing
the wrong updates from your Web site.
The Update Service Starter Edition is included with InstallShield.
Initial Deployment
1. Use InstallShield to create the installation project for your application. The
Update Service should be enabled in this project. When you enable the Update
Service, InstallShield includes the Update Manager in your installation. This
desktop tool ships with your application and provides a tool for your users to view
available updates.
2. Register your application with the Publisher Web site, a Web-based management
portal.
3. Install your application and test it.
To learn more about the capabilities of the Starter Edition, visit the Macrovision Web
site. To access the Update Service documentation, see the Update Service Help
Library.
Optionally, you can embed calls directly from your application to the Agent to
create an update experience that is more integrated with your application. To
access the Update Service documentation, see the Update Service Help Library.
Property Value
Display Name Check for Updates
Target [CommonFilesFolder]InstallShield\UpdateService\agent.exe
Icon File <ISProductFolder>\redist\Language Independent\OS
Independent\UpdateService.ico
Arguments /au[ProductCode] /AppMenu
Key Name Check for Updates
To learn more about the Update Service, see the Update Service Help Library.
InstallShield supports the latest mobile devices, enabling you to add any number of
mobile device installations to a desktop installation.
NOTE Microsoft ActiveSync 3.x or later must be installed on the desktop computer in order to provide
a desktop-to-device installation. Active Sync 4.x is required for Windows Mobile 5.x devices.
NOTE You are not required to add anything to the desktop. You can use the desktop installation solely
to deploy the application to Microsoft ActiveSync.
3. Add the Windows Mobile installation to your project:
a. Open the Mobile Devices view.
b. Right-click Mobile Device Installations and click New Windows Mobile.
The Windows Mobile Wizard opens.
c. Follow the wizard panels to customize the installation.
When you add an installation for a Windows Mobile–based device to your project,
InstallShield automatically adds it to all of the features that you selected to associate
with the Windows Mobile application.
When you build a release for the installation, InstallShield creates an installation that
installs your application to the end user’s desktop machine and to the Windows
Mobile device. For more information, see Building an Installation for a Mobile
Device.
When you add an installation for a Palm OS device to your project, InstallShield
automatically adds it to all of the features that you selected to associate with the Palm
OS application.
When you build a release for the installation, InstallShield creates an installation that
installs your application files to the Palm OS device via a storage card, or they can be
downloaded directly to the device over a network or the Internet. For more
information, see Building an Installation for a Mobile Device.
NOTE Microsoft ActiveSync 3.x or later must be installed on the desktop computer in order to provide
a desktop-to-device installation. Active Sync 4.x is required for Windows Mobile 5.x devices.
TASK To add existing .cab files for a Windows Mobile device to your project:
1. Prepare your .cab files if you have not already done so. The .cab files can be
created by using the Smart Device Setup Wizard, or they can be some other
Windows Mobile–compatible .cab files that you have on your machine.
2. Create the desktop installation that will be used to install the features of your
application to the end user’s desktop machine. This also sets up your application
to be installed on the Windows Mobile device the next time that it is synched with
the desktop computer.
NOTE You are not required to add anything to the desktop. You can use the desktop installation solely
to deploy the application to Microsoft ActiveSync.
3. Add the .cab files to your project:
a. Open the Mobile Devices view.
b. Right-click Mobile Device Installations and click New Windows Mobile.
The Windows Mobile Wizard opens.
c. Follow the wizard panels to customize the installation.
When you add an installation for a Windows Mobile–based device to your project,
InstallShield automatically adds it to all of the features that you selected to associate
with the Windows Mobile application.
When you build a release for the installation, InstallShield creates an installation that
installs your application to the end user’s desktop machine and to the Windows
Mobile device. For more information, see Building an Installation for a Mobile
Device.
NOTE If a Windows Mobile installation consists of multiple .cab files, you should add all of the
installation’s .cab files to the same node of the Mobile Device Installations explorer in the Mobile
Devices view. You should not separate the .cab files into different nodes.
If you want to add to your project multiple .cab files from different Windows Mobile installations
(i.e., from different sets of .cab files), you should create a separate node in the Mobile Device
Installations explorer for each set of .cab files. You should not mix .cab files from different
installations in the same node.
TASK To use CEAPPMGRLOC to get the AppManager location on the target desktop machine:
Session.Property("CEAPPMGRLOC")
» Right-click the mobile device installation whose name you would like to
modify and click Rename.
» Click the mobile device installation whose name you would like to modify
and press F2.
See Also
Mobile Devices Installations
InstallShield lets your users rerun your installation to change program features or
reinstall or remove your application. When users select your application in Add or
Remove Programs in the Control Panel, the installation displays dialog boxes that let
users do any of the following:
1. Install individual features that were not previously installed, and uninstall
individual features.
2. Reinstall your application with the settings selected during the first installation.
3. Uninstall your application.
To modify, repair, or uninstall an application, the operating system must have some
indication that the application is present. To allow this, an installation registers an
application with the operating system so that it can be easily maintained or
uninstalled. You enter the necessary information in the General Information view. For
more information, see Specifying Installation Information.
In InstallShield installations, maintenance (that is, modification and repair) is handled
automatically. In addition, uninstallation is handled automatically—with the sole
exception of custom actions, which must either undo their own effect during
uninstallation or have their effect undone by another custom action that runs only
during uninstallation.
Uninstall entire key flag on a registry key causes the key and all its values and subkeys
to be removed during uninstallation. For more information, see Registry Flags.
Once you have configured the features, files, shortcuts, registry entries, end-user
dialogs, and other elements of your installation project, you are ready to create and
build a release for your installation. Building a release packages the content of your
installation, creating a disk image that you can copy to your distribution media and
distribute or deploy as needed.
Testing is an essential part of creating a reliable installation. InstallShield enables you
to selectively test run just the end-user interface portion of a release. You can also run
your installation by simply clicking a button in InstallShield; when you run an
installation by using this method, your installation executes exactly as it would on an
end user’s machine. All files are transferred, shortcuts and registry entries are made,
and the user interface is displayed.
The last step in creating your installation is to distribute it to a specified location. This
location may be on a network drive, floppy disk, or different location on a local drive.
When you distribute your installation, the disk image created when you built your
installation is copied to the location that you specify.
Building a Release
You can also build a release at the command line using IsCmdBld.exe.
InstallShield places the built installation package into a release location based on your
project location. If the build failed and generated an error, the previous installation
package, if any, is restored to the \DiskImages\Disk1 folder.
TIP Ensure that Windows Explorer is not pointing to the Disk1 folder or a subfolder when you build
your release. If it is pointing to the Disk1 folder, the build process will continue indefinitely. If
Explorer is accessing a subfolder, you will generate an error.
If you are creating non-compressed builds, additional folders named after specific operating
systems may be included with the installation. This handles cases when files destined for a
specific operating system have the same name as those targeted for another operating system.
Canceling Builds
Dim pInstaller
Set pInstaller = CreateObject("WindowsInstaller.Installer")
Dim pDatabase
Set pDatabase = pInstaller.OpenDatabase("C:\Test.msi", 2)
Dim pView1
Dim pRecord1
Set pRecord1 = pView1.Fetch
pView1.Modify 4, pRecord1
pView1.Close
pDatabase.Commit
MsgBox "Done!"
For example, if the current project name is CoolProject, and the media type for the
release is a CD-ROM, you can find the Disk1 folder under the following location:
If you are creating non-compressed builds, additional folders named after specific
operating systems may be included with the installation. This handles cases when files
destined for a specific operating system have the same name as those targeted for
another operating system.
Quick Builds
When you are testing your installation, you might not want to continually build all of
your installation files if no files have been changed. Once you have performed an
initial complete build of your installation, you can use the Quick Build option in
InstallShield. The Quick Build option enables you to rebuild only the .msi file part of
an installation, shortening the build process. This is especially useful when you are
testing or making changes to a string or dialog.
NOTE The SingleImage media type does not support the Quick Build option because the .msi file is
included in the Setup.exe file. In addition, the WebDeployment media type does not support
the Quick Build option because the .msi file is included in a .cab file.
NOTE The SingleImage media type does not support the Quick Build option because the .msi file is
included in the Setup.exe file. In addition, the WebDeployment media type does not support
the Quick Build option because the .msi file is included in a .cab file.
Command-Line Builds
You can build a release from the command line using IsCmdBld.exe. Building an
installation in this way may be useful if you are trying to build from a batch file.
IsCmdBld.exe is located by default in the following location:
InstallShield Program Files Folder\System
The first parameter, starting with -p, is the path to the InstallShield project file (.ise)
that you want to build. The second parameter, -c COMP, specifies that you want your
package to be compressed into one file. The final parameter, -e y, specifies that you
want to include Setup.exe with the build.
mode, and your release is sent to the project location specified on the Options dialog
box.
The first heading, [Project], should contain the path to the .ise file and the product
name as specified in InstallShield. The second section, titled [Release], should contain
the configuration type, either compressed or uncompressed, Setup.exe settings, and
the release name.
Overview
MSBuild is an extensible build framework designed to remove the build dependence
on Visual Studio. The .NET Framework provides the capability to build projects or
solutions from the command line or any other host of MSBuild. For more information
on MSBuild, see the MSDN Library.
MSBuild Tasks
The flexibility and extensibility of MSBuild is controlled through atomic groupings of
internal build steps referred to as tasks. One example of a task that ships with
MSBuild is Csc, which can compile code from a Visual C# project. InstallShield
installs an MSBuild task called InstallShield, which builds an InstallShield project,
and a targets file that provides default build steps for the project. This customized task,
along with the targets file, enables MSBuild to perform all required actions to build
the InstallShield project as part of a Visual Studio solution.
This table describes the parameters of the InstallShield task.
MSBuild Scripts
MSBuild natively understands one file format: its XML build script, which is used as
the project file format for Visual C# and Visual Basic .NET projects (.csproj and
.vbproj). MSBuild also has internal hooks to handle solution files and the Visual C++
project file format (.sln and .vcproj).
The InstallShield integration with Visual Studio uses an MSBuild-compatible XML
format project file (.isproj), which enables MSBuild to seamlessly build Visual Studio
solutions that include InstallShield projects.
C:\Windows\Microsoft.NET\Framework\Version Folder\
3. Type the command-line statement to build the release build of the Visual Studio
integration project. For example:
MSBuild.exe C:\Folder Containing My Visual Studio Solution\My
Solution.sln /property:Configuration=Release
Any releases that you build with the SingleImage build type are compressed into one
file.
NOTE If you set the Include Setup.exe property to Yes, the file generated by InstallShield is an
executable (.exe) file. The executable file contains all of the files needed to install the Windows
Installer service, your Windows Installer setup (.msi) file, and all of your application files. If you
do not include Setup.exe in your installation, the single file generated is an .msi file containing all
of the logic and data necessary to install your application onto a Windows Installer compatible
machine.
Compressed Size
Although many people now connect to the Internet via high-speed cable modems or
DSL lines, many others still use 28.8 modems. Package size is very important to
people with slower connections due to the increased amount of online time required to
download an application.
Self-Extracting
Many file compression utilities require a special client-side application to decompress
the application files. This need for another utility complicates the download and
installation process for users. To simplify the installation process, the compression
utility you use should be self-extracting, so no other application is required.
Digitally Signed
To make your customers feel more secure about downloading and installing your
software, you can digitally sign your application package. The digital signature
identifies you and/or your company to end users and assures them that the application
code has not been altered or tampered with since publication.
Visit www.verisign.com to learn more about digital signatures.
Easy to Use
Perhaps the most important aspect of packaging your installation for Internet
distribution is making it easy to use. Your customers may not want to specify a
location where the installation files should be saved and then search their computer to
locate those files. Instead, the setup should be seamlessly integrated into the
compression package, requiring only one step to begin the installation.
You can distribute your release to a specified location via the Distribute Your Release
View.
NOTE If you build a release on a Windows 2000 machine, SP4 must be installed in order for you to
digitally sign the application.
Certification Authorities
A certification authority is an organization such as VeriSign that issues and manages
digital certificates (also known as digital IDs). The certification authority validates the
requester’s identity according to prescribed criteria and issues a digital certificate.
Digital Certificates
A digital certificate identifies you and/or your company to end users and assures them
the data they are about to receive has not been altered during its transfer over the Web.
Certification authorities issue and manage digital certificates.
When end users download your application, a digital certificate is displayed. The
digital certificate is a panel that informs end users when your application was signed
and asks if they want to download and run your application. End users click OK to
accept your application package.
Below is an example of a digital certificate. The appearance of digital certificates may
vary among browsers and browser versions.
Private Keys
A private key (a file with the extension .pvk) is granted by a certification authority.
InstallShield uses the private key you enter in the Corresponding Private Key build
setting to digitally sign your package and ensure end users of its content’s
authenticity.
NOTE The digital certificate that end users see when they receive your installation consists of the
software publishing credentials (.spc) file and the private key (.pvk) file; you specify these files
for build settings.
NOTE The digital certificate that end users see when they receive your installation consists of the
software publishing credentials (.spc) file and the private key (.pvk) file; you specify these files
for build settings.
At build time, a folder called TestTools is created and placed in the same folder as
the DiskImages folder for the selected release.
CAUTION Do not release the files in the TestTools folder with your product or make them available to
your customers. Doing so would enable end users to continually restart a trial each time that it
expires. Note that the TestTools files are specific to a particular product and license and
cannot be used to delete licenses for other products.
For each file being wrapped, the TestTools folder contains the following files:
• SCResetLicense<WrappedBaseFileName>.exe
• IsSvcInstSCResetLicense<WrappedBaseFileName>.dll
For example, if a file called Calc.exe is wrapped, the files in the TestTools folder
are SCResetLicenseCalc.exe and IsSvcInstSCResetLicenseCalc.dll.
You can use the TestTools files to remove the license for your product from a
machine, resetting the trialware state. This enables you to restart the trial for your
protected product and retest it. For more information, see Testing a Trialware Release
of Your Product.
TASK To prepare a release of your product that does not have the trialware protection:
If you have not added a trialware file to your project in the Trialware view, the Disable
Trialware Build property has no effect on the release build.
Media Compression
Each build type (CD_ROM, SingleImage, WebDeployment) that is available in the
Build Your Release view includes a property called Compress Media. Set this value to
Yes to use a compression algorithm that will decrease the size of your installation.
With this setting, your installation files are compressed into .cab files.
If you do not want your files to be compressed on the release media, set the Compress
Media property to No.
CAUTION If you build a multiple-disk installation, you need to set the volume label on the second and
subsequent disks. The volume labels must be DISK2 (for the second disk), DISK3 (for the third
disk), and so on. For more information, see Setting Volume Labels.
TIP If you build a multiple-disk installation, you need to specify volume labels for the second and
subsequent disks. The manner in which you do this depends upon the distribution media you
use. The volume labels must be DISK2 (for the second disk), DISK3 (for the third disk), and so
on.
1. Create your installation, including the necessary files, features, registry entries,
and shortcuts.
2. Open the Build Your Release view.
3. In the Builds explorer, click the type of media that you want to build.
NOTE You cannot generate an .msi file accessible to your end users through the WebDeployment build
type.
4. Set the Compress Media property to No. This instructs InstallShield to not
embed the .msi file into the Setup.exe file.
5. Click the Build button.
Autorun
When you inserted the InstallShield CD into your computer’s CD-ROM drive, you
may have noticed that a multimedia CD browser automatically launched, allowing
you to easily install this product. This autorun functionality was accomplished using a
text file (Autorun.inf) on the root level of the CD. Primarily, this file is used to launch
either a CD Browser, such as those created with DemoShield, or a setup program.
TASK To enable your CD to autorun when it is inserted into the target system’s CD drive:
1. Copy the files that are added to the TestTools folder at build time to the test
machine that contains the license that you want to delete. For each file being
wrapped, the TestTools folder contains the following files:
» SCResetLicense<WrappedBaseFileName>.exe
» IsSvcInstSCResetLicense<WrappedBaseFileName>.dll
For example, if a file called Calc.exe is wrapped, the files in the TestTools folder
are SCResetLicenseCalc.exe and IsSvcInstSCResetLicenseCalc.dll.
2. On the test machine, run the SCResetLicense<WrappedBaseFileName>.exe file.
The license for your protected product is removed, and the trial state is reset. The next
time you restart your protected product on the same test machine, the trial starts over,
enabling you to retest it.
CAUTION Do not release the files in the TestTools folder with your product or make them available to
your customers. Doing so would enable end users to continually restart a trial each time that it
expires. Note that the TestTools files are specific to a particular product and license and
cannot be used to delete licenses for other products.
Conditional Installations
InstallShield provides the capability to make your installation conditional based on
several criteria. This can be accomplished using the Requirements view. If the
installation is run on a machine that does not meet the specified conditions, the
installation exits and your application is not installed.
Creating a CD Browser
A CD Browser is a standard technique for greeting your customers with an interactive
multimedia tour of your company’s offerings. Typically, the browser gives a product
tour, contains links to the company’s Web site, allows your customer to install
software and any related products, and offers a reminder about registration.
DemoShield helps you create professional multimedia material in a fraction of the
time required by other products.
An evaluation copy of DemoShield is available from the Macrovision Web site. This
version gives you complete access to the DemoShield Designer and help files during
the evaluation period. You will be licensed to distribute your new CD Browser once
you have purchased a full copy of DemoShield.
Distributing Installations
The last step in creating an installation is to distribute it to a specified location. This
location can be a network drive, a floppy disk, or a different location on a local drive.
When you distribute your installation, the disk image created when you built your
installation is copied to the location that you specify.
Offering prospective customers a free trial version of your product can be a highly
effective sales tool, but it carries the risk that some will abuse the privilege and
continue to use the product without paying for it. InstallShield enables you to create a
protected trialware version of your product without requiring you to modify the source
code.
With the Trialware view, you can configure trialware settings for one or more of your
product’s executable files to protect your product from piracy. Using InstallShield to
protect your product lets you:
• Invest minimal time and expense to turn your product into trialware.
• Set firm expiration dates using sophisticated, flexible technology that blocks
unauthorized extensions of trials.
• Specify hyperlinks that should be displayed in the trialware run-time dialogs,
which are launched whenever end users launch a protected application. The
hyperlinks direct users to Web pages that inform them, for example, how to
purchase your product.
• Ensure that paid-for copies of your product automatically revert to trial mode
when they are shared with other end users.
Types of Trialware
InstallShield offers different types of trialware to help you control unauthorized use of
your product:
• Try and Buy/Product Activation
• Try and Die (available with the Premier edition of InstallShield only)
• Unprotected (that is, the product’s installation is built without applying trialware
protection)
more, see InstallShield Activation Service. For details on how the activation process
works, see Overview of the Activation Process.
NOTE Try and Die functionality is available with the Premier edition of InstallShield only.
Unprotected Product
You can configure the trialware settings in your installation project and then later
easily build a release of your product that does not have the trialware protection. You
can use this non-trialware release if you want to test the installation of your product
but you do not want to test the trialware run time. For more information, see
Excluding Trialware Protection from a Release.
Unprotected Product
If an application is not protected with the trialware functionality available in
InstallShield, the end user launches the main application file when starting the
product. This main application may call subordinate applications and use data
contained in data files.
The structure of a typical unprotected application is illustrated in the following
diagram:
The addition of the Try and Die shell to the main application file does not change the
file’s version number or the file’s last-modified date. However, it does increase the
size of that file.
Figure 18-3: Product protected with a Try and Buy/Product activation shell
Trialware Technology
With the Trialware view, you can configure a license for trialware. InstallShield uses
the license to wrap a trialware shell around your product’s executable file (.exe, .dll,
.ocx, or .scr file). The file can be unwrapped and used only according to the license
settings that you configure, such as the trial limit (a specified number of days or a
specified number of uses).
The trialware technology available in InstallShield should not be confused with
freeware or shareware. Often freeware and shareware have limited functionality. For
example, end users sometimes cannot print anything from shareware or freeware, or a
watermark might be added to every page. Such limitations are established to
encourage prospective customers to purchase a fully functional version of a product;
however, building such limitations into your product can be costly and waste valuable
development time.
With trialware, the only limitation is the time limit or the limited number of uses. You
enable a prospective customer to use the latest version of your product—with all of its
features fully available—on a trial basis. No dongle is used to limit or lock software
access. After a predetermined trial limit has been reached, the trialware expires.
Licenses
Trialware technology actually involves two types of licenses: a license that wraps the
protected executable file and a license that identifies a protected trialware product on
the end user’s machine. Both types of license are associated with each other by a
license number, and the term license is used to refer to both types of licenses.
When you create trialware with InstallShield, you acquire a unique license for your
product. The license is downloaded from the license server to your machine, and it is
stored in your InstallShield project file.
InstallShield uses the license to wrap a trialware shell around your product’s
application file. The application file can be unwrapped and used only according to the
license settings that you configure.
When an end user runs your trialware for the first time on their machine, the trialware
stores a license in both a license file and an anchor. Both must be present on a system
to allow licensing to work. The anchor is stored in an operating system–specific
location to hinder end users from trying to reset the license state by simply deleting
the license file. This approach allows license data to remain safe even if the trialware
product or the operating system requires reinstallation.
If an end user reformats a hard drive that has trialware, it will not affect license data
stored on that machine. However, repartitioning the hard drive will. End users can use
ghosting utilities to back up a disk or partition to an image and restore the trialware
later.
with a quick, easy, and unobtrusive way to protect your software against casual piracy
by limiting the number of times it can be activated.
The Try and Buy/Product Activation type of trialware in InstallShield requires the
InstallShield Activation Service to enable end users to not only try, but also buy, your
software in a very straightforward manner. This integrated, end-to-end solution is
quick and easy to implement, requiring minimal administration and development
effort.
Customer Support
Customer support employees primarily use the InstallShield Activation Service
Publisher Web Site to assist end users with the offline activation of your products.
They will also use this Web site to perform the following activities:
• Manage serial numbers to protect against the misuse of your products.
• Add to your licenses the serial numbers that end users will use to activate your
product.
• Limit the number of times each serial number may be activated, thereby allowing
your customers to install your product on multiple machines, while also
preventing abuse of the license.
• Prevent any additional activations if abuse is suspected.
• Generate reports to view the number of activations per serial number.
• Monitor and record the number of times that end users attempt to activate
additional copies of your product. This indicates the need for additional licenses
and can guide direct sales.
Product Managers
Product managers use this Web site to run reports on the state of the product’s
business. They also use this Web site to perform the following activities:
• Run reports on the number of activations during a trial period.
• Determine which products are popular from an activation standpoint.
• Gather metrics on the success of a new product introduction or a time-based
promotion.
• Run many other reports based on their specific needs.
To learn more about the InstallShield Activation Service Publisher Web Site,
including procedures for performing an offline activation and running reports, see the
help library available at this Web site.
NOTE End users cannot activate a Try and Buy/Product Activation version of your product unless you
purchase the InstallShield Activation Service.
Online Activation
The online activation process starts when the end user chooses to activate the product
and then enters a serial number in the trialware run-time dialog. From there, the rest of
the activation process is automatic. No manual intervention is required by you or the
end user.
The following procedure outlines the steps that occur during an online activation.
1. The end user launches the trialware. Before the trialware application starts, the
trialware run-time dialogs are displayed.
2. The end user enters the serial number in the run-time dialog.
3. The trialware sends an activation transaction to the activation server via the
Internet.
4. A response code is sent to the trialware shell on the end user’s machine.
The trialware shell uses the response code to activate the product. The entire process
typically takes only seconds to complete. The amount of data being transmitted is very
small, so high-speed connections are not required.
Offline Activation
If the online activation process does not work (for example, if the end user does not
have an Internet connection), the end user can choose to activate offline (if you
allowed it when you configured the trialware settings for the product). Offline
activation requires manual intervention by both the end user and by one of your
customer support employees; therefore, offline activation is more costly for you to
support than online activation.
The following procedure outlines the steps that occur for an offline activation.
1. The end user launches the trialware. Before the trialware application starts, the
trialware run-time dialogs are displayed.
2. The end user enters the serial number in the run-time dialog.
3. The trialware attempts to perform the online activation, but it fails because, for
example, the end user’s machine does not have an Internet connection. The
trialware run-time dialog displays several options: Activate by Internet (to
enable the end user to retry the activation by Internet), Activate by Email, or
Activate by Phone.
4. If the end user selects email or phone and then clicks Next, the next trialware run-
time dialog contains contact information, as well as the serial number and the
request code. They use the contact information to provide you with the serial
number and the request code.
5. Your customer support employee logs on to the InstallShield Activation Service
Publisher Web Site and enters the serial number and request code that the end user
provided. The Web site provides a response code, and your customer support
employee gives that response code (via email or phone—whichever method the
end user selected) to the end user.
6. The end user enters the response code in the trialware run-time dialog.
The trialware shell uses the response code to activate the product.
Note that the entry of the response code can either be done immediately or at a later
time. Minutes, days, or even months later, the product will still be waiting for the same
response code. The product will be instantly activated once the end user enters the
response code.
CAUTION The request codes and response codes that are used with phone activations are shorter than
the ones that are used with offline email activations; the shorter length of the codes makes it
possible to read the codes over the phone. However, short codes are not as secure as the
longer codes used with email activations. Therefore, Macrovision recommends that you carefully
consider the security risks associated with offline phone activation before offering it as an offline
activation method. Use of this option is at your own risk, and Macrovision accepts no
responsibility if your company experiences security issues.
NOTE InstallShield displays a warning icon ( ) for the item that you added to the Trialware Files
explorer. In order to protect a file, you must specify the corresponding .exe, .dll, .ocx, or .scr
file; the type of trialware; and the license. Once you have specified these settings, InstallShield
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
Once you have selected the executable file that you want to protect and the type of
trialware that you want to prepare, you need to acquire a license.
Acquiring a License
A license identifies a protected trial product. Macrovision recommends that you
acquire a unique license for each version of your product. Otherwise, the following
results could occur:
• For Try and Buy/Product Activation trialware—If end users activated version 1.0
of your product and you use the same license to wrap version 2.0, end users would
be able to download version 2.0 and it would be activated. This may be
acceptable, but you may prefer that they purchase version 2.0.
• For Try and Die trialware—If end users try version 1.0 of your Try and Die
product, the trial expires when the predetermined trial limit has been reached.
Thus, the same end users would not be able to also try version 2.0 if you use the
same license to wrap version 2.0.
Under certain conditions, you may want to use the same license for multiple versions
of a Try and Buy/Product Activation product. For example, if all of the following are
true, you could use the same license:
• You are preparing an upgrade for the earlier version of your product that was
wrapped with the Try and Buy/Product Activation type of trialware.
• End users who have activated the earlier version should not need to re-activate
when they apply the upgrade and then run the upgraded product.
• You are not charging existing end users for the upgrade; you are making it
available to all end users who paid for the earlier version.
3. In the Trialware Type area of the General tab, select the type of trialware that
you want to create.
4. In the License(s) area, click Acquire. The Acquire New License Wizard opens.
5. Complete the panels in the Acquire New License Wizard. The license server
downloads the license to your machine and stores it in the project file.
6. In the License(s) list, select the license that you just obtained.
If you are acquiring a license for Try and Buy/Product Activation trialware, the
license and product are added to the InstallShield Activation Service Publisher Web
Site.
Once you have specified the license, trialware type, and the executable file on the
General tab, the icon in the Trialware Files explorer changes from a warning icon ( )
to a protected trialware icon ( ). InstallShield cannot protect a file unless you
configure these settings. If you build your project when the warning icon is displayed,
a build error occurs (unless you have chosen to Excluding Trialware Protection from a
Release).
Table 18-1: Trial Limit and Extension Example for Try and Buy/Product Activation
Table 18-1: Trial Limit and Extension Example for Try and Buy/Product Activation (cont.)
NOTE If the end user activates the product, the trialware run-time dialogs are never displayed again.
For details about the end-user experience with activation, see Overview of the Activation
Process.
Table 18-2: Trial Limit and Extension Example for Try and Die
Date Description
January 1 An end user launches the trialware for the first time on this day.
Therefore, the trial period begins on this day, regardless of what day the
trialware was actually installed on the target machine.
January 1 through Whenever the end user launches the product, a trialware run-time dialog
January 20 is displayed before the product starts, informing the end user how many
days remain in the trial period. For example, on January 18, there are 3
days left in the trial period. If the Product Purchase URL property
contains a URL, the run-time dialog displays a hyperlink that the end user
can click to visit a Web page for information on purchasing the product.
When the end user clicks Next, the trialware run-time dialog closes and
the product starts.
Table 18-2: Trial Limit and Extension Example for Try and Die (cont.)
Date Description
January 21 through If the end user launches the product during this period, the trialware run-
January 30 time dialog is displayed to inform the end user that the trial period has
expired. If the Product Purchase URL property contains a URL, the run-
time dialog displays a hyperlink that the end user can click to visit a Web
page for information on purchasing the product.
If the end user clicks the icon in the upper-left corner of the dialog and
then clicks Sales Support, the run-time dialog prompts the end user for
the extension serial number:
• If the end user enters the correct extension serial number, the trial
period is extended through January 30 (even if the end user waits
until January 30 to extend the trial). When the end user clicks Next,
the trialware run-time dialog closes and the product starts.
• If the end user does not enter the correct extension serial number,
the trialware run-time dialog does not permit the end user to start
the product. The end user can try to re-enter the extension serial
number.
Note that the countdown for the number of days in the trial extension
period starts the day after the initial trial period ends. This occurs even if
the end user does not immediately extend the trial, but instead waits
several days after the trial period is over to extend it.
January 31 or If the end user tries to use the product, the product cannot be started. A
anytime afterward trialware run-time dialog is displayed to inform the end user that the trial
period has ended. If the Product Purchase URL property contains a URL,
the run-time dialog displays a hyperlink that the end user can click to
visit a Web page for information on purchasing the product.
Note that the end user can no longer extend the trial.
for the Try and Buy/Product Activation type of trialware and the Try and Die type of
trialware is the same, except where noted.
Table 18-3: The Effect of an Expiration Date on Trialware with the Days Type of Trial Limit
Scenario Result
The end user starts and The expiration date does not affect the trialware.
finishes the trial period and
the trial extension period
before the expiration date.
The end user starts the trial When the number of days remaining is displayed in the trialware
period before the expiration run-time dialogs, it will take into account the expiration date.
date; however, the trial
For example, if the trial limit is set to 30 days, but the end user
period is set to end after the
first launches the trialware 10 days before the expiration date,
expiration date.
the trialware run-time dialog states that 10 days remain in the
trial.
Note that even if trial extensions are allowed, the end user will
not be able to extend the trial because it would occur after the
expiration date.
The end user tries to start The end user cannot run the trialware. The trialware run-time
the trial period after the dialog states that the trial period has ended.
expiration date.
If the type of trialware is Try and Buy/Product Activation and the
end user tries to activate the product, the following run-time
error is displayed:
Table 18-4: The Effect of an Expiration Date on Trialware with the Uses Type of Trial Limit
Scenario Result
Before the expiration date, The expiration date does not affect the trialware.
the end user launches the
trialware the maximum
number of times that are
allowed for the initial trial
limit and the trial extension.
The end user starts using The end user can continue using the trialware until either of the
the product before the following occurs:
expiration date; however,
• The end user launches the trialware the maximum number
the end user does not
of times that are allowed.
(before the expiration date)
launch the trialware the • The current date is the expiration date (or after the
maximum number of times expiration date).
that are allowed. As soon as either of those conditions becomes true, end user
cannot run the trialware. The trialware run-time dialog states that
the trial period has ended.
If the type of trialware is Try and Buy/Product Activation and the
end user tries to activate the product after the expiration date,
the following run-time error is displayed:
InstallShield sets the value of the Expiration Date property to the date that you
specified.
If the type of trialware is Try and Buy/Product Activation, end users will not be able to
evaluate or activate your product after the expiration date, even if they have additional
days or uses remaining in their trial.
If the type of trialware is Try and Die, end users will not be able to evaluate your
product after the expiration date.
NOTE The expiration date does not affect how long the Try and Buy/Product Activation type of
trialware can remain activated. Activating this type of trialware before the expiration date will
make it permanently activated, unless end users deactivate the product by uninstalling it. If they
deactivate the product after the expiration date, they will not be able to reactivate it.
TIP If you want to end the life of a product that you distributed as the Try and Buy/Product Activation
type of trialware, you can do so at any time by disabling the product’s license. When you disable
a license, you are preventing end users from using any of its associated serial numbers to
successfully activate the product. To disable a license, you need to use the InstallShield
Activation Service Publisher Web Site. For more information, see the InstallShield Activation
Service Help Library.
To access the InstallShield Activation Service Help Library, log on to the InstallShield Activation
Service Publisher Web Site, and then click the Help link in the upper-right corner of any page.
The email activation method is presented as an option to the end user only if the end
user’s initial attempt to activate by Internet is unsuccessful
If you want end users to be able to activate your product by telephone, you can specify
a phone number that end users should call to request an offline activation. The phone
number that you specify should be your own organization’s phone number—typically,
the phone number for your customer support staff.
CAUTION The request codes and response codes that are used with phone activations are shorter than
the ones that are used with offline email activations; the shorter length of the codes makes it
possible to read the codes over the phone. However, short codes are not as secure as the
longer codes used with email activations. Therefore, Macrovision recommends that you carefully
consider the security risks associated with offline phone activation before offering it as an offline
activation method. Use of this option is at your own risk, and Macrovision accepts no
responsibility if your company experiences security issues.
Note that offline phone activation requires manual intervention by both the end user
and by one of your customer support employees; therefore, phone activation is more
costly for you to support than online activation. For more information about offline
activations, see Overview of the Activation Process.
• One or more locations. For example, if you have offices in North America and
Europe, you might want to provide one phone number for customers calling from
North America and a different phone number for customers calling from Europe.
• Other text strings, such as hours of operation.
The format for this property is:
Location1;Phone1|Location2;Phone2
Location1, Phone1, Location2, and Phone2 each represent a different text string. You
can add as many locations and phone numbers as necessary. Use a pipe (|) to separate
each set of locations and phone numbers.
For example, you can set this property to the following value:
North America (English);1-800-555-1234 (Mon. 12 a.m. - Sat. 12 a.m. US
Central)|Europe (English);+44 (0) 555 555 5678 (Mon. 6 a.m. - Sat.
6 p.m. GMT)
If the end user selects the Europe option, the following text is displayed in the
trialware run-time dialog:
Europe (English): +44 (0) 555 555 5678 (Mon. 6 a.m. - Sat. 6 p.m. GMT)
The following topics describe the end-user experience with Try and Die trialware and
provide sample run-time dialogs:
• Try and Die Dialog (Trial Has Not Expired)
• Try and Die Dialog (Trial Has Expired)
• Try and Die Dialog (Serial Number Required to Extend Trial)
• Try and Die Dialog (Trial Is Extended)
The following topics describe the end-user experience with Try and Buy/Product
Activation trialware and provide sample run-time dialogs:
• Try and Buy/Product Activation Dialog (Choose to Activate or Evaluate)
• Try and Buy/Product Activation Dialog (Enter Serial Number to Activate)
• Try and Buy/Product Activation Dialog (Activating via Internet)
• Try and Buy/Product Activation Dialog (Activation Is Complete)
• Try and Buy/Product Activation Dialog (Trial Has Expired)
• Try and Buy/Product Activation Dialog (Trial Is Extended)
• Try and Buy/Product Activation Message Box (Sample Error for Internet
Activation)
• Try and Buy/Product Activation Dialog (Retry)
• Try and Buy/Product Activation Dialog (Activate by Email)
• Try and Buy/Product Activation Dialog (Activate by Phone)
If an end user resets the machine’s date or time and then tries to run trialware, a
message box opens. For more information, see Trialware Message Box (System Clock
Change).
A walkthrough of the trialware run-time dialogs is available on the Macrovision Web
site.
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
In most cases, you may want to specify a page on your Web site as the URL. However,
you do have the ability to set a URL property with a mailto URL. If an end user clicks
a mailto URL hyperlink in one of the trialware run-time dialogs, a new email message
is opened in the end user’s email application, and the destination address is populated
in the To field.
For example, if you set the Feedback URL property to the following string, an email
message will open with feedback@mycompany.com in the To field whenever the
end user clicks the Feedback link.
mailto:feedback@mycompany.com
You can also specify the text for the Subject line with the following code, using %20 in
place of spaces:
mailto:feedback@mycompany.com?Subject=My%20Subject
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
Whenever an end user launches the Try and Die version of a product, a trialware run-
time dialog opens before the application starts.
If the trial has not expired, the trialware run-time dialog displays a message stating
how many days or uses remain in the trial, as shown in the sample dialog below for a
product called Try and Die. The end user can click the Finish button to begin using the
application.
This same dialog is also displayed if the end user has extended the trial and then
launched the product anytime before the trial extension expires.
Figure 18-4: Sample Try and Die dialog (Trial has not expired.)
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
Whenever an end user launches the Try and Die version of a product, a trialware run-
time dialog opens before the application starts.
If the trial has expired, the trialware cannot be started. The trialware run-time dialog
displays a message informing the end user that the trial has ended, as shown in the first
sample dialog below for a product called Try and Die.
When the end user clicks Finish, the trialware run-time dialog closes and the product
does not start.
If the trialware has been configured to allow an extension of the trial, InstallShield
adds a Sales Support menu command to this trialware run-time dialog. This command
is hidden on a menu in the dialog to encourage your prospective customers to
purchase the product rather than try to extend the trial.
If end users click the icon in the upper-left corner of the dialog, as shown in the second
dialog below, they can select this Sales Support command. Then the next run-time
dialog prompts the end user for the extension serial number.
Figure 18-5: Sample Try and Die dialog (Trial has expired.)
Figure 18-6: Sample Try and Die dialog (Trial extension is allowed.)
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
If the end user clicks Sales Support, as shown in the previous trialware run-time
dialog, the dialog shown below opens to enable the end user to enter the extension
serial number:
• If the end user does not enter the correct extension serial number, the trialware
run-time dialog does not permit the end user to start the product. The end user can
try to re-enter the extension serial number.
• If the end user enters the correct extension serial number and then clicks Next, the
trial is extended for the predetermined number of extension days or uses. When
the end user clicks Next, the next trialware run-time dialog opens.
Figure 18-7: Sample Try and Die dialog (Serial number required to extend trial.)
EDITION The Try and Die type of trialware is available in the Premier edition of InstallShield.
If the end user enters the correct extension serial number to extend the trial, the
trialware run-time dialog shows how many days or uses remain in the trial, as shown
in the sample dialog below. The end user can click the Finish button to begin using the
application.
Subsequent launches of an extended trial will show the Trial Is Extended dialog, as
long as the trial extension has not expired.
If the trial has not expired, the trialware run-time dialog presents two options: the
option to activate the product and the option to simply evaluate the product, as shown
in the sample dialog below for a product called Try and Buy.
If end users select the option to activate, the next trialware run-time dialog opens.
If end users do not want to activate the product, they can select the evaluation option
and then click the Finish button to begin using the application.
Figure 18-9: Sample Try and Buy/Product Activation dialog (Choose to activate or evaluate.)
so allows the end user to extend the trial limit (either a specified number of days or a
specified number of uses).
Figure 18-10: Sample Try and Buy/Product Activation dialog (Enter serial number to activate.)
Figure 18-11: Try and Buy/Product Activation dialog (Activating via Internet)
Figure 18-13: Try and Buy/Product Activation dialog (Trial has expired.)
Figure 18-15: Try and Buy/Product Activation message box (Sample error for Internet activation.)
where activate@mycompany.com is the email address that was configured for your
trialware. The end user needs to send that message to your organization, and then your
customer support staff needs to reply with a valid response code. (For more
information about email activation, see Allowing Offline Email Activations.) Then
one of the following occurs:
• If the end user enters the response code correctly in the Activation Response Code
box and then clicks Next, the product is activated and the next trialware run-time
dialog opens.
• If the end user enters the response code incorrectly and then clicks Next, an error
message box opens. When the end user clicks OK, the message box closes. The
same run-time dialog shown below remains open, enabling the end user to re-
enter the response code.
CAUTION Do not release the files in the TestTools folder with your product or make them available to your
customers. Doing so would enable end users to continually restart a trial each time that it
expires. Note that the TestTools files are specific to a particular product and license and cannot
be used to delete licenses for other products.
For each file being wrapped, the TestTools folder contains the following files:
• SCResetLicense<WrappedBaseFileName>.exe
• IsSvcInstSCResetLicense<WrappedBaseFileName>.dll
For example, if a file called Calc.exe is wrapped, the files in the TestTools folder are
SCResetLicenseCalc.exe and IsSvcInstSCResetLicenseCalc.dll.
You can use the TestTools files to remove the license for your product from a
machine, resetting the trialware state. This enables you to restart the trial for your
protected product and retest it. For more information, see Testing a Trialware Release
of Your Product.
TASK If end users want to extend a Try and Die trial, they need to:
1. Start the trialware product. The trialware run-time dialog displays a message that
states that the trial has ended.
2. Click the icon in the upper-left corner of the dialog, and then click Sales Support.
Figure 18-20: Sample Try and Die dialog (Trial extension is allowed.)
3. Enter the extension serial number that you have provided to them, and then click
Next.
Installing upgrades for applications is a much more common operation than installing
the original release of an application. This makes creating effective, reliable upgrades
a very important task.
“Updating Applications” provides solid background information on the different types
of upgrades and also clears up common misconceptions about patching. It helps you
determine the best upgrade solution for your product and guides you through the steps
of creating upgrades and patches. In addition, this section explains how you can use
the Update Service to notify end users that a new version of your product is ready for
release.
Upgrades Overview
The cost of maintaining software applications is often more expensive than the cost of
original development. This makes creating effective, reliable upgrades an important
task. Being able to distribute robust upgrades for an application depends on how the
original installation package was structured and distributed.
Windows Installer provides different methods for implementing three different
upgrade types: small update, minor upgrade, and major upgrade. Upgrades can be
packaged as either a full installation or a patch. A patch is simply another mechanism
for implementing a type of upgrade. With a patch, however, you deliver to your
customers only the bits required to change an installed file into a new file, unlike a full
release.
Major Upgrades
In a major upgrade, the product changes are large enough to merit changes to both the
product version number and the product code, as well as the package code. An
example is updating version 1.2 of a product to 2.0. A major upgrade acts like a first-
time installation if an earlier version is not present. If an earlier version is present, a
major upgrade typically uninstalls the earlier version and then installs the new version.
NOTE You can set the product code for your installation in the General Information view. It does not
matter what the new product code is, as long as it is unique.
Once you update the product code for your latest installation, you need to use the
Upgrade Paths view to specify information for any previous version or versions that
you want to upgrade. You can do this in the latest installation project for your product.
For more information about what is involved in creating an upgrade, see Creating
Full-Installation Upgrades.
Minor Upgrades
EDITION You can create a minor upgrade packaged as a full installation in InstallShield Premier Edition or
InstallShield Professional Edition. You can also create a minor upgrade packaged as a
QuickPatch project in InstallShield Premier Edition, InstallShield Professional Edition, or
InstallShield Express Edition.
A minor upgrade is a change to the product database and files large enough to merit a
change to the ProductVersion property but not to the ProductCode property. In
other words, both the package code and the product version number are different than
those in the earlier installation package, but the product code of the minor upgrade
does not change. An example is updating version 1.1 of a product to version 1.2.
Minor upgrades usually do not have significant changes to the installation
organization between versions. A minor upgrade packaged as a full installation acts
like a first-time installation if an earlier version is not present, or it installs over an
existing installation of a product. Essentially for an upgrade of an existing installation,
a minor upgrade installs the differences between your version 1.2 and 1.1 application.
Small Updates
EDITION You can create small updates in InstallShield Premier Edition or InstallShield Professional
Edition.
In essence, a small update is a type of upgrade used to modify a few files for an
installed application; it typically delivers small bug fixes. A small update consists of
product changes (such as hotfixes) so small that no change to the product version is
necessary or desired. A package code change is required for a small update.
A drawback to small updates installed with versions of Windows Installer earlier than
3.0 is that external programs, including installers for later versions of your product,
cannot distinguish between the original version and the updated version. In addition,
Windows Installer versions earlier than 3.0 cannot enforce the correct order in which
small updates should be applied.
Patching
EDITION You can create standard patches in InstallShield Premier Edition or InstallShield Professional
Edition.
QuickPatch Projects
A QuickPatch project is a specific type of project recommended for installation
authors who want to ship small, single updates to their users. Changes that are more
extensive such as adding custom actions and changing .ini data typically require a
standard patch.
QuickPatch authoring provides a simple alternative to creating a standard patch
(which is available in InstallShield Premier Edition and InstallShield Professional
Edition), even though it provides less customization. Fundamentally, both patch
creation methods produce the same deliverable types: .msp and .exe files.
With a QuickPatch, you can do any of the following:
• Add new files to the original installation or an earlier QuickPatch.
• Delete files in the original installation.
• Delete files that were added with an earlier QuickPatch.
• Perform the same set of above operations on registry entries.
• Remove custom actions that were included with the original installation but that
do not apply to the current QuickPatch project.
The creation of a QuickPatch project always begins with the Create New QuickPatch
Wizard. Completing the wizard ensures that all basic requirements for the QuickPatch
project are met. Then you can configure project settings once the QuickPatch project
opens in InstallShield.
Full-Installation Packages
A major upgrade acts like a first-time installation if an earlier version of the product is
not present. If an earlier version is present, a major upgrade typically uninstalls the
earlier version and then installs the new version.
QuickPatch Packages
QuickPatch packages enable you to distribute just the bits and portions of the database
necessary to update your application’s files to a specific version, possibly resulting in
a much smaller package than an upgrade packaged as a full installation. This enables
you to deploy your upgrades using much less bandwidth than that required to deploy a
full-installation package.
NOTE A patch is not a type of upgrade. Patching is simply a mechanism for distributing an upgrade
with a small footprint.
Also note the following details when you are determining what type of packing option
you should use to update an earlier version of your product:
• If the target image was created with Windows Installer 1.2 or earlier, and the
upgraded image is created with Windows Installer 2.0 or later, you should
package your upgrade as a full installation, but not as a QuickPatch. Creating a
QuickPatch for a package that spans this schema inflection point can be
problematic.
• If you want your upgrade to move one or more files on the target system from one
location to another, you should package your upgrade as a full installation, but not
as a QuickPatch. If your end users install a patch for an upgrade that moves files
on the target system, problems may occur. For example, the patch may not work, a
repair to the target system may not work, a subsequent patch may not work, or end
users may not be able to uninstall the product. As a workaround, you can create
your QuickPatch so that it deletes the files in the old location and adds the files to
the new location.
• If you want to change your installation from compressed to uncompressed, or vice
versa, you should package your upgrade as a full installation, but not as a
QuickPatch. If you use a QuickPatch in this scenario, a repair to the target system
may not work, a subsequent QuickPatch may not work, or the end user may not be
able to uninstall the product.
• If you need to move files from one .cab file to another, or if you need to change
the order of files in a .cab file, you should package your upgrade as a full
installation, but not as a QuickPatch.
• If your original installation had more than 32,767 files but your latest installation
has fewer than 32,767 files, a QuickPatch will fail. Similarly, if your original
installation had fewer than 32,767 files but your latest installation has more than
32,767 files, a QuickPatch will fail. In either case, you should package your
upgrade as a full installation.
Note that if both the original installation and the latest installation have more than
32,767 (or both have fewer than 32,767 files), you can package your upgrade as a
QuickPatch.
EDITION InstallShield Express Edition enables you to create major upgrades as full-installation packages
that remove an earlier version of the product if it is present on the target machine before
installing the new version. InstallShield Express Edition also enables you to create minor
upgrades packaged as QuickPatch packages. If you need to create small updates or standard
patches, consider upgrading to InstallShield Premier Edition or InstallShield Professional Edition.
Refer to the topics in this section to learn how to create upgrades and QuickPatch
projects.
Note that the setting for REINSTALLMODE applies to all of the features being
installed; it cannot be set for an individual feature. In addition, setting
REINSTALLMODE to include a will likely cause prompts for the original
installation source during the application of a patch.
Table 19-3: Codes that Need to Be Changed for the Different Types of Upgrades
Product
Package Code Product Code Upgrade Code
Version
Small Update X
Minor Upgrade X X
Major Upgrade X X X
start by creating a new Express project, or you can open the installation for the latest
version of your product and modify it as needed.
Note that a major upgrade signifies significant change in functionality and warrants a
change in the product code and the product version; you can update these values in the
General Information view.
NOTE When you change the product code, Windows Installer treats your latest and previous product
versions as unrelated, even though the ProductName values are likely the same. If you want
both versions of your product to be installable on the same system, you can simply change the
product code and the main installation directory (often INSTALLDIR).
Upgrade paths are for major upgrades only. The Upgrade Paths view is only for
upgrading an entire installation, and not for upgrading a few files (patching). If you
need patching capabilities, you can create a QuickPatch project.
If you do not use the Upgrade Paths view to create an upgrade for an earlier version of
the product, your end users may need to manually uninstall the earlier version of your
product before installing the new version. The Upgrade Paths view can handle both
the uninstallation of one or more products prior to upgrade, as well as the installation
of the new version. For example, if your users have both 1.0 and 2.0 of your product
installed on their system, and you release 3.0, you can use the Upgrade Paths view to
remove any or both of the earlier versions by adding two entries in the Upgrade Paths
explorer. Each upgrade path must have a separate entry in the Upgrade Paths explorer.
The following table shows the relationship between the product code and the upgrade
code through a first installation version and two product updates. If the upgrade paths
were set up based on this information, version 1.0 would upgrade to either version 1.1
or 2.0; version 1.1 would upgrade to 2.0.
Product
Product Code Upgrade Code
Version
1.0 {D73FFD24-6087-4D5A-82AB- {A00700B1-2345-6789-ABCD-
1F6B1A680433} EF0123456789}
1.1 {D73FFD24-6087-4D5A-82AB- {A00700B1-2345-6789-ABCD-
1F6B1A680433} EF0123456789}
2.0 {A1071CCE-11A1-11A2-B1A2- {A00700B1-2345-6789-ABCD-
B3000D067A34} EF0123456789}
For more information on creating an upgrade using InstallShield, refer to this section
of the InstallShield Help Library.
» If the installation for the version that you want to upgrade exists on your
system, browse to the .msi file or the .exe file and then click Open.
InstallShield copies the upgrade code from that earlier version for your
current project.
» If the installation for the version that you want to upgrade is not on your
system, click Cancel.
InstallShield adds a new upgrade item.
Patching Considerations
Following are some guidelines for creating QuickPatch projects.
Patch Sequencing
InstallShield enables you to specify the order that Windows Installer version 3.0 or
later should apply small-update patches to an installed product, regardless of the order
in which they are provided to the target machine. With patch sequencing data, you can
ensure that Windows Installer knows the intended relationships among the upgrades
packaged within a family of patches. Consequently, applying patch 1 of a product
after patch 2 has already been applied will register patch 1 without overwriting patch 2
files. For versions of Windows Installer earlier than version 3.0, the patch sequence is
ignored, and any small-update patches are applied to the product in the order that they
are provided to the target machine.
The patch sequencing functionality available with Windows Installer 3.0 and later
simplifies the patch creation process. The following sections show how.
possible earlier product states. The sample application lifecycle presented in the
following table illustrates the resulting complexity.
Table 19-5: Sample Application Lifecycle for Patches Applied with Versions of Windows Installer
Earlier than 3.0
Product
Application Package Previous Setups Targeted by Package
Version
1. Base installation 1.0 —
2. Minor upgrade 1.1 1.0
3. Minor upgrade 1.2 1.0, 1.1
4. Minor upgrade 1.3 1.0, 1.1, 1.2
5. Minor upgrade 1.4 1.0, 1.1, 1.2, 1.3
6. Major upgrade 2.0 1.0, 1.1, 1.2, 1.3, 1.4
Table 19-6: Sample Application Lifecycle for Patches Applied with Windows Installer 3.0
Patch
Product Previous Setups Targeted
Application Package Sequence
Version by Package
Number
1. Base installation — 1.0 —
2. Small update 1 1.0 1.0
3. Small update 2 1.0 1.0
4. Small update 3 1.0 1.0
Table 19-6: Sample Application Lifecycle for Patches Applied with Windows Installer 3.0 (cont.)
Patch
Product Previous Setups Targeted
Application Package Sequence
Version by Package
Number
5. Small update 4 1.0 1.0
6. Minor upgrade — 1.1 1.0
All of the small updates in the table above belong to the same patch family. Windows
Installer 3.0 and later uses the patch family to compare a small-update patch with all
of the other patches within the same family and determine the order in which each of
the patches should be applied to the target machine. Patch sequences are added to the
MsiPatchSequence table of the patch package database. This table defines the
relationships between patches that target the same family of patches.
Patch Uninstallation
Windows Installer 3.0 or later supports the uninstallation of patches for small updates
and minor upgrades; the patches to be uninstalled must have been installed with
Windows Installer 3.0 or later. When a patch is uninstalled, the product is returned to
the state it was in before the patch was uninstalled. With earlier versions of Windows
Installer, an end user who wants to remove a patch needs to uninstall the patched
product and then reinstall the product without applying the patch. In this case, any
patches that should not be removed must be reapplied.
End users can uninstall patches through Add or Remove Programs on systems running
Windows XP SP2 and later. For systems running Windows Installer 3.0 or later with
earlier versions of Windows, patches must be uninstalled from the command line. For
more information, see Uninstalling Patches in the Windows Installer Help Library.
The uninstallation of patches is not enabled by default because not all patches can be
uninstalled. For example, a major upgrade packaged as a patch cannot be uninstalled.
It is recommended that you thoroughly test the uninstallation of your patch before
deploying it to your end users. To learn more about patches that are not uninstallable,
see Uninstallable Patches in the Windows Installer Help Library.
Non-Administrator Patches
EDITION Non-administrator patches cannot be created with InstallShield Express Edition. In order to
create non-administrator patches, you must have InstallShield Premier Edition or InstallShield
Professional Edition.
Windows Installer 3.0 and later enables you to create patches that can be installed by
non-administrators. Non-administrator patches can be used if all of the following
criteria are met:
• The target machine must be running Windows Installer 3.0 or later on the
Microsoft Windows XP or later client platform. Server platforms are not
supported.
• The application was installed from a removable media such as a CD-ROM or
DVD.
• The application was installed in a per-machine context.
NOTE If the ALLUSERS property is overwritten at the command line, non-administrator patches will fail.
• The base installation must include the certificate that will be used to sign all
subsequent patches.
• The base installation must include the MsiPatchCertificate table. This table
provides the signer certificate that will be used to verify the digital signature of
subsequent patches when they are applied by a non-administrator. If necessary,
this table can contain multiple certificates, and subsequent patches would need to
be able to verify at least one of the certificates. For more information, see
Preparing Installations for Non-Administrator Patches.
• The non-administrator patch must contain the MsiDigitalCertificate table. This
table contains the signing certificates for the signed patches.
If any of the above criteria are not met, end users cannot install the digitally signed
patch in a locked-down environment.
A typical scenario in which non-administrator patches are used is the computer game
industry. Some computer game users are children who might not have access to areas
of the system other than folders in their own user profile and registry keys under
HKEY_CURRENT_USER. Their parents would have administrative access to the
machines so that they can control what is installed and what their children can access.
Parents would install any and all applications. If patches are available for the installed
software, children would be able to download and install non-administrator patches
without help from their parents, as long as all of the above criteria have been met.
NOTE You can create a QuickPatch to update an earlier version of your product only if the earlier
version was installed using Windows Installer.
A QuickPatch project is recommended for installation authors who want to ship small,
single upgrades to their users. QuickPatch authoring provides a simple alternative to
creating a patch in the Patch Design view, even though it provides less customization.
Fundamentally, both patch creation methods produce the same deliverable types: .msp
and .exe files.
To create a QuickPatch project for an existing .msi file or an already existing
QuickPatch, use the Create New QuickPatch Wizard. Completing the wizard ensures
that all basic requirements for the QuickPatch project are met.
CAUTION If you open and modify any of the releases listed in the History of the General Information view,
your latest project will not work, since intermediate data shared across the releases in the
History may have been lost or altered. Therefore, whenever you create a QuickPatch project for
an existing QuickPatch project, InstallShield changes the existing QuickPatch project (.ise file) to
read-only mode.
1. In InstallShield, open the QuickPatch project (.ise file) that you would like to
patch.
2. Open the General Information view.
3. In the General Information explorer, click History.
4. Click Create Next Version.
3. Select or clear the check boxes next to the intermediate releases—the releases in
between the Base QuickPatch Image and the current QuickPatch image—to
specify whether or not you want them to be patched by the current project.
NOTE You cannot clear the check box for the Base QuickPatch Image or the current project. If you
clear the check box of an intermediate QuickPatch project, your current QuickPatch project
cannot be used to upgrade a machine that has that intermediate image as the latest image of
your application.
For example, suppose you distributed version 1.0 as an installation and later released a patch
that upgrades the original installation to version 1.1. If you create a version 1.2 QuickPatch and
the check box for the 1.1 QuickPatch is not selected in the History, your 1.2 QuickPatch can be
used to upgrade the 1.0 release but not the 1.1 release.
TASK To specify which custom actions should be run when your QuickPatch is applied:
1. In the General Information view, click Build Settings, and then click the
Uninstall tab.
2. Select the Allow this patch to be uninstalled check box.
3. Define the patch metadata. The metadata is used to populate uninstall information
in Add or Remove Programs for a QuickPatch.
1. In the General Information view, click Build Settings, and then click the
Advanced tab.
2. Do one of the following:
» To use default patch sequencing that InstallShield generates, set the Create
patch sequencing entry property to Yes.
» To use no patch sequencing, set this property to No.
EDITION Non-administrator patches cannot be created with InstallShield Express Edition. In order to
create non-administrator patches, you must have InstallShield Premier Edition or InstallShield
Professional Edition.
TIP As an alternative to steps 3 and 4 above, you can drag and drop files or folders from the
Original Setup Files explorer to the Files To Patch explorer.
TIP To change any registry settings that you modified for the QuickPatch project, you can right-click
the item and then click Revert.
Applying a QuickPatch
A QuickPatch package (.msp) file contains the transforms and instructions necessary
for upgrading one or more installed versions of a product.
Before you can apply a QuickPatch package, Windows Installer version 1.1 or later
must be present on the system. In addition, the package that you want to update must
be installed locally or as an administrative image. A further requirement is that the
existing installation package be installed with the same privileges and for the same
users as the QuickPatch package. For example, if the product was installed for all
users, the update should be installed for all users, as well.
The easiest way to apply a QuickPatch is to double-click the .msp file in Windows
Explorer or right-click the file and then click Open. When you apply a patch for a
minor upgrade, a PatchWelcome dialog is the first dialog that opens. When you apply
a patch for a major upgrade, the full dialog sequence appears, as when you run an
installation standalone.
From the command line, you can apply a patch with the MsiExec.exe /p option. Type
the following statement to apply a patch package located at X:\Product
Updates\Build 36\PatchForV1.msp:
If you selected the Create Update.exe check box for your QuickPatch configuration in
the Build Settings area of the General Information view, InstallShield wraps your
.msp file in an executable file. Update.exe launches your patch package with the
following command-line expression:
msiexec /p <path to .msp file> REINSTALL=ALL REINSTALLMODE=omus
When a QuickPatch package is applied with a full user interface, one of your
installation’s default dialogs, PatchWelcome, is displayed. It includes control events
to set REINSTALL and REINSTALLMODE with the correct options. However,
since this dialog is not displayed when the end-user interface is suppressed, you must
set the properties at the command line, as demonstrated below:
msiexec /p <path to .msp file> /qn REINSTALL=ALL REINSTALLMODE=omus
Because a QuickPatch does not modify the existing cached .msi database, including
the v setting for REINSTALLMODE is unnecessary.
customers, you perform the update deployment cycle of steps. To learn about the
initial deployment steps, see Preparing Installations for Update Notification.
Update Deployment
1. Use InstallShield to create an update for your application.
2. Register your new product version and product code with the Update Service
Publisher Web Site, a Web-based management portal.
3. Publish your update to the Update Service Publisher Web Site, and set the
Message Status to Test.
4. Test your update.
5. Publish your update to the Update Service Publisher Web Site, and set the
Message Status to Active.
To learn more about the capabilities of the Starter Edition, visit the Macrovision Web
site. To access the Update Service documentation, see the Update Service Help
Library.
users run, you might want to include more than one version of the Windows Installer
engine with your installation package.
1. Create a backup folder to hold the Windows Installer 2.0 engines, should you need
to reverse the procedure.
2. Copy MSIEng.isc and Setup.ini from the InstallShield Program Files
Folder\Support directory to the backup folder.
3. Copy instmsiA.exe and instmsiW.exe from the InstallShield Program
Files Folder\Redist\Language Independent\i386 directory to the backup
folder.
4. Copy MSIEng.isc and Setup.ini from the InstallShield Program Files
Folder\Redist\Language Independent\i386\MSI 1.2 directory to the
InstallShield Program Files Folder\Support directory.
5. Copy instmsiA.exe and instmsiW.exe from the InstallShield Program
Files Folder\Redist\Language Independent\i386\MSI 1.2 directory to the
InstallShield Program Files Folder\Redist\Language
Independent\i386\ directory.
6. Change string 1150 in the language-specific .ini file (0x409.ini for English,
0x0411 for Japanese, etc.) in the InstallShield Program Files
Folder\Support directory to indicate that Windows NT 4 SP3 is required, instead
of SP6.
7. Update the Windows Installer version number in the registry:
a. On the Windows Start menu, click Run. The Run dialog box opens.
b. In the Open box, type regedit.
c. Navigate to registry key
HKEY_LOCAL_MACHINE\SOFTWARE\InstallShield\11.50\Express.
d. Double-click the Msi Version value.
e. Change the Value data to 1.20.1827.0 and click OK.
f. Close the Registry Editor.
8. Launch InstallShield, and either open an existing project or create a new project.
9. Open the Build Your Release view.
10. In the Builds explorer, click WebDeployment.
11. If you are enabling Web download of the Windows Installer engines, change the
value of URL for MSI 9x Engine to
www.Installengine.com\Msiengine\instmsia.exe and the value of URL for
MSI NT Engine to www.Installengine.com\Msiengine\instmsiw.exe.
After you have finished this procedure, when you include Windows Installer engines
in an installation, InstallShield includes the Windows Installer 1.2 engines.
The last step must be repeated for each separate project for which you include the
Windows Installer 1.2 engines for download.
TASK To reverse the procedure and include the Windows Installer 2.0 engines:
1. Copy MSIEng.isc and Setup.ini from your backup folder to the InstallShield
Program Files Folder\Support directory.
2. Copy instmsiA.exe and instmsiW.exe from your backup folder to the
InstallShield Program Files Folder\Redist\Language
Independent\i386\ directory.
3. Change string 1150 in the language-specific .ini file (0x409.ini for English,
0x0411 for Japanese, etc.) in the InstallShield Program Files
Folder\Support directory to indicate that Windows NT 4 SP6 is required, instead
of SP3.
4. Update the Windows Installer version number in the registry:
a. On the Windows Start menu, click Run. The Run dialog box opens.
b. In the Open box, type regedit.
c. Navigate to registry key
HKEY_LOCAL_MACHINE\SOFTWARE\InstallShield\11.50\Express.
d. Double-click the Msi Version value.
e. Change the Value data to 2.0.2600.1 and click OK.
f. Close the Registry Editor.
Once the process has been reversed, your installations will include the Windows
Installer 2.0 engines when you include Windows Installer engines in your release.
order to run properly, you can indicate that in your installation project. If the target
system does not meet the requirement, the installation exists.
Icon Description
The software condition must be true in order for the installation to proceed.
The software condition must be false in order for the installation to proceed.
The software condition is not checked and does not affect the installation.
4. To add a new software condition to the existing requirements list, right-click the
System Software Requirements explorer and click Create New Condition
(System Wizard).
Property Description
SOURCEDIR This property stores the root directory where all the source files are
located.
Property Description
SETUPEXEDIR The SETUPEXEDIR property contains the path to Setup.exe. For
example, if the path to Setup.exe is C:\MySetups\MyApp\Setup.exe,
the value of SETUPEXEDIR is C:\MySetups\MyApp.
Property Description
CommonFilesFolder The value of this property is the full path to the Common Files folder
for the current user.
DesktopFolder This property is used to hold the full path to the Desktop folder for
the current user. If the installation is being run under NT/2000/XP
for All Users, and the ALLUSERS property is set, then the
DesktopFolder property should hold the full path to the All Users
desktop folder.
FavoritesFolder The FavoritesFolder property retains the full path to the Favorites
folder for the current user.
FontsFolder This property holds the full path to the Fonts folder.
PersonalFolder This property holds the full path to the current user’s Personal
folder.
ProgramFilesFolder This property holds the full path to the current user’s Program Files
folder.
ProgramMenuFolder This property is used to hold the full path to the Program menu for
the current user. If the installation is being run under NT/2000/XP
for All Users, and the ALLUSERS property is set, then the
ProgramMenuFolder property should hold the full path to the All
Users Program menu.
SendToFolder This property holds the full path to the current user’s SendTo
folder.
StartMenuFolder This property is used to hold the full path the Start menu folder for
the current user. If the installation is being run under NT/200/XP for
All Users, and the ALLUSERS property is set, then the
StartMenuFolder property should hold the full path to the All Users
program menu.
StartupFolder This property is used to hold the full path to the Startup folder for
the current user. If the installation is being run under NT/200/XP for
All Users, and the ALLUSERS property is set, then the
StartupFolder property should hold the full path to the All Users
program menu.
System16Folder This property holds the full path to the folder containing the
system’s 16-bit DLLs.
SystemFolder This property holds the full path to the System folder.
TempFolder This property holds the full path to the Temp folder.
TemplateFolder This property holds the full path to the current user’s Template
folder.
WindowsFolder This property holds the full path to the Windows folder.
WindowsVolume This property is set to the drive where Windows is installed.
TIP Sample code for a serial number validation .dll file can be found in the InstallShield
Program Files Folder\Samples\ValidateSerialNumber directory. For more information,
see Serial Number Validation.
6. In the Validate Function field, enter the name of the .dll file function that
performs the validation.
7. Set the Success Return Value field to a number other than 0.
8. In the Retry Limit field, specify the number of times that you want to allow an
end user to attempt to enter the serial number.
9. Configure the Show All Users Option field as appropriate.
When an end user enters a serial number in the Customer Information dialog, it is
passed to your .dll file for verification. If the serial number is successfully verified, the
installation can continue. If the serial number is invalid, the installation will end,
depending on how many retries you allow in the Retry Limit field.
During Installation
During installation, you can access the value of ISX_SERIALNUM by using code
such as in this VBScript sample:
' Get the value of Serial Number
Dim sSerialNo
sSerialNo= Session.Property("ISX_SERIALNUM")
After Installation
Following installation, you can still access the serial number. However, you must first
obtain the product code, which can be found in the General Information view. After
you have obtained the product code, use the following sample code (in C++) to obtain
the serial number.
IMPORTANT You must have the Windows Installer SDK installed, or the following sample code will not compile
correctly.
#include "stdafx.h"
#include "msi.h" //make sure the directory location of msi.h is
included in the include path
#pragma comment( lib, "msi" ) //make sure the directory location of
msi.lib in included in the library path
::MsiGetUserInfo("{03C4D218-638B-4402-9D59-6A4B19229736}",
chUserName, &dwUserName, chCmpName, &dwCmpName,
chSrNum, &dwSrNum);
return 0;
}
With this version of InstallShield, you can create your installation projects directly in
Microsoft Visual Studio .NET. InstallShield enables you to create, modify, or build
your installation from within Microsoft Visual Studio .NET. It also offers wizards for
Microsoft Visual Basic .NET and Microsoft Visual C# .NET.
Integration Features
InstallShield is fully integrated within the Visual Studio .NET shell. Some of the
unique features of the integration effort include:
• All InstallShield navigation is presented within the Solution Explorer.
• Each InstallShield view is presented in a separate window so no scrolling is
necessary and side-by-side viewing options are available.
• You can run InstallShield external to Visual Studio .NET.
• Dynamic links to other Visual Studio .NET projects exist, so the new contents of
output groups are included in the installation.
Integration Benefits
Some additional benefits of using the integrated installation authoring solution with
InstallShield are:
• You can create and customize your installation without leaving the Visual Studio
.NET IDE, enabling use of familiar navigation and layout options.
• Your installation is automatically updated with your latest source files every time
your solution is built, always staying current.
• The installation reflects the Build Configuration for the solution, e.g., Debug,
Release, automatically included source files from the proper build directory.
TASK To create an InstallShield project from with Microsoft Visual Studio .NET:
1. On the File menu, click New Project. The New Project dialog box opens.
2. In the Project Types window, select InstallShield Express Projects.
TASK To open an InstallShield project from with Microsoft Visual Studio .NET:
1. On the File menu, point to Open and then click Project. The Open Project
dialog box opens.
2. Browse to the InstallShield file you want to open.
3. Click Open.
NOTE Files created in InstallShield Professional or pre-3.x versions of InstallShield Express cannot be
opened.
1. The Visual Studio Solution item in the Source computer’s folders pane contains
subitems for all projects contained in the current solution. Click a project to
display the output groups for the project. The output groups are displayed in the
Source computer’s files pane.
2. To add a reference to an output to your installation project, drag and drop the
output to the target folder in the Destination computer’s folders pane.
project in Visual Studio .NET, the project has a default product configuration with
two default releases—Debug and Release.
Building a Release
Command Description
Build Solution Builds the entire solution, according to what is mapped in the
Configuration Manager for each project included in the solution.
Build Setup Name Build only the setup project, according to the release specified in
the Project Configuration column of the Configuration Manager.
NOTE If the Build check box is deselected and you build the solution, the deselected project
configuration is not built.
TASK The recommended way to add a .NET assembly to your installation project is as follows:
1. In the Files and Features view, create a feature to hold the .NET assembly.
2. Add the .NET assembly to the feature.
3. Set the project to scan for dependencies by running the Static Scanning Wizard.
The .NET assembly’s values are added during the scan.
Section Description
Menu, Toolbar, and Window Describes the various components of the InstallShield user
Reference interface, including menus, toolbars, and windows.
Dialog Box Reference Contains reference information on each of the dialog boxes that
are displayed in InstallShield.
Wizard Reference Provides details about each of the wizards that are available in
InstallShield.
View Reference Describes each of the views that are displayed in InstallShield.
Errors and Warnings Provides information about error codes and warnings that might
occur when you create, build, or run your installation. This
section also includes reference information about errors and
warnings that may occur when you migrate a project from an
earlier version of an InstallShield product to the latest version.
Command-Line Tools Introduces tools that you can use from the command line to
perform tasks such as building a release and running an
installation.
End-User Dialogs Serves as a reference for all end-user dialogs available through
the Dialogs view in InstallShield.
This section describes the various components of the InstallShield user interface,
including menus, toolbars, and windows.
Menus
The menus in InstallShield are located on the menu bar, which is at the top of the
InstallShield user interface. Each menu contains a list of commands. Some of these
commands have icons next to them so that you can quickly associate the command
with the icon.
Each of the menus in InstallShield is described in this section:
• File
• Edit
• View
• Go
• Project
• Build
• Tools
• Help
File Menu
The following table lists the File menu commands, as well as associated keyboard
shortcuts and icons.
Edit Menu
The following table lists the Edit menu commands, as well as associated keyboard
shortcuts.
View Menu
The following table lists the View menu commands, as well as associated keyboard
shortcuts and icons.
Go Menu
The following table lists the Go menu commands, as well as associated keyboard
shortcuts and icons. Some of the view-related commands are not available from the
Go menu, depending on which project type you have open in InstallShield.
Next View Alt + Down Arrow Takes you to the view directly below the
current view as shown in the View List.
Back Alt + Left Arrow Takes you to the view that you last visited in
the history of your view selections. You can
use this multiple times, as long as there are
multiple entries in your view history.
Forward Alt + Right Arrow Takes you to the next view in the history of
your view selections. You can continue until
you reach the view you were at when you
first clicked Back.
Start Page Takes you to the Start Page.
Project Menu
The following table lists the Project menu commands.
Command Description
Visual Basic 6.0 Launches the Visual Basic 6.0 Wizard.
Wizard
Perform Static Scan Launches the Static Scanning Wizard
Perform Dynamic Scan Launches the Dynamic Scanning Wizard
Import String Table Launches the Import String Table Wizard.
Export String Table Launches the Export String Table Wizard
Command Description
Convert to Express Converts your Compact project to an Express project. For more
Project information, see Converting Express Projects to Compact Projects and
Vice Versa.
Convert to Compact Converts your Express project to a Compact project. For more
Project information, see Converting Express Projects to Compact Projects and
Vice Versa.
DemoShield Browser Launches the DemoShield Browser Wizard.
Wizard
Settings Launches the Msi Log File Settings dialog box.
Build Menu
The following table lists the Build menu commands, as well as associated keyboard
shortcuts and icons.
Tools Menu
The following table lists the Tools menu commands, as well as associated icons.
Help Menu
The following table lists the Help menu commands, as well as associated icons.
About InstallShield Displays the About InstallShield dialog box, where you
Express can find version information and register InstallShield.
Toolbars
The InstallShield user interface offers the Standard toolbar, which gives you quick
access to frequently used menu commands. You can create your own custom toolbars
or customize the Standard toolbar to fit your needs. Toolbars can be resized and
repositioned, and docked and undocked.
Standard Toolbar
The following table describes all of the buttons on the Standard toolbar.
Open Launches the Open dialog box, which enables you to open an
existing installation project.
Save Saves the current project file.
Viewbar Hides or shows the viewbar, which appears on the left side of the
interface.
View List Hides or shows the View List, which shows all the views available
in the InstallShield interface.
Output Window
The Output window opens across the bottom of InstallShield when you build your
project. It also provides information about your project during project conversion. The
following tabs appear in the Output window:
Tab Description
Output Stores distribution output information and displays build
output; a link to the output file saved as a text file will be
active.
Tasks Provides descriptions of any errors and warnings that occur
when you build your project; each error or warning code
displayed will link to an article in the Knowledge Base.
Each of the dialog boxes available in the user interface of InstallShield is described in
this section:
• Application Extension Mapping Dialog Box
• Application Mappings Dialog Box
• Browse for a Destination File Dialog Box
• Browse for Directory/Set INSTALLDIR Dialog Box
• Condition Builder Dialog Box
• Dependencies Dialog Box
• Destination Folder Dialog Box
• Dialog Images Dialog Box
• Edit Binary Value Dialog Box
• Edit DWORD Value Dialog Box
• Edit Registry Data Dialog Box
• Edit String Value Dialog Box
• Error Mapping Properties Dialog Box
• File Association Properties Dialog Box
• File Details Dialog Box
• File Properties Dialog Box
• File Properties Dialog Box (Windows Mobile)
• Folder Properties Dialog Box
• Merge Module Configurable Values Dialog Box
• Merge Module Properties Dialog Box
• MSI Value Dialog Box
Setting Description
Executable Type the path, or click Browse to launch the Select Executable
dialog box. This enables you to specify the executable in your
project to which you want to map. Type the name of the executable
file (.exe or .dll) or use the Browse button to search for the file. The
executable file must be located on your Web server’s local hard
drive.
Extension Type the file name extension associated with your application (for
example, .abc) or an asterisk (*).
Verbs The Verbs section enables you to specify which HTTP verbs should
be passed to the application.
• All verbs—Select this option to include all verbs. This option
passes all requests to an application.
• Limit to—Select this option to specify the HTTP verbs that
should be passed to an application. Separate verbs with a
comma.
Setting Description
Script Engine If you want the application to run in a directory without Execute
permissions, select this check box. This setting is intended
primarily for script-based applications, such as ASP and IDC, that
are mapped to an interpreter.
For a script-mapped application to run, either the Scripts Only or
Scripts and Executables option must be selected for the Execute
Permissions property. To allow only script-mapped applications to
run, select the Scripts Only option. To allow both script-mapped
applications and executable files (.exe and .dll) to run, select
Scripts and Executables.
Check that file exists To instruct the Web server to verify the existence of the requested
script file and to ensure that the requesting user has access
permission for that script file, select this check box.
If the script does not exist or the end user does not have
permission, the appropriate warning message is returned to the
browser and the script engine is not invoked. This option can be
useful for scripts mapped to non-CGI executable files like the Perl
interpreter that do not send a CGI response if the script is not
accessible.
NOTE If an asterisk (*) appears in the Verbs column, all verbs will be used for the specified extension.
Setting Description
Add To add an entry for mapping a file name extension and the program
or interpreter that processes those files, click this button. This
opens the Application Extension Mapping dialog box.
Edit To edit an existing application mapping, select the mapping and
click this button.
Delete To delete an existing application mapping, select the extension and
click this button.
Session timeout (minutes) Specify the number of minutes that a session can remain idle
before the server terminates it automatically. If the end user does
not refresh or request a page within the timeout period, the session
ends. The default value is 20 minutes.
ASP Script timeout Specify the length of time in seconds that .asp pages will allow a
(seconds) script to run before terminating and writing an event to the
Windows Event Log. The minimum value for this property is 1
second and the default value is 90 seconds.
Destination Directories
This field lists all of the currently available destination directories. You can select,
create, rename, or delete directories in this field.
Selecting a Directory
Renaming a Directory
Deleting a Directory
Select a directory and press DELETE. Note that you cannot delete predefined
directories.
When you delete a directory, any subdirectories beneath the selected directory are also
deleted.
Directory Identifier
You can use the Directory Identifier box to provide a user-friendly name for a
directory.
NOTE The directory identifier must be a valid MSI identifier. For features, the directory identifier must
contain all capital letters.
Click the ellipsis button (...) in the Condition field for either a feature or a custom
action.
NOTE You cannot create conditions for the Always Install feature.
Software Tab
On the Software tab, you can create software requirement condition. If the software
specified in this tab is not found on the target system, the associated feature is not
installed or the custom action is not executed.
found on the target system, set the check box to the green checked state . To set the
check box to this state, click it until the green check mark appears in the box.
To run a custom action or install a feature only if the software is not installed on the
target system, set the check box in front of the software to the red “X” ( ). To set the
check box to this state, click it until the red “X” appears in the box.
An empty check box ( ) indicates that the condition is not based upon the software in
any way. To void a software condition, click the check box until it is empty.
Feature Tab
NOTE The Feature tab applies only to conditions created for custom actions.
On the Features tab, you can select the feature requirements for the custom action’s
condition. The custom action will only run if the selected features are set to be
installed.
NOTE This is enabled only for portable executable files (for example, EXE, DLL, or OCX) and when the
.NET Scan at Build property is set to Dependencies and Properties (via the COM and .NET
Settings tab in the File Properties dialog box). If the dependency or one of its dependencies
cannot be located, a red icon is displayed.
Dependency
This section lists all of the dependencies with a check box next to each. To exclude a
dependency from the build, deselect the check box next to the dependency. To close
the dialog box, click OK.
NOTE Any new dependencies detected at build time—for files added after closing the Dependencies
dialog box—are added to the build.
Adding Folders
1. Click the folder under which you want to add a new folder.
2. Click New Folder. A new folder is created directly beneath the existing folder.
3. Type a name for the new folder.
Renaming Folders
Removing Folders
Select the folder and click Delete, or right-click a folder and click Delete.
NOTE Some folders are predefined by the Windows Mobile operating system and cannot be renamed
or removed. Only user-defined folders can be renamed or removed.
Banner Image
Browse to a graphic file that will run across the top of interior dialogs. Interior
dialogs, which appear between the first and last installation dialogs, include the
LicenseAgreement and CustomSetup dialogs. The banner .bmp graphic should be 499
by 58 pixels.
Value Name
Specifies the name of the value being modified. This is a read-only property. To
rename the value, use the Registry Information panel.
Value Data
The binary data that should be stored in the registry value.
Platform
A list of platform types (Palm-size PC, Handheld PC, PocketPC, Smartphone, etc.) on
which the registry value can be created.
NOTE The Platform option is available for Windows Mobile devices only.
Processor
The type of processor on which the registry value can be created.
NOTE The Processor option is available for Windows Mobile devices only.
Value Name
Specifies the name of the value being modified. This is a read-only property. To
rename the value, use the Registry Information panel.
Value Data
The DWORD data that should be stored in the registry value.
Base
Specifies whether the value to be stored is represented as a hexidecimal or decimal
number. Whenever this selection is changed, the value will automatically be
converted to the appropriate type.
Platform
A list of platform types (Palm-size PC, Handheld PC, PocketPC, Smartphone, etc.) on
which the registry value can be created.
NOTE The Platform option is available for Windows Mobile devices only.
Processor
The type of processor on which the registry value can be created.
NOTE The Processor option is available for Windows Mobile devices only.
Setting Description
Value Name The value name is read-only in this dialog box. To change the name of
a value, exit this dialog box, select the value you want to rename, and
press F2.
Value Data Enter the data for this registry value as you want it to appear on the
target machine.
Value Name
Specifies the name of the value being modified. This is a read-only property. To
rename the value, use the Registry Information panel.
Value Data
The text that should be stored in the registry value.
Platform
A list of platform types (Palm-size PC, Handheld PC, PocketPC, Smartphone, etc.) on
which the registry value can be created.
NOTE The Platform option is available for Windows Mobile devices only.
Processor
The type of processor on which the registry value can be created.
NOTE The Processor option is available for Windows Mobile devices only.
Setting Description
Source File The full path and file name of the source file on the desktop
computer to be included in the installation.
Platform List of platform types supported by the file.
Processor The type of processor that is required to execute the file.
Setting Description
Minimum Version The search is successful if the file exists on the target system and
the version is higher than the version entered.
Setting Description
Minimum Size The search is successful if the file exists on the target system and
is equal to or larger than the size indicated (in bytes).
Maximum Size The search is successful if the file exists on the target system and
is smaller than or equal to the size indicated (in bytes).
Languages Click the Browse (...) button to display the Languages dialog box.
You can select multiple languages as a condition of your search.
The search is successful if at least one of the languages listed is a
match.
NOTE The information you provide in the edit fields is optional. You can leave any field blank.
General Tab
The General tab of the Properties dialog box lets you specify the properties for a file
when it is installed onto the target system.
Table 24-6: Settings for the General Tab on the File Properties Dialog Box
Setting Description
Location This specifies the file directory.
Table 24-6: Settings for the General Tab on the File Properties Dialog Box (cont.)
Setting Description
Font Title If you are installing a font, you can specify the font title here in the
format FontTitle (FontType)—for example, Roman (All res).
InstallShield provides the name of the font for you if it is registered
on your system.
Do not specify a font title for .ttf or .ttc fonts, because Windows
Installer reads the embedded font name and registers it for you.
Thus, for .ttf or .ttc files InstallShield marks this field [Title read
from file]. You must specify a title for fonts that do not have
embedded names, such as .fon files.
Override system Clear this check box to install this file using the same system
attributes properties that are currently set for this file on the development
system. Select this check box to override any of the following
properties:
• Read-only—Select the check box for this property if you
want the file to be read-only when it is installed.
• System—Select the check box for this property if you want
the file to be installed as a system file.
• Hidden—Select the check box for this property if you want
the file to be hidden when it is installed.
• Vital—Select the check box for this property to indicate that
this file is vital to the operation of its feature. A vital file’s
feature will not be installed if it cannot be installed for any
reason. The end user will see an error message with Retry and
Cancel buttons if a vital file cannot be installed, instead of the
usual Abort, Retry, and Ignore buttons.
• Use File Hash—File hashing is available for unversioned files
only. Windows Installer can use file hashing to detect and
eliminate unnecessary file copying. A file hash stored in the
MsiFileHash table can be compared to a hash of an existing
file on the target machine obtained by calling
MsiGetFileHash.
Override system size This property contains the size, in bytes, of the file. To override the
system value, select the check box and type the file size in the Size
box.
Override system version The property contains the file’s version, if any. To override the
system value, select the check box and type the version in the
Version box.
Override system language To override the system language, select this check box and type
the file’s language identifier code in the Language box. The default
language is English (1033). Separate multiple language IDs with a
comma. Font files should not be authored with a language ID
because fonts do not have an embedded language ID resource.
Leave this entry blank for font files.
Click Permissions to launch the Permissions dialog box, where you can set
permissions for the file.
Table 24-7: Settings for the COM & .NET Tab on the File Properties Dialog Box
Setting Description
Registration Type This property enables you to indicate how you want your file to be
registered. Depending on the file type, you can select from the
following options:
• None—Select this option if you do not want the selected file
to be registered on the target machine. This is the default
setting for all files.
• Extract COM Information—Select this option if you want
InstallShield to extract all COM registration data from your file
and register it on the system during setup. This is the
recommended way to register COM objects.
• Self-Registration—If your file supports self-registration, you
can choose this option. Note that self-registration is not as
reliable as having Windows Installer register and unregister the
file with extracted COM information.
Scan at Build If you want to scan for .NET dependencies or properties at build-
time, select one of the following options:
• None—Choose this if you do not want to scan for .NET
dependencies or properties.
• Properties Only—Scan only for .NET properties.
• Dependencies and Properties—Scan for both .NET
dependencies and properties. Add missing dependencies and
properties to the installation project.
Application File This property is used when your project is scanned at build time.
The scanner uses this property along with other information to
determine the value of the File Application property for the
assembly.
Installer Class Select this option to ensure that at installation time, the assembly’s
Install, Commit, Rollback, and Uninstall methods will be called at the
appropriate time.
COM Interop Select this option to enable the .NET COM interop for the assembly.
At installation, registry entries are created on the target system
that allow COM objects to call your assembly.
Advanced Tab
On the Advanced tab of the File Properties dialog box, you can specify how a file will
be registered and which operating systems you want the file installed on.
Table 24-8: Settings for the Advanced Tab on the File Properties Dialog Box
Setting Description
Target operating system There may be cases where you need to install a different version of
a file depending on the operating system of the target system. With
the Target operating system property you can specify for which
operating systems your file is intended. See Specifying Operating
System Requirements for Your Application.
Select the All operating systems check box to install your file under
any supported platform. This option is selected by default. Clear
this box to select the specific operating systems your file targets.
Installation/Uninstallation In the Installation/Uninstallation Properties area, you can indicate
Properties how you want the installer to handle this file with regard to
installation and uninstallation. Valid options are:
• Permanent—Select this option if you want this file to
permanently remain on the target system. The installer does
not remove this file during an uninstallation.
• Shared—Select the Shared check box to instruct the installer
to reference count, or "refcount" this file.
When a file is marked as shared, Windows Installer creates a
refcount if one does not exist or increments it if it does. While
Windows Installer maintains a separate tally of all shared files,
the standard refcount is stored under the following registry
key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curre
ntVersion\SharedDLLs
This count is decremented when the file is uninstalled.
Table 24-8: Settings for the Advanced Tab on the File Properties Dialog Box (cont.)
Setting Description
File overwrite properties In the File overwrite properties area, you can indicate how you want
the installer to handle this file if it already exists on the target
system.
Windows Installer Versioning Rules (Recommended)—If you
select this option, Windows Installer versioning rules are used to
determine whether a file that already exists on the target system
should be replaced. Windows Installer enforces the following rules:
• Versioned files—In all cases, the file with the highest version
is maintained, even if the file already on the target machine
has a higher version than the one being installed. Additionally,
a file of any version is maintained over unversioned files.
• File language—All other things being equal, the file that is
the same language as the installation is maintained over
different language versions of the file. The only exception to
this rule applies to multiple language files. Files with multiple
languages are maintained over single language versions of a
file.
• Date—If the modified date of a file already present on the
target machine is later than the creation date of that file, the
file is not overwritten. This rule protects user preference files
from being wiped out during an upgrade or reinstallation.
Never Overwrite—If you select this option, the file—if it exists on
the target system—is never overwritten, regardless of the file
version.
Always Overwrite—If you select this option, the file—if it exists on
the target system—is always overwritten, regardless of the file
version.
General Tab
The General tab of the Properties dialog box lets you specify the general settings for
the files being installed onto the Windows Mobile or smart device.
Table 24-9: Settings for the General Tab on the File Properties Dialog Box
Setting Description
File The full path and file name of the original file on the desktop
computer that is to be built into the installation package.
Destination Folder The path to the folder on the Windows Mobile or smart device into
which the file should be installed. When a file is first added to the
project, the default destination folder is the path set on the
Destination Folder panel. The destination path can be changed by
clicking the Open Folder icon, which displays the Destination Folder
dialog box.
File Options These options regulate the type of file and the control given to end
users if an error is encountered while a file is being installed to the
device.
Shared File Select this option if the file is a shared DLL or system file. A
reference count will be maintained on the file so that it is removed
only when all applications that depend upon it have been
uninstalled.
Self-register Select this option if the file is a self-registering DLL or ActiveX
control that exports the DllRegisterServer and
DllUnregisterServer component object model (COM) functions.
Table 24-9: Settings for the General Tab on the File Properties Dialog Box (cont.)
Setting Description
Copy Options These options regulate the terms under which the files are installed
onto the Windows Mobile or smart device. Only one of the following
items can be selected:
• Always copy file to target—The source file will always be
copied onto the device. If a file by the same name already
exists, it is overwritten. This is the default behavior.
• Always update older file on target—If a file by the same
name already exists on the device, it will be overwritten only if
the source file has a more recent date. If no file by the same
name already exists, the source file will always be installed.
• Copy only if file exists on target—The source file will be
installed only if a file by the same name already exists on the
device. The original file will be overwritten. No date check is
performed.
• Copy only if file does not exist on target—The source file
will be copied onto the device only if there is not already a file
by the same name on the device.
• Warn user if file is not copied—This option is used in
combination with the "Allow user to skip file on error" option. If
both of these boxes are selected and an error occurs, the end
user can skip the file and continue after a warning message is
displayed. If this box is not selected, no warning message is
displayed.
• Allow user to skip file on error—If this option is selected
and an error occurs while the file is being installed to the
Windows Mobile or smart device, the end user is asked if they
want to skip the file and proceed with the installation.
Otherwise, the user will not be allowed to skip the file, and the
installation will abort.
Processor/Platform Tab
The Processor/Platform tab of the Properties dialog box lets you specify the processor
and platform requirements for the files being installed onto the Windows Mobile or
smart device.
NOTE There is no .NET Framework support for a smart device. Therefore, this tab applies to a
Windows Mobile device only.
Table 24-10: Settings for the Processor/Platform tab on the File Properties Dialog Box
Setting Description
Platform/Processor Select this option if the file is platform and processor independent.
Independent Only these files can be installed to the Global Assembly Cache
(GAC).
General Tab
The General panel of the Folder Properties dialog box displays information such as
the number of files you have placed in the selected directory as well as the overall disk
space required by those files. None of the information on this panel can be edited. To
display the Folder properties panel, right-click on a destination folder in the Files view
and select Properties.
Table 24-11: Settings for the File Linking Tab of the Folder Properties Dialog Box
Setting Description
Source Files Enter the path to the directory that contains your source files, or click
the Browse button to navigate to that directory.
Include Subfolders Check this box if you want to add any subfolders and the files
contained within to your setup project.
Include all files in the Select this option if you want to have all the files found within the
specified folder specified directory added to your setup project. If you add new files
after the dynamic link has been established, they will automatically be
added before the next time you build your setup.
Include/exclude files If you want to filter the files that get added to your setup, you can do
based on the following so through the use of wild cards. For example, if you only want to
wild cards include executable (.exe) files in your setup, you would enter *.exe
into the “Include files with the following extensions” field. Alternately, if
you want to exclude executables from your setup, enter the same
value, *.exe into the “Exclude files with the following extension” field.
Be sure to separate multiple wild card entries with a comma.
NOTE For information on dynamic file linking limitations, see Dynamic File Linking.
Restore Defaults
Click this button to restore the redistributable’s default settings. All of the
configurable values in the redistributable are returned to their defaults.
GUID
Displays the merge module’s unique GUID.
Author
Displays the merge module’s author.
Version
Displays the merge module version.
Destination
Specifies the destination of the merge module’s files. It is recommended you use the
default setting (Use merge module’s default destination).
TASK To enter a multi-line string value in the Multi-Line String Value dialog box:
1. Choose how you want to modify the registry value. You can choose from the
following options:
» Append
» Prepend
» Replace
2. In the grid part of the dialog box, type a line for each null-delimited string or
modify it. Right-click the grid to display the context menu or press the following
keys in the grid below associated with the following actions:
Table 24-12: Context-Menu Commands for Entering Strings in the Grid
3. Click OK when you have entered a line for each null-delimited string. The strings
are automatically concatenated.
NOTE Strings can contain only spaces, but they cannot be empty or [~], which is the delimiter for the
strings.
NOTE If you select Express Project or Compact Project, the Project Assistant is launched to help you
create your project.
Setting Description
Project Name Type a name for your project in this field.
Project Language Select the language that should be used for your installation project.
Location Type a location or click Browse to navigate to a project location. To
change the default project location displayed, change the Project
Location path, which is located on the File Locations tab in the
Options dialog box.
Create project file in Select this option if you want InstallShield to create a subfolder with
‘Project Name’ subfolder your project’s name in your Projects location.
EDITION InstallShield Premier and InstallShield Professional provide additional functionality in creating
new projects. For example, the Premier edition allows you to have multiple languages in the
same installation project.
The Options dialog box is organized into multiple task-related tabs. Click one of the
links to learn about the corresponding tab.
• General
• File Locations
• Preferences
• Configure Trialware
• Merge Module Options
• Quality
• Updates
• .NET
• Files View
• File Extensions
General Tab
The General tab on the Options dialog box is where you specify preferences for the
help system and for build errors.
Setting Description
Help window on top If you would like the help window to remain on top of the Installation
Development Environment (IDE), select this check box. If you want
the help window to fall to the background when you click in the IDE,
clear this check box.
Stop build process when To abort the build process when a build error occurs, select this
first error is encountered check box.
Setting Description
Project Location In this field, type the path or browse to the location for your
installation project files.
This location is the default folder for new installation projects. All of
your source and release files, such as your project (.ise) file,
installation package (.msi file), and disk image files, are stored in
subfolders of your project location.
By default, your project is stored in the My InstallShield
Express Projects folder at the root level of your hard drive.
Preferences Tab
The Preferences tab on the Options dialog box is where you specify preferences for
run commands and for project reloads.
Setting Description
Uninstall before installing If you would like InstallShield to automatically uninstall your
installation project before running it when you run your installation
from the Build menu, select this check box.
Reload last opened If you would like InstallShield to automatically reload the most
project on startup recently opened project when you launch InstallShield, select this
check box.
Setting Description
User name Type the user name that you use to log on to the InstallShield
Activation Service Publisher Web Site. Your user account must
have write access to the licensing part of the Web site. To obtain a
new user name or to retrieve your password, visit the InstallShield
Activation Service Publisher Web Site
Password Type the password for your user name. The password is
encrypted.
Setting Description
Merge Module Locations
(Current User) and Merge
Module Locations (All
Users) The All Users option is available if you would like to run a
command-line build under a system account for which you
cannot easily update the user settings.
Enter the paths where you will be storing merge modules. For
installation projects, the Redistributables view of the InstallShield
interface displays all of the merge modules in these folders.
Separate additional paths with a comma, as in the following
example:
C:\MergeModules,C:\My Files\MergeModules
The first path you list is where InstallShield should copy merge
modules after they are built, if specified. The folder is created if it
does not exist.
The default location for copying new merge modules is the
MergeModules folder in the location that is specified in the Project
Location field on the File Locations tab.
Setting Description
Matching files must have When you add a file to your project, InstallShield searches the
the same version merge modules to see if there is a module that contains that file
and notifies you of any matches.
If the files must be the same version in order to be considered a
match, select this check box.
Matching files must have When you add a file to your project, InstallShield searches the
the same destination merge modules to see if there is a module that contains that file
and notifies you of any matches.
If the files must have the same destination in order to be
considered a match, select this check box.
Quality Tab
The Quality tab on the Options dialog box provides you with the option of joining the
Customer Experience Improvement Program, which works on improving the quality
and reliability of software and services from Macrovision Corporation.
Participation is not mandatory, but Macrovision Corporation appreciates your input.
Updates Tab
The Updates tab on the Options dialog box is where you specify how often the Update
Service should check for updates to InstallShield. It also lets you specify whether
automatic update notification should be enabled by default for all new projects that
you create in InstallShield.
Setting Description
Check for software Select an option from this list to indicate how often you want
updates InstallShield to check for software updates.
Enable automatic update Select this check box if automatic update notification should be
notification in all new enabled in all new projects that you create in InstallShield. You can
projects override this automatic update notification setting for specified
projects if necessary.
.NET Tab
The .NET tab on the Options dialog box is where you specify preferences for .NET
projects. It is also where you specify the location of the Regasm.exe and
InstallUtilLib.dll files, which are utilities that are included with the .NET
Framework. These utilities are used for COM interop and .NET custom actions.
Setting Description
Default .NET Scan At Build In this list, select how the .NET Scan at Build property should be set
File Setting for new portable executable files that are added to your project.
Regasm.exe location In this field, type the path or browse to the location of
Regasm.exe.
InstallUtilLib.dll location In this field, type the path or browse to the location of
InstallUtilLib.dll.
IMPORTANT Selecting the Version check box slows down the Files view and the Files and Features view.
Setting Description
Portable Executable File In this box, type the file extensions that you would like InstallShield
Extensions to consider to be PE files. Separate extensions with a comma. The
default entry for this box is the following:
AX,EXE,DLL,OCX,VXD,CHM,HLP,TLB
• Select the Outputs property in the Properties window when a project output
group is selected in the File System Editor.
• In the Files view, right-click an item in the Source computer’s files pane and
click Resolve Project Output.
• In the Files view, right-click an item in the Destination computer’s files pane
and click Resolve Project Output.
NOTE If multiple project output groups are selected, information is displayed only for the first group
selected.
Target Name
Displays the file name for the selected project output group as it will be displayed on a
target computer. This field is read only.
Source Path
Displays the path to the project output group files on the development computer. This
field is read only.
NOTE Permissions require NTFS partition so they will only work on Windows NT, 2000, or XP systems.
Name(s)
In the Name(s) grid, you can enter any combination of domains and user names.
TIP When you right-click a row in the grid, you can access commands to create a new entry, modify
an entry, or delete an entry.
Permissions
For files and directories, the following set of permissions is displayed:
• Full Control
• Modify
• Read & Execute
• Read
• Write
• Special Permissions
NOTE Permissions require NTFS partition so they will only work on Win NT, 2000, or XP systems.
Name(s)
In the Name(s) grid, you can enter any combination of domains and user names.
TIP When you right-click a row in the grid, you can access commands to create a new entry, modify
an entry, or delete an entry.
Permissions
For registry keys, the following set of permissions is displayed:
• Full Control
• Read
• Special Permissions
1. Locate a file to view by entering the path to the file in the File name box and
pressing ENTER, or by clicking Open Folder and browsing to the file. All the
icons within the file are displayed in the list.
2. When you locate an icon file, you can select the icon to be used with the mouse or
the cursor keys. Use the View large icons and View small icons options to
preview the icons in the list and see how they will appear in the standard 32x32
and 16x16 sizes.
NOTE The View large icons and View small icons radio buttons have no effect on the index of the icon
selected. They are used only to preview the icons in each size.
Destination Directories
This field lists all of the currently available destination directories. You can select,
create, rename, or delete directories in this field.
Selecting a Directory
Renaming a Directory
1. Select a directory or Destination Computer and press F2, or right-click and click
Rename.
2. Type the new directory name. Note that you cannot rename predefined directories.
3. Rename the directory identifier, if necessary, to be consistent with the directory’s
new name.
Deleting a Directory
Select a directory and press DELETE, or right-click the directory and click
Delete. Note that you cannot delete predefined directories.
NOTE When you delete a directory, any subdirectories beneath the selected directory are also deleted.
Directory Identifier
You can use the Directory Identifier field to provide a user-friendly name for a
directory. For example, if you have a directory—
Description
This property specifies a short description of the document type; this description will
be displayed when the user views the properties of a document file in the Windows
Explorer.
Extension
The file extension used by the document type. When the user opens a file with this
extension, the application associated with it will be automatically launched to view it.
The extension is not case-sensitive, and it does not need to begin with a leading period
(.).
Application
This property contains a list of all the executables being installed into the folder
specified on the Destination Information panel. The file that is selected here will be
used to open documents with the specified file extension.
NOTE To be listed, the files must have an .exe extension, and they must be installed into the default
destination folder. If your main application executable does not appear in the list, it might not be
installed into the default destination folder.
Index Icon
This property specifies the zero-based index of an icon within the executable, which
will be displayed when the user views a document file in the Windows Explorer. By
default, this property is set to zero (0) to display the first icon within the executable
file.
NOTE The number and order of icons in the executable are determined when it is built. InstallShield
cannot determine the icon index. If you are unsure of the correct index for your document icon,
you can begin with an index of zero and gradually increase it until the desired icon is found.
Build Location
Select the appropriate option from this list. You have three options:
• Download From The Web—To download the setup prerequisite files included in
your project (if necessary) from the URL specified in the setup prerequisite (.prq)
file for each prerequisite, select this option.
• Extract From Setup.exe—To compress the setup prerequisite files into
Setup.exe, to be extracted at run time, if necessary, select this option.
• Copy From Source Media—To store the setup prerequisite files at the root
directory of the source media, select this option.
TIP If you select the Extract From Setup.exe option or the Copy From Source Media option
and then build a release that includes a setup prerequisite that is not available on your
computer, one or more build errors are generated for every file that the prerequisite requires.
To avoid these build errors, either download the setup prerequisite from the Internet to your
computer or remove it from your project before building the release.
Display Name
This is the name of the shortcut as it will appear on the Windows Mobile/smart device.
It is not necessary to add the .lnk extension to the name of the shortcut.
Target
This property specifies the full path and file name of the file on the Windows Mobile/
smart device that is to be executed when the shortcut is clicked. The list contains the
paths to all of the files being installed onto the Windows Mobile/smart device. Select
the appropriate file from the list.
Platform
This property determines which types of Windows Mobile device (Handheld PC,
Palm-size PC, etc.) the shortcut should be installed onto. One or more platform types
can be selected by selecting the appropriate boxes in the list; at least one platform type
must be selected to continue. The default is to support all platforms, enabling you to
distribute your application to the largest number of users.
Destination
This property specifies the destination folder on the Windows Mobile/smart device
where the shortcut is to be created. By default, all shortcuts are placed in the
\Windows\Start Menu\Programs folder.
NOTE Each time the number or types of supported platforms is changed, the destination folder list is
rebuilt to include only the folders that the different platforms have in common. For example, the
Handheld devices have a \Windows\Desktop folder, whereas the Palm-size and Pocket PC
devices do not. Therefore, the only way the Desktop folder can be selected as the destination
for the shortcut is if only Handheld platform types are selected.
Folders panel. This means that unless the entire application was installed directly into
the Start Menu folder, the necessary folder cannot be created.
There are two possible workarounds to this problem:
• Using a Descriptive Name—Since the Start Menu\Programs\Company Name
folder cannot be created without installing the entire application itself into the
Start Menu folder, the easiest way to create a readily identifiable shortcut is to use
a more descriptive name. For example, instead of trying to create a shortcut
named Start Menu\Programs\Company Name\App Name, create it as Start
Menu\Programs\Company Name App Name.
• Using a Setup DLL—Another way to work around this limitation is to write a
setup .dll file that uses the SHGetSpecialFolderLocation() and SHCreateShortcut()
APIs to locate the Start Menu\Programs folder and create the subfolder and
shortcut on the device. The setup .dll file would also be responsible for the
removal of the subfolder and shortcut during uninstallation.
InstallShield includes many wizards to assist you in creating your installation project.
PROJECT Not all wizards are available with all project types.
Welcome Panel
This object allows you to install the files required to run an Access application. You
do not have to configure the Access 97 object if all you want to do is install the Access
run-time files, but not set up an Access application.
Click Next to begin customizing the Access object to fit your needs.
Setting Description
Database Enter the fully qualified path to the .mdb file as it is stored on the
target system. Instead of hard-coding a path, you can select a
Windows Installer folder property from the list.
For example, if you are installing MyApp.mdb to the destination
folder [DATABASEDIR], then you can safely point to the following
path as the location of your database:
[DATABASEDIR]MyApp.mdb
It is your responsibility to make sure that the database exists on the
target system or a network location. The database file is not
automatically added to your setup project when you enter its path
into the Database field.
Create shortcut Select this option to add a shortcut to your Access 97 database on
the Programs menu. Since a shortcut must belong to a feature,
after you complete the wizard a new shortcut named
AccessShortcut is added to the Shortcuts/Folders view and
associated with the same feature as the Access 97 object.
The shortcut is supplied with initial properties based on your
settings in the Access 97 Object wizard. The most complex of
these properties is the shortcut’s argument; the following table
explains how the command-line argument is constructed:
• /runtime—This command-line parameter ensures the Access
application is opened in run-time mode (as opposed to retail
mode, which allows complete access to the database’s
tables).
• [database]—[database] contains the fully qualified path to the
.mdb file that you provided in the Database field (above).
• /profile [profile name]—This parameter opens the database
with the user profile you enter in the Additional Information
panel.
• /wrkgrp [file name]—This parameter instructs Access to
use the specified workgroup information (.mdw) file.
The files you specify for the icon, help, and splash screen are not automatically added
to your project. You must install them yourself if you cannot be certain that they are
present on the target system.
Setting Description
User profile This is the name of the custom user profile you are creating. This
field is required if you want to use a custom user profile.
This profile applies to all users who open the Access application
with the /profile <profile name> command-line parameter. This
profile name is supplied for the shortcut’s argument if you chose to
create a shortcut.
Title bar Enter a new title for the title bar of your Access application. If you
leave this field blank, the title bar defaults to “Access 97.”
Icon Enter the path and file name of the icon (.ico) file you want to be
displayed to the left of the title bar. If you leave this field blank, the
default Access icon is used.
The path for the icon is the folder where it will be stored on the
target system. If you are installing this icon as one of your feature’s
files, use the same path as the file’s destination.
Help file Enter the path and file name of the Windows help (.hlp) file, if any,
that you have created for your Access application.
Splash screen Enter the path and name of the bitmap (.bmp) file that you want
displayed as the splash screen for your Access application. You
can leave this field blank.
Setting Description
Workgroup file Enter the path and name of the workgroup file as it can be found on
the target system. Once you enter a value into this field, the check
boxes become enabled.
If you are installing this icon as one of your feature’s files, use the
same path as the file’s destination.
Register as the system/ Make your workgroup the default workgroup on your user’s
default workgroup file system. Any existing system workgroup information file will no
longer be the default.
Setting Description
Use the /wrkgrp The argument /wrkgrp <file name> tells Access to use the
command-line argument specified workgroup information file with your database regardless
of the registered system workgroup file. When you select this
option, the command-line argument /wrkgrp <file name>, where
<file name> stands for the path to the workgroup file (above), is
added to the Access application’s shortcut.
TIP If you choose to include a custom workgroup, you can select either, both, or neither of the
Register as the system/default workgroup file and Use the /wrkgrp command-line argument
settings for your workgroup. Selecting both of these causes your workgroup to be used for all
Access databases. If the user decides to set a different default workgroup, your workgroup is
then used only with your database.
Summary Panel
In this final step in the Access 97 Object wizard, you can review the choices you made
in the previous steps. This dialog box displays the configuration you selected for the
user profile and workgroup for your Access database application.
If these settings are incorrect, click the Back button to return to the previous steps. If
you are satisfied with these choices, click the Finish button to close the wizard.
TIP If you have not already done so, do not forget to add your database, workgroup, and other files
to your setup project.
Welcome Panel
The Access 2000/2002/2003 Object wizard allows you to configure a Microsoft
Access 2000/2002/2003 object that you have added to your setup project. In the
Access 2000/2002/2003 Object wizard, you indicate the path to the Access 2000/
2002/2003 redistributable disk image and specify a build location for the
redistributable.
The wizard provides your setup project with the functionality to run the Access 2000/
2002/2003 redistributable, however it does not add specific database (.mdb) files to
your project. You can include the database (.mdb) files that your project requires in
your setup design.
NOTE At build time, the Access 2000/2002/2003 object adds the Access 2000/2002/2003
redistributable files to your setup’s disk image. The object also adds two custom actions to your
setup—InstallAccess and UninstallAccess.
TIP Your setup must be uncompressed on the source medium if you plan on including the Access
2000/2002/2003 object in your setup. If the setup is compressed, the setup cannot locate the
Access 2000/2002/2003 redistributable files.
Click Next to indicate the path to the Access 2000/2002/2003 redistributable disk
image.
NOTE You can find the Access 2000/2002/2003 redistributable disk image on Microsoft’s Access
2000/2002/2003 Developer CD or you can download the redistributable files from Microsoft’s
Internet site.
In the Redistributable Path panel, indicate the location of the Access 2000/2002/2003
redistributable disk image.
TASK To specify the absolute path to the disk image—including the name of the main .msi
package, do one of the following:
• Type the complete path to the disk image in the text box. You can use a path
variable.
• Click the Browse button to navigate to the disk image’s location.
Click Next to indicate the build location for the Access 2000/2002/2003
redistributable.
NOTE The object will be uncompressed on your setup project’s disk image. This is the only available
release configuration for the Access 2000/2002/2003 object.
Summary Panel
In the Summary panel, review the information you supplied for the Access 2000/2002/
2003 redistributable object.
If any of the information in the Summary panel is incorrect, click the Back button to
return to the previous panels. Otherwise, click the Finish button to close the wizard
and add the Access 2000/2002/2003 redistributable to your setup project.
used only according to the license settings that you configure, such as the trial limit (a
specified number of days or a specified number of uses).
In most cases, you should acquire a unique license for each version of your product.
For more information, see Acquiring a License.
The following panels are associated with the Acquire New License Wizard:
• Welcome
• Configure Trialware Credentials
• Communicating with the License Server
Welcome Panel
The Welcome panel is where you create a user name and password to log on to the
InstallShield Activation Service Publisher Web Site if do not already have them. You
need a user name and password in order to be able to connect to the license server and
download a license. Your user name must have write access to the licensing part of the
Web site.
Table 25-4: Settings for the Configure Trialware Credentials Wizard Panel
Setting Description
Description Type a description for the license that you are obtaining. The
description that you enter is for your reference only; it is not
displayed to end users of your product.
Version Type the version number of your product.
User name Type your user name for the InstallShield Activation Service Publisher
Web Site. The default value for this box is the value entered on the
Configure Trialware tab of the Options dialog box.
Password Type the password for your user name. The default value for this box
is the value entered on the Configure Trialware tab of the Options
dialog box.
If you are acquiring a license for Try and Buy/Product Activation trialware, the
license and product are added to the InstallShield Activation Service Publisher Web
Site.
When you have obtained the license and closed the wizard, the new license is added to
the License(s) list for your executable file on the General tab of the Trialware view.
BDE Designer
BDE support is provided through the use of a merge module. Unlike most of the
redistributables in your gallery, the BDE module requires your customization in order
to function properly. This customization is accomplished with the BDE Designer
wizard. To launch this wizard, go to the Redistributables view and select the check
box for the BDE merge module.
The following panels are associated with this wizard:
• Welcome
• INI File Location
• Configure INI File
• Add Alias
• Summary
Welcome Panel
The BDE designer allows you to customize the BDE runtime files installed on the
target system. The customization of these files is a crucial part of your setup and
requires in-depth knowledge of BDE architecture. Use of this merge module requires
that you have Borland Delphi installed on your machine. Click the Next button to
begin customizing your BDE installation.
Setting Description
Create a new BDE Select this option if you want to create a BDE configuration file from
configuration file scratch. Click the Browse button to navigate to the directory where
you want this file created.
Open an existing BDE Select this option if you have already created a BDE configuration
configuration file file. Click the Browse button to navigate to the desired file.
Setting Description
Alias Name Select a preconfigured alias from the list or enter the name of a
new alias.
Driver Name If you selected a preconfigured alias, this field contains the
appropriate driver. If you are creating a custom alias, select the
driver you want your alias associated with.
The driver you select here is not installed unless you check it in
the BDE Merge Module Configuration Utility.
Parameter Overrides If you selected a preconfigured alias the default parameter
overrides appear in this text box. Type in custom overrides or
accept the defaults as needed by your application. For custom
aliases, you can press the Defaults button to show the default
parameters for the driver you selected.
Defaults Click the Defaults button to revert the parameter overrides to their
default state.
Clear Click the Clear button to clear the parameter overrides text box.
Setting Description
Alias Select from the list the Alias you want to include in your setup. If
you have not yet created an alias, click the Add button.
Add Click the Add button to view the Add Alias panel and add aliases to
your setup.
Edit Click the Edit button to change the settings of an alias.
Delete Click the Delete button to remove an alias from the list.
Driver Check the box next to the driver or drivers you want to install. If you
know the necessary driver is already on the target machine you can
skip this step.
Summary Panel
The Summary panel displays all the configuration settings you supplied for your BDE
installation. Review these settings to ensure accuracy and click the Finish button to
have the BDE merge module added to your setup.
Welcome Panel
A QuickPatch project is recommended for setup authors who want to ship small,
single updates to their users. Running the Create New QuickPatch Wizard produces
the following deliverable types: *.msp and *.exe files.
The creation of a QuickPatch project always begins with the Create New QuickPatch
Wizard. Following through the wizard will ensure that all basic requirements for the
QuickPatch project are met.
Click Next to continue.
NOTE Anytime you click Cancel or Exit in the wizard, QuickPatch project creation will be incomplete,
and the QuickPatch project will not open in InstallShield.
Setting Description
QuickPatch Project Name Enter a name for your QuickPatch Project or click the browse
button to open an existing project. If applicable, you will be
prompted to verify whether or not you want to overwrite an existing
project.
Built MSI package or Specify the location of your built MSI package or Setup.exe or click
Setup.exe to patch the browse button to locate an existing setup. The Create New
QuickPatch Wizard will create a project that can only validate this
setup.
Final Panel
You will see this wizard panel after you have successfully completed the Create New
QuickPatch Wizard. When you see this panel, an administrative installation of your
project is about to be launched shortly. Once the administrative installation is
complete, InstallShield creates a QuickPatch project with the information you
provided in the wizard panels.
Welcome Panel
The Welcome panel is the first panel displayed in the Crystal Reports 8 Object wizard.
Click Next to proceed to the Engine Access Methods panel.
Setting Description
Crystal ActiveX Control 32-bit OCX
Crystal Reports Engine Interface for C Developers
API (8.0 version)
Crystal Reports 32-bit COM object model, dispatch only
Automation Server (8.0
version)
Setting Description
Report Designer 32-bit only COM object model, dual interface, apartment model
Component (8.0
version)
TIP Crystal ActiveX Control requires Mfcans32.dll to be present on the target machine. The Crystal
Reports object does not add this file by default. You can add this file to your setup project in the
Files view.
• Export to VIM
Setting Description
Print Engine Include print capabilities for your reports.
Charts You can include chart functionality in your reports. Select this
option to do so.
Maps (8.0 version) Crystal Reports supports the inclusion of geographic maps in
reports. Select this option to include this functionality.
Summary Panel
The Summary panel provides a summary of selections made in the previous panels of
the Crystal Reports 8 Object wizard. It provides a list of merge modules that will be
added to your project, and those merge modules that will be removed. It also reports
merge modules that are needed but missing.
Welcome Panel
The Welcome panel is the first panel displayed in the Crystal Reports 8.5 Object
wizard. Click Next to proceed to the Engine Access Methods panel.
Setting Description
Crystal ActiveX Control 32-bit OCX
Crystal Reports Engine Interface for C Developers
API (8.5 version)
Crystal Reports 32-bit COM object model, dispatch only
Automation Server (8.5
version)
Report Designer 32-bit only COM object model, dual interface, apartment model
Component (8.5 version)
Embeddable Designer ActiveX Control; allows design and editing Crystal Reports at
Control runtime
TIP Crystal ActiveX Control requires Mfcans32.dll to be present on the target machine. The Crystal
Reports object does not add this file by default. You can add this file to your setup project in the
Files view.
Setting Description
Print Engine Include print capabilities for your reports.
Charts You can include chart functionality in your reports. Select this
option to do so.
Maps (8.5 version) Crystal Reports supports the inclusion of geographic maps in
reports. Select this option to include this functionality.
Summary Panel
The Summary panel provides a summary of selections made in the previous panels of
the Crystal Reports 8.5 Object wizard. It provides a list of merge modules that will be
added to your project, and those merge modules that will be removed. It also reports
merge modules that are needed but missing.
Welcome Panel
The Welcome panel is the first panel displayed in the Crystal Reports 8.5 Service Pack
3 Object Wizard. Click Next to proceed to the Specify Engine Access Methods panel.
Setting Description
Crystal ActiveX Control 32-bit .ocx
Crystal Reports Engine Interface for C developers
API (8.5 version)
Setting Description
Crystal Reports 32-bit COM object model, dispatch only
Automation Server (8.5
version)
Embeddable Designer ActiveX Control; allows design and editing Crystal Reports at run
Control time
Report Designer 32-bit only COM object model, dual interface, apartment model
Component (8.5 version)
TIP Crystal ActiveX Control requires Mfcans32.dll to be present on the target machine. The
Crystal Reports object does not add this file by default. You can add this file to your installation
project in the Files view.
• Export to Application
• Export to Disk (8.5 version)
• Export to Exchange Folders (8.5 version)
• Export to Lotus Domino (8.5 version)
• Export to MAPI
• Export to VIM
Setting Description
ASP ActiveX Viewer To include the ActiveX viewer with your installation, select this
check box.
ASP Java Viewer To include the Java viewer with your installation, select this check
box.
ASP Web Report Server If your application requires the ASP Web Report Server, select this
check box.
Charts To include chart functionality in your reports, select this check box.
HTML Translation If you want to include the Crystal Reports component used for
translating the report into an HTML stream, select this check box.
Maps (8.5 version) Crystal Reports supports the inclusion of geographic maps in
reports. To include this functionality, select this check box.
Setting Description
Page Ranged Export This is required when exporting to a format that lets you to set a
page range. These formats include Rich Text Format (.rtf) and the
Adobe PDF.
SQL Expressions (8.5 If you want to support SQL expressions in your Crystal reports,
version) select this check box.
User Function Libraries If you intend to support User Function Libraries (a separate .dll file
or Automation server to which you add your own custom functions),
select this check box.
Summary Panel
The Summary panel provides a summary of selections made in the previous panels of
the Crystal Reports 8.5 Service Pack 3 Object Wizard. It provides a listing of merge
modules that will be added to your project, and those merge modules that will be
removed. It also reports merge modules that are needed but missing.
• Scan Results
• Completing the Dynamic Scanning Wizard
Welcome Panel
The Dynamic Scanning wizard provides you with an easy path to add your
application’s dependency files to your setup. Before you begin using the scanner, it is
a good idea to add the target executable to your setup.
Click Next to begin using this wizard, or click the Cancel button to return to the IDE.
Setting Description
I would like to select an Select this recommended option if the executable you want to scan
executable file from my has already been added to your setup project.
project
I would like to select a Choose this option if the executable you want to scan is not
new executable currently associated with your setup project.
Setting Description
Application Specify which executable file you want to scan. If you choose to
scan a file that is already associated with your project, select it
from the list of executables present in your setup. If you choose to
scan a file that is not yet a part of your setup, enter the path to that
file or click the Browse button to navigate to it.
Command Line Enter any command-line parameters you want to pass to the
executable. These parameters are only used during the scanning
process and are not used after the wizard has been dismissed.
Working Folder Enter the path to the working folder for this application, or click the
Browse button to navigate to this directory. By default, this
directory is set to the same folder in which the application you
choose to scan resides.
Setting Description
File Select which files you want added to your setup by checking the
appropriate boxes. Additional information about each of these files
is also displayed in this field such as the feature it will be added to
and the location of the dependency file.
Deselect All Select this option to have none of the displayed files added to your
setup. You can then manually check the files you want added.
Select All Select this option to add all of the displayed files to your setup. You
can then manually deselect the files you do not want included.
Welcome Panel
The easiest way to translate the run-time strings of your setup is to export them to a
text (.txt) file and then have them translated. Once the translation is complete you can
import those strings back into your setup project for a localized version of your
installation. The Export String Table wizard walks you through the task of exporting
all of your strings to a text file.
Setting Description
File Name Enter the path and filename of the text (.txt) file you want all of your
strings sent to, or click the Browse button to navigate to this file.
Welcome Panel
The Import REG File Wizard allows you to import existing registry data (.reg) into
your InstallShield project. This registry data is added to the target system’s registry
during the setup project.
NOTE Before you begin importing registry data be sure that you selected the proper feature to which
you want this data added. To specify a feature, cancel the wizard and select the appropriate
feature from the Feature list at the top of the Registry view.
CAUTION InstallShield can only import .reg files created by exporting in Regedit, or files that follow that
exact format. Additionally, InstallShield does not support multiline registry values.
Property Description
Registry File Enter the path to the .reg file you want to import, or click the
Browse button to navigate to this file.
Setting Description
Overwrite the registry Select this option if you want data stored within the REG file you are
data importing to overwrite any conflicting data already present in your
installation project.
Do not overwrite the Select this option if you want to retain the data already present in
registry data your installation project when a conflict arises during the import
progress. All nonconflicting registry data are still imported.
Welcome Panel
If you are creating localized versions of your setup you will find it much easier to
export all of your run-time strings for translation. Once those strings have been
translated you can import them back into your setup project. The Import String Table
wizard allows you to point to the text (.txt) file you want to import that contains all of
your translated run-time strings.
When you import a string table, all of your existing strings are overwritten by those in
the string table you are importing. Therefore, make sure you have saved a copy of
your original strings before you import the translated version.
Setting Description
File Name Enter the path and filename of the text (.txt) file containing the
strings you want to import, or click the Browse button to navigate
to this file.
Click the Next button to import these strings into your setup project, overwriting any
existing strings you may have.
System Requirements
Platforms supported are Windows 95, Windows 98, and Windows NT 4.0 Service
Pack 4 and later. Disk space requirement is 30 MB for the redistributable CAB file.
Approximately 40 MB is typical for an installation of the full MSDE engine.
TASK To configure the MSDE object, launch the MSDE 1.0 Object Wizard:
Welcome Panel
This panel provides a brief introduction to the MSDE 1.0 Object Wizard. This wizard
walks you through all the necessary steps required to configure how the MSDE 1.0
object is installed and run on your end users’ systems.
Setting Description
Enter the SQL Data Root Specify the path that will be entered as the string data in the target
directory system’s
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup\S
QLDataRoot registry value. You can specify a path explicitly or in
terms of an InstallShield system variable. To specify a path in terms
of a system variable, you can select a system variable from the
drop-down menu and, optionally, type a subpath after it.
Enter the SQL Data Path Specify the path that will be entered as the string data in the target
directory system’s
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup\S
QLPath registry value. You can specify a path explicitly or in terms
of an InstallShield system variable. To specify a path in terms of a
system variable, you can select a system variable from the drop-
down menu and, optionally, type a subpath after it.
Setting Description
Use Custom Response File Select this check box if you want to specify a custom response
(.iss) file. Specify the fully qualified file name of your custom
InstallShield Silent response file (.iss file) or click Browse to
navigate to the file. If you leave this field empty, the MSDE setup
uses the default response file, Unattend.iss. You can specify a path
explicitly or in terms of an InstallShield system variable.
Setting Description
Add the -SMS switch to If this check box is selected, the MSDE object passes the -SMS
the command line of the command-line switch to the MSDE setup. If the check box is not
MSDE setup selected, the object does not pass the switch. This switch prevents
network connections from closing before the MSDE setup is
complete.
Summary Panel
Review the MSDE 1.0 redistributable information summary. Click Finish to close the
wizard and add the MSDE object to your setup, or click Back to return to previous
panels and change your selections.
NOTE The InstallShield MSDE 2000 Object for NT Platforms works only on Windows NT-based
operating systems. If end users run the installation on a Windows 9X platform (and MSDE 2000
needs to be installed), they receive a message saying that the setup cannot install the MSDE
2000 object on the machine. Then the installation exits. The end user will have to install the
MSDE 2000 object and then rerun the setup.
This limitation is because of a incompatibility of Windows Installer and the MSDE 2000 setup
itself. The MSDE 2000 setup is a Windows Installer (.msi) setup. The only way one .msi can
launch another .msi is as a nested .msi custom action. However, the MSDE 2000 readme file
specifically says that you cannot install MSDE 2000 as a nested .msi custom action.
The only other option is to launch it is in the InstallUISequence. With this method, the
InstallUISequence installs the MSDE 2000 object and the InstallExecuteSequence installs your
application. This works on Windows NT-based machines because each sequence is run in a
separate thread. However, on Windows 9x systems, both sequences are run in the same
thread. This makes the MSDE 2000 setup fail with an error of "another setup is currently in
progress." Therefore, end users cannot install the MSDE 2000 object on a Windows 9x machine
as part of your installation (if your installation is Windows Installer based). This would be the case
even if you tried to create your own custom action to install the MSDE 2000 object on Windows
9X machines.
Welcome Panel
The MSDE 2000 Object Wizard allows you to configure an MSDE 2000 object that
you have added to your setup project. In the MSDE 2000 Object Wizard, you can
customize MSDE installation locations, alter default instance and collation settings,
and indicate upgrade settings.
NOTE The InstallShield MSDE 2000 Object for NT Platforms works only on Windows NT-based
operating systems. If end users run the installation on a Windows 9X platform (and MSDE 2000
needs to be installed), they receive a message saying that the setup cannot install the MSDE
2000 object on the machine. Then the installation exits. The end user will have to install the
MSDE 2000 object and then rerun the setup.
This limitation is because of a incompatibility of Windows Installer and the MSDE 2000 setup
itself. The MSDE 2000 setup is a Windows Installer (.msi) setup. The only way one .msi can
launch another .msi is as a nested .msi custom action. However, the MSDE 2000 readme file
specifically says that you cannot install MSDE 2000 as a nested .msi custom action.
The only other option is to launch it is in the InstallUISequence. With this method, the
InstallUISequence installs the MSDE 2000 object and the InstallExecuteSequence installs your
application. This works on Windows NT-based machines because each sequence is run in a
separate thread. However, on Windows 9x systems, both sequences are run in the same
thread. This makes the MSDE 2000 setup fail with an error of "another setup is currently in
progress." Therefore, end users cannot install the MSDE 2000 object on a Windows 9x machine
as part of your installation (if your installation is Windows Installer based). This would be the case
even if you tried to create your own custom action to install the MSDE 2000 object on Windows
9X machines.
Functionality Panel
In the Functionality panel, you can select the optional MSDE 2000 functionality that
your application requires. There are three options:
• Data Management Objects (DMOs)
• Replication
• Core Functionality
NOTE An option appears only if all of the corresponding merge modules exist on the development
system.
Directories Panel
This panel allows you to customize the MSDE 2000 installation locations.
Setting Description
Customize SQL Server Select this option to customize the SQL Server system database
system database location location. Type the path to the database in the edit field.
Customize Desktop Select this option to customize the Desktop Engine executable files
Engine executable files location. Type the path to the executable files in the edit field.
location
Setting Description
Specify instance name (if Select this option to specify an instance name other than the
unspecified, instance is default. Type the instance name in the edit field.
installed as a default
instance)
Specify default collation Select this option to specify a default collation for the instance.
for instance Type the default collation name in the edit field.
Setting Description
Upgrade an instance of Select this option if you want the MSDE 2000 object to update an
MSDE 1.0 instance of MSDE 1.0 if it is installed on the target system.
Specify MSDE 1.0 Select this option to specify an MSDE 1.0 username. Type the
username username in the edit field.
Use SQL security mode Select this option to enable SQL security mode.
Setting Description
Enable cross-database Selecting this check box enables a new security enhancement-
ownership chaining related option for configuring cross-database ownership chaining.
This internally sets the SqlAllowXDBChaining property value to 1
and enables cross-database ownership chaining across all
databases. By default, this option is deselected.
According to Microsoft, cross-database ownership chaining occurs
when the source object depends on objects in another database. A
cross-database ownership chain works in the same way as
ownership chaining in a database, except that an unbroken
ownership chain is based on all the object owners being mapped to
the same login account. Therefore, in a cross-database ownership
chain, if the source object in the source database and the target
objects in the target databases are owned by the same login
account, SQL Server does not check permissions on the target
objects.
Enable network protocols If this check box is not selected, SP3a will turn off the network
support when new instances of MSDE 2000 are installed. If you
disable the network support when installing an instance of MSDE
2000 SP3a, you can later reconfigure the instance to enable the
support. For more information about disabling and restoring
network access, see Microsoft Knowledge Base article 814130. If
no application running on another computer will connect to your
instance of MSDE 2000, the instance has no need for network
support and it is prudent to turn off a resource that is not being
used.
Set an upgrade password When you select this option and enable the text field, you will be
able to specify the password for the logon that is used when you
upgrade Desktop Engine by using SQL Server Authentication.
Setting Description
Allow installation to If you select this option, you can perform an installation with a blank
proceed with a blank sa sa password. Regardless of whether an instance of Desktop Engine
password is using Microsoft Windows or Mixed Mode authentication, the
installation cannot continue if a blank password is detected for the
sa logon. A warning message appears if a blank password is
detected. If you have a blank password for the sa logon, before you
continue you must change the password by using the sp_password
stored option. See the Set an sa password option below.
Set an sa password Selecting this option allows you to specify the sa password. You
can use this option for new installations. Unlike other properties,
this property is hidden and the value is not written to the log file.
NOTE • If you specify both the Set an sa password and Allow installation to proceed with a blank sa
password, setting an sa password takes precedence and the blank sa password is ignored.
• If you are using an .ini file during setup, avoid storing credentials in the .ini file.
Setting Description
Disable uninstall of MSDE Select this check box to prevent the end user from uninstalling the
from Add/Remove MSDE 2000 object from Add/Remove Programs in Control Panel.
Programs An entry for MSDE 2000 will appear in Add/Remove Programs but
the Remove button will be disabled if this check box is selected. If
this check box is cleared, the end user will be able to uninstall
MSDE 2000 even though your application might still need it.
Uninstall MSDE 2000 Select this check box if the MSDE 2000 object should be
during this application’s uninstalled when your program is uninstalled. This uninstallation of
uninstall MSDE will take place only if your application installed MSDE 2000.
That is, if the target machine already had an instance of MSDE that
your program requires, uninstalling your program will not uninstall
this previously installed instance.
Setting Description
Disable Remove button of If you do not select this check box but you do select the Uninstall
this application in Add/ MSDE 2000 during this application’s uninstall check box, it is quite
Remove Programs possible that MSDE 2000 will not be uninstalled when your
(Recommended) application is uninstalled. This is because on Windows XP and
Windows 2000 machines, by default, each application has a
Change and Remove button in Add/Remove Programs. Clicking the
Remove button performs a silent uninstall of your application.
MSDE 2000 cannot be installed or uninstalled when your installation
is run silently. This is due to a limitation in the Windows Installer and
the MSDE 2000 installation itself. Setting this property will
accomplish the same result as selecting the Disable Remove
Button option in the General Information view. This option is
provided here for your convenience and to stress its importance
with regard to MSDE 2000.
Suppress the MSDE 2000 MSDE 2000 requires a reboot on some operating systems. By
reboot (if one is required) default, if a reboot is required, it will be done once your
application’s installation is complete. If you would like to suppress
this reboot, select this check box. If you want to always reboot the
machine after the installation completes, add a custom action that
sets ISSCHEDULEREBOOT to 1.
Summary Panel
The Summary panel lists the selections that you made in the previous MSDE 2000
Object Wizard panels.
Click Finish to exit the wizard and commit the changes to your setup project. If you
need to change any of your selections, click Back until you arrive at the appropriate
panel.
Palm OS Wizard
Use the Palm OS Wizard to create and configure an installation package for Palm OS
devices. The application files can be deployed via HotSync to the Palm OS device.
You can target either the device’s memory or a storage card.
Before you can use the Palm OS Wizard, you must create a new installation project
and add the Palm application files to it.
Welcome Panel
This panel welcomes you to the Palm OS Wizard and briefly describes the wizard’s
function. Click Next to begin using the wizard.
1. Click Add or right-click anywhere in the Files box and select Add. The Browse
for Shortcut Target dialog box opens.
2. Browse to the file that you want to add and click Open. The Destination dialog
box opens.
3. Select the Handheld option or the Storage Card option, depending on the target
location.
4. Click OK.
1. In the Files box, select the file whose destination you would like to change.
2. Click Properties. The Destination dialog box opens.
3. Select the Handheld option or the Storage Card option.
4. Click OK.
1. In the Files box, select the file that you would like to remove.
2. Click Remove.
Features Panel
In the Features panel, select the feature or features to which your Palm OS installation
belongs.
Summary Panel
In the Summary panel, you can review the settings for your Palm OS installation
before you add it to your project. If you need to change any of the settings, click Back
until you reach the appropriate panel, and then make the necessary changes.
When you are done, click Finish. Your Palm OS installation is added to all of the
features that you selected to associate with the Palm OS application in the Features
panel.
To launch the Static Scanning wizard, go to the Dependencies view in the View List.
Then, click the Perform Static Scanning button.
The following panels are associated with the Static Scanning wizard:
• Welcome
• Filter Files
• Scanning Progress
• Scan Results
• File Selection
• Completing the Static Scanning Wizard
Welcome Panel
The Static Scanning wizard is a quick and painless way to add dependency files to
your setup. This wizard scans any .exe, .dll, .ocx, .sys, .com, .drv, scr, and .cpl files in
your project and add their dependencies to your setup. These dependency files are
added to the same feature as the files that require them, ensuring that all necessary
files are installed when needed.
Click the Next button to begin scanning your setup files for any dependencies.
Setting Description
File Indicate which files you want added to your installation by selecting
the appropriate check boxes. Additional information about each of
the files—such as the feature it will be added to, the location of the
dependency file, and the file that requires it—is also displayed. The
meaning of each type of icon is as follows:
Welcome Panel
The Welcome panel is the first panel displayed in the System Search Wizard, which
allows you to add or modify a system search in your setup project. Click Next to add
or modify a system search.
TASK In this panel, specify the item you want to search for on the target system and the location
of that item. To do so:
Table 25-30: How do you want to look for it? Panel Settings
Setting Description
File Name Enter the full name and extension of the file or application you want
to locate.
Table 25-31: How do you want to look for it? Panel Settings
Setting Description
File Name Enter the full name and extension of the file or application you want
to locate.
Once you have enter a file name, the Details button next to
that field is enabled. If you want to modify your search to
include any particular version, date, size or language, click the
Details button to enhance your search.
Look In In this section, you can either specify a full path or choose a path
found in a previous search. When specifying a full path, the browse
button next to the edit field is enabled. Clicking the browse button
will bring up the "Browse for Directory" dialog in which you can
select an existing directory or create a new one. When specifying a
path from a previous search, make a selection from the drop-down
list.
Number of subfolder In this field, specify the number of subdirectory levels to search for
levels to search the file on the target system.
Table 25-32: How do you want to look for it? Panel Settings
Setting Description
Folder Name Enter the full name and extension of the folder you want to locate.
Look In The information in this field references where your setup will look
for items on the target system.
Number of subfolder In this field, specify the number of subdirectory levels to search for
levels to search the file on the target system.
Table 25-33: How do you want to look for it? Panel Settings
Setting Description
Folder Name Enter the full name and extension of the folder you want to locate.
Look In In this section, you can either specify a full path or choose a path
found in a previous search. When specifying a full path, the browse
button next to the edit field is enabled. Clicking the browse button
launches the "Browse for Directory" dialog, in which you can select
an existing directory or create a new one. When specifying a path
from a previous search, select from the drop-down list.
Number of subfolder Specify the number of subdirectory levels to search for the file on
levels to search the target system.
Table 25-34: How do you want to look for it? Panel Settings
Setting Description
File Name Enter the full name and extension of the file or application you want
to locate.
Table 25-35: How do you want to look for it? Panel Settings
Setting Description
File Name Enter the full name and extension of the file or application you want
to locate.
Once you have enter a file name, the Details button next to
that field is enabled. If you want to modify your search to
include any particular version, date, size or language, click the
Details button to enhance your search.
Look In In this section, you can either specify a full path or choose a path
found in a previous search. When specifying a full path, the browse
button next to the edit field is enabled. Clicking the browse button
will bring up the "Browse for Directory" dialog in which you can
select an existing directory or create a new one. When specifying a
path from a previous search, make a selection from the drop-down
list.
Number of subfolder In this field, specify the number of subdirectory levels to search for
levels to search the file on the target system.
Table 25-36: How do you want to look for it? Panel Settings
Setting Description
Registry Root Choose the appropriate Registry root on the target system to
locate the search item.
Registry Key Type in the exact Registry Key associated with the item you are
locating. Be sure you have the correct syntax.
Registry Value This field is optional. If you want to add this to your search, enter
the Registry value precisely as it appears in the Registry. If you
leave this entry blank, then the system search will look for the
default value.
Table 25-37: How do you want to look for it? Panel Settings
Setting Description
INI File Name Specify the INI file name as it should appear on the target system.
INI Section Name Obtain this information from the INI file. If you need to add a section
to an INI file, see Specifying a Section in an .ini File.
INI Key Name Enter the INI file key that can be found within the section.
Read entire line checkbox This option will search for data in the field column of an .ini file’s
IniLocator table if it is null or 0.
CAUTION Macrovision Corporation recommends that you use this wizard only if you already have Visual
Basic installed on your computer. Otherwise, if you launch the Visual Basic Wizard without Visual
Basic, the scanner might not find some of the controls or files that are referenced in the Visual
Basic project. This could occur if the controls or files are installed as part of Visual Basic.
Welcome Panel
The Visual Basic wizard allows you to import Visual Basic projects into your setup
project. The wizard scans your Visual Basic project, detects any dependencies, and
then adds all the necessary files to your setup.
NOTE In scanning for dependencies, the Visual Basic wizard recursively searches .dep files. It also
scans the vb6dep.ini file for additional dependencies, and uses the [Do Not Redistribute] section
to filter files that Microsoft recommends you not redistribute.
Setting Description
Visual Basic Project File There are three different ways to specify the project that you want
to import:
• Select a recently used project from the list by clicking the
arrow next to the list.
• Enter the fully qualified path to the project you want to import.
• Click the Browse button and navigate to the project.
Rebuild project before Select this option if you want to rebuild your project before the
scanning wizard scans it for dependencies. It is a good practice to rebuild
the project just in case you have made changes since the last time
you rebuilt it.
Filter files Select this option to filter out two sets of file dependencies: one set
of files recommended by InstallShield and one set of files that you
have specified. The InstallShield-recommended files are in the
iswiscan.ini file and the user-specified files are in the userscan.ini
file. Both of these files are located in the Support folder within your
InstallShield program installation folder.
For more information, see Filtering Files in the Dependency
Scanners.
Table 25-38: Specify Visual Basic Project File Panel Settings (cont.)
Setting Description
Add files from Microsoft’s Select this option to add files from a specified .dep file. Enter the
Package and Deployment fully qualified path to the .dep file or use the browse button to
Wizard navigate to the .dep file.
Setting Description
Visual Basic executable Enter the full path to the Visual Basic executable or click the
Browse button to navigate to the file.
Setting Description
File To add dependency files to your setup, select the check boxes in
front of the appropriate files. If you did not deselect Filter Files in
the Specify Visual Basic Project File panel, you should be able to
safely include all files listed.
For more information, see Filtering Files in the Dependency
Scanners.
Deselect All Click this button to clear the selection of all displayed files. You can
manually select the files you want added to your setup.
Setting Description
Select All Click this button to select all of the displayed files. You can
manually deselect the files you do not want added to your setup.
NOTE The Visual Studio .NET Wizard is available only if Microsoft Visual Studio .NET is installed on your
system.
When you are creating the InstallShield installation project, the Visual Studio .NET
Wizard does the following:
• Creates a new InstallShield project (with the file name specified on the New
Project dialog box) and adds it to the solution (.sln file).
• Adds all dependencies to your project at build time if you have the Scan at Build
option set to Dependencies and Properties (on the .NET tab of the Options dialog
box).
• Adds the primary outputs from every project in the solution to the InstallShield
project.
• Updates the release settings to deploy the appropriate version of the .NET
Framework via download.
To launch the wizard, click the appropriate icon in the New Project dialog box.
Welcome Panel
The Visual Studio .NET Wizard allows you to add an InstallShield installation project
to a Microsoft Visual Studio .NET solution.
The Visual Studio .NET Wizard is available only if Microsoft Visual Studio .NET is
installed on your system.
Click Next to select a solution.
Solution Panel
In the Solution panel, type the path or browse to the Visual Studio .NET solution to
which you want to add the InstallShield installation project.
Click Finish to create a new InstallShield project and add it to the selected solution.
Welcome Panel
The Web Deployment Wizard enables you to build a setup for Web deployment.
Using this wizard, you can create a Web page automatically to link to your setup,
specify whether you want to include the Windows Installer engine, and provide digital
signature and security information. Click Next to proceed to the Web Page Options
panel.
NOTE If your link is used for a Netscape Communicator page, the Save/Run dialog can only save the
setup. You can only run a Web setup from a hyperlink in Netscape Communicator by using the
One-Click Install technology option. Additionally, you must provide digital signature information
to avoid an error during the build.
NOTE The Windows Installer engine is installed with Windows 2000, Windows Me, and Windows XP.
Setting Description
Include Windows 9x MSI The Windows Installer engine is different for Windows 9x and
engine/Include Windows Windows NT systems. Check the appropriate box(es) to include the
NT MSI engine correct engine(s) in your installation.
Suppress Launcher If the operating system has a version of the Windows Installer
Warning service that cannot be updated by the installation, you can
suppress the warning that is displayed to the end user.
Delay Windows Installer In some circumstances, the installation of the Windows Installer
reboot engine requires a system reboot. If you want to delay this reboot,
check this box.
Setting Description
Download engine from the If you select this option, provide the full URL to the appropriate
Web as specified below executable. The engine will be downloaded from this Web site when
required. The advantage in selecting this option is that it reduces
the size of your setup; however, the end user must have an Internet
connection if the Windows Installer engine is needed, and it may
take time to download the engine’s setup executable.
Extract engine from Although it increases the size of the Setup.exe, you can include the
Setup.exe executable(s) for the Windows Installer engine(s) within your
installation. This results in a quicker installation, and does not
require an Internet connection.
Setting Description
Optimize for media size If this option is selected, the size of the Setup.exe will be reduced.
However, this takes more time during the build process.
Copy media to target Windows 2000, Windows Me, and Windows XP provide many
machine advanced functions, such as feature advertisement and application
repair. If you want to take advantage of these, you can
automatically copy your setup to the target machine during
installation by selecting this option and selecting the appropriate
location from the drop-down menu.
Password protect You can also password-protect your setup to restrict who can use
Setup.exe with the it. Click the check box, and provide a password in the Password
following password field.
Table 25-44: Digital Signature and Security for Targeting Internet Explorer Panel Settings
Setting Description
Sign Media for Internet When you check this box, the URL, SPC file, and PVK file fields are
Explorer enabled. Enter the URL for your company (or information about
your product) in the URL field. Provide the location of your Software
Publishing Credentials (.spc) file in the SPC field by either entering
the fully qualified path to it or clicking Browse to navigate to it.
Provide the location of your Private Key (.pvk) file in the PVK field by
either entering the fully qualified path to it or clicking Browse to
navigate to it.
NOTE If you are building a One-Click Install setup, and you target Netscape, you must provide digital
signature information.
Table 25-45: Digital Signature and Security for Targeting Netscape Communicator Panel Settings
Setting Description
Sign Media for Netscape When you check this box, the Certificate ID, Certificate Database
Communicator Path, and Certificate password fields are enabled. These fields are
described below:
Certificate ID Provide the ID for the certificate. For instructions on how to
determine the ID, see Netscape Certificate IDs.
Certificate Database Path Provide the path to the databases updated when you imported the
certificate into Netscape. The path is typically the Users folder,
which is within the folder in which Netscape is installed, and then is
the user under which you were logged in when importing the
certificate. For example, if you were logged in as JohnSmith when
you imported the certificate, and if Netscape Communicator was
installed in the default location, the path you would browse to is
C:\Program Files\Netscape\Users\JohnSmith\.
Certificate Password If you set a password when you imported the certificate, enter it
here. This is not the password you received from the certification
authority.
Summary Panel
The Summary panel displays the configuration settings you supplied in the previous
panels for your Web Deployment. Review these settings to ensure accuracy.
Depending on the option selected, clicking Finish either exits the Web Deployment
wizard and builds the release, or only exits.
NOTE Microsoft ActiveSync 3.x or later must be installed on the desktop computer in order to provide
a desktop-to-device installation. Active Sync 4.x is required for Windows Mobile 5.x devices.
NOTE You can also use the Smart Device Setup Wizard with purely native code if you are targeting a
storage card.
Wizard Panels
The following panels are associated with the Windows Mobile Wizard and the Smart
Device Setup Wizard:
• Welcome
• Application Information
• Desktop Settings (Windows Mobile Wizard only)
• Add CABs (available only if Existing Mobile Device Cabinets is selected in the
Project Type list of the Application Information panel in the Windows Mobile
Wizard)
• Destination Folder
• Project Outputs (available only if either wizard is launched from Microsoft Visual
Studio .NET and the solution contains one or more Smart Device Application
projects)
• Device Files (called Additional Files if the Project Outputs panel is displayed)
• Shortcuts
• Setup DLLs
• File Associations (available only if an .exe file is selected to be installed)
• Registry Information
• Desktop Icon Information (Windows Mobile Wizard only)
• Sign the cab files
• .NET Compact Framework
• XML Files (available only if one of the Smartphone options is selected in the
Project Type list of the Application Information panel)
• Features (Windows Mobile Wizard only)
• Summary
Welcome Panel
This panel provides a brief introduction to the Windows Mobile Wizard. The wizard
helps you build and customize installations for Windows Mobile devices.
NOTE When you launch this wizard from the Mobile Devices view, it is called the Windows Mobile
Wizard. When you launch this wizard by creating a new Smart Device project, it is called the
Smart Device Setup Wizard.
Setting Description
Project Type Select the type of application that you want to support in your
project.
You cannot change this option once you complete the wizard.
You will have to create a new application via the wizard to add
to your project.
Application Name Provide the name of your application for Windows Mobile devices or
smart devices.
Company Name Provide the name of your company or the company that produced
the application.
Application Description Provide a brief description of your application.
NOTE The Desktop Settings panel is not displayed if you are using the Smart Device Setup Wizard.
Select the location to which you want to copy the Windows Mobile or Smartphone
application files.
Setting Description
Target Desktop Directory Select a target directory from this list or click the folder button to
launch the Browse for Directory dialog box.
Setting Description
Delete device media from Select this check box to delete the Windows Mobile media files
desktop during desktop from the desktop when the desktop installation is uninstalled.
setup uninstall
NOTE If you would like to add more than one .cab file to a single Windows Mobile installation, see
Special Considerations for Adding Multiple .cab Files.
This panel is displayed only if you select Existing Mobile Device Cabinets in the Project Type list
on the Application Information panel of the Windows Mobile Wizard. It is not displayed if you are
using the Smart Device Setup Wizard.
1. Click Add or right-click anywhere in the .cab box and click Add. The Open
dialog box opens.
2. Browse to the file you want and click Open. The file is added to the list of .cab
files.
entire directory structure under the default destination folder and enables them to
choose to install your application to a storage card, thus conserving device resources.
LOGO The recommended location for the destination folder is the following:
Program Files Folder\Company Name\Application Name
where Company Name and Application Name are the values set on the Application
Information panel. This folder is created and selected by default for new Windows Mobile
installations.
Specifying Folders
Select the folder that you want to serve as the destination and then click Next.
The folder that is highlighted when you click Next becomes the destination folder for
your application.
Adding Folders
1. Select the folder under which you want to add a new folder.
2. Click New. A new folder is created directly beneath the existing folder.
3. Type a name for the new folder.
NOTE You can also add a new folder by right-clicking an existing folder and clicking New Folder.
Renaming Folders
NOTE You can also rename a folder by right-clicking it and clicking Rename.
Removing Folders
NOTE This panel is displayed only if the Windows Mobile Wizard or Smart Device Setup Wizard is
launched in Visual Studio .NET and the solution contains one or more Smart Device Application
projects.
Setting Description
Project Outputs Use this box to specify which project output groups you want to
associate with your smart device installation. In most cases, you
would select the Primary output group.
For each output group, click Properties to display the property
sheet for the selected group. The property sheet lets you to set
various attributes for the installation, including whether the
application should be installed to the Global Assembly Cache (GAC).
NOTE This panel is called Additional Files if the Project Outputs panel is displayed.
The Files box on this panel is where you add application files to your Windows
Mobile installation or your Smart Device project. When you add a file to this box, you
also need to specify its properties, such as which platforms and processors support it.
You must add at least one file in order to continue with the wizard.
Adding Files
1. Click Add or right-click in the Files box and click Add. The Open dialog box
opens.
2. Browse to the file that you want to add and click Open. The File Properties dialog
box opens.
3. Specify the properties for the file you are adding and then click OK.
NOTE To change the properties of a file after you have added it, select the file and then click
Properties. The File Properties dialog box opens.
NOTE Microsoft ActiveSync has a 4-MB limit on file transfers. If your application files exceed this limit,
you may need to break your installation into smaller subcomponents in order to get it to transfer
and install correctly.
Removing Files
TASK To remove a file from the Files box, do one of the following:
Shortcuts Panel
The Shortcuts panel lets you specify shortcuts to your application files. Although you
are not required to create any shortcuts during installation, it is recommended that you
create a shortcut to your main application executable file on the Start menu. This will
make it easier for the end user to locate and start the application.
Adding Shortcuts
1. Click Add or right-click in the Shortcuts box and select Add. The Shortcut
Properties dialog box opens.
2. Specify the settings for the shortcut that you are adding and then click OK.
NOTE It is recommended that shortcuts not be created on the desktop unless the application is
included in ROM; this may also be a future Designed for Windows logo requirement.
Removing Shortcuts
TASK To remove a shortcut from the Shortcuts box, do one of the following:
1. Click Add or right-click in the Setup DLLs box and select Add. The Open dialog
box opens.
2. Browse to the file that you want to add and click Open. The Setup DLL Properties
dialog box opens.
3. Specify the properties for the file you are adding and then click OK.
NOTE The Properties button is available for Windows Mobile devices only.
TASK To remove a file from the Setup DLLs box, do one of the following:
• In the Setup DLLs box, select the file and click Remove.
• Right-click the file and click Remove.
NOTE Only executable files with an .exe file extension can be associated with a document type. This
panel is displayed only if you have at least one executable file set to be installed into the folder
specified on the Destination Folder panel.
When you add a file association to your project, a series of registry entries is
automatically created on the Registry Information panel under
HKEY_CLASSES_ROOT. You could make all the necessary registry entries
yourself, but it is much easier to create them using this panel.
CAUTION Windows CE Version 2.x has a limit on the amount of registry data that can be created in a
single installation. If you experience problems with registry entries being created incorrectly,
you may need to decrease the number of file associations and other registry entries. You can
also use a setup .dll file with your installation to create the registry entries.
Adding Associations
1. Click Add or right-click in the File Associations box and select Add. The File
Association Properties dialog box opens.
2. Specify the properties for the file association that you are adding and then click
OK.
Modifying Associations
• In the File associations box, select the file association and click Properties.
• Right-click the file association and click Properties.
Removing Associations
TASK To remove a file association from the File associations box, do one of the following:
• In the File associations box, select the file association and click Remove.
• Right-click the file association and click Remove.
CAUTION Windows CE Version 2.x has a limit on the amount of registry data that can be created in a
single installation. If you experience problems with registry entries being created incorrectly,
you may need to decrease the number of file associations and other registry entries. You can
also use a setup .dll file with your installation to create the registry entries.
NOTE Some registry keys and values are created by the Windows Mobile installation mechanism, or by
any file associations you have added to your project. Since these keys and values are created
automatically, you will not be able to delete, rename, or modify them in this panel.
Adding Keys
Right-click an existing key, point to New, and click Key. A new key is added
under the selected key, and you are prompted for the key name.
Removing Keys
Right-click the key that you would like to remove and click Delete. The selected
key, all of its values, and all of its subkeys are removed.
Renaming Keys
Right-click the key and click Rename. Type the new name.
Adding Values
• Right-click the appropriate key, point to New, and click String Value, Binary
Value, or DWORD Value.
• Right-click an empty area in the box on the right, point to New, and select the
appropriate type of value.
Depending on which type of value you select, the Edit String Value dialog box, the
Edit Binary Value dialog box, or the Edit DWORD Value dialog box opens.
Removing Values
Renaming Values
Modifying Values
Right-click the value and click Modify. Depending on which type of value you
select, the Edit String Value dialog box, the Edit Binary Value dialog box, or the
Edit DWORD Value dialog box opens.
NOTE Since the icon must be installed onto the desktop computer before it can be displayed in the
Windows Mobile Application Manager and Mobile Devices Explorer windows, this option is useful
for desktop-to-device installations only.
NOTE Only files with an .exe extension can be associated with the icon.
NOTE The options in the Sign the cab files panel are not mandatory but recommended for security.
Panel Settings
Sign CAB
To sign a .cab file, select this check box.
NOTE The Generate setup launcher (Autorun.exe) check box is available in the Smart Device
Setup Wizard for Smartphone only.
NOTE This Generate Setup Launcher (Autorun.exe) option is available in the Smart Device Setup
Wizard only.
Select this option to include Autorun.exe, which provides you with the ability to run
installations from storage cards. The Autorun.exe file that InstallShield generates is
currently limited to running on Pocket PC devices only.
Advanced
You can include the .NET Compact Framework and SQL redistributables for only
specific processor and platform combinations. Click this button to launch the Target
Devices dialog box, which lists the processor and platform combinations. Select the
combinations that you want your installation to support and click OK.
XML Panel
NOTE The XML files panel is displayed only if you select one of the Smartphone options in the Project
Type list on the Application Information panel of the Windows Mobile Wizard or the Smart Device
Setup Wizard.
In the XML Files panel, you have the option to add acceptable configuration XML to
the .cab file. The XML must follow the appropriate WAP provisioning format for the
Smartphone 2002 or 2003 development environment.
The /prexml and /postxml flags are useful if the metabase needs to be updated during
the installation of an application.
Panel Settings
No Uninstall
Select this check box only if you are performing an upgrade of an existing installation.
Never select this check box if you are not upgrading.
Features Panel
NOTE The Features panel is not displayed if you are using the Smart Device Setup Wizard.
In the Features panel, select the feature or features to which your Windows Mobile
installation belongs.
Summary Panel
In the Summary panel, you can review the settings for your Windows Mobile or smart
device installation before you add it to your project. If you need to change any of the
settings, click Back until you reach the appropriate panel, and then make the necessary
changes.
When you are done, click Finish. If you are creating a desktop-to-device installation,
your mobile device installation is added to all of the features that you selected to
associate with the mobile device application in the Features panel.
The appropriate installation files are automatically generated the next time that you
build your InstallShield project.
View Description
General Information The General Information view is where you set global project
properties such as the application name and support information.
Most of the properties in this view are optional. Your setup will work
properly if you accept the defaults or do not provide any values for
the optional properties. However, the following properties are
required: Subject, Product Name, Publisher, Product Code, Upgrade
Code, and Destination Folder.
Features Features are the building blocks of your setup. They represent a
distinct piece of your application—such as program files, help files,
or clip art—to your end users. You can create features and
subfeatures in the Features view.
DIM References Manage all references to your Developer Installation Manifest files in
the DIM References view.
Table 26-1: Views Under the Organize Your Setup View (cont.)
View Description
Setup Types Setup types offer different configurations of your applications to your
customers. These configurations can be useful if you distribute large
features that are not required in order for the application to run.
Upgrade Paths If you have distributed previous versions of your application and want
the current version to update the end user’s system if the previous
version is installed, you can indicate upgrade information in the
Upgrade Paths view.
Update Service The Update Service view is where you enable automatic notification
for your original installation.
Product Properties
A default product is created for you when you start a new installation project. The
Product Properties grid contains information such as the product name, the product
code (GUID), and the application version.
Setting Description
Product Name Enter the name for this product. The name you enter here should
be the same as the actual application for which this installation is
being created. This value is used throughout your project. For
example:
• As the name of the source file folder under the project location
• As the name of the setup package (.msi file) that is built
• In dialog boxes of the installation’s end-user interface
• Under the informational registry key in accordance with
Windows logo requirements. These informational values are
found in:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curre
ntVersion\Uninstall\Product Code
These values are used in Add or Remove Programs in the
Control Panel.
Setting Description
Product Code Enter a GUID that uniquely identifies this product. To generate a
new GUID, you can click this field, and then click the Generate GUID
that is displayed in the help pane.
Setting Description
INSTALLDIR Enter the default product destination folder. This serves as the
default folder for all of your application’s files, and it is represented
by the Windows Installer folder property INSTALLDIR.
Setting Description
Default Font Select the font your setup uses in its user interface. If you do not
select a font, the installer uses the default system font.
Property Description
Author Specify your name or name of the person who is creating the setup
package. When you build a release, the author’s name supplies the
value for the Author field in the Summary Information Stream.
Authoring Comments Enter any comments you may have about this project. These
comments are used for your reference only and are not displayed
to the end user.
Subject Enter the name of the software application for which this installation
is being created.
Keywords Type in any keywords that help describe your product. Separate
multiple keywords with a semicolon (;). Information entered into this
field is displayed when you right-click on your setup package (.msi
file), select Properties, and click the Summary tab.
Schema The Schema property contains the minimum installer version—as
an integer—required for your installation package. For example if
your package requires at least the 1.0 version of the installer, set
this property to 100.
If the user’s system has a Windows Installer version earlier than the
minimum requirement you specify in the Schema property—for
example, if you specify a Schema value of 120 and the user has
Windows Installer version 1.0—the installation will display an error
message and then exit.
Add/Remove Programs
End users with Windows 2000 or later can see information in Add or Remove
Programs that was not available on earlier platforms. With this information, it is easier
for end users to find technical support links and telephone numbers, product update
information, and information about your company. You can provide this information
to end users by setting the Add/Remove Programs properties.
Property Description
Use Add/Remove Select Yes if you want your application to appear in the Add/
Programs Remove Programs applet. For target systems running Windows
2000, Windows Me, and Windows XP, if you set this property to
Yes, you can optionally set the other Add/Remove Programs
properties
Property Description
Publisher/Product URL Enter a general URL for your company or product—for example,
http://www.macrovision.com.
When you click the Support Information link in Add or Remove
Programs in the Control Panel for Windows 2000, Windows Me, or
Windows XP, the Publisher/Product URL is provided as a hyperlink.
Property Description
Support URL Enter the Web site address where your users can find technical
support information about your product. This information is
displayed to your users on the Support Information dialog of the
Windows 2000/Windows Me/Windows XP Add/Remove Programs
control panel.
Features View
Features and subfeatures give you almost limitless flexibility in packaging your
application and related accessories for setup. You can create and configure Features
from the Features view.
A feature is a building-block of an application from the end user’s perspective. That
is, they represent a specific capability of your product, such as its help files or a part of
a product suite that can be installed or uninstalled based on the end user’s selections.
Your entire application should be divided into features that perform a specific
purpose.
To make it easier to lay out a complex application, InstallShield allows you to create
both features and subfeatures. Subfeatures are further divisions of a feature. Since
features should be self-contained elements of an application or application suite that a
user can selectively install, it might make the most sense for you to organize portions
of your application as subfeatures of a “parent” feature. Assuming that the features are
all visible, your end user can then select which portions of a feature to install in the
Custom Setup dialog box.
The default feature Always Install cannot be renamed or removed from your project,
nor can you add any subfeatures to it. This feature should contain files that must be
installed as part of your setup.
Although you can create up to 15 levels of subfeatures, you should keep the design as
simple as possible for organizational purposes.
Feature Settings
Feature settings are as follows.
Setting Description
Description A feature’s description is displayed in the Custom Setup dialog box when the
end user clicks on a feature or subfeature.
Required When you set a feature’s Required property to Yes, the end user cannot
deselect it in the Custom Setup dialog, and the feature is installed. If you set it
to No, the feature is installed by default, but the user can choose to not install
it.
Remote This feature property determines whether this feature’s files are installed on
Installation the target system or run from the source medium, such as a CD-ROM or
network server. The default value for a new feature is Favor Local, which
means that the files in the selected features are installed on the target
system.
Select an option from the drop-down menu:
• Favor Source—The files belonging to this feature are run directly from
the source medium, such as a CD-ROM or network server.
• Favor Local—All of the feature’s files are installed onto the target
system.
• Favor Parent—Gives a subfeature the Remote Installation property of
its parent feature.
For uncompressed CD-ROM builds, you can set this property to Favor
Source. All the files in that feature do NOT get installed to the local
machine. For example, if you do not want to install your primary .exe file
on the local machine and you want the shortcut to point to the file on the
CD, use the Favor Source value to do this. Previously this involved
making the shortcut point to [SourceDir]MyFile.exe. When the end user
installs the application and launches the shortcut, it resolves the source
and runs the .exe file from the installation CD.
Setting Description
Visible By setting a feature’s Visible property, you specify how you want it presented
to the end user in the Custom Setup dialog. Select an option from the drop-
down menu:
• Visible and Collapsed—The feature is displayed in the Custom Setup
dialog with its subfeatures collapsed by default.
• Visible and Expanded—The feature is displayed in the Custom Setup
dialog with its subfeatures expanded by default.
• Not Visible—The feature is be displayed to the end user in the Custom
Setup dialog.
Setting Description
Advertised By setting a feature’s Advertisement property, you can selectively enable or
disable a feature for advertisement. End users can change this from the
Custom Setup dialog.
Advertised features are not immediately installed during setup. If the feature
is advertised, the feature appears to be already installed. A published feature
does not appear on the target system until it is requested from the installer.
Select an advertisement option from the drop-down menu:
• Disallow Advertise if not supported—Advertisement works only on
systems with Internet Explorer 4.01 or higher. If the target system does
not meet this criterion, advertising is disallowed. If the target system can
support advertisement, advertising is allowed.
• Disallow Advertise—Advertising is not allowed for this feature. End
users cannot elect to have the feature advertised in the Custom Setup
dialog.
• Favor Advertise—The feature is advertised by default. End users can
change the advertisement option for a feature in the Custom Setup
dialog.
• Allow Advertise—Enables advertisement on this feature. Although
advertisement is allowed, it is not the default option when the setup is
run.
Feature advertisement usually requires support from the application. For
example, if you want to advertise a spell check feature, the application would
have to check the feature’s installation state when the end user clicks the
Spell Check toolbar button. If the feature is already installed, the Spell
Checker launches. If it is advertised, the spell check feature must be installed
prior to launching it
When you allow advertisement of a feature, the feature is advertised,
regardless of the mode in which the installation is running, as long as no other
factors prevent it from being advertised. The end user can control which
features are immediately installed and which will be available later in the
Custom Setup dialog.
Setting Description
Condition The Condition property shows whether any conditions are set for this feature,
and allows you to create additional conditions. If this feature has conditions,
the property field contains the “Has Conditions” value.
To view the conditions, click the property field. The conditions are displayed in
the inline help directly below the property grid. To create or modify conditions,
click the ellipsis button to launch the Condition Builder dialog.
Comments Use comments to help you keep track of the changes you make to a feature,
or for any future reference. The feature’s comments are stored only in the
project file and are not used in the setup at any time.
REG File to Specify the complete path or click the ellipsis button to browse to a .reg file
Merge at Build to merge it with the feature’s registry entries at build time.
• General
• Variables
• Meta Info
• Data
• Dependencies
General Tab
The General tab in the DIM References view displays the following settings
associated with a particular DIM reference:
Table 26-6: Settings on the General Tab in the DIM References View
Setting Description
Name This required property represents the name of the feature or subsystem that
this DIM represents. The name of your DIM defaults to the value of this
property, that is, Name.dim.
UUID This property is required. A default universally unique identifier (UUID) is
automatically generated in this field for the DIM.
Version This required property represents the version of this DIM. The default value is
1.0, which means that this is the first version. You can specify up to four places
for this value, for example, 1.0.0.0.
Description This optional property is a description of the functionality or subsystem that this
DIM represents.
Author This optional property is the name of the author of this DIM.
Company This optional property is the name of your company.
NOTE You will need to virtual directories that you have defined in a DIM to your installation project and
maintain them in the Internet Information Series view.
Variables Tab
The Variables tab in the DIM References view displays all of the build and run-time
variables defined in a DIM. All of the values in the Value field are writable and should
be set in order for them to be resolved properly. Changing the value overrides the
value for the Unit Test Value setting. The Unit Test Value setting is read-only and is
the value set by the DIM author in the DIM.
Data Tab
The Data tab in the DIM References view displays a listing of all installation elements
included in a particular DIM. It shows the name of an element and the total number of
records associated with it. The information in this tab is read-only.
Dependencies Tab
The Dependencies tab in the DIM References view displays all of the DIMs that are
required by a particular DIM reference. Each dependency is identified by its UUID
and Version property values.
On this tab, you must browse for the corresponding source file for each required DIM
or dependency.
version number than your current release. Each upgrade entry setting is described
below:
Setting Description
Upgrade Code This property contains as its value the upgrade code GUID of the
product version that you want this version of your application to
replace. When the installation of your current version begins, the
MSI engine searches the target system for the upgrade code
specified. Upon finding a matching upgrade code—along with other
matching upgrade properties—the MSI engine upgrades the target
system by installing the new version.
If you added an upgrade entry to the Upgrade Paths tree by
browsing for and selecting an .msi file on your system, the upgrade
code of that .msi file automatically populates the Upgrade Code
property. If the .msi file for the product version that you want to
upgrade is not on your system, you can type the upgrade code in
this property field.
You can also use the ellipsis (...) button to navigate to an .msi file
on your system and populate the Upgrade Code property.
Setting Description
Min Version The Min Version property further defines the MSI engine’s search
for installed versions to upgrade. The previously installed version’s
upgrade code must first match the value specified in the Upgrade
Code property. Once a matching upgrade code match is detected,
the search can be narrowed by the minimum and/or maximum
version specified and whether the versions are included or
excluded (indicated in the Include Min Version and Include Max
Version properties).
This property contains the minimum version number of the product
that you want your current version to update. The field can be
populated in one of the following ways:
• If you added an upgrade entry to the Upgrade Paths tree by
browsing for and selecting an .msi file on your system, the
version of that .msi file automatically populates the Min Version
property.
• You can also type the minimum version in this property field in
the format 0.00.0000 or 00.00.0000 (where the zeros
represent the version number).
Setting Description
Max Version The Max Version property further defines the MSI engine’s search
for installed versions to upgrade. The previously installed version’s
upgrade code must first match the value specified in the Upgrade
Code property. Once a matching upgrade code match is detected,
the search can be narrowed by the minimum and/or maximum
version specified and whether the versions are included or
excluded (indicated in the Include Min Version and Include Max
Version properties).
This property contains the maximum version number of the product
that you want your current version to update. The field can be
populated in one of the following ways:
• If you added an upgrade entry to the Upgrade Paths tree by
browsing for and selecting an .msi file on your system, the
version of that .msi file automatically populates the Max
Version property.
• You can also type the maximum version in this property field in
the format 0.00.0000 or 00.00.0000 (where the zeros
represent the version number).
Setting Description
Language Identifiers The Language Identifiers property further defines the MSI engine’s
search for installed versions to upgrade. The previously installed
version’s upgrade code must first match the value specified in the
Upgrade Code property. Once a matching upgrade code match is
detected, the search can be narrowed by the languages specified
and included or excluded (indicated in the Lang Search Criterion
property).
This property provides the decimal language identifier(s) for the
product version that you want to upgrade.
Setting Description
Migrate Feature States When installing the previous version of your application, your end
user may have selected to install certain features, and not install
others. During upgrade to a new version of your product, these
original selections can be retained as the default selections by
setting the Migrate Feature States property to Yes.
For example, if your original product contained Feature1, Feature2,
and Feature3, and your end user installed only Feature1 and
Feature3, then by default Feature1 and Feature3 will be selected
for installation when your upgraded setup is run. Feature2 will, by
default, remain unselected.
Trialware View
PROJECT This view does not apply to the following project types:
• QuickPatch
• Compact
NOTE Try and Die technology is available in the Premier edition of InstallShield only. For more
information about the Premier edition, visit the Macrovision Web site.
With the Trialware view, you can configure a license for trialware. InstallShield uses
the license to wrap a trialware shell around your product’s executable file (.exe, .dll,
.ocx, or .scr file). The file can be unwrapped and used only according to the license
settings that you configure, such as the trial limit (a specified number of days or a
specified number of uses).
To obtain a license for an executable file in your project, you begin by right-clicking
the Trialware Files explorer in the Trialware view and then clicking New File
Configured for Trial Usage.
Two tabs are associated with the file selected in the Trialware Files explorer:
• General
• Advanced
Two different types of icons are available for files in the Trialware Files explorer:
Icon Description
InstallShield displays this icon for a file in the Trialware Files explorer if a
corresponding executable file (.exe, .dll, .ocx, or .scr file), trialware type, and
license have been specified on the General tab.
InstallShield displays this warning icon for a file in the Trialware Files explorer if
the file still needs to be configured: a corresponding executable file (.exe, .dll,
.ocx, or .scr), trialware type, or license needs to be specified on the General tab.
If you build your project when this warning icon is displayed, a build error occurs
(unless you have chosen to exclude trialware protection from the release).
General Tab
The Trialware view has a General tab. InstallShield displays this tab when an item is
selected in the Trialware Files explorer.
The General tab is where you select an executable file (.exe, .dll, .ocx, or .scr file), a
trialware type, and a corresponding license for your trialware.
Setting Description
Trialware File (.exe, .dll, .ocx, or .scr) Select the .exe, .dll, .ocx, or .scr file in your
project that you would like to protect.
InstallShield will wrap a trialware shell around
this file. The file can be unwrapped and used
only according to the license settings that you
configure on the Advanced tab.
Trialware Type Select the type of trialware. For detailed
information about the different types, see
Types of Trialware.
Setting Description
License(s) Select the license that should be used to
protect the selected executable file. If you do
not have a license, click the Acquire button to
obtain one.
Once you have configured the above settings for a trialware file, the icon in the
Trialware Files explorer changes from a warning icon ( ) to a protected trialware
icon ( ). If you build your project when the warning icon is displayed, a build error
occurs (unless you have chosen to exclude trialware protection from the release).
Advanced Tab
The Trialware view has an Advanced tab. InstallShield displays this tab when an item
is selected in the Trialware Files explorer.
The Advanced tab is where you configure settings such as the trial limit (number of
trial days or number of uses) for your trialware. It is also where you set the hyperlinks
for the trialware run-time dialogs and access the InstallShield Activation Service
Publisher Web Site.
NOTE The default values for the URL-related properties listed below are for pages on the Macrovision
Web site. You must change these default values or delete them before releasing your trialware.
Otherwise, hyperlinks to the Macrovision Web site will be included in your trialware run-time
dialogs.
Property Description
Manage Licenses Online Double-click the Manage Licenses Online property to access
the Publisher Web Site for the InstallShield Activation Service.
The Publisher Web Site is a Web-based tool that enables you to
configure license settings for Try and Buy/Product Activation
trialware.
Visit this Web site to perform tasks such as the following:
• Add to your licenses the serial numbers that end users will
use to activate your product.
• Modify license and serial number properties such as
number of activations allowed and enabled vs. disabled
status.
• Perform offline activations for your end users.
• Run reports to track the number of activations, gather
metrics on the success of a new product introduction,
identify serial numbers that end users might be abusing,
and much more.
Product Name Specify the name that you want to be displayed for your
product in the trialware run-time dialogs.
If you leave this property blank, the name that is listed in the
Product Properties view is used in the trialware run-time
dialogs. The Product Properties view is available from the
General Information view.
Type of Trial Limit Select the type of trialware limit: either number of days or
number of uses.
The type of trial limit that you select here is used as the unit of
measure for the Trial Limit Quantity and Extension Limit
Quantity properties. Note that it is impossible to have an
extension trial limit type that does not match the standard trial
limit type. For example, if you set the trial limit to a specific
number of days, you cannot set the extension trial limit to a
specific number of uses.
For the Try and Buy/Product Activation type of trialware, end
users need to activate the product if they have not already
done so once they have reached the trial limit. End users can
extend the trial only if trial extensions are allowed and if they
enter the correct extension serial number.
For the Try and Die type of trialware, end users can continue
using the product only if trial extensions are allowed and they
enter the correct extension serial number.
Property Description
Trial Limit Quantity Specify the number of days or the number of uses (depending
on the value of the Type of Trial Limit property) for the trial
limit:
• If the Type of Trial Limit property is set to Days, the trial
period starts on the day that the end user launches your
trialware product for the first time. The trial period starts
on that first day even if the end user clicks the Cancel
button on one of the trialware run-time dialogs and does
not start using the product.
• If the Type of Trial Limit property is set to Uses, the
countdown for the number of trial uses starts with the first
time that the end user launches your product. If an end
user clicks the Cancel button on one of the trialware run-
time dialogs and does not start using the product, the
number of uses does not change.
Property Description
Serial Number Format Specify the format for your product’s trialware serial number
and—if trial extensions are allowed—the extension serial
number:
• Type a question mark (?) to represent each character in
your product’s trialware serial number. For example, if a
serial number consists of seven characters, type seven
question marks in this field.
• To split the serial number into groups of characters, type
a dash (-) between each group of question marks. The
dash indicates a break in the serial number, where one
group of characters ends and another begins.
For a serial number format of ???-????, the serial number field
on the trialware run-time dialog would consist of two boxes;
end users would be able to type only three characters in the
first box and only four characters in the second box.
If the type of trialware is Try and Buy/Product Activation, the
format for the serial numbers entered at the InstallShield
Activation Service Publisher Web Site must match the format
specified in the Serial Number Format property. Note that the
Publisher Web Site does not check to make sure that the serial
numbers match the format specified in InstallShield.
If you allow trial extensions, the serial number that you specify
for the Extension Serial Number property must fit the format
specified in the Serial Number Format property.
Allow Trial Extension Specify whether end users are allowed to extend the trial for
your product. If you select Yes, enter values for the Extension
Limit Quantity and Extension Serial Number properties.
Property Description
Extension Limit Quantity Specify the number of days or the number of uses (depending
on the value of the Type of Trial Limit property) that an end
user is allowed to extend the trial if they enter the correct
extension serial number.
If the Type of Trial Limit property is set to Days, the countdown
for the number of days in the trial extension period starts the
day after the initial trial period ends. This occurs even if the
end user does not immediately extend the trial, but instead
waits several days after the trial period is over to extend it. For
more details, see Trial Limits and Extensions.
Property Description
Expiration Date You can set an expiration date to prevent evaluations or
activations of your product after a certain date. To specify an
expiration date, double-click this property, select the I want
my trial to expire on this date option, and then select the
appropriate date.
If you do not want the trialware version of your product to
expire after a predetermined date when end users have not yet
activated it, leave the default value of (Does not expire) for
this field.
Expiration dates are often used for beta versions of a product.
For example, you may want to set the expiration date to the
last day of the beta trial period. When the beta trial period is
over, end users can no longer use the trialware version of your
product, even if they have additional days or uses remaining in
their trial.
The expiration date does not affect how long the Try and
Buy/Product Activation type of trialware can remain
activated. Activating this type of trialware before the
expiration date will make it permanently activated, unless
end users deactivate the product by uninstalling it. If they
deactivate the product after the expiration date, they will
not be able to reactivate it.
Product Purchase URL Specify the URL for a page on your Web site that end users
can visit to find information about purchasing your product.
Note that the default value for this property is a page on the
Macrovision Web site. You must change this default value or
delete it before releasing your trialware.
When an end user clicks the hyperlink for more information on
purchasing your product on one of the trialware run-time
dialogs, this Web page is opened in a Web browser. If you
delete the URL in this box, the purchasing link is not displayed
in the trialware run-time dialogs.
To learn about the e-commerce solution, visit the Macrovision
Web site.
Property Description
Feedback URL Specify the URL for a page on your Web site that end users
can visit to submit feedback to you. Note that the default value
for this property is a page on the Macrovision Web site. You
must change this default value or delete it before releasing
your trialware.
When an end user clicks the Feedback hyperlink on one of the
trialware run-time dialogs, this Web page is opened in a Web
browser. If you leave this box empty, the Feedback link is not
displayed in the trialware run-time dialogs.
If you want end users to submit feedback through email
messages instead of through your Web site, you can configure
this property with a mailto URL. If an end user clicks a mailto
URL hyperlink in one of the trialware run-time dialogs, a new
email message is opened in the end user’s email application,
and the destination address is populated in the To field.
For example, if you type the following text in this property, an
email message will open with feedback@mycompany.com in
the To field.
mailto:feedback@mycompany.com
You can also specify the text for the Subject line with the
following code, using %20 in place of spaces:
mailto:feedback@mycompany.com?Subject=My%20
Subject
Serial Number Information Specify the URL for a page on your Web site that end users
URL can visit to read information about where they can find their
serial number.
When an end user clicks the Where is my serial number?
hyperlink on one of the trialware run-time dialogs, this Web
page is opened in a Web browser. If you leave this box blank,
the Where is my serial number? hyperlink is not displayed in
the run-time dialogs.
This property applies to the Try and Buy/Product Activation
type of trialware only.
Help URL Specify the URL for a page on your Web site that end users
can visit to learn more about the trial of your product. Note
that the default value for this property is a page on the
Macrovision Web site. You must change this default value or
delete it before releasing your trialware.
When an end user clicks the Help hyperlink on one of the
trialware run-time dialogs, this Web page is opened in a Web
browser. If you delete the URL in this box, the Help link is not
displayed in the trialware run-time dialogs.
Property Description
Privacy Policy URL Specify the URL for a page on your Web site that end users
can visit to learn more about your company’s privacy policy.
Note that the default value for this property is a page on the
Macrovision Web site. You must change this default value or
delete it before releasing your trialware.
When an end user clicks the Privacy Policy hyperlink on one of
the trialware run-time dialogs, this Web page is opened in a
Web browser. If you delete the URL in this box, the Privacy
Policy link is not displayed in the trialware run-time dialogs.
Offline Activation Email If you want end users to be able to activate your product by
email, specify the email address that end users should use to
request an offline activation. This email address is typically a
distribution-list email address that your customer support staff
monitors often. Note that the default value for this property is a
sample email address. You must change this default value or
delete it before releasing your trialware.
If you do not want end users to be able to activate your
product by email, leave this property blank. The Activate by
Email option will not be displayed on the trialware run-time
dialogs.
For details on how to set this property, see Allowing Offline
Email Activations.
This property applies to the Try and Buy/Product Activation
type of trialware only.
Property Description
Offline Activation Phone If you want end users to be able to activate your product by
phone, specify the phone number that end users should call to
request an offline activation. The phone number that you enter
should be your own organization’s phone number—typically,
the phone number for your customer support staff. For more
information about the offline activation, see Overview of the
Activation Process.
If you do not want end users to be able to activate your
product by phone, leave this property blank. The Activate by
Phone option will not be displayed on the trialware run-time
dialogs.
The request codes and response codes that are used with
phone activations are shorter than the ones that are used
with offline email activations; the shorter length of the
codes makes it possible to read the codes over the
phone. However, short codes are not as secure as the
longer codes used with email activations. Therefore,
Macrovision recommends that you carefully consider the
security risks associated with offline phone activation
before offering it as an offline activation method. Use of
this option is at your own risk, and Macrovision accepts
no responsibility if your company experiences security
issues.
This property lets you specify the following:
• One or more phone numbers.
• One or more locations. For example, if you have offices in
North America and Europe, you might want to provide one
phone number for customers calling from North America
and a different phone number for customers calling from
Europe.
• Other text strings, such as hours of operation.
For details on how to set this property, see Allowing Offline
Phone Activations.
This property applies to the Try and Buy/Product Activation
type of trialware only.
View Description
Files The Files view is the main way you add files to your installation
project. This view behaves similarly to the Windows Explorer, allowing
you to drag-and-drop files into your installation project.
Files and Features Although you can select which feature you want to add your files to in
the Files view, if you want to change which feature a file is associated
with after the file has been added to your installation, you need to do
so in the Files and Features view.
Redistributables Redistributables—objects and merge modules—allow you to add
distinct pieces of functionality to your installation project. Examples
of these types of functionality include Visual Basic run-time DLLs and
the Microsoft C run-time libraries.
Dependencies The Dependencies view includes three different scanners that add
dependency files to your installation. These scanners include a Visual
Basic project scanner, a static scanner that scans files already
included in your project and adds their dependencies, and a dynamic
scanner that scans a running application for any dependencies.
Mobile Devices Use the Mobile Devices view if you are creating an installation that
requires a desktop component to be installed along with a mobile
device component. When you add a mobile device installation to your
project through this view, InstallShield automatically adds it to all of
the features that you selected to associate with the mobile device
application.
Files View
Files are the core of any installation. The main purpose of an installation program is to
transfer files from the source medium to the target destination. The Files view is
divided into four panes: The two left panes contain folders and the two right panes
display the files located within those folders. Above these four panes is the Feature
list. Before you add files to your installation, you need to select the feature with which
you want to associate your files. The feature that appears in the box is the feature to
which your files are added.
Pane Description
Source Folders (Top The Source Folders frame is analogous to the left frame in Windows
Left) Explorer. This view contains folders located either locally or on a
network. From here you can navigate to the folder that contains the
files you want to add to your installation.
Source Files (Top Right) The Source Files frame displays the files contained in the currently
selected folder of the Source Folders frame. You can drag files from
this frame to a destination folder in the lower-left frame. The files you
drop into the bottom frames are added to your installation project.
Destination Folders The Destination Folders frame contains a list of predefined
(Bottom Left) destinations.
Destination Files The Destination Files frame displays all the files you have added to the
(Bottom Right) currently selected destination folder. By right-clicking on a file in this
view you can cut, copy, paste, delete, or edit its properties.
You can add files to your installation project in one of three different ways. Each of
these methods is described below:
Method Description
Drag and Drop The most straightforward way to add files to your installation project
is by using the Files explorer in the Files view. The top two panes in
this view are functionally equivalent to Windows Explorer. The bottom
two panes represent the destination for your files. Simply drag source
files from the top frame to the destination folder in the bottom frame.
If you drag and drop a folder from the Source Folders to the
Destination Folders, a dialog will prompt you to indicate whether
you want to make the folder a dynamic link to the folder.
Dynamic File-Linking Another way to add files to your installation is by linking to the
contents of an entire folder, or to specific files in the folder. This
method allows you to point to a specific folder, either locally or on a
network, that contains files for your installation. Every time you build
your installation, the selected contents of the folder are added to your
feature. Additionally, you can use wild cards to filter which files are
added to your installation.
Method Description
Dependency Scanning A third way to add files to your installation is accomplished through
the Dependencies view. This view contains three wizards that can
scan your installation project, a running application, or a Visual Basic
project for all dependency files and add them to your installation. All
three of these wizards can also be launched from the Tools menu.
NOTE To refresh any of the panes in the Files view, give focus to the pane you want to refresh and
press F5.
Destination Folders
When you add files to your installation, you do so by placing them in a destination
folder. The following predefined destination folders are provided by default in the
Files view. Each one is dynamic, meaning that they do not rely upon hard-coded
paths. Instead, the value for each destination folder is obtained from the operating
system of the target machine.
The following properties hold the fully qualified path to many of the folders on the
end user’s system.
Property Description
AdminToolsFolder Points to the folder where administrative tools are located.
AppDataFolder This property holds the full path to the current user’s Application
Data folder. By default, this property is none.
CommonAppDataFolder Full path to the folder containing application data for all users. A
common path is C:\WINNT\Profiles\All Users\Application Data.
CommonFilesFolder The value of this property is the full path to the Common Files folder
for the current user.
DATABASEDIR This property stores the destination for your installation’s database
files. You can set the initial value for DATABASEDIR in the General
Information view and end users can modify this value at run time in
the Database Folder dialog—if you display the Change button.
DesktopFolder This property is used to hold the full path to the Desktop folder for
the current user. If the installation is being run under NT/2000/XP
for All Users, and the ALLUSERS property is set, then the
DesktopFolder property should hold the full path to the All Users
desktop folder.
Property Description
FavoritesFolder The FavoritesFolder property contains the full path to the Favorites
folder for the current user.
FontsFolder This property holds the full path to the Fonts folder.
INSTALLDIR This property stores the destination folder for your installation. You
can set an initial value for INSTALLDIR in the General Information
view.
IISROOTFOLDER This property is an InstallShield directory variable that is used to
determine the root directory of the Web server on a target system.
If you are using IIS functionality in your installation project and you
have added a Web site, then IISROOTFOLDER is automatically
added to your project so that you can deploy files to the IIS root
folder.
Property Description
StartupFolder This property is used to hold the full path to the Startup folder for
the current user. If the installation is being run under NT/2000/XP
for All Users, and the ALLUSERS property is set, then the
StartupFolder property should hold the full path to the All Users
program menu.
System16Folder This property holds the full path to the folder containing the
system’s 16-bit DLLs.
SystemFolder This property holds the full path to the Windows system folder.
TempFolder This property holds the full path to the Temp folder.
TemplateFolder This property holds the full path to the current user’s Templates
folder.
WindowsFolder This property holds the full path to the Windows folder.
WindowsVolume This property holds the volume of the Windows folder. It is set to
the drive where Windows is installed.
1. Click the feature that currently contains the file to display a list of all the files
associated with that feature.
2. Select the file you want to move and drag it onto its new feature.
NOTE You can also cut and paste files—both in large groups or individually—rather than using the
drag-and-drop method.
Redistributables View
The Redistributables view contains all of the InstallShield objects and third-party
merge modules that are included with InstallShield. This view also contains setup
prerequisites that you can add to your project.
TIP To see only the redistributables that are included in your installation project, right-click any
redistributable and select Show Only Selected Items. To specify which types of
redistributables—all types, merge modules, objects, or setup prerequisites—should be
displayed, select the appropriate option in the Object types to display list.
Merge Modules
A merge module (or .msm file) contains all of the logic and files needed to install
distinct pieces of functionality. For example, many applications require Microsoft
Visual Basic run-time .dll files. Instead of having to include the file in a feature and
figure out its installation requirements, you can simply attach the Visual Basic Virtual
Machine merge module to one of your project’s features.
NOTE Many of the merge modules included in the Redistributables view are authored by Microsoft or
another third party. Macrovision distributes these modules as a courtesy to assist you in
creating your installation project. However, Macrovision cannot modify or fix any problems that
may exist within third party-authored modules. You are encouraged to contact the vendor
regarding issues with specific third party-authored modules.
Objects
Like merge modules, objects contain logic and files needed to install distinct pieces of
functionality. Some objects, such as the Microsoft Access object included with
InstallShield, require customization through a wizard. As soon as you add such an
object to your installation, its customization wizard opens. You can either customize
your object at the time you add it, or cancel the wizard and customize your object later
by right-clicking the object and selecting Change Objects Settings.
Setup Prerequisites
A setup prerequisite is a base application or component that must be installed on the
target machine before your application can be installed. Including setup prerequisites
in your project enables you to chain multiple .msi files together into a single
Setup.exe file, bypassing the Windows Installer limitation that enables only one .msi
file to be executed at a time. If your installation is Web based, you can configure the
setup prerequisite so that it is downloaded to the target machine only if it is actually
needed. InstallShield includes a base set of setup prerequisites.
EDITION InstallShield Premier Edition and InstallShield Express Edition include the Setup Prerequisite
Editor, which enables you to modify and create setup prerequisites.
Configurable Redistributables
A configurable redistributable is a merge module or an object that has at least one row
in the ModuleConfiguration table that is referenced by at least one row in the
ModuleSubstitution table. This enables you to change a value in the redistributable.
When you select a configurable module in the Redistributables view, the Merge
Module Configurable Values dialog box is displayed to enable you to configure the
module at the time you add it. To customize the merge module later, right-click it and
select Configure merge module.
Dependencies View
Very often a file relies on functions in other files to perform a task. However, you may
not always be aware of these other files, known as dependencies, when it comes time
to include your application’s files in your setup project. This might cause your
application to function incorrectly.
To help you identify dependencies, InstallShield offers three dependency scanners
that automatically add these files to your setup:
Scanner Function
Static Scanner Looks at portable executable (.exe, .ocx, .com, .tlb, .hlp, and .chm)
files you have in your setup and checks for any dependencies they
may require.
Dynamic Scanner Monitors your system while an executable file is running and then
adds to your setup any .dll or .ocx files that are required by the
application.
Import Visual Basic Scans your Visual Basic project for all dependencies and adds them
Project to your setup project.
NOTE Microsoft ActiveSync 3.x or later must be installed on the desktop computer in order to provide
a desktop-to-device installation. Active Sync 4.x is required for Windows Mobile 5.x devices.
TIP To create a dedicated installation for a smart device application, use the Smart Device project
type.
create shortcuts. InstallShield provides the following subviews for making advanced
configurations:
Table 26-17: Views Under the Configure the Target System View
View Description
Shortcuts/Folders Shortcuts offer quick access to your installed application. You can
create shortcuts and folders on the desktop, the Start menu, and
various other locations.
Registry Through the Registry view, you can create registry entries or import
existing registry data into your installation.
ODBC Resources In the ODBC Resources view, you can add drivers, translators, and
data sources to one or more of your application’s features. Select
from installed ODBC resources or add new ones to the list, associate
them with features, and then customize their attributes.
INI File Changes Although editing system .ini files is not recommended in Windows
2000, XP, or Me, you can edit these files in the INI File Changes view.
This view allows you to create sections and keywords or edit an .ini
file on the target system.
File Extensions If your application requires file extension associations, you can create
these associations in the File Extensions view.
Environment Variables If you need to create, modify, or remove environment variables from
the target system, you can define their properties in the Environment
Variables view.
Internet Information The Internet Information Services view enables you to create and
Services configure IIS Web sites and virtual directories on the target system
when you are deploying Web applications.
Component Services The Component Services view enables you to manage COM+ server
applications and components for your installation package.
Shortcuts/Folders View
You can create shortcuts as well as program folders on the Windows desktop using the
InstallShield Shortcuts explorer. It is important to note that folders and shortcuts can
only be created on the Explorer shell (that is, under Windows XP, Windows 2000,
Windows Me, Windows 98, Windows NT 4.0, and Windows 95).
Shortcut Locations
The Shortcuts/Folders view contains a set of predefined folders under which you can
create shortcuts and subfolders. All of the available shortcut destinations are defined
below.
Send To Folder
The Send To folder is accessed when a user right-clicks on a file. In the right-click
menu is a folder called Send To. If you create a shortcut for your program in this
folder, an end-user can click on any file and send it to your program.
For instance, if you wanted to open an HTML page in Notepad and you created a
shortcut to Notepad in the Send To menu in the Shortcuts explorer, you could then
right-click on an HTML file and choose Notepad from your Send To menu. The
source for that page would open in Notepad.
NOTE A shortcut created in the Send To Folder is set to the SendTo folder for the user running the
installation. This is because Windows Installer sets the SendToFolder property to the full path to
the SendTo folder for the current user.
Desktop
The final shortcut location is the end user’s desktop. Creating a shortcut on the
desktop folder results in your program’s icon’s being displayed on the end user’s
desktop. The desktop is the most visible place to put a shortcut, but it can clutter your
user’s desktop, so use this option sparingly.
Shortcut Settings
Once you have created your shortcuts, you need to configure their settings. Shortcut
settings enable you to link your shortcut to a file, provide a description of the shortcut,
or pass arguments. A brief description of each setting is provided below.
Setting Description
Description You can provide a description of your shortcut in this field. In a
Windows 2000 or Windows XP environment, this text is displayed in
the Description field of the shortcut’s property sheet.
Feature Select which feature this shortcut belongs to. To ensure that your
shortcut is installed with its target file, you need to include the
shortcut in the same feature as the target file.
Arguments Enter the command-line arguments for this shortcut. The
arguments are added to the Target value of the shortcut’s property
sheet. These arguments work in the same way as any other
command-line arguments. For example, you can link a file to an
executable or cause an executable to run silently by passing
command-line arguments. Be sure to check your syntax because
InstallShield does not do this for you.
Use %1 in the argument for the selected file name. For example, if
you right-click C:\File.ext and -p %1 is the argument for this
shortcut, the command-line argument becomes -p
C:\File.ext. In some cases, it is necessary to enclose the %1
argument in quotation marks—as in "%1"—to correctly handle file
names that contain spaces.
Target The target property is the path to the file that your shortcut
launches. Instead of hard-coding a path, you can use a Windows
Installer folder property in square brackets—for example,
[INSTALLDIR]MyApp.exe.
The target can be any file you choose—either part of your
installation project or a file you know is on the target system. To
specify a file that is already installed on the target system, you
need to select New Shortcut to Preexisting File when you create
your shortcut. If your shortcut points to a file that is installed with
your installation, you can select from the files in the drop-down
menu. Any portable executable files (for example, .exe or .chm) in
your installation project are listed in this field.
Provide the path and file name for this shortcut’s target.
Setting Description
Icon File Enter the fully qualified path or browse to the executable file that
contains the icon for the shortcut you are creating. Note that this
file must be an executable file (.exe), a standalone .ico file, or a .dll
file. Because Windows Installer requires a separate icon file,
InstallShield extracts the first icon in the executable file unless an
icon index is specified.
Setting Description
Hot Key Shortcut hot keys allow you to access shortcuts with keyboard
combinations, such as CTRL+ALT+A. These combinations enhance
keyboard support of your product.
Click in this field and then click the ellipsis button (...). The Hot Key
dialog box opens, enabling you to enter the keyboard combination
you want to use for this shortcut. The keys you press are
automatically converted into a decimal number that InstallShield
can use when creating the shortcut. For more information, see
Adding Shortcut Hot Keys.
Comments Enter comments for this shortcut. Your comments are saved in the
project file for your reference and are not used in the setup at any
time.
Registry View
InstallShield makes the task of modifying the end user’s registry more familiar with
the InstallShield Registry view. Use this view to create keys and values in a way that
is similar to how you use the Windows Registry Editor.
Additionally, the installer automatically creates certain registry entries based on
values you provide for your General Information properties. These “informational
keys” are required by Windows logo guidelines.
TIP To see all of the registry data in your installation project, select All Application Data (Modify/
Delete)” in the Feature list at the top of the view. You can modify or delete registry data, but
cannot add new keys or values when this option is selected.
a feature. Then, when that feature is installed, the ODBC resource is installed as a part
of the overall feature.
TIP The ODBC Resources view is exclusively for installing ODBC-related resources. To install the
core ODBC files, select the MDAC merge module in the Redistributables view.
NOTE You can add your own ODBC attribute by clicking in the last row of the grid in the ODBC
Resources view and specifying the property and value.
Drivers
In addition to the required attributes below, the driver must have a name in the tree.
This name is registered as the driver’s description. The driver’s name cannot be
localized, which means that you cannot translate it through the Text and Messages
view and the same value must be used regardless of the system’s language.
Data Sources
In addition to the required attributes below, the DSN must have a name in the tree.
This name is registered as the DSN’s description. The DSN’s name cannot be
localized, which means that you cannot translate it through the Text and Messages
view and the same value must be used regardless of the system’s language.
Translators
In addition to the required attribute below, the translator must have a name in the tree.
This name is registered as the translator’s description. The translator’s name cannot be
localized, which means that you cannot translate it through the Text and Messages
view and the same value must be used regardless of the system’s language.
With InstallShield, .ini file changes can be performed right in the InstallShield
interface. Editing an .ini file involves three tasks, which are described below.
Task Description
Adding an .ini File The first step in creating an .ini file change is to create a reference to
the file you want to edit. In order to do this you need to know the
name and location of the file you want to edit. If the file is not in the
location you specify, no changes to this file can be made. You can
also import an .ini file.
Specifying a Section in Once you have specified the .ini file you want to edit, the next step is
an .ini File to specify which section of that file you want to change. INI files are
divided into sections, each section containing keywords. Sections are
identified by the square brackets surrounding them—[SectionName],
for example.
Specifying a Keyword INI File keywords are the lowest level of organization in an INI file.
and its Value in an .ini These keywords store data that must persist between uses of an
File application.
Setting Description
Target Enter the path to the folder where the .ini file you want to edit is
stored, or click the Browse button to navigate to this directory.
Rather than hard-coding a path, you can choose one of the
Windows Installer folders properties from the list.
Feature Select the feature with which you want this .ini file change to be
associated. When the selected feature is installed, the change to
the .ini file occurs. If the selected feature is not installed, the
change does not take place.
Setting Description
Action Select the action you want to perform from the list. These define
how you will edit the .ini file.
• Replace Old Value—Select this option if you want your new
value to replace the existing value. If no value previously
existed, your new value is added.
• Do Not Overwrite—Your value is added to the .ini file if the
keyword does not already exist. No changes are made if the
keyword is already present in the .ini file.
• Append Tag—Select this option to append your new value to
the existing value. The new value is separated from the
existing value by a comma.
• Remove Whole Value—Select this option if you want to
remove an entire keyword and its value. If the specified
keyword does not exist, no changes are made. No entry is
required in the value field if this option is selected.
• Remove Tag—Only the tag you specify in the Value field is
removed from this .ini entry.
Data Value Enter the value for the keyword. If you are adding or appending a
value, enter the new value here. If you are removing a tag, enter the
tag you want to remove.
Windows Installer properties can be used in your keyword’s value.
To do this, surround the property with square brackets—
[INSTALLDIR], for example.
Setting Description
Feature Select the feature that you want this file type association to be a
part of. If the selected feature is installed, the file type association
will be made.
File Select from the list the executable file for which you are creating a
file extension association. If you have not yet added the necessary
file to your installation project, it is not displayed in the list.
NOTE For target systems running Microsoft Windows 95, 98, or Me, the environment variables are
modified in, created in, or removed from autoexec.bat.
Setting Description
Feature Select the feature with which you want to associate this
environment variable. If the selected feature is installed or
uninstalled, the environment variable is created, modified, or
removed from the target system—depending on the values you
provide for the other environment variable properties.
Setting Description
Value Enter the path or value for this environment variable. You can use a
predefined folder as part of this value—such as [INSTALLDIR]bin.
To enter multiple paths, separate the paths with a semicolon
Setting Description
Placement Indicates the placement of the value in the Value field relative to the
specified environment variable’s existing value. Select one of the
following options from the drop-down menu:
• Append—This option appends the value indicated in the Value
property to the end of the specified environment variable’s
existing value.
• Prefix—This option adds the value indicated in the Value
property to the beginning of the specified environment
variable’s existing value.
• Replace—This option replaces the value of the specified
environment variable with the value indicated in the Value
property.
Setting Description
Type For target systems that run Microsoft Windows NT, Windows 2000,
or Windows XP, this property indicates whether the environment
variable name refers to a system or user environment variable. If
the target system runs Microsoft Windows 95, Windows 98, or
Windows Me, this property is ignored. Select one of the following
options from the drop-down menu:
• System—Creates, modifies, or removes the system
environment variable specified.
• User—Creates, modifies, or removes the environment
variable from the user’s environment. The environment
variable specified is available only to the end user who is
logged on at the time of installation.
EDITION You can create only one Web site per installation in InstallShield Express Edition. InstallShield
Premier Edition and InstallShield Professional Edition support the creation of more than one Web
site per installation. For more information, visit http://www.macrovision.com.
Note the following information about the Internet Information Services view:
• The creation of Web sites on target machines other than the one on which the
installation is running is not supported.
• A Web site is not created on a target machine unless a virtual directory associated
with it is installed.
• Web sites that are created by the installation are never removed unless both of the
following conditions are true:
» The Delete Web Site on Uninstall property is set to Yes.
» All of the virtual roots installed by the installation have been uninstalled.
• If a Web site already exists, virtual directories tied to that Web site in the project
are installed under that Web site. However, none of the properties set for that Web
site in the InstallShield interface will be applied to the Web site in that case.
• There is a one-to-many relationship between features and virtual directories.
Therefore, you can associate more than one virtual directory with a single feature.
If you delete a feature in your project, any virtual directories associated with the
feature are simultaneously removed from your project. If a feature is being
installed, any virtual directories associated with the feature are created at run time.
NOTE • IIS 6.0 is available only on Windows Server 2003 platforms. On systems that have Windows
Server 2003, if IIS 6 is not installed, then other IIS directories and sites will still be created.
IIS 6.0-specific items will be skipped.
• IIS 5.1 for Windows XP Professional can service only one Web site at a time. This is a
limitation of IIS 5.1.
• InstallShield supports version 4 and later of IIS. It does not support the version of IIS that is
installed with the NT Option Pack on NT Workstation—only the version that is installed to
the NT server.
TIP The View Filter list at the top of the Internet Information Services view lets you associate virtual
directories with features in your installation. This filter is not used to associate a Web site with a
feature because Web sites are not tied to features.
Web Sites
Use the Web Sites item in the Internet Information Services view to add and delete
Web sites, and to configure system-wide settings for the Web server.
When you select the Web Sites explorer in the Internet Information Services view, one
Web-server setting is displayed.
Setting
Restart web serer after To restart the IIS service (W3SVC) after the installation has
configuring IIS completed making IIS changes to the system, set this field to Yes.
When you select a Web site in the explorer, you can use the following tabs to
configure IIS settings associated with that Web site:
• General tab
• Web Site tab
• Home Directory tab
• Documents tab
• Directory Security tab
• Custom Errors tab
Most of the settings are also configurable through the IIS Microsoft Management
Console. Therefore, consult the IIS Snap-in help for latest information on specific IIS
properties.
General Tab
When you select a Web site in the Internet Information Services view, InstallShield
displays several tabs. The General tab displays one setting.
Setting Description
Description Type the name of the server.
IP Address For an address to appear in this box, it must have already been
defined for use on this computer in the Control Panel. See your
Windows documentation for more information. If you do not assign
a specific IP address, this site responds to all IP addresses
assigned to this computer and not assigned to other sites, which
makes this the default Web site.
TCP Port The TCP Port setting for an IIS Web site indicates the port number
on which the service is running on the target machine. Some
versions of the IIS Web server can host multiple Web sites. Each
Web site is associated with a unique port number.
The default value for this property is 0. In cases where you do not
know the port number on the target machine, you should leave the
default 0 value for this property. When the value is 0, InstallShield
uses the default Web site on the target machine and creates all
virtual directories under this Web site.
Site Number The Site Number is the number in the path at which the Web server
will be created (i.e., w3svc/3).
Setting Description
A directory located on this If the content for the IIS Web site is on the target machine, select
computer this option.
A share located on another If the content for the IIS Web site is not on the target machine,
computer select this option.
Local Path This box displays the path to the directory that stores your
default Web site files. By default, these files are stored in
IISROOTFOLDER. If you want to store these files in a different
directory on the IIS Web server, select the desired directory from
the list, or select Browse, create, or modify a directory
entry. Then type the new path and directory name in the box.
The Local Path box is displayed if you select the A directory
located on this computer option.
Network Directory The Network Directory box is pre-populated with the following
path:
\\{server}\{share}
Change this path as appropriate.
This box is displayed if you select the A share located on
another computer option.
Script source access To allow end users to access source code if either Read or Write
permissions are set, select this check box. Source code includes
scripts in ASP applications.
Read To provide end users with read access to the Web site, select
this check box.
Write To provide end users with write access to the Web site, select
this check box. This means that end users can change the Web
site’s properties on the target machine.
Directory browsing To allow the end user to see all the virtual directories and
subdirectories below this Web site, select this check box.
Log visits To record visits to this Web site in a log file, select this check
box. Visits are recorded only if logging is enabled for this Web
site.
Index this resource To allow Microsoft Indexing Service to include this directory in a
full-text index of your Web site, select this check box.
Setting Description
Application Settings To customize the directory’s application mappings or specify
timeout parameters, click the Configuration button in the
Application Settings area. This opens the Application Mappings
dialog box, which enables you to add, edit, and delete a mapping
between a file name extension and the application that processes
those files. This dialog box also enables you to specify the
session timeout and the ASP script timeout.
Documents Tab
When you select a Web site in the Internet Information Services view, InstallShield
displays several tabs. The Documents tab has one box that enables you to establish
one or more default pages for your Web site for client requests that do not specify a
document name.
Setting Description
Username/password To allow users to establish an anonymous connection, select this
required to access this check box and enter the appropriate Windows user account
resource information.
If you do not need the Web server to confirm the identity of end
users before they can access the content, clear this check box.
Username Type the name of the anonymous account.
Password Type the anonymous user account password. You need to clear the
Allow IIS to control password check box in order to enter a
password. The password is used only within Windows. Anonymous
users do not log on by using a user name and password.
Allow IIS to control Select this check box to automatically synchronize your anonymous
password password settings with those set in Windows on the target system. If
the password you type for the anonymous account differs from the
password that Windows has, anonymous authentication will not
work.
Setting Description
Basic authentication To enable the basic authentication method for collecting user name
and password information for end users who access the Web site,
select this check box.
Table 26-31: Directory Security Tab Settings for Authenticated Access (cont.)
Setting Description
Integrated Windows To enable integrated Windows authentication, select this check box.
authentication Integrated Windows authentication uses a cryptographic exchange
with the end user’s browser to confirm the identity of the user.
When integrated Windows authentication is enabled, the Web site will
use it only under the following conditions:
• Anonymous access is disabled.
• Anonymous access is denied because Windows file system
permissions have been set, requiring end users to provide a
Windows user name and password before establishing a
connection with restricted content.
Virtual Directories
You can add virtual directories to your Web site in the Internet Information Services
view. When you select a virtual directory in the Internet Information Services view,
you can use the following tabs to configure IIS properties associated with it:
• Virtual Directory tab
• Documents tab
• Directory Security tab
• Custom Errors tab
Most of the settings are also configurable through the IIS Microsoft Management
Console. Therefore, consult the IIS Snap-in help for latest information on specific IIS
properties.
Setting Description
A directory located on this If the content for the virtual directory is on the target machine,
computer select this option.
A share located on another If the content for the virtual directory is not on the target
computer machine, select this option.
Local Path This box displays the path to the directory that stores your
default Web site files. By default, these files are stored in
INSTALLDIR. If you want to store these files in a different
directory on the IIS Web server, select the desired directory from
the list, or select Browse, create, or modify a directory
entry. Then type the new path and directory name in the box.
The [IISROOTFOLDER] directory is available if you select Browse,
create, or modify a directory entry.
The Local Path box is displayed if you select the A directory
located on this computer option.
Network Directory The Network Directory box is pre-populated with the following
path:
\\{server}\{share}
Change this path as appropriate.
This box is displayed if you select the A share located on
another computer option.
Script source access To allow end users to access source code if either Read or Write
permissions are set, select this check box. Source code includes
scripts in ASP applications.
Read To provide end users with read access to the virtual directory,
select this check box.
Write To provide end users with write access to the virtual directory,
select this check box. This means that end users can change the
virtual directory’s properties on the target machine.
Directory browsing To allow the end user to see all the virtual directories and
subdirectories below this virtual directory, select this check box.
Log visits To record visits to this virtual directory in a log file, select this
check box. Visits are recorded only if logging is enabled for this
virtual directory.
Setting Description
Index this resource To allow Microsoft Indexing Service to include this directory in a
full-text index of your Web site, select this check box.
Configuration To customize the directory’s application mappings or specify
timeout parameters, click the Configuration button in the
Application Settings area. This opens the Application Mappings
dialog box, which enables you to add, edit, and delete a mapping
between a file name extension and the application that processes
those files. This dialog box also enables you to specify the
session timeout and the ASP script timeout.
Application name Specify the name of the application in the virtual directory.
Execute permissions This list determines what level of program execution is allowed
for the selected virtual directory.
• Scripts and Executables—All file types can be accessed
or executed.
• Scripts Only—Only scripts, such as ASP scripts, can be
run.
• None—Only static files, such as HTML or image files, can
be accessed.
Application protection (pre- Select the appropriate level of protection for applications:
IIS 6.0 only)
• Low—Applications are run in the same process as Web
services.
• Medium—Applications are run in an isolated pooled
process in which other applications are also run.
• High—Applications are run in an isolated process separate
from other processes.
Documents Tab
When you select a virtual directory under a Web site in the Internet Information
Services view, InstallShield displays several tabs. The Documents tab has one box
that enables you to establish one or more default pages for your Web site for client
requests that do not specify a document name.
Setting Description
Username/password To allow users to establish an anonymous connection, select this
required to access this check box and enter the appropriate Windows user account
resource information.
If you do not need the Web server to confirm the identity of end
users before they can access the content, clear this check box.
Username Type the name of the anonymous account.
Password Type the anonymous user account password. You need to clear the
Allow IIS to control password check box in order to enter a
password. The password is used only within Windows. Anonymous
users do not log on by using a user name and password.
Allow IIS to control Select this check box to automatically synchronize your anonymous
password password settings with those set in Windows on the target system. If
the password you type for the anonymous account differs from the
password that Windows has, anonymous authentication will not
work.
Setting Description
Basic authentication To enable the basic authentication method for collecting user name
and password information for end users who access the virtual
directory, select this check box.
NOTE • The Component Services functionality is available only if you are using InstallShield on a
machine running Microsoft Windows 2000 or Microsoft Windows XP.
• Only non-system COM+ applications can be added to your project. Therefore, InstallShield
displays only non-system COM+ applications under the COM+ Applications node in the
Component Services view.
• COM+ server applications can be installed on only Windows 2000 operating systems and
later.
The look and feel of the Component Services view is similar to that of the Component
Services administrative tool in the Control Panel for systems running Windows 2000
and Windows XP.
InstallShield Premier Edition and InstallShield Professional Edition provide
additional functionality in the Component Services view; these editions enable you to
manage both COM+ server applications and application proxies. A COM+ application
proxy consists of a subset of the attributes of the server application, and it enables
remote access from a client machine to the machine where the application resides.
Table 26-35: Views Under the Customize the Setup Appearance View
View Description
Dialogs Through the Dialogs view you can select which dialogs you want
displayed during your setup, and you can customize the look of these
dialogs by adding custom banners and images.
Billboards Billboards are images that get displayed for a specified amount of
time while your setup runs. These billboards can provide information
about the product being installed or simply entertain the user during
the installation process.
Text and Messages All the strings used during your setup are accessible through the Text
and Messages view. Through this view you can change the text
displayed on dialogs and error messages shown to your end users.
Dialogs View
Your setup’s user interface is important in many ways, primarily because customer
input and settings are usually handled through the user interface. If your user interface
is difficult to navigate and understand, users may experience problems installing your
product. In order to ease the process of creating your setup and to improve the end-
user experience, InstallShield provides several predefined dialogs.
Although you are limited to the provided dialogs, you can customize many of them to
produce the look and functionality you require. For example, you can add a custom
image to the top of every dialog, thereby branding it with your company logo.
For information on customizing each dialog, see the following.
• Splash Dialog
• Install Welcome Dialog
• License Agreement Dialog
• Readme Dialog
• Customer Information Dialog
• Destination Folder Dialog
• Database Folder Dialog
• Setup Type Dialog
• Custom Setup Dialog
• Ready To Install Dialog
• Setup Progress Dialog
• Setup Complete Success Dialog
Billboards View
A great way to pass information to your customers is to put up billboards during the
installation. Billboards are bitmaps that you display during the file transfer process.
Billboards can communicate, advertise, educate, promote, intrigue, entertain, and
otherwise keep your customer’s attention. Like the billboards found along
expressways, these billboards are aimed at offering information—new features of the
product being installed or other products from your company—to a captive audience.
Each billboard is a bitmap (.bmp) file that you or your company’s graphics department
can customize for complete control over the look and feel of the file transfer.
When you add a billboard to your project, the setup’s user interface is set against a
blue gradient, full-screen window with the product name (set in the General
Information view) in the upper left. The billboards are displayed as the Setup Progress
dialog reports the modifications that Windows Installer is making to the system. You
can control the length of time the billboard is shown and its position by setting its
properties in the Billboards explorer.
Billboard Settings
A billboard’s settings determine which bitmap (.bmp) file is shown, how long it is
displayed, and where and how it is drawn on the screen. To access these settings, open
the Billboards view, and in the Billboards explorer, select the billboard that you want
to edit.
Setting Description
File Name Enter the path to the bitmap (.bmp) file, or click the ellipsis (...)
button to navigate to this file. This file is automatically streamed
into your setup package whenever you build a release.
Duration Enter the amount of time, in seconds, that this billboard is
displayed before the next billboard takes its place. When the file
transfer completes, no more billboards are shown, even if other
billboards are scheduled or the current billboard’s duration has not
elapsed. If the file transfer takes more time than you have allocated
for your billboards, the final billboard is displayed until file transfer
ends.
Origin Select where on the screen you want your billboard to be anchored.
You can choose from the following options: Upper Left, Upper
Right, Lower Left, Lower Right. The X and Y coordinates are
measured from this point.
X Coordinate To change the horizontal location of your billboard relative to the
location you selected in the Origin property, enter the distance, in
pixels. For example, if the billboard’s origin is Lower Left, an X
Coordinate value of 100 places the left side of the bitmap 100
pixels from the left side of the screen.
Y Coordinate To change the vertical location of your billboard relative to the
location you selected in the Origin property, enter the distance, in
pixels. For example, if the billboard’s origin is Lower Left, a Y
Coordinate value of 100 places the bottom of the bitmap 100
pixels from the bottom of the screen.
Effect Select the transition effect for this billboard. Rather than just
appearing on the screen and disappearing after an allotted amount
of time, a transition effect makes the change between billboards
much smoother.
Background Color This field displays the currently selected background color for your
billboard. To change this color, click the ellipsis (...) button to open
the Color dialog and select the color you want to use.
Title Enter the title of this billboard, as you want it to appear to your end
users. This name is stored in a string table to make the task of
localizing your setup easier.
Setting Description
Background Style Select Gradient if you want the background of your billboard to fade
from dark to light. Select solid if you want it to appear as one solid
color.
Font Click the ellipsis (...) button to select the font you want to use in
your billboards. If the target machine does not have the font you
selected, a default system font will be used instead.
Table 26-37: Views Under the Define Setup Requirements and Actions View
View Description
Requirements If your application has certain hardware or operating system
requirements that must be met in order to run properly, you can
ensure that it will not be installed onto machines that do not meet
these requirements.
Custom Actions Custom actions allow you to add functionality to your setup that is not
inherently supported by Windows Installer. These actions can be used
for anything from displaying a readme file to deleting registry entries.
Setup Files If there are specific files that you need to be available to your setup
project only during installation, you can add those files in the Setup
Files view.
Requirements View
The Requirements view enables you to specify certain machine environments and
software that your application requires in order to run properly. If these system or
software requirements are not met, the installation exits. Because your application
cannot be installed on systems that do not meet your hardware or software
requirements, you may want to set those requirements liberally.
Condition Description
OS Version Select the operating systems your setup will target. Use the Any OS
option to target all operating systems that support Windows Installer
installations. Alternately, use the Specific option and specify the
operating systems required for your application.
Processor Select the minimum required processor in order for your application
to run.
RAM Select the lowest amount of RAM required to run your application.
Screen Resolution Select the minimum screen resolution required by your product.
Color Depth Select the minimum required color depth for your application.
See Also
Specifying Target System Requirements
Settings Description
Source Location Specify whether the DLL used for this custom action is on your file
system (Browse File System) or will be installed on the target
system (Installed with the product).
Depending on which part of the installation or uninstallation you
schedule the custom action, the Installed with the product option
may not be available. For example, if you schedule the custom
action for the Before File Transfer part of the installation—which
occurs before the DLL has been installed on the target system—
the Installed with the product option is not available.
File Name If you selected Installed with the product for the Source Location
property, you must browse for the file from those files already
added to your installation in the Files view. Files that are installed on
the target system are executed from their destination on the target
system.
If you selected Browse File System for the Source Location, you
can browse to the DLL that you want to use for the custom action.
When you build your installation, this file is automatically
incorporated into your project file. Although the custom action is
run during installation, the file is removed following installation.
Function Name Type the name of the function you want to call. Although your
function must accept parameters, you do need not to list the
parameters in this property. For example, if your function has the
following prototype, type MyFunction for the function name:
CHAR WINAPI MyFunction(HWND, LPSTR , LPSTR, LPSTR, LPSTR);
Function Signature This property allows you to specify the format your DLL function will
follow. Select Classic to use the same format as in InstallShield
Express versions prior to 3.0. Use New to have your DLL function
use the standard Windows Installer custom action signature.
Settings Description
Wait For Action If you want the installation to wait until your action has been
dismissed, select Yes. If you want the installation to continue to run
while your action runs, select No.
Run Once Because your custom action executes between dialogs, it can
potentially run more than once if a user goes back and forth
between dialogs. If you want to enable your custom action to
execute more than one time, set this property to No. If your custom
action should execute only one time, set this property to Yes.
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
installation:
• After Initialization (before first dialog)
• After Ready to Install dialog
• After Setup Progress dialog
• After Setup Complete Success dialog
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
uninstallation:
• After Initialization (before first dialog)
• After Ready to remove dialog
• After Setup Progress dialog
• After Setup Complete Success dialog
Ignore Exit Code Select Yes if you want your installation to ignore the return value of
this DLL custom action and continue the Windows Installer
installation, regardless of the return value. Select No if you do not
want your installation to ignore the return value.
Comments Enter any comments you may have about this custom action.
These comments are for your reference only and are not displayed
to your end users.
Condition This property shows whether any conditions are set for this custom
action, and it enables you to create additional conditions. If this
custom action has conditions, the property contains the Has
Conditions value.
To view the conditions, click the property field. The conditions are
displayed in the inline help directly below the property grid. To
create or modify conditions, click the ellipsis button to launch the
Condition Builder dialog box.
Setting Description
Source Location Select one of the following location options for the .exe file:
• Browse File System—The .exe file used for this custom
action is on your file system.
• Installed with the product—The .exe file will be installed on
the target system. Depending on which part of the installation
or uninstallation you schedule the custom action, the Installed
with the product option may not be available. For example, if
you schedule the custom action for the Before File Transfer
part of the installation—which occurs before the .exe file has
been installed on the target system—the Installed with the
product option is not available.
• File Exists on Target System—The .exe file already exists
on the target system.
If you select File Exists on Target System and set the File
Location field to [SUPPORTDIR], you can launch a file in the
Setup Files view as a custom action.
File Location Type the name of the folder that contains the executable you want
to launch on the end user’s computer.
This field is visible only if you select File Exists on Target System for
the Source Location property.
File Name If you selected Installed with the product for the Source Location
property, you must browse for the file from those files already
added to your installation in the Files view. Files that are installed on
the target system are executed from their destination on the target
system.
If you chose Browse File System for the Source Location, you can
browse to the .exe file that you want to use for the custom action.
When you build your installation, this file is automatically
incorporated into your project file. Although the custom action is
run during installation, the file is removed following installation.
Command Line Type any command-line parameters that you want to pass to your
executable. For example, if you select Notepad as your executable
file, you can pass a file name at the command line to open the file
when the executable is launched. In this case, you might enter E:/
Readme.txt in order to launch a readme file. Enclose long file
names in quotation marks.
Setting Description
File Name and Command Type the file name. Do not add a directory before the file name—
Line this is provided in the File Location property. The file name can be
followed by any command line that you want to send to the
executable.
This property is visible only if you select File Exists on Target
System in the Source Location property.
Wait For Action If you want the installation to wait until your action has been
dismissed, select Yes. If you want the installation to continue to run
while your action runs, select No.
Run Once Because your custom action executes between dialogs, it can
potentially run more than once if a user goes back and forth
between dialogs. If you want to enable your custom action to
execute more than one time, set this property to No. If your custom
action should execute only one time, set this property to Yes.
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
installation:
• After Initialization (before first dialog)
• After Ready to Install dialog
• After Setup Progress dialog
• After File Transfer
• After COM Registration
• After Register Product
• After Setup Complete Success dialog
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
uninstallation:
• After Initialization (before first dialog)
• After Ready to remove dialog
• After Setup Progress dialog
• Before System Changes
• After Setup Complete Success dialog
Ignore Exit Code Select Yes if you want your installation to ignore the return value of
this executable custom action and continue the Windows Installer
installation, regardless of the return value. Select No if you do not
want your installation to ignore the return value.
Comments Enter any comments you may have about this custom action.
These comments are for your reference only and are not displayed
to your end users.
Setting Description
Condition This property shows whether any conditions are set for this custom
action, and it enables you to create additional conditions. If this
custom action has conditions, the property contains the Has
Conditions value.
To view the conditions, click the property field. The conditions are
displayed in the inline help directly below the property grid. To
create or modify conditions, click the ellipsis button to launch the
Condition Builder dialog box.
Setting Description
Source Location Specify whether the VBS used for this custom action is on your file
system (Browse File System) or will be installed on the target
system (Installed with the product).
Depending on which part of the installation or uninstallation you
schedule the custom action, the Installed with the product option
may not be available. For example, if you schedule the custom
action for the Before File Transfer part of the installation—which
occurs before the VBScript has been installed on the target
system—the Installed with the product option is not available.
File Name If you selected Installed with the product for the Source Location
property, you must browse for the file from those files already
added to your installation in the Files view. Files that are installed on
the target system are executed from their destination on the target
system.
If you selected Browse File System for the Source Location, you
can browse to the VBScript that you want to use for the custom
action. When you build your installation, this file is automatically
incorporated into your installation package. Although the custom
action is run during installation, the file is not installed on the target
system.
Function Name If you have defined a function within your .vbs file, enter the name
of the function that you want to execute. This is executed after the
VBScript. VBScript functions cannot take arguments from custom
actions. Additionally, it is unnecessary to have a function—the
custom action first executes the script, then calls the function if
specified.
Setting Description
Wait for Action If you want the installation to wait until your custom action
completes, select Yes. If you want the installation to continue
running while your action runs, select No.
Run Once Because your custom action executes between dialogs, it can
potentially run more than once if a user goes back and forth
between dialogs. If you want to enable your custom action to
execute more than one time, set this property to No. If your custom
action should execute only one time, set this property to Yes.
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
installation:
• After Initialization (before first dialog)—After Ready to Install
dialog
• After Setup Progress dialog—After Setup Complete Success
dialog
The Run Once value is set to Yes and is read-only when you
schedule the custom action for any of the following parts of the
uninstallation:
• After Initialization (before first dialog)
• After Ready to remove dialog
• After Setup Progress dialog
• After Setup Complete Success dialog
Ignore Exit Code Select Yes if you want your installation to ignore the return value of
this VBScript custom action and continue the Windows Installer
installation, regardless of the return value. Select No if you do not
want your installation to ignore the return value.
Comments Enter any comments you may have about this custom action.
These comments are for your reference only and are not displayed
to your end users.
Condition This property shows whether any conditions are set for this custom
action, and it enables you to create additional conditions. If this
custom action has conditions, the property contains the Has
Conditions value.
To view the conditions, click the property field. The conditions are
displayed in the inline help directly below the property grid. To
create or modify conditions, click the ellipsis button to launch the
Condition Builder dialog box.
the target system when installation begins and are deleted when the installation is
complete. The support directory (SUPPORTDIR) is a dynamic file location and might
be different on every target system and even on the same system for different
installation instances.
The Setup Files view also contains a Disk1 node, which allows you to add files to the
root of the source media.
View Description
Build Your Release The Build view allows you to select which type of media you want to
use and provides you with your build configuration options.
Test Your Release Before you can release your setup to the public you should make sure
you test it. In the Test Your Release view you can run your setup in its
entirety or just go through the dialogs, without actually making any
changes to your system.
Distribute Your Release The last action to perform in the setup creation process is to
distribute your release. Through this view you can copy all of your
setup files to a target destination.
Media Types
Media types, or release types, represent the type of disk or other electronic medium
that you use to distribute your installation. The most common of these release types is
CD-ROM, although all of the following types are available:
If your installation requires more than one disk, InstallShield automatically splits it
across as many disks as needed.
CAUTION If you build a multiple-disk installation, you need to set the volume label on the second and
subsequent disks.
NOTE Other settings are available from SingleImage and WebDeployment release types.
Setting Description
Release Location Enter the full path to the top-level directory where your release will
start to be built.
Media Size This property displays the size of the currently selected media and
is read only for all media except custom. The decimal separator is
a period (.).
Media Size Unit This property displays the unit size for the current media. For
example, CDs are measured in megabytes and DVDs are measured
in gigabytes. You cannot change this property unless you are using
the custom media type.
Cluster Size A cluster is the smallest unit of space on a disk. This size,
measured in bytes, is the minimum amount of space allocated for
each file. If the cluster size is set at 1024 bytes and you have a file
that is 2000 bytes, that file will take up two clusters on the disk. If
the file is only 1000 bytes, it requires only one cluster. However,
the rest of the space in that cluster is not available for any other
file.
Compress Media Select Yes to have all of your setup files compressed into .cab files.
Select No if you want your files to remain uncompressed on the
media.
Optimize for Media Size If you choose to optimize for media size, your installation will be
smaller. However, the time to build the setup increases.
Setting Description
MSI Engine Version Select the version of the Windows Installer engine that you want to
include with your application. You must select one of the Yes
options in the Setup Launcher property to enable installing the
Windows Installer engines with your package.
The Version 3.1 or 2.0 (best fit for system) option installs
Windows Installer 3.1 on target systems that are running
Windows 2000 SP3 or later; it installs Windows Installer 2.0 on
other target systems.
• Windows Installer 2.0 requires SP6 on Windows NT 4
platforms; Windows Installer 1.1 and Windows Installer
1.2 require SP3 on Windows NT 4 platforms.
• If you select version 1.1 or 1.2, the minimum installer
version (schema) of your package for this release is set
to 110, overriding the Schema property for the Summary
Information Stream in the General Information view. If you
choose to include the Windows Installer engine with your
installation, this property determines if version 1.2 or
version 2.0 of the Windows Installer engine is installed.
MSI Engine Location This property lets you specify where the MSI engine installers—
InstMsiA.exe and InstMsiW.exe—should be located. (The
Setup Launcher property lets you specify to include neither, one, or
both of the MSI engine installers.)
• Select Copy from Source Media to leave the MSI engine
installers you selected on the root of the source media.
• Select Extract Engine from Setup.exe to compress the
selected MSI engine installers into Setup.exe, to be
extracted at run time.
Include Setup.exe Setup.exe is a setup launcher. This means that it determines if
the Windows Installer service has been installed on the target
system, installs it if necessary, and then runs your .msi file after the
system update has been completed. If no system update is
necessary, it simply launches the .msi file. Setup.exe also
performs decompression of files in some cases. For more
information, see Including the Windows Installer Service with an
Installation.
Setting Description
Include MSI Engine(s) If you want to include MSI Engine(s) with your setup, specify the
engine or engines you want to include from the list. You can include
the Windows 9x engine, the Windows NT engine, or both engines.
Select None if you do not want to include an MSI engine in your
build.
Setting Description
.NET Framework Location The .NET Framework Location property lets you specify where the
.NET Framework runtime should be located. The .NET Framework
is required for applications that are using any .NET features.
• Select Copy from Source Media to leave the .NET
Framework runtime on the root of the source media. This
option is not available for Web media types or Network Image
media types with all of your files compressed into
Setup.exe.
• Select Extract from Setup.exe to compress the .NET
Framework runtime into Setup.exe, to be extracted at
runtime.
• Select Download from the Web to download the .NET
Framework runtime (if necessary) from a URL that you specify.
If you select this option, you must set the .NET and J#
Framework URL property to the appropriate Web location.
.NET Framework Version Select the .NET version that you want to distribute with your
installation.
.NET 1.1/2.0 Core If you selected .NET version 1.1 for the .NET Framework Version
Language property, you can specify one .NET core language that you want to
distribute. This is the language that is used while the .NET 1.1 core
redistributable is installed. If you selected version 2.0, the language
options are all selected and disabled since they are all included with
this version of the redistributable.
Command Line to pass to
Dotnetfx.exe
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to pass to Microsoft’s
DotNetFx.exe file.
.NET 1.1/2.0 Language Select the .NET language packs that you want to include. The
Packs options available depend on the Microsoft language packs that you
have installed on your build machine.
Command Line to pass to
Language Packs
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to send to all of the
Microsoft LangPack.exe files included with the installation.
Setting Description
Display .NET Option This setting specifies whether Setup.exe displays a Yes/No
Dialog message box asking the end user if the .NET Framework should be
installed on the target system. This property does not determine
whether your installation includes .NET, only whether the end user
has a choice to install it.
.NET Build Configuration This setting contains the name of the build configuration of the
.NET solution. InstallShield uses this property to determine the
location of a project output’s files.
.NET and J# Framework This is the location from which your installation downloads the .NET
URL Framework runtime and J# redistributable. It is not necessary to
specify the file name in the URL.
J# Redistributable This setting lets you specify where the J# redistributable should be
Location located. The .NET Framework is required for applications using any
.NET features.
• Select Copy from Source Media to leave the J#
redistributable on the root of the source media.
• Select Extract from Setup.exe to compress the J#
redistributable into Setup.exe, to be extracted at run time.
• Select Download from the Web to download the J#
redistributable (if necessary) from the URL specified in the
.NET and J# Framework URL property.
Command Line to pass to Specify a command-line parameter to pass to vjredist.exe.
the J# Redistributable Consult Microsoft Support for valid command-line parameters.
Display J# Option Dialog Select Yes to display a dialog to the end user that asks whether
they want to install J# on the target system.
If .NET 1.1 is also included in the installation, the dialog states that
.NET 1.1 will also be installed.
Install J# if Installation Select Yes to install J# on the target system if the J# Option dialog
Runs Silently cannot be shown (for example, if the installation is run silently).
Setting Description
Show full User interface Specify whether you want the full interface for the .NET Framework
when installing .NET installation to be displayed.
framework
If you select Yes, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is
displayed in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The Microsoft .NET
Framework Setup message box opens, prompting the end
user to specify whether the .NET Framework package should
be installed.
3. The end user must click Yes to proceed with the installation.
The Microsoft .NET Framework (English) Setup Wizard is
displayed when dotnetfx.exe installs the .NET Framework on
the target system. This wizard shows the progress of the .NET
Framework installation.
4. When the .NET Framework installation is complete, the target
system displays a message box to inform the end user that
the .NET Framework installation is complete.
If you select No, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is
displayed in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The InstallShield Wizard
opens, and dotnetfx.exe installs the .NET Framework on
the target system. This InstallShield Wizard shows the
progress of the .NET Framework installation.
Setting Description
Disable Trialware Build To build a trialware release of your product, set this property to No.
This is the default setting. InstallShield will wrap a trialware shell
around the executable file (.exe, .dll, .ocx, or .scr) specified in the
Trialware view. The executable file can be unwrapped and used
only according to the license settings that you configure, such as
the trial limit (a specified number of days or a specified number of
uses).
To build a release of your product that does not have the trialware
protection, set this property to Yes. If you set this property to Yes,
you can use this release if you want to test the installation of your
product but you do not want to test the trialware run time. You also
may want to build a release without trialware protection if you
distribute the Try and Die type of trialware to prospective
customers. You can give them the unprotected release when they
have finished evaluating your product and they purchase it from
you.
If you test a Try and Die product by running the protected trial
version, it will expire at the end of the trial period; you will not be
able to test your product further on the same test machine without
removing the license. If you test a Try and Buy/Product Activation
product by running and activating the protected trial version, you
will not be able to restart the entire Try and Buy/Product Activation
experience without removing the license. To learn how to remove a
license from a test machine, see Testing a Trialware Release of
Your Product.
If you have not added a trialware file to your project in the Trialware
view, the Disable Trialware Build property has no effect on the
release build.
Setting Description
Release Location Enter the full path to the top-level directory where your release will
start to be built.
Setting Description
Compress Media Select Yes to have all of your setup files compressed into .cab files.
Select No if you want your files to remain uncompressed on the
media.
The Version 3.1 or 2.0 (best fit for system) option installs
Windows Installer 3.1 on target systems that are running
Windows 2000 SP3 or later; it installs Windows Installer 2.0 on
other target systems.
• Windows Installer 2.0 requires SP6 on Windows NT 4
platforms; Windows Installer 1.1 and Windows Installer
1.2 require SP3 on Windows NT 4 platforms.
• If you select version 1.1 or 1.2, the minimum installer
version (schema) of your package for this release is set
to 110, overriding the Schema property for the Summary
Information Stream in the General Information view. If you
choose to include the Windows Installer engine with your
installation, this property determines if version 1.2 or
version 2.0 of the Windows Installer engine is installed.
MSI Engine Location This setting lets you specify where the MSI engine installers—
InstMsiA.exe and InstMsiW.exe—should be located. (The
Setup Launcher property lets you specify to include neither, one, or
both of the MSI engine installers.)
• Select Copy from Source Media to leave the MSI engine
installers you selected on the root of the source media.
• Select Extract Engine from Setup.exe to compress the
selected MSI engine installers into Setup.exe, to be
extracted at run time.
Setting Description
Include Setup.exe Setup.exe is a setup launcher. This means that it determines if the
Windows Installer service has been installed on the target system,
installs it if necessary, and then runs your .msi file after the system
update has been completed. If no system update is necessary, it
simply launches the .msi file. Setup.exe also performs
decompression of files in some cases. See Including the Windows
Installer Service with an Installation for more information.
Password Protect Select Yes if you want to require the end user to enter a password
Launcher to open your setup. Passwords are case sensitive.
If run in silent mode, the end user must specify the password
using the /p command line option. Otherwise, the setup will
fail.
Launcher Password If you are password protecting your setup, provide the password in
this field.
Copy Media to Target Select Yes to copy the setup image to the target machine, enabling
Machine support for advanced Windows Installer functionality including
feature advertisement and application repair (in maintenance
mode). If you select Yes, provide a destination location in the
Location for Copying Media on Target Machine property.
Location for Copying If you selected Yes in the Copy Media to Target Machine property,
Media specify the location on the target machine where you want to copy
the installation. You can either select one of the folders from the
drop-down list and append a location to it (for example,
[PersonalFolder]stuff), or you can specify fully qualified path (for
example, C:\stuff\cached). You cannot use directory specifiers
other than those listed in the drop-down list.
Setting Description
Include MSI Engine(s) If you want to include MSI Engine(s) with your setup, specify the
engine or engines you want to include from the list. You can include
the Windows 9x engine, the Windows NT engine, or both engines.
Select None if you do not want to include an MSI engine in your
build.
Setting Description
.NET Framework Version Select the .NET version that you want to distribute with your
installation.
.NET 1.1/2.0 Core If you selected .NET version 1.1 for the .NET Framework Version
Language property, you can specify one .NET core language that you want to
distribute. This is the language that is used while the .NET 1.1 core
redistributable is installed. If you selected version 2.0, the language
options are all selected and disabled since they are all included with
this version of the redistributable.
Command Line to pass to
Dotnetfx.exe
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to pass to Microsoft’s
DotNetFx.exe file.
.NET 1.1/2.0 Language Select the .NET language packs that you want to include. The
Packs options available depend on the Microsoft language packs that you
have installed on your build machine.
Command Line to pass to
Language Packs
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to send to all of the
Microsoft LangPack.exe files included with the installation.
Display .NET Option This setting specifies whether Setup.exe displays a message
Dialog box asking the end user if the .NET Framework should be installed
on the target system. This setting does not determine whether your
setup includes .NET, only whether the end user has a choice to
install it.
.NET Build Configuration The .NET Build Configuration property contains the name of the
build configuration of the .NET solution. InstallShield uses this
setting to determine the location of a project output’s files.
.NET and J# Framework This is the location from which your installation downloads the .NET
URL Framework runtime and J# redistributable. It is not necessary to
specify the file name in the URL.
Setting Description
J# Redistributable This setting lets you specify where the J# redistributable should be
Location located. The .NET Framework is required for applications using any
.NET features.
• Select Copy from Source Media to leave the J#
redistributable on the root of the source media.
• Select Extract from Setup.exe to compress the J#
redistributable into Setup.exe, to be extracted at run time.
• Select Download from the Web to download the J#
redistributable (if necessary) from the URL specified in the
.NET and J# Framework URL property.
Command Line to pass to Specify a command-line parameter to pass to vjredist.exe.
the J# Redistributable Consult Microsoft Support for valid command-line parameters.
Display J# Option Dialog Select Yes to display a dialog to the end user that asks whether
they want to install J# on the target system.
If .NET 1.1 is also included in the installation, the dialog states that
.NET 1.1 will also be installed.
Install J# if Installation Select Yes to install J# on the target system if the J# Option dialog
Runs Silently cannot be shown (for example, if the installation is run silently).
Setting Description
Show full User interface Specify whether you want the full interface for the .NET Framework
when installing .NET installation to be displayed.
framework
If you select Yes, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is displayed
in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The Microsoft .NET
Framework Setup message box opens, prompting the end
user to specify whether the .NET Framework package should
be installed.
3. The end user must click Yes to proceed with the installation.
The Microsoft .NET Framework (English) Setup Wizard is
displayed when dotnetfx.exe installs the .NET Framework on
the target system. This wizard shows the progress of the .NET
Framework installation.
4. When the .NET Framework installation is complete, the target
system displays a message box to inform the end user that
the .NET Framework installation is complete.
If you select No, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is displayed
in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The InstallShield Wizard
opens, and dotnetfx.exe installs the .NET Framework on the
target system. This InstallShield Wizard shows the progress of
the .NET Framework installation.
Setting Description
Disable Trialware Build To build a trialware release of your product, set this property to No.
This is the default setting. InstallShield will wrap a trialware shell
around the executable file (.exe, .dll, .ocx, or .scr) specified in the
Trialware view. The executable file can be unwrapped and used
only according to the license settings that you configure, such as
the trial limit (a specified number of days or a specified number of
uses).
To build a release of your product that does not have the trialware
protection, set this property to Yes. If you set this property to Yes,
you can use this release if you want to test the installation of your
product but you do not want to test the trialware run time. You also
may want to build a release without trialware protection if you
distribute the Try and Die type of trialware to prospective
customers. You can give them the unprotected release when they
have finished evaluating your product and they purchase it from
you.
If you test a Try and Die product by running the protected trial
version, it will expire at the end of the trial period; you will not be
able to test your product further on the same test machine without
removing the license. If you test a Try and Buy/Product Activation
product by running and activating the protected trial version, you
will not be able to restart the entire Try and Buy/Product Activation
experience without removing the license. To learn how to remove a
license from a test machine, see Testing a Trialware Release of
Your Product.
If you have not added a trialware file to your project in the Trialware
view, the Disable Trialware Build property has no effect on the
release build.
To access these settings, open the Build Your Release view, and in the Builds
explorer, select WebDeployment.
Setting Description
Release Location Enter the full path to the top-level directory where your release will
start to be built.
Generate One-Click Install This setting lets you specify whether to create a One-Click Install,
which is an installation program whose initial user interface is an
HTML page. When an end-user visits your Web page and clicks a
button on it, the installation files are downloaded to the target
system and then launched. If you set this property to Yes, you must
specify filenames in the One-Click HTML Filename and One-Click
Cab Filename properties for this release. This property is used only
if you selected Web as the release’s Media Format setting.
One-Click HTML Base The One-Click HTML Base Name property lets you specify the base
Name filename of the HTML file generated by the build process. The .htm
extension is appended to the base name you specify, and the
generated file will be created in the Disk1 folder of the current
release location. This setting is used only if the Generate One-Click
Install property for the current release is set to Yes.
One-Click Cab/Jar Base The One-Click Cab/Jar Base Name property lets you specify the
Name base filename for the cabinet or applet archive file generated by the
build process for a One-Click installation.
Browsers to Support Select the browsers you want to support for your One-Click
Installation.
Netscape Certificate ID Provide the ID for the certificate.
Netscape Certificate Provides the path to the databases updated when you imported the
Database Path certificate into Netscape. The path is typically the folder in which
Netscape is installed. The user is the name used when the
certificate was imported.
Netscape Certificate If you set a password when you imported the certificate, enter it
Password here. This is not the password you received from the certification
authority.
Sign Media (for Setup.exe Select Yes to enable digital signing for your application, ensuring
and Internet Explorer) your end users that the code within your application has not been
tampered with since publication.
Certificate URL Provide a fully qualified URL. This URL is used in your digital
certificate to link to a location providing information about your
product, organization, or company.
Software Publishing Enter the location of your .spc file provided by a certification
Credentials authority. You can also use the Browse button to navigate to the
file.
Setting Description
Corresponding Private Enter the location of your .pvk file provided by a certification
Key authority. You can also use the browse button to navigate to the file.
MSI Engine Version Select the version of the Windows Installer engine that you want to
include with your application. You must select one of the Yes
options in the Setup Launcher property to enable installing the
Windows Installer engines with your package.
The Version 3.1 or 2.0 (best fit for system) option installs
Windows Installer 3.1 on target systems that are running
Windows 2000 SP3 or later; it installs Windows Installer 2.0 on
other target systems.
• Windows Installer 2.0 requires SP6 on Windows NT 4
platforms; Windows Installer 1.1 and Windows Installer
1.2 require SP3 on Windows NT 4 platforms.
• If you select version 1.1 or 1.2, the minimum installer
version (schema) of your package for this release is set
to 110, overriding the Schema property for the Summary
Information Stream in the General Information view. If you
choose to include the Windows Installer engine with your
installation, this setting determines if version 1.2 or
version 2.0 of the Windows Installer engine is installed.
Include MSI Engine(s) Select the MSI engine(s) you want included in your setup. You can
include the Windows 9x, Windows NT, or both engines in your
setup, or you can choose to not include an MSI engine. If you do
include an MSI engine, you can provide further information about
how your setup handles distribution of the engine in subsequent
properties.
Setting Description
Suppress Launcher Some versions of the Windows operating system only allow
Warning updates to the Windows Installer service through service packs,
and will generate a warning message if the installation attempts to
update the Windows Installer service. In this situation, the end user
must click OK to continue with your installation. Select Yes to
suppress this warning so it is not displayed to your end user if it
occurs.
Download MSI Engine(s) Select whether you want to download the included MSI engine(s)
from Web from the Web. If you select yes, you need to specify the URL for the
engine(s) in the URL for MSI 9x Engine and/or URL for MSI NT
Engine properties. If you select No, the MSI engine(s) will be built
into your setup.
Win9x MSI Engine URL The Win9x MSI Engine URL property is a location from which the
Setup Launcher can download the Windows 9x MSI engine
InstMsiA.exe, if necessary. This setting is ignored unless the MSI
Engine Location property for the current release is set to
Download Engine from the Web” Do not specify the file name in
the URL.
Setting Description
MSI 3.1 Engine URL This setting specifies the location from which the setup launcher
downloads the Windows Installer 3.1 or 3.0 engine, if needed. This
setting is ignored unless the MSI Engine Location property for the
current release is set to Download Engine from the Web. Do not
specify the file name in the URL.
If run in silent mode, the end user must specify the password
using the /p command line option. Otherwise, the setup will
fail.
Launcher Password If you are password protecting your setup, provide the password in
this field.
Optimize for Media Size If you choose to optimize for media size, your setup will be smaller.
However, the time to build the setup increases.
Setting Description
.NET Framework Location The .NET Framework Location property lets you specify where the
.NET Framework runtime should be located. The .NET Framework
is required for applications that are using any .NET features.
• Select Copy from Source Media to leave the .NET
Framework runtime on the root of the source media. This
option is not available for Web media types or Network Image
media types with all of your files compressed into
Setup.exe.
• Select Extract from Setup.exe to compress the .NET
Framework runtime into Setup.exe, to be extracted at
runtime.
• Select Download from the Web to download the .NET
Framework runtime (if necessary) from a URL that you specify.
If you select this option, you must set the .NET and J#
Framework URL property to the appropriate Web location.
.NET Framework Version Select the .NET version that you want to distribute with your
installation.
.NET 1.1/2.0 Core If you selected .NET version 1.1 for the .NET Framework Version
Language property, you can specify one .NET core language that you want to
distribute. This is the language that is used while the .NET 1.1 core
redistributable is installed. If you selected version 2.0, the language
options are all selected and disabled since they are all included with
this version of the redistributable.
Command Line to pass to
Dotnetfx.exe
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to pass to Microsoft’s
DotNetFx.exe file.
.NET 1.1/2.0 Language Select the .NET language packs that you want to include. The
Packs options available depend on the Microsoft language packs that you
have installed on your build machine.
Command Line to pass to
Language Packs
This setting applies only if .NET 1.1 is selected for the .NET
Framework Version property.
Enter the command line that you want to send to all of the
Microsoft LangPack.exe files included with the installation.
Setting Description
Display .NET Option This setting specifies whether Setup.exe displays a message
Dialog box asking the end user if the .NET Framework should be installed
on the target system. This setting does not determine whether your
setup includes .NET, only whether the end user has a choice to
install it.
.NET Build Configuration The .NET Build Configuration property contains the name of the
build configuration of the .NET solution. InstallShield uses this
setting to determine the location of a project output’s files.
.NET and J# Framework This is the location from which your setup downloads the .NET
URL Framework runtime. It is not necessary to specify the file name in
the URL.
J# Redistributable This setting lets you specify where the J# redistributable should be
Location located. The .NET Framework is required for applications using any
.NET features.
• Select Copy from Source Media to leave the J#
redistributable on the root of the source media.
• Select Extract from Setup.exe to compress the J#
redistributable into Setup.exe, to be extracted at run time.
• Select Download from the Web to download the J#
redistributable (if necessary) from the URL specified in the
.NET and J# Framework URL property.
Command Line to pass to Specify a command-line parameter to pass to vjredist.exe.
the J# Redistributable Consult Microsoft Support for valid command-line parameters.
Display J# Option Dialog Select Yes to display a dialog to the end user that asks whether
they want to install J# on the target system.
If .NET 1.1 is also included in the installation, the dialog states that
.NET 1.1 will also be installed.
Install J# if Installation Select Yes to install J# on the target system if the J# Option dialog
Runs Silently cannot be shown (for example, if the installation is run silently).
Setting Description
Show full User interface Specify whether you want the full interface for the .NET Framework
when installing .NET installation to be displayed.
framework
If you select Yes, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is displayed
in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The Microsoft .NET
Framework Setup message box opens, prompting the end
user to specify whether the .NET Framework package should
be installed.
3. The end user must click Yes to proceed with the installation.
The Microsoft .NET Framework (English) Setup Wizard is
displayed when dotnetfx.exe installs the .NET Framework on
the target system. This wizard shows the progress of the .NET
Framework installation.
4. When the .NET Framework installation is complete, the target
system displays a message box to inform the end user that
the .NET Framework installation is complete.
If you select No, the following occurs during installation of your
application:
1. The end-user license agreement for dotnetfx.exe is displayed
in a message box.
2. The end user must click Yes to accept the license agreement
and proceed with the installation. The InstallShield Wizard
opens, and dotnetfx.exe installs the .NET Framework on the
target system. This InstallShield Wizard shows the progress of
the .NET Framework installation.
Setting Description
Disable Trialware Build To build a trialware release of your product, set this property to No.
This is the default setting. InstallShield will wrap a trialware shell
around the executable file (.exe, .dll, .ocx, or .scr) specified in the
Trialware view. The executable file can be unwrapped and used
only according to the license settings that you configure, such as
the trial limit (a specified number of days or a specified number of
uses).
To build a release of your product that does not have the trialware
protection, set this property to Yes. If you set this property to Yes,
you can use this release if you want to test the installation of your
product but you do not want to test the trialware run time. You also
may want to build a release without trialware protection if you
distribute the Try and Die type of trialware to prospective
customers. You can give them the unprotected release when they
have finished evaluating your product and they purchase it from
you.
If you test a Try and Die product by running the protected trial
version, it will expire at the end of the trial period; you will not be
able to test your product further on the same test machine without
removing the license. If you test a Try and Buy/Product Activation
product by running and activating the protected trial version, you
will not be able to restart the entire Try and Buy/Product Activation
experience without removing the license. To learn how to remove a
license from a test machine, see Testing a Trialware Release of
Your Product.
If you have not added a trialware file to your project in the Trialware
view, the Disable Trialware Build property has no effect on the
release build.
Option Description
Run Your Setup This option executes your setup exactly as it would on an end user’s
machine. All files are transferred, shortcuts and registry entries are
made, and the user interface is displayed. Although you can run this
type of test from the IDE, it is also a good idea to test your setup on
several clean machines before you release it to the public
Option Description
Test Your Setup When you test your setup, only the user interface elements are
executed. No file transfer takes place and no changes to your
machine will occur. The only exception to this rule is if you have
custom actions in your installation. All custom actions will execute
during this test.
To test your setup in one of these ways, go to the Test Your Release view in the View
List. Then, click the media type that contains the build you want to test.
QuickPatch Projects
A QuickPatch project is a specific type of Windows Installer–based project
recommended for installation authors who want to ship small, single upgrades to their
end users. Each QuickPatch project has its own views.
The following table describes the views under the Define Patch Settings view:
View Description
General Information Enter information about your product and the original installation.
Specify which releases should be patched by the current project, and
select which custom actions should be included.
Files Add files to your patch, and specify file-patching options.
Registry Explore which Registry values have been added, changed, or
removed.
Product Properties
When you click Product Properties in the General Information view, InstallShield
displays the following:
Setting Description
Original Setup Path This area shows the product name and the path
to the original installation image. The path box is
read-only.
Product Version The Original setup version box shows the
product version of the original installation. This
box is read-only. In the QuickPatch Version box,
you can change the product version for your
QuickPatch project. Entry in this box is optional.
Update Service Integration If the Update Service was enabled in your
original installation and if you designate custom
version numbers that the Update Service should
use to identify your product (as opposed to
using the standard version scheme that
Windows Installer uses), type the new custom
version number for your QuickPatch in this box.
Build Settings
When you click Build Settings in the General Information view, InstallShield displays
the following tabs:
• Common tab
• Uninstall tab
• Digital Signature tab
• Advanced tab
Common Tab
When you click Build Settings in the General Information view, InstallShield displays
several tabs. The Common tab exposes frequently used build settings for a
QuickPatch:
Build Location
Specify where you want your patch file built or browse for an existing folder.
Launcher Settings
In this area, you can configure the following launcher settings:
Setting Description
Create Update.exe Select this check box if you want to create an Update.exe
installation launcher for the current patch.
The Update.exe installation launcher is required if you want
to automatically update or install the Windows Installer service
on a target system, when necessary.
Include Windows Installer 2.0 Select this check box to include the Windows Installer 2.0
engine engine with your patch package. To include only the Windows
NT or Windows 9x engine, use the Advanced tab.
Include Windows Installer 3.1 Select this check box to include the Windows Installer 3.1
engine engine with your patch package.
Include .NET framework Select this check box to include the .NET Framework with your
patch package.
Uninstall Tab
When you click Build Settings in the General Information view of a QuickPatch
project, InstallShield displays several tabs. The Uninstall tab exposes patch
NOTE Patch metadata is stored directly in the patch (.msp) file and not in any of the .msi packages.
The .msp file contents are not localizable. Therefore, string table entries are not available for
any of the metadata settings below.
Setting Description
Allow this patch to be Select this check box if you would like the patch to be
uninstalled uninstallable without having to uninstall and reinstall the entire
application and other patches. Note that uninstallation of
patches works only under certain conditions. For example,
versions of Windows Installer earlier than version 3.0 cannot
remove just the patch from an application. For more
information, see Removing Patches in the Windows Installer
Help Library.
Display name Specify the name of your patch.
Support URL Specify the uniform resource locator (URL) that you would like
your customers to visit for technical support.
Description Specify a brief description of your patch.
Manufacturer name Specify the name of the application’s manufacturer.
Target product name Specify the name of the application or the target application
suite.
Classification Specify the category of upgrade. Examples include Critical
Update, Hotfix, and Service Pack.
Setting Description
Sign the patch package Select this check box if you would like to
digitally sign your patch package.
Setting Description
Sign update.exe Select this check box if you would like to
digitally sign the Update.exe file.
URL Type a fully qualified uniform resource locator
(URL). This URL is used in your digital certificate
to link to a location that you would like end users
to visit in order to learn more about your
product, organization, or company.
Software publishing credentials file Specify the location of your credentials file.
Corresponding private key file Specify the location of the private key file for
your software publishing credentials file.
Password If your certificate requires a password, type the
password in this box. InstallShield encrypts the
password and stores it in your project (.ism) file.
Advanced Tab
When you click Build Settings in the General Information view, InstallShield displays
several tabs. The Advanced tab exposes a comprehensive set of build settings that you
can configure for a QuickPatch.
Build Location
In the Build Location area, you can configure the following settings.
Property Description
Build Location Specify where you want your patch file built or browse for an
existing folder.
Create Update.exe Specify whether you want to create an Update.exe installation
launcher for the current patch.
Property Description
List of Patch GUIDs to To replace one or more earlier installed patches with the current
replace QuickPatch, set this property to the patch GUIDs of those patches,
and separate each with a comma. For example:
{C86838C9-DEDC-4451-B96F-
94AFB9460F15},{C8633E5B-AC44-45d8-B487-
C68B3B1F60D6}
Property Description
Include Windows 9X engine Specify whether the Windows Installer engine for Windows 9x
should be included with your patch package.
Include Windows NT engine Specify whether the Windows Installer engine for Windows NT
should be included with your patch package.
Windows Installer engine Select the Windows Installer version to be installed by Update.exe.
version The Version 3.1 or 2.0 (best fit for system) option installs
Windows Installer 3.1 on target systems that are running Windows
2000 SP3 or later; it installs Windows Installer 2.0 on other target
systems.
If you select the Version 3.1 (requires Windows 2000 SP3 or
greater) option or the Version 3.0 (requires Windows 2000 SP3 or
greater) option, and the target system does not support version
3.x but does have version 2.0 installed, your patch will run, since
the differences between versions 2.0 and 3.x involve only the
mechanics of patching.
Engine Location Select one of the following options:
• Download Engine From The Web—If the Windows Installer
engine needs to be installed, it is downloaded at run time.
• Extract Engine From Update.exe—The build streams the
Windows Installer engine into the Update.exe file, giving
you a single file to distribute to your customers. At run time,
the engine is extracted from the Update.exe file and installed
if required.
• Copy From Source Media—The build copies the Windows
Installer engine into the same directory as the Update.exe
file.
Windows Installer 2.0 Specify the uniform resource locator (URL) for the location of the
engine URL for Win9X engine. This is the location that the Update.exe file uses at run
time to download the engine. The default URL location is a live site
maintained by Macrovision Corporation for your convenience.
Windows Installer engine Specify the URL for the location of the engine. This is the location
URL for WinNT that the Update.exe file uses at run time to download the
engine. The default URL location is a live site maintained by
Macrovision Corporation for your convenience.
Windows Installer 3.1 Specify the URL for the location of the engine. This is the location
engine URL that the Update.exe file uses at run time to download the
engine. The default URL location is a live site maintained by
Macrovision Corporation for your convenience.
Property Description
Include In Build Specify whether to include the Microsoft .NET Framework in your
patch.
Engine Location Select one of the following options:
• Download Engine From The Web—If the .NET Framework
needs to be installed, it is downloaded at run time.
• Extract Engine From Update.exe—The build streams the
.NET Framework into the Update.exe file, giving you a
single file to distribute to your customers. At run time, the
engine is extracted from the Update.exe file and installed if
required.
• Copy From Source Media—The build copies the .NET
Framework into the same directory as the Update.exe file.
Engine URL Specify the URL for the location of the .NET Framework. This is
the location that the Update.exe file uses at run time to
download the .NET Framework. The default URL location is a live
site maintained by Macrovision Corporation for your convenience.
History
The History item in the General Information explorer within the General Information
view presents a synopsis of your QuickPatch project. It lists all of the associated
releases, enabling you to specify which ones should be patched by the current
QuickPatch project.
CAUTION If you open and modify any of the releases listed in the History, your latest project will not work
since intermediate data shared across the releases in the History may have been lost or altered.
NOTE When you specify which releases from the History to patch, InstallShield looks for specific
versions associated with each release to identify it.
Custom Action
The Custom Action item in the General Information explorer within the General
Information view lists the custom actions that are defined in the original installation
project for which you are creating a patch. It enables you to specify which actions
should be executed by the current QuickPatch project.
Files View
The Files view enables you to manage the files in your QuickPatch and also see
version numbers, languages, and other information about the files in your original
installation. All of the files in the Files To Patch and Original Setup Files explorers are
listed by key file.
When you click a file in the Original Setup Files explorer, the file name, the
destination, the version number, and other pertinent information are displayed in the
right pane. You can drag and drop files from this explorer to the Files To Patch
explorer, which shows all of the files that will be added, changed, or removed when
your QuickPatch is applied to the original installation.
File Settings
Specify the file that you want to add to the patch package. If the file you are adding is
a self-registering .dll or .ocx file, select the Self-Registering check box. This option
will not self-register .exe or .tlb files.
Integration Settings
Select the file destination and the features that you want to associate with this file.
NOTE This install state binding requires feature association. When you add new data to your
QuickPatch project, you must associate it with a feature. New data is installed only if the
corresponding feature is installed.
Updated File
If you are modifying a file in the original installation, specify the latest version of the
file that you want to be installed on the end user system after the patch is applied. You
can select the Overwrite Any Existing File check box to include the file in your
installation as a whole file. This enables you to patch over any previous version of the
file. A non-versioned file will always overwrite an existing file, regardless of its
version, when this check box is selected.
NOTE The Overwrite Any Existing File check box is useful when you are unsure which versions
currently exist on the target machine. By selecting this check box, your file will be included in
whole and will overwrite any existing versions of which you are uncertain. In the case of non-
versioned files, a new file will always replace the existing one.
Component Information
The Component Information area provides file component information such as the
component name and key file.
Check this box to have the patch delete this file from the
setup
Select this check box to remove the file from the original installation when the patch is
applied.
NOTE When you specify a file that you want to patch, InstallShield automatically detects if the file is
self-registering or using COM extraction in the original installation. The file in the patch uses the
same setting used in the original installation.
Registry View
The Registry view in a QuickPatch project provides a visual representation of what
currently exists on a source machine and what you will patch on a destination/target
system once your patch project is built and applied to the target system. The
Destination computer’s Registry view pane and the Destination computer’s registry
data pane are pre-populated with registry entries in the original installation.
Each item in the Destination computer’s registry data pane appears next to an icon
specific to the value type and the data’s current condition. Icons for data values that
have been modified have a turquoise pencil. Icons for new data values have a red star
in the upper-right corner. Icons for registry values that will be deleted from the target
system have a red X. See the following sample icons and descriptions below.
Icon Description
This icon represents a new DWORD value that will be added to the target system
when the QuickPatch is applied.
This icon represents a modified DWORD value that will be updated on the target
system when the QuickPatch is applied.
This icon represents an existing DWORD value on the target system from an
earlier installation.
This icon represents a DWORD value that exists on the target system but will be
deleted when the QuickPatch project is applied.
The following topics provide information about errors and warnings that might occur
when you are working with your installation.
Topic Description
Build Errors and Warnings Lists errors and warnings that might occur
during the build process.
Migration Errors and Warnings Lists potential errors and warnings that may
occur if you migrate a project create with an
older version .
Setup.exe Run-Time Errors Lists the errors that might occur when
Setup.exe runs.
To find information about Windows Installer run-time errors, see Windows Installer
Error Messages in the Windows Installer Help Library.
NOTE If you encounter an error, the strings displayed may not be displayed in English if your operating
system is not running in English.
Parameter Description
-p <project location> Pass the path to the project (.ise) file. This path can be fully
qualified, relative, or just the file name. UNC paths are also
acceptable. If only the project file name is passed, the file is
retrieved relative to the current working directory. For example:
IsCmdBld.exe -p
"C:\<WindowsDir>\Profiles\<UserName>\Persona
l\MySetups\MyProject1\MyProject1.ise"
Parameter Description
-r <release type> Use this parameter to specify the release type (for example,
SingleImage or WebDeployment). If you do not specify this
parameter and build from the command line, the command-line
build uses the last release type built in the IDE as the release type.
If you have never built a release in the IDE, the command-line build
uses the SingleImage release type.
This parameter is optional.
-b <build location> The fully qualified path to the folder where you want the output
folders and files to be placed. UNC paths are acceptable. The built
installation’s files will be located in the DiskImages\Disk1 subfolder
of the location that you specify.
Enclose long file names in quotation marks.
This parameter is optional.
-s This parameter allows you to build your release in silent mode.
Silent builds are useful if you want to run the build without
displaying any errors or warning messages.
This parameter is optional.
-i <.ini file path> Instead of passing all of your parameters on the command line, you
can include them in an initialization (.ini) file and call that file from
the command line. For more information, see Passing Command-
Line Parameters in an .ini File.
Absolute and relative paths are acceptable. Enclose long file names
in quotation marks.
This parameter is optional.
-u This parameter enables you to upgrade—but not build—your
release. You can use this parameter to upgrade an installation
project that you created with an earlier version of InstallShield.
This parameter is optional.
-x If you want the build to stop when it encounters an error, use the -x
parameter. If you want the build to stop when it encounters a
warning, use this parameter in conjunction with the -w parameter.
This parameter is optional.
-w This parameter treats warnings that occur during the build process
as errors. Each warning increments the error count by one.
This parameter is optional.
Parameter Description
-c <compression option> This parameter allows you to specify whether you want to have
your release compressed into one file or remain uncompressed in
multiple files. The valid arguments for this parameter are COMP and
UNCOMP. To specify that your release be compressed into one file,
use the COMP argument. If you do not want your release
compressed, use the UNCOMP argument.
This parameter is optional. If the release name already exists, the
configuration will be based on what was specified in the IDE. If this
is ignored for a new release, the new package will be
uncompressed.
-e <y/n> Setup Package Use this parameter to specify whether you want to create
Setup.exe along with your installation project. Specify y to build
Setup.exe, or n to create just an installation package.
This parameter is optional.
• /s : Silent
• /p : Password mode
• /a : Administrative installation
• /j : Advertise mode
• /x : Uninstall mode
• /f : Repair mode
• /ua : Install Windows 9x MSI Engine
• /uw : Install Windows NT MSI Engine
• /b : Cache installation locally
• /w : Wait
There are a few special formatting rules that you need to follow when passing a
parameter in this way. First, you need to place a backslash (\) in front of any quotation
mark that resides within existing quotes. For example, the command line above
contains the following: /v"TRANSFORMS=/"C:\Transforms\My Transform.mst\"".
Because the path to the transform is a long path, you need to use quotes. However,
since you need to have quotes around the complete argument, the command-line
statement fails if you do not use the backslash in front of all internal quotes.
Another formatting rule dictates that there cannot be a space between the command-
line option (/v) and the arguments that you are passing, as illustrated in the example
above.
Finally, if you are passing multiple parameters using the /v option, you need to
separate them with a space—for example:
Setup.exe /v"TRANSFORMS=\"C:\Transforms\MyTransforms.mst\" /qn"
Setup.exe /s
If you want the .msi setup to run silently as well, you need to pass the /qn command-
line parameter through Setup.exe using the /v parameter—for example:
Setup.exe /s /v/qn
NOTE If your installation is password protected, you must also pass the /p parameter.
Administrative
When you run an installation in administrative mode, you can install an installation
image to the network, which allows any one with access to that directory the ability to
install that installation on their local machine with the privileges of the administrator
who ran the administrative installation. No additional parameters are necessary for
this option.
Advertise
Advertisement is a type of “just-in-time” installation in which features are installed
when they are requested from the installer and not installed immediately during
installation. When you launch MsiExec.exe with the /j <package> option, the
features are advertised on the end user’s system, but not immediately installed. In
most cases, the end user has the option to advertise features in the Custom Setup
dialog. For information on the proper syntax for this parameter, see MsiExec.exe
Command-Line Parameters.
Uninstall
If you want to uninstall your installation from the command line without displaying
the maintenance dialogs, you need to use the /x option—for example:
Setup.exe /v/x
Repair
When you launch an installation in repair mode, it makes sure that all portable
executable (.exe, .com, .ocx, .tlb) and help (.chm and .hlp) files are present and
uncorrupted. If the installation detects that one of these files is missing or corrupt, it
attempts to repair the file. To launch an installation in repair mode from the command
line, use the /f option. For information on the proper syntax for this parameter, see
MsiExec.exe Command-Line Parameters.
NOTE The installation will be cached at a subdirectory of the location specified. This subdirectory is
named after the Package Code GUID of the installation. If there is a problem unpacking to that
location, the installation will ask for an alternate location.
This option can only be used for SingleImage, Custom, and WebDeployment builds.
This section serves as a reference for all of the end-user dialogs that are available
through the Dialogs view in InstallShield.
CAUTION If—after changing the Bitmap Image or Banner Bitmap property for a particular dialog—you
change the corresponding Global Dialog Settings property, the Global Dialog Settings property
value replaces the value that you entered for the individual dialog’s bitmap property.
To navigate to the global dialog settings, click Dialogs on the View List or click
Dialogs in the Dialogs view.
Property Description
Global Dialog Image The Global Dialog Image property contains the path to the image
that you want to appear in all of the end-user dialogs that display
large, full-dialog images—such as the Install Welcome dialog. This
property corresponds to the Bitmap Image property for individual
dialogs. This image must be 499 pixels wide by 312 pixels high.
This image also affects dialogs not in the View List, such as
when the setup is interrupted. Therefore, you should provide a
global dialog image if you want to alter the visual presentation
of the setup.
Global Dialog Banner The Global Dialog Banner property contains the path to the bitmap
image that you want to appear in all end-user dialogs that display a
banner image across the top of the dialog—such as the License
Agreement dialog. This property corresponds to the Banner Bitmap
property for individual dialogs. This image must be 499 pixels wide
by 58 pixels high.
Property Description
Splash Bitmap The Splash Bitmap property contains the path to the bitmap (.bmp)
file you want to display in this dialog. You can either enter the path
and filename or click the Browse button (...) and navigate to that
file. The image must be 465 pixels wide by 281 pixels high.
Sunken If you want the splash image to appear sunken into the dialog, set
the Sunken property to Yes. If you want the image to appear flat in
the dialog, set this property to No.
Property Description
Bitmap Image Enter the name of the bitmap you want to use for this dialog, or
click the Browse (...) button to navigate to this file. This image must
be 499 wide x 312 pixels high.
Show Copyright Set this property to Yes if you want to display copyright information
for your setup and all its files. Select No to forgo displaying any
copyright information.
Copyright Text Enter your copyright information into this property. Note that this
information is not displayed unless you set the Show Copyright
property to Yes.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
License File Enter the path to the rich text file (.rtf) containing your license
agreement. Alternatively, you can navigate to this file by clicking
the Browse (...) button.
Readme Dialog
The Readme dialog displays your application’s readme file. This dialog is optional
and is not selected by default.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Readme File Enter the path to the rich text file (.rtf) containing your readme
information. Alternatively, you can navigate to this file by clicking
the Browse (...) button.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Serial Number Select Yes to have a serial number field displayed on this dialog.
When a serial number is entered, it can be verified via the DLL you
associate with the Serial Number Validation DLL property.
Serial Number Validation Enter the path to the DLL that contains the validation function for
DLL your serial numbers, or click the Browse (...) button to navigate to
this file. For information on how to format your function, see Using
a Custom Action for Serial Number Validation.
Validate Function Enter the name of the function that validates your serial numbers.
For example, if your DLL contains a function called ValidateSN(),
enter the following:
ValidateSN
No special formatting is required. However, this function must exist
in the DLL you referenced in the Serial Number Validation DLL
property.
Property Description
Success Return Value Enter the value your validation function returns upon success. This
return value’s data type must be LONG.
Retry Limit Enter the maximum number of times a failed return value can be
accepted before the setup exits. By entering a low number in this
field you reduce the risk of someone guessing your serial number.
Show All Users Option Select Yes if you want to give your users the option of installing
your application for All Users under Windows NT, Windows 2000,
or Windows XP, or only for the current user. Select No if you want it
to be installed for All Users by default.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Change Destination Select Yes to display the Change button, which allows your users to
define a new destination folder for your setup. Select No to hide
this button. Note that this button can also be displayed on the
Setup Type and Custom Setup dialogs.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Change Destination You can indicate whether or not the dialog displays the Change
Destination button. Select Yes to display the Change button, which
allows your users to define a new database destination folder for
your setup. Select No to hide this button.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Change Destination Select Yes to display the Change button, which allows your users to
define a new destination folder for your setup. Select No to hide
this button. Note that this button can also be displayed on the
Destination Folder dialog.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Current Settings Select Yes if you want to provide your users with a summary of
their installation settings. Although they cannot edit this information
from the Ready to Install dialog, they can go back and change
settings if necessary. Select No to hide this information.
Property Description
Banner Bitmap You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the Browse (...) button to navigate to this file. This
image must be 499 pixels wide by 58 pixels high.
Show Progress Bar The progress bar provides your users a visual indication of how
much of the total setup process has completed. Select Yes to have
the progress bar displayed, No to have it hidden.
Property Description
Bitmap Image You can change the look of this dialog and provide branding for
your company by supplying a custom bitmap (.bmp) file for the
banner. To change the dialog’s banner, enter the path to your new
image or click the ellipsis (...) button to navigate to this file. This
image must be 499 pixels wide by 312 pixels high.
Use Update Service User If you enable automatic update notification in your installation and
Interface you want to add a Yes, check for program updates
(Recommended) after the setup completes check box to the Setup
Complete Success dialog, select Yes for this property. If an end
user selects this check box and then clicks the Finish button to end
the installation, the Update Service is launched. For more
information, see Notifying End Users about Upgrades Using the
Update Service.
If you select Yes for this property, the remaining properties for this
dialog are not available.
If you do not want the Yes, check for program updates check box
included on the Setup Complete Success dialog, select No for this
property.
Show Launch Program Select Yes if you want to give your users the opportunity to launch
your application once the installation exits. Select No to hide this
option. If you choose to display this option, you must select the
executable file that you want to launch from the Program File
property.
Program File Select the executable file you want to launch if the end user selects
the Launch program check box. Note that the Show Launch
Program property must be set to Yes for this program to launch.
Show Readme If you want to give your users the opportunity to launch a readme
file after the installation completes, select Yes. This enables a
check box in the Setup Complete Success dialog that, when
selected, causes the readme file you specify in the Readme file
property to launch. Select No to hide this option.
Command Line Enter any command-line parameters that you would like to pass to
Parameters the executable you specified in the Program File property.
Readme File Enter the path to the file you want to associate with the Show
Readme check box, or click the ellipsis (...) button to navigate to
this file.
This section lists common questions (sorted by topic) and provides links to answers.
• Where can I find information about Windows Installer run-time errors?
• How do I specify the destination folder for my application?
• How can I be sure the target machine has the Windows Installer service?
• How do I get changes I make in the InstallShield interface to take effect when I
run my installation?
• How do I display a license agreement?
• How do I create shortcuts?
• How do I associate file types with my application?
• How do I launch an external application from my installation?
• How do I conditionally install my installation based on the operating system of the
target machine?
• How do I upgrade my applications?
• How does Windows Installer determine which files should be overwritten?
• How do I create a self-extracting executable file for my installation?
• How do I change the product version during a build?
• How do I create a Web-based installation?
• Why will my installation not fit on a single floppy disk?
• How can I reduce the size of my installation?
• How can I create my installation so that it installs files based on the target
operating system?
• What is the difference between extracting COM information and self-registration?
Term Definition
.bin file A binary file that is executable on UNIX platforms. Application files
usually have a .bin extension.
.bmp file A bitmap file of an image represented as an array of bits. In bitmap
graphics, an image is displayed on the screen as a collection of tiny
squares called pixels, which together form a pattern. Each pixel in the
image corresponds with one or more bits.
.cab file See cabinet file.
.command file A command file that is executable on Mac OS X platforms. Application
files usually have a .command extension.
.cub file A validation module that stores and provides access to custom actions
for internal consistency evaluators (ICEs). See also custom action and
internal consistency evaluator.
.exe file An executable binary file on Windows platforms. Application files usually
have an .exe file extension.
.gif file A graphics interchange format file supported on the Web. This type of
file is in a bit-mapped graphics file format used for displaying bitmap
images. These files use lossless compression, a method of
compression in which no data is lost. This type of file supports up to
256 colors; it also supports transparency, where the background color
can be set to transparent to let the color on the underlying page show
through. This type of file format is more suitable than the .jpg file
format for images with only a few distinct colors, such as line drawings.
.idt file An exported Windows Installer database table.
Term Definition
.ism file The working file that InstallShield uses to store project information.
When you build a release, InstallShield uses the .ism file to create an
.msi file for distribution.
.jar file A Java archive file that contains the classes, images, and sound files for
an installation, zipped up into a single file.
.jpg file Also known as JPEG, which is the abbreviation for Joint Photographic
Experts Group, the original name of the committee that wrote the
standard. This type of file is one of the image file formats supported on
the Web. The file uses lossy compression, a type of compression in
which color and grayscale continuous-tone images are compressed and
some data is lost to eliminate redundant or unnecessary information.
These images support 16 million colors and are best suited for
photographs and complex graphics.
.mif file A management information format file used to describe a hardware or
software component.
.msi file The Windows Installer installation package in its finished state. It
includes installation resource files and can have compressed within it all
of the application’s data files. The .msi file is the one that is distributed
to the end users and will interact with the Windows Installer service to
install your application on their machines.
.msm file The database file of a merge module. This type of file contains all of the
installation properties and installation logic for the module. See also
merge module.
.msp file A Windows Installer patch file. This type of file consists of a summary
information stream, transform substorages, and cabinet files. An .msp
file contains at least one database transform that adds patching
information to the database of its target installation package. The
installer uses this patching information to apply the patch files that are
stored in the cabinet files.
.mst file A transform package. This type of file is a simplified Windows Installer
database that contains the differences between two .msi databases.
Transforms enable administrators to apply modified settings to a
database when they are deploying an installation package. See also
transform.
.NET An operating system platform that Microsoft created for connecting
information, people, systems, and devices. The .NET environment
enables developers to build, create, and deploy their applications and
Web services using whatever languages they prefer via the common
language run time.
.NET Compact A scaled-down version of the .NET Framework designed to run on
Framework resource-constrained devices, such as mobile devices. The .NET
Compact Framework is currently available only for Pocket PC and
Windows CE .NET devices, with support for more devices forthcoming.
Term Definition
.NET Framework A programming infrastructure that Microsoft created for building,
deploying, and running applications and services that use .NET
technologies such as Web services. The .NET Framework consists of
three main parts: the common language run time, a hierarchical set of
unified class libraries, and a componentized version of Active Server
Pages called ASP.NET.
.ocx file An object linking and embedding (OLE) custom control file. This type of
file is a cross-platform COM file that is called by an application to
perform a function, such as the ability to resize windows.
.p12 file A certificate file that conforms to public-key cryptography standard
(PKCS) number 12, which specifies a portable format for securely
storing or transporting a user’s private keys, certificates, miscellaneous
secrets, and other information.
.pcp file A Windows Installer patch creation properties file.
.prq file A prerequisite file that contains information about a base application or
component that must be installed on the target machine before the main
application can be installed. Including setup prerequisites in installation
projects enables developers to chain multiple installer files together into
a single executable file.
.reg file See registry file.
.scm file A ScreenCam movie file.
.wmf file A Windows metafile format file. This type of graphics file is used to
exchange graphics information between Microsoft Windows-based
applications.
absolute path An absolute path includes all of the information necessary to locate a
file by starting at the root directory of a specified drive. For example,
C:\Program Files\IS11.5 is the absolute path to the
InstallShield folder when it is installed on drive C.
accessibility The capacity or tendency to be available to all people, including those
with disabilities.
acquisition phase The phase of the installation process during which the installer queries
the database for instructions. The acquisition phase is followed by the
execution phase.
action A command that performs an operation at a particular point during the
execution of an installation or uninstallation wizard. Developers of
installation packages can use built-in standard actions and create their
own custom actions. Actions may display progress to the end user or
allow the end user to cancel the operation.
active directory A structure supported by Microsoft Windows 2000 that enables
administrators to track and locate any object on a network. Active
Directory is the directory service used in Windows 2000 Server for
distributed computing environments.
Term Definition
active template A set of classes for writing COM controls, resulting in smaller binaries
library (ATL) than, for example, MFC.
ActiveX A set of object-oriented programming technologies and tools. ActiveX
enables developers to write applications so that other applications and
the operating system can call them. ActiveX technology makes it
possible to create interactive Web pages that look and behave like
applications, rather than static pages.
administration The act or process of managing something.
administration The list of actions that are executed when a user launches your
sequence installation with the /a command-line option. This is useful for network
administrators who want to provide a common installation point on the
network and prepare different installation criteria for multiple users.
Each Administration sequence consists of a User Interface sequence
and an Execute sequence.
administrative Copies and uncompresses your data files to a directory specified by the
installation user, but does not create shortcuts, register COM servers, or create an
uninstallation log.
administrative The highest level of permission that can be granted to a computer user.
privileges Levels of permissions are necessary in networked environments to
ensure system security and prevent damage to computer hardware and
software. A user with administrative privileges can perform tasks such
as install and uninstall software and change a computer’s
configurations. Administrative privileges usually pertain to Windows NT
4.0, 2000, or XP machines as opposed to Windows 95, 98, or ME
machines.
advertised shortcut A shortcut to a product or feature that is not installed until the first time
that the end user launches the shortcut. At run time of an installation, if
the end user selects the “This feature will be installed when required”
option for the product or the feature containing the shortcut, the
shortcut is created but the component’s files are not installed until the
end user launches the shortcut. The first time the shortcut is launched,
the Windows Installer service installs the component’s files and other
data and then the shortcut launches the target file. Every time the
shortcut is used from then on, it behaves like a normal shortcut.
advertisement A type of “just-in-time” installation in which features are not installed
immediately during the installation process. Instead, they are installed
on the fly when they are requested. When you enable feature
advertisement, the feature is advertised, regardless of the mode in
which the installation is running, as long as no other factors prevent it
from being advertised. If you launch MsiExec.exe from the command
line with the /jm option, the feature is advertised to the end user’s
machine. If you use the /ju function, the feature is advertised to the
current end user. In the Custom Setup dialog, the end user can control
which features are immediately installed and which are available later.
The two types of advertising are assigning and publishing. See also
assigning; publishing.
Term Definition
advertisement The advertisement sequence contains the list of actions that are
sequence executed when a user launches your installation with the /j command-
line option. Validation rule ICE78 requires the advertisement user
interface sequence to be empty.
advertising The process of presenting to end users features that are not installed
immediately during the installation process. Instead, these features are
installed on the fly when they are requested. See also advertisement.
AlwaysInstallElevated A user policy that can be configured for Windows platforms under the
following registry keys: HKEY_LOCAL_MACHINE\Software\Polices\
Microsoft\Windows\Installer and
HKEY_CURRENT_USER\Software\Polices\
Microsoft\Windows\Installer. To install a package with elevated (system)
privileges, set the AlwaysInstallElevated value under both of
these registry keys to 1.
American Standard The code that represents letters, numbers, punctuation marks, and
Code for Information other characters such as numbers, with each character assigned a
Interchange (ASCII) value between 0 to 127. This code enables different types of
computers and computer applications to exchange data.
animation Multiple graphic images that are alternately changed and displayed at a
specified number of frames per second to produce the illusion of
movement.
API See application programming interface.
app paths The registry key that Windows uses to find your application and its
.dll files if their locations are not already in the system’s path. App
paths entries can be set through the component’s advanced settings.
application A set of routines that an application uses to communicate with the
programming computer’s operating system and that the operating system uses to
interface (API) make services available to the application.
ASCII See American Standard Code for Information Interchange.
assigning A type of advertisement. If an administrator assigns an application to a
machine, the installation program automatically runs the next time that
the machine starts or restarts. If the administrator assigns an
application to a user, the installation program places a shortcut on the
Start menu of the user’s machine. When the user selects the shortcut or
launches a document associated with the assigned application, the
application is installed.
asynchronous A custom action that independently continues with the execution of its
execution thread while the installer executes the main installation.
ATL See active template library.
Term Definition
autonomic computing A self-managed computing model named after, and patterned on, the
human body’s autonomic nervous system. An autonomic computing
system would control the functioning of computer applications and
systems without input from users, similar to the way that the human
body’s autonomic nervous system regulates and protects the body.
auto-repair The automatic restoring of an application to its original state by the
installer. A partial or complete application reinstallation might be
required if any files associated with any feature are missing or
corrupted.
basic UI One level of the installer’s internal user interface (UI) capabilities.
Typically, installation packages that are built with the basic UI level
display built-in modeless dialog that show progress messages and disc
prompt messages. They do not display any authored dialogs.
billboards Images, such as marketing messages, that can be displayed during
installation.
Binary table A table that holds the binary data for items such as bitmaps and icons.
It also contains data for custom actions.
bitmap A representation of an image presented as an array of bits. In bitmap
graphics, an image is displayed on the screen as a collection of tiny
squares called pixels, which together form a pattern. Each pixel in the
image corresponds with one or more bits.
cabinet file A single file that holds a number of compressed files. During installation
of an application, the compressed files are decompressed and copied
to your computer. Cabinet files are efficient because they save space
and time when distributing software. A cabinet file usually has the file
extension .cab. Missing or corrupt files may prevent installations from
completing. It may be necessary to replace missing or corrupt
operating system files or InstallShield files by extracting them from a
cabinet file.
cache A cache (pronounced cash) is a temporary storage area for frequently
accessed data. The purpose of caching is to store frequently used
information in a location that is easy to access, resulting in a faster-
running computer. There are two types of cache: memory cache and
disc cache. Memory cache stores the data and the address of where
the data is stored in main memory. Memory caching is useful because
most applications access the same data repeatedly. Disc caching uses
the main memory. It is used to hold information that has recently been
requested from the hard disc or has previously been written to the hard
disc. In general, installations usually use the disc cache. When data is
read from or written to main memory, a copy is also saved in the
memory cache. When data is called for, the computer first checks the
memory cache, then the disc cache, and finally main memory.
caption A text heading in a window. The windows caption is what users click and
drag to position the active window on the screen.
CBT See computer-based training.
Term Definition
CD See compact disc.
CD browser A graphical user interface that is launched when a CD is inserted in the
drive. It is used to launch one or more applications on the CD.
CD-ROM See compact disc read–only memory.
checksum A calculated figure that is applied to data to test for possible corruption.
The checksum is derived by sequentially combining bytes of data in the
file in a systematic manner. After transmission or storage compression,
the checksum calculation is performed again and the result is
compared with the previous outcome. If the numbers do not match, this
indicates that there is likely an error in the stored or transmitted data.
column A vertical set of information.
COM See component object model.
COM file Binary software components containing reusable code that can be
shared across products. A popular example of a COM file is a Microsoft
Excel spreadsheet when it is embedded in a Word document. In this
example, Excel acts as the COM server and Word acts as the client.
COM server An executable file that exposes objects to other applications according
to the Component Object Model (COM) specification. The types of
objects exposed by a COM server may include ActiveX controls, ActiveX
documents, Automation objects, or MTS components.
COM+ file An extended COM file. With regard to installations, COM+ adds greater
support for building distributed components. For example, you can
create appID keys and values in the registry and thereby configure
various COM components to run remotely or with special privileges.
command (1) An instruction given to a computer.
(2) An instruction that the operating system executes from the
command line or a Command Prompt window to perform a specific
task. If errors occur during installation, you may, for example, need to
execute commands to run utilities, search your computer’s directories,
or delete files.
command line The area of the Command Prompt window in which commands are
typed. A command line is used to pass commands to executable files
(for example,.exe, .bin).
command prompt The Command Prompt window is the interface to MS-DOS. To access
window the Command Prompt window, click Run on the Start menu, and then
type command.com in Windows 95, 98, and ME or cmd.exe in
Windows NT, 2000, or XP. If errors occur during installation, you may
need to open the Command Prompt window to enter commands to run
utilities or search your computer’s directories, for example.
command-line option A command-line option is an argument to a command that changes how
the command is executed. See also command.
Term Definition
commit execution Execution of a Windows Installer action upon completion of the
InstallFinalize action, which occurs when the installation has completed
transferring files, registering COM servers, and creating shortcuts and
registry entries.
committing databases Accumulated changes made in a Windows Installer database. The
changes are not reflected in the actual database until the database is
committed, that is, until MsiDatabaseCommit is called.
compact disc (CD) A disc used for electronically recording, storing, and playing back audio,
video, and other information in digital form.
compact disc read- A type of compact disc that is only readable.
only memory (CD-
ROM)
component Elements of the application from the installation developer’s
perspective. Components are not visible to the end user. When the end
user selects a feature for installation, the installer determines which
components are associated with that feature, and then those
components are installed. Components of an application would contain,
for example, the executable binary files, data files, shortcuts, help
system files, and registry entries.
component object A Microsoft-developed software architecture that enables the creation of
model (COM) component-based applications. Component-based applications allow
other components and other applications to use their features, adding
functionality to these programs.
compress Take one or more files and create a new file whose size is less than the
total size of the original file(s) and from which the original file(s) can be
re-created.
computer-based Any instruction delivered by computer. CBTs often use graphics, sound,
training (CBT) animation, and interaction to train people.
condition A statement of logic that compares the value of a property to a fixed
value or determines whether the property is defined. The condition must
evaluate to true if the object, feature, component, action, or other item
associated with the condition is to be installed or performed.
conditional installation Installation of certain items only if certain conditions are met. For
example, if an operating system condition is associated with the
installation of an application, the application is installed on a target
machine only if that target machine is running the specified operating
system.
consume What an installation does to a redistributable package such as a merge
module or InstallShield object.
context menu A context menu, also known as a right-click menu or a pop-up menu,
opens when a user right-clicks an item on the desktop, in Windows
Explorer, or in an application.
Term Definition
converted project (1) A file that has been transformed from one type of file to another.
(2) The Open MSI/MSM Wizard in InstallShield is a tool that converts
.msi files and merge module (.msm) files to InstallShield installation
projects (.ism files) that you can modify and build in InstallShield.
costing File costing is the process that InstallShield uses to determine the total
disc space that a current installation requires.
custom action An action that is created by an installation author as opposed to a
standard action that is built into a Windows installer. The action
encapsulates a function performed during the installation, uninstallation,
or maintenance of an application.
database A discrete collection of data in a database management system
(DBMS).
database function A function that operates on a database.
database handle A quantity that specifies a database when a database function is called.
database A set of applications that control the organization, storage, and retrieval
management system of data for many users.
(DBMS)
DBMS See database management system.
DCOM See distributed component object model.
DCOM file Software components that are able to communicate across a network.
DCOM, previously called network OLE, allows the components for a
single application to be distributed across multiple networked
computers.
decompress The reverse process of compression, which minimizes the size of a file
by removing its space characters. This process returns the file to its
original state.
deferred execution Execution of an installer action upon execution of the installation script.
dependency A software object that is required by another software object.
dialog Windows of information that display to the end user during installation
and uninstallation. They enable the end user to interact with the
operation by reading or specifying information. See also wizard.
dialog box A window that displays within an application interface that enables users
to enter information or specify commands.
differential release A release that contains only those files that were absent from one or
more of a specified set of existing releases. A differential release is
used to update the versions of your product that were installed by those
existing releases.
Term Definition
digital signing To assure end users that the code within your application has not been
tampered with or altered since publication, you can digitally sign your
application. When you do so, end users are presented with a digital
certificate when they download your product.
distributed An extension of the component object model (COM), a Microsoft-
component object developed software architecture that enables the creation of
model (DCOM) component-based applications.
distribution media A CD-ROM or other format of media deployed to users.
DLL See dynamic link library.
drag The act of selecting an item and moving it to another location.
dynamic link library A shared, code-base file containing functions that can be called from
(DLL) other applications.
edit field object An interactive object that lets the user enter text into a field.
elevated privileges Privileges that are higher than standard privileges, and are usually
temporarily. Privileges are permissions to perform certain actions on a
system.
end user The person who installs or uninstalls your product.
end user machine The machine onto which an end user installs or from which uninstalls
your product.
engine A program that performs essential functions and coordinates the overall
operation of other programs. Engines work behind the scenes.
InstallShield uses the InstallScript engine (ISScript.msi) and the
Windows Installer engine to drive installations. InstallShield also has its
own proprietary engine called ikernel.
environment variable A variable that can be accessed by multiple programs on the target
system.
EXE media type All of the installation and uninstallation files that are contained in a
single, self-extracting file.
executable (.bin) file A file that contains a program that can run on UNIX platforms.
executable (.exe) file A file that contains a program that can run on Windows platforms.
execution phase The phase during which an installer’s actions are executed.
execution script Installer actions for a Windows Installer installation. The execution script
is generated during the acquisition phase of installation and executed
during the execution phase.
Term Definition
expand (1) To restore a compressed file to its original size. A compressed file is
a single file that contains one or more other files, for example, a cabinet
file. Compressed files are reduced in size, thus, saving space.
(2) A DOS command used to restore compressed files. During an
installation, missing or corrupted operating system files or InstallShield
files may need to be expanded from a compressed file to enable the
installation to complete.
extensible markup (1) A programming language that is essentially a simplified version of
language (XML) standard generalized markup language (SGML). It enables developers to
create customized tags to organize and deliver content efficiently.
(2) The format of the output of MultiPlatform projects.
(3) Windows-based projects created in InstallShield can be converted to
XML so that they can be saved in source code control software.
extensible stylesheet A language used to describe how XML information should be presented.
language (XSL)
external user The user interface developed by the author of an installation package. It
interface does not use the internal user interface capabilities that are available
with the installer.
extract To remove, or decompress, a file from a compressed file, such as a
cabinet file. A compressed file is a single file that contains one or more
other files. Compressed files are reduced in size, thus, saving space. To
use a file that has been compressed, it must first be “pulled out” of the
compressed file. A command-line utility called Extract.exe can be
used to extract files. During installation, missing or corrupted operating
system files or InstallShield files may need to be extracted from a
compressed file to enable the installation to complete.
false positive A false positive is something that gives the appearance of being true by
a test, but in reality is not. Most cases of false positives are found in
anti-virus software. For example, anti-virus software may claim that it
has found a virus in an InstallShield file, but in fact, this is not the case;
their virus definitions need to be updated.
feature Logical representations of the functionality of the product. For example,
an installation could consist of a database, the main application files,
and the help system files. Database, Application, and Help System
would all be features of the product. Although features are visible to the
end user, the actual files that comprise the features are within the
components of the features. See also component.
file An element of data storage in a file system.
file extension The portion of a file name, following the final point, that indicates the
kind of data stored in the file.
InstallShield scripting See IDriver.exe.
run time
formatted When data has been divided or arranged for storage or display.
Term Definition
full update An installation that installs an updated version of your product over an
earlier version.
full user interface (UI) One level of the installer’s internal user interface (UI) capabilities.
Installation packages that are built with the full UI level can display both
the modal and modeless dialogs that have been included in the internal
UI.
gallery A collection of available resources that can be shared.
globally unique A long string of numbers created by InstallShield to uniquely identify
identifier (GUID) your product from others. Enter string GUIDs throughout InstallShield in
the following format: {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}.
GUI Graphical user interface.
GUID See globally unique identifier.
hard drive The primary storage device on a computer. A hard drive contains disks
on which data is read from and written to magnetically. The term “hard”
differentiates the aluminum or glass disks used in a hard drive from
floppy disks, which are made of plastic.
hotfix A quick, important fix for a bug whose deployment cannot wait until the
next release of the application. Most hotfixes are in the form of small
patches and can be downloaded from the software vendor’s Web site.
HTML See hypertext markup language.
hypertext markup A language used to create Web pages with hyperlinks and markup for
language (HTML) text formatting.
IAT See import address table.
ICE See Internal Consistency Evaluator.
IDE See interactive development environment and integrated development
environment.
IDriver.exe The InstallShield scripting run-time engine. It is required on a computer
to run some installations created with InstallShield. IDriver.exe is
located in one or both of the following common file locations by default:
C:\Program Files\Common
Files\InstallShield\Driver\7\Intel 32 or C:\Program
Files\Common Files\InstallShield\Driver\8\Intel
32. Some installation error messages may reference IDriver.exe.
IE See Internet Explorer.
ikernel.exe The InstallShield engine. See also engine.
immediate execution Installation phase terminology that generally refers to custom actions
that are immediately executed when the installer builds the script in an
InstallScript project.
import address table The table used to import .dll files or executable files.
(IAT)
Term Definition
indirect build A full build that creates references to the payload files only. This means
that at installation time, the payload must be in the same place where it
was at build time. For example, if your payload is on a network server,
then the installation looks for the payload on that same network server.
install level A feature’s install level partly determines whether it is selected by
default for installation. That value is compared to the Windows Installer
property INSTALLLEVEL to determine which features are selected for
installation: if a feature’s install level property is less than or equal to the
value of the INSTALLLEVEL, the feature will be installed.
installation The transfer of a program and its constituent files, features, and
components from source media to a target system. See also installation
process.
installation package One or more files that are used together to install or uninstall an
application.
installation process The entire process of installing the contents of a package or application
onto a target computer. The installation process consists of the
acquisition phase, the execution phase, and, if the installation attempt is
not successful, rollback.
installation project The entire collection of source files, dialogs, actions, and conditions
that make up your installation and uninstallation while it is under
construction.
installation sequence The sequence in which an applications files are installed, acitons are
executed, and dialogs display at run time. The installation sequence
runs by default when the installation is launched, for example, by
double-clicking the installation launcher.
installation type A predefined group of features from which the end user can select to
install or uninstall.
installation-on- A Windows Installer capability that makes it possible to offer
demand functionality to users and applications in the absence of the files
themselves.
INSTALLDIR A system variable that specifies the root destination directory for an
installation.
installer An installation and configuration service on a computer.
installer database A database that contains all the necessary information for the
installation of an application. It consists of many interrelated tables that
together comprise a relational database of information necessary to
install a group of applications.
installer function The application programming interface called by an application to
obtain installer services.
installer package A third-party tool that lets users create installation packages.
authoring tool
installer properties Variables that are used during the installation.
Term Definition
INSTALLLEVEL Initial level at which features are selected “ON” for installation by
default.
integrated A software program’s interface. Also referred to as an interactive
development development environment.
environment (IDE)
interactive A software program’s interface. Also referred to as an integrated
development development environment.
environment (IDE)
interface The point at which independent systems communicate with each other.
The user interface of an application often consists of toolbars, menus,
buttons, windows, and other items.
Internal Consistency Tests that can be run on a Windows Installer database (using Orca,
Evaluator (ICE) Msival2, or the Premier or Professional editions of InstallShield) to warn
about potential (or actual) authoring errors.
internal source files Files that are included in the installation archive file.
internal user interface Built-in capabilities of an installer that can be used to create a graphical
user interface that is displayed to the end user during installation.
internet Explorer (IE) The browser developed by Microsoft and distributed with their Windows
operating systems.
ISM See .ism file.
isolated application An application that has been modified so that it always loads the
versions of components, such as .dll files, with which it was originally
developed and tested.
ISScript.msi InstallScript engine installer. ISScript.msi installs the required files
to run an installation. The InstallScript engine is also known as the
InstallShield Scripting Run Time. InstallScript is a programming
language used to create installations.
JAR Acronym for Java archive file. See also .jar file.
Java Archive See .jar file.
Java Native Interface A Java specification that enables Java code to call native code in a
(JNI) shared library. Native code in the JNI library can also invoke Java code
through JNI.
Java Virtual Machine A simulated computer that interprets Java programs compiled into
(JVM) bytecode. The Java programs are usually stored in .class files.
JNI See Java Native Interface.
JPEG See .jpg file.
JVM See Java Virtual Machine.
KB See knowledge base.
Term Definition
key file A unique file for each component that Windows Installer uses to detect
the component’s presence. In order to create advanced component
settings or shortcuts, a key file must be specified.
key path A unique registry value for each component that Windows Installer uses
to detect the component’s presence. A component can have either a
key file or a key path, but not both.
knowledge base (KB) A collection of technical information, instructions, and articles that are
beyond the scope of the software’s help information. The Macrovision
Knowledge Base features tips, tricks, and techniques, answers to
Frequently Asked Questions, and articles on both technical and design
issues. Macrovision Corporation posts periodic updates to the
Knowledge Base Articles on its Web site (http://www.macrovision.com).
left-click The act of selecting the left button on a mouse.
library A collection of similar objects that are stored for occasional use, such
as programs in source code or object code form, data files, scripts,
and templates. A program library is a collection of (usually)
precompiled, reusable programming routines that a programmer can
“call” when writing code.
load-ordering group One service may require another service to already be running before it
starts. For this reason, services need to be grouped and set to load in a
specific order. Service load-ordering groups are listed under
HKEY_LOCAL_MACHINE\System\CurrentControl
Set\Control\ServiceGroupOrder. The service’s Start Type property
determines when it loads within its group.
localization The process of adapting a product or service to a particular language
and culture.
log database (LogDB) A database that is on the target machine and contains a log of
everything that was configured to be logged during installation and
uninstallation.
log file File containing a record of the activity that occurred during a software
process (such as an installation, a build, a download) on a computer
workstation or Web server. For example, Web servers maintain log files
listing every request made to the server, summarizing files that were
copied; bytes that were transferred; or which pages, images, and files
are requested. A build log file lists all features, setup types, merge
modules, dynamic links, and files included in the build.
LogDB See log database.
logging The process of recording the activity of a software process (such as an
installation, a build, or a download) in a log file.
macro An instruction that represents a sequence of instructions.
Term Definition
maintenance mode When a user runs an installation program a second (or later) time for a
product already installed on their system, the installation runs in
maintenance mode. Maintenance mode enables the user to modify
feature selections from the first-time installation, repair the features
already installed, or remove the entire program.
major upgrade A comprehensive update of the product that warrants a change in the
ProductCode property. A new product code is required if you want to
have two versions of a product installed on the same machine.
managed application An application is called a “managed application” if elevated (system)
privileges are used to install the application.
MD See media descriptor.
media descriptor The semantics of an installable unit (IU). It provides a mapping of the
(MD) elements in the deployment descriptor (DD) to some physical source for
the data, which is usually files.
merge module (MM) A package containing all of the logic and files needed to install distinct
pieces of functionality such as run-time .dll files and virtual machines.
Merge modules are built once and can be added to any installation
project.
metafile An image saved using the standard Windows metafile format. A metafile
is a set of drawing instructions. Windows metafiles have a .wmf file
extension.
MFC See Microsoft Foundation Classes.
Microsoft Data Engine A fully SQL Server–compatible data engine for building desktop and
(MSDE) shared solutions. It provides an easy migration path to SQL Server 7.0.
Solutions built with MSDE can be migrated to full SQL Server 7.0
without requiring a change in a single line of code.
Microsoft Developer A set of online and offline services designed to help developers write
Network (MSDN) applications using Microsoft products and technologies.
Microsoft disc The first operating system created by Microsoft. MS-DOS is the
operating system underlying operating system of Windows 95, 98, and ME. Windows NT,
(MS-DOS) 2000, and XP operating systems support existing DOS applications.
Microsoft Foundation A huge set of C++ classes that developers can use to write Win32
Classes (MFC) applications. To run an application that uses MFC, the MFC engine has
to be installed on a target system.
MIDI See musical instrument digital interface.
Term Definition
migrating The process of moving from the use of one operating environment to
another that is, in most cases, thought to be a better one. For example,
moving from Windows NT Server to Windows 2000 Server would be
considered a migration because it involves ensuring that new features
are exploited and that old settings do not require changing; it also
involves taking steps to ensure that current applications continue to
work in the new environment. Migration could also mean moving from
Windows NT to a UNIX-based operating system (or the reverse). You can
also migrate data from one kind of database to another kind of
database. This usually requires converting the data into some common
format that can be output from the old database and input into the new
database. Migration is also used to refer simply to the process of
moving data from one storage device to another.
MIME See multipurpose internet mail extensions.
minor upgrade An update to a product in which the changes made to the installation do
not warrant a change in the Product Code.
MM See merge module.
modal Requires the user to interact with it before the application can continue,
restricting the user’s activities with other windows or dialog boxes. See
also modeless.
modeless Enables the user to interact with other windows and dialog boxes. See
also modal.
MSDE See Microsoft Data Engine.
MSDE named A named instance of an installation of the Microsoft data engine (MSDE).
instance See also named instance.
MSDE object template A base for the MSDE merge module. When you add the MSDE merge
module to a Windows Installer project or an InstallScript project, the
InstallShield application starts with a base file (or stub) for this merge
module. You need to configure this merge module, and then the
application can apply your settings to the base file.
MSDN See Microsoft Developer Network.
MS-DOS See Microsoft disc operating system.
MS-DOS prompt The Microsoft Disc-Operating System (MS-DOS) prompt is the visual
indicator in the Command Prompt window signaling that MS-DOS is
ready to accept a new command. The default MS-DOS prompt is C:>,
followed by a blinking cursor.
MSI See .msi file.
MSM See .msm file.
MSP See .msp file.
MST See .mst file.
Term Definition
multimedia A collection of various media such as sound, video, graphics, and
animation used together to convey a message.
multipurpose Internet The standard used by Web servers to identify the files that they are
mail extensions sending to Web clients. The MIME standard is a way of specifying both
(MIME) the type of file being sent and the method that should be used to turn it
back into its original form.
musical instrument A protocol designed for recording and playing back music on digital
digital interface (MIDI) synthesizers. Unlike .wav files, which are digital recordings of actual
sound (voice or music), MIDI files simply define the instruments and
notes that are to be played, and how they should be played. A
synthesizer (generally part of a MIDI-capable sound board) on the end-
user’s system reads the MIDI instructions and plays the music. Since
MIDI files contain only instructions and not the actual music, they are
many times smaller than digital audio files of the same duration. MIDI
files also use less processor power to play.
named instance An instance is a complete and independent installation of SQL Server on
a given server. One default instance and any number (up to 16) of
named instances can be installed on a single server. Apart from the
management tools and client connectivity components that are shared
between instances, each instance is effectively standalone. Each
instance has its own security, can be started and stopped
independently, and can even be service packed independently of other
instances on the same server.
nested installation A type of custom action that installs or removes another installation
package (sometimes called the child product) from within a running
installation (called the parent product).
network A network is two or more computers connected together to share
hardware, software, and information. During installation, it may be
necessary to move installation files that are on a network to your
computer’s hard drive to install the software properly.
NT service An application that is installed on Windows NT to run as a service,
meaning that once it is installed, execution is automatic and transparent
to any user, and a user does not have to log in for the service to start.
NT manages services that are defined and described in the registry.
object A package containing all of the logic and files needed to install distinct
pieces of functionality.
One Really Cool An external tool for editing Windows Installer files.
Application (ORCA)
One-Click Install With a One-Click Install installation, the end user can download an
application with minimal effort and can begin using the application
immediately. The installation is automatically downloaded,
uncompressed, and then executed automatically, with minimal user
input. End users are not asked to specify a download location, and they
are not required to manually launch the installation.
Term Definition
operating system (OS) The software that controls the operation of a computer and directs the
processing of programs by assigning storage space in memory and
controlling input and output functions.
ORCA See One Really Cool Application.
OS See operating system.
package All of the files needed to run an installation, including the installation
database file, your application’s files (separate from the installation
database file or compressed into it), and an executable file (which may
have all of the above files compressed inside it).
package code The globally unique identifier for an installation package. See also
globally unique identifier (GUID).
panel A window within a wizard that contains one or more related settings that
an end user can configure. See also wizard.
parent/child See nested installation.
installation
patch A special type of installation package that contains just the bits and
portions of the application that is necessary to either update the
application’s files and installation to a specific version or to fix a bug in
an earlier version.
patch file A patch package used for patching. A patch package (.msp) file
contains the transforms and instructions necessary for upgrading one
or more installed versions of a product. Windows Installer uses a patch
package to patch local or administrative installations. A patch package
does not include a database like a regular installation package. Instead
it contains at minimum one database transform that adds patching
information to the database of its target installation package. The
installer uses this information to apply the patch files that are stored in
the cabinet file stream of the patch package.
patching The method of updating an installation that replaces only the bits being
changed rather than the entire application. This means that end users
can download a patch for a product that is much smaller than the entire
product.
path In a computer operating system, a path is the route through a file
system to a particular file. A path name is the specification of that path.
Each operating system has its own format for specifying a path name.
The DOS, Windows, and OS/2 operating systems use the following
format:
driveletter:directorynamesubdirectorynamefilename
.suffix. UNIX-based systems use the following format: /
directory/subdirectory/filename.
Term Definition
path variable A variable that represents a location that can be defined once in a
central location so that it is not necessary to change every source file’s
path each time that the project is moved or the folder structure is
changed. You can instead use path variables to define commonly used
paths once, and they are used during the development of your
installation project. These paths do not apply to the target machines
where the application is being installed. Rather, they are used to link to
source files that need to be included in your installation project. When
the project is built, those links are evaluated and the files they point to
are built into the installation package.
PKCS See public-key cryptography standards.
platform The operating system for which the installation program is intended. An
installation technology may be limited to creating installations for a
specific platform(s).
preview mode Mode for viewing the design of the user interface, or the current
appearance of dialog and billboards. Preview mode is a term used in
Windows Installer.
product The actual application to be installed or uninstalled.
product code A string that uniquely identifies a product.
progress bar The visual indication of the progress of an executable file.
property A value that has been placed on an object within an installation project
that is used during installation or uninstallation by the installer or
uninstaller.
public property A global variable whose value is set by the end user or system
administrator. A public property can be set or changed during
installation through interaction with the user interface as well as by
setting the property on the command line, by applying a transform, or
by using a standard or custom action. Unlike private property values,
the values of public properties can be changed. Public property names
cannot contain lowercase letters.
public-key Developed by RSA Security, Inc., these specifications standardize
cryptography aspects of public-key cryptography that are not covered by existing
standards (PKCS) standards bodies.
publishing A type of advertising (“just-in-time” installation) in which no user-interface
elements are created for the component during installation, but the
component can still be installed through Add and Remove Programs of
the Control Panel or when an installed component requests the
published component from the installer.
qualified component A method of single-level indirection that is similar to a pointer. Qualified
components are primarily used to group components with parallel
functionality into categories.
Term Definition
QuickPatch A special type of patch package that contains just the bits and portions
of the database necessary to update your application’s files and
installation to a specific version. You can create a QuickPatch in
InstallShield by using the QuickPatch type of project.
readme file A text file that is included with the distribution of an application that
contains important information. This information often pertains to the
installation, uninstallation, or functionality that may not have been
included in other product documentation.
red green blue (RGB) The three colors of light that can be mixed to produce any other color.
Colored images are often stored as a sequence of RGB triplets or as
separate red, green, and blue overlays, though these are not the only
possible representations. These three colors correspond to the three
“guns” in a color cathode ray tube (CRT) and to the color receptors in
the human eye.
redistributable A merge module, object, or other file that may be legally distributed with
an installation or application.
reduced user The reduced UI level displays authored modeless dialogs, built-in modal
interface (UI) error messages, and disc-prompt messages during installation. This UI
level does not display any authored modal dialogs. This UI level uses the
installer’s internal user interface capabilities. See also modal,
modeless, and internal user interface.
reference count A tally that is incremented each time a shared file is installed. It is
maintained under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
Windows\CurrentVersion\SharedDLLs.
refresh build This type of build only recompiles custom code. It can also perform
single file replacement, meaning it can only rebuild and add or modify a
single changed file without rebuilding the entire installation. This type of
build is available for InstallScript projects only.
Regedt32.exe, The two versions of the Windows Registry Editor. The Registry Editor
Regedit.exe enables you to edit the entries in the registry. Regedt32 provides more
functionality for editing the registry. If errors occur during installation,
you may need to edit the registry to complete installation.
Regedt32.exe and Regedit.exe have been merged in Windows
XP computers, thus these two applications perform the same
functionality in the new operating systems.
registry A central database used by the Windows operating system to track the
personal settings and the software and hardware installed on a
computer. During installation, installation choices are written to the
registry.
registry file A text file of a predefined format that contains keys and values that can
be merged into a registry.
reinstallation When a product has been installed on a machine and its installation is
run again, the installation reinstalls the product by overwriting its
existing files, shortcuts, and registry entries.
Term Definition
relative path A path that includes all of the information necessary to locate a file by
starting at the current folder on the current drive, for example,
IS11.5\Support. That folder can be located along that relative path
only if it exists in the current directory.
release build A full rebuild fit for releasing.
release notes A file that is included with the distribution of an application. This file
contains important information about the installation and uninstallation
of the application. It can also contain information that may not have
been included in other product documentation.
remote procedure call A small routine placed in a program that is used to request a service on
(RPC) stub another computer. RPC is a protocol, or agreed-upon format for
transmitting data, that allows a program to request a service from a
program located in another computer. The stub accepts the request
from the program and forwards it to the remote procedure. When the
procedure is complete, the stub receives the result and passes it back
to the program that made the request.
repair mode In repair mode, the installation checks for any type of corruption, such
as missing or damaged files, incorrect registry entries, and self-
registering files. If the installation detects any corruption, it attempts to
repair the problem. See also maintenance mode.
resiliency The ability for the application to reinstall components as necessary. If a
component is accidentally deleted or corrupted, Windows Installer
technology enables the application to essentially repair itself.
restricted public A global variable for which the installation author can limit the ability to
property set or change it. Usually, only system administrators can manipulate
restricted public properties. Restrictions are used to maintain a secure
environment.
result set The set of rows created by executing a SELECT statement.
RGB See red green blue.
rich text format (RTF) A Microsoft file format that contains special commands to indicate
formatting information such as fonts and margins. RTF lets you
exchange files between different word processors and operating
systems.
rollback The installation keeps track of all changes that are made during the
installation process so that, if an error occurs and the installation is
aborted, the changes will be “rolled back,” that is, the machine will be
restored to its original state.
row A set of related columns that describe a specific entity, also known as a
record.
RPC stub See remote procedure call stub.
RTF See rich text format.
Term Definition
run time The time during which the installation interacts with the installer to install
or uninstall your application on the target machine.
safe mode Safe mode is a troubleshooting mode available in Windows 95, 98, ME,
and 2000. When you start your computer in safe mode, only the
operating system and mouse, keyboard, and display drivers are loaded.
You may be able to start your computer in safe mode when it otherwise
would not start at all. Safe mode lets you troubleshoot the operating
system to determine what is not functioning properly.
schema A description of the current structure of tables and views in a data
source. The schema describes what columns are in each table, the data
type of each column, and the relationships between tables.
SCM See Service Control Manager.
SDK See Software Development Kit.
Section 508 A United States law that amended the Rehabilitation Act to require
federal agencies to make their electronic and information technology
accessible to people with disabilities. Section 508 was enacted to
eliminate barriers in information technology, to make available new
opportunities for people with disabilities, and to encourage
development of technologies that will help achieve these goals. The law
applies to all federal agencies when they develop, procure, maintain, or
use electronic and information technology. Under Section 508,
agencies must give disabled employees and members of the public
access to information that is comparable to the access available to
others.
security tool A privacy tool that detects and eliminates destructive pests, such as
Trojans, spyware, addware, and hacker tools on your computer. It
complements anti-virus and firewall software, extending protection
against non-viral malicious software that can evade the end user’s
existing security and invade privacy.
self-healing See auto-repair.
self-registering file A file that can enter information about itself in the Windows registry and
remove that information upon uninstallation. Other types of files can be
used without entering information into the registry. The installation of a
self-registering file consists of installing the file to its desired location
and then registering the file on your computer.
sequence A collection of actions and dialogs that is executed sequentially in an
installation project.
sequence tables Tables that list the actions that control the installation process and
specify their order of execution.
Term Definition
service For Windows Installer–based or InstallScript-based projects, this is a
program that runs in the background whenever a computer is running.
Services perform tasks that do not require user interaction, such as
software installation, process monitoring, file transfer, task scheduling,
network management, and many more. In Win32, services are managed
by the Service Control Manager.
Service Control Maintains the system’s database of services and exposes an interface
Manager (SCM) for controlling these services.
service pack (SP) An update to a software product that fixes existing problems and may
provide product enhancements. The next version of a product
incorporates all services packs previously released.
setup See installation.
setup project See installation project.
Setup.inx The compiled script file. It is the object code that the installer engine
executes.
shortcut A file that points to an application. Clicking the shortcut is a fast way to
open the application. Shortcuts are usually placed on the desktop or on
the Start menu. See also advertised shortcut.
silent installation An installation that is run without a user interface or any end user
intervention.
small update A patch that upgrades a package where both the installed package and
the most recent one have the same version number.
software development The documentation, samples, command-line compilers, debugging aids,
kit (SDK) utilities, and tools designed to enable developers to create applications
and libraries that target a specific operating system. SDKs are usually
provided by the manufacturer of the operating system.
source list A list that specifies the locations where the installer searches for
installation files. The entries in the source list can be network locations,
URLs, or compact disks.
SP See service pack.
splash screen An image that is displayed to end users during the startup of a product
installation. You can specify the image to be displayed, the length of
time that it should display, and whether it contains localized images.
spyware Any technology that aids in gathering information about a person or
organization without their knowledge. On the Internet, spyware is
programming that is put on someone’s computer to secretly gather
information about the user and relay it to advertisers or other interested
parties. Spyware can be loaded on a computer as a software virus or as
the result of installing a new program. Data collecting programs that are
installed with the user’s knowledge are not, properly speaking, spyware,
if the user fully understands what data is being collected and with whom
it is being shared.
Term Definition
SQL See Structured Query Language.
SQL statement A complete phrase in SQL that begins with a keyword and completely
describes an action to be taken. For example, SELECT * FROM
Orders.
standard action An action that is built into an installation development software product.
InstallShield products also support the creation and use of custom
actions. See also action, custom action.
string table A database that maintains the string IDs, values, and comments for all
supported languages. These strings are used in dialogs and message
boxes displayed to the end user at run time.
Structured Query A language used to work with databases.
Language (SQL)
summary information The properties such as title, author, package code, templates,
stream summary, and schema that are defined for a Windows Installer package
and are used by the installer to install the application.
synchronous The opposite of asynchronous execution, where control of the process
execution is not released until the entire process has completed.
system policy The rules and regulations by which a system must abide.
system privileges The system, programs, and functions available to each user.
table A collection of rows of data.
TARGETDIR In a Windows Installer–based installation, the TARGETDIR property
specifies the root destination directory for the installation. In an
InstallScript installation, the TARGETDIR system variable, by default,
specifies the root destination directory for the installation.
Task Manager A tool available on Windows platforms that provides information about
the applications and processes running on your computer as well as
your computer’s performance. Prior to installation, you may need to use
the Task Manager to end running applications and processes to prevent
conflicts.
temp directory A folder on your hard drive where the operating system or applications
can temporarily store files while they are in use. When the application
exits, the temporary files are deleted. It may be necessary to manually
clean, or delete files from, the temp directory.
template Something that establishes or serves as a pattern.
transform A transform (.mst) file represents the differences between two
installation databases. For example, network administrators may want
to distribute different configurations of a product to the various
departments in the company. As a result, you can create a transform
for every configuration of the product, then apply the appropriate
transform as needed.
Term Definition
transform error A set of properties that are used to set the error conditions in a
condition flags transform.
transform validation The set of properties used to verify that a transform can be applied to
flags the Windows Installer package.
tree node A data structure that contains zero or more “child” nodes. Nodes are
tree “roots”. Tree nodes that do not have “children” are typically referred
to as “leaves”.
trees Data that is structured like a tree.
UI See user interface.
uncompress See decompress.
uniform/universal Represents the location of a Web site or page.
resource locator
(URL)
uninstallation The undoing of an installation. Uninstallation is the installation
maintenance option that enables the end user to remove the product
files and reverse any changes that were made to the machine made
during installation.
uninstallation log file A record of all uninstallation-related events that occurred during an
installation. The log file is initialized at the beginning of the installation. If
this log file becomes corrupted, it may result in an error during
uninstallation.
unInstallShield A component included in the Setup Wizard that uninstalls the product
from the end user’s PC.
unspanned CD/DVD The payload is laid out in a CD/DVD archive, but no spanning across
media type multiple media is used.
Update Manager An optional Win32 or Java-based client application that can be used by
(Windows or Java) end users to set their own update schedules, or to silence the update
queries performed by the agent.
Update Manager An optional Win32 or Java-based client application that can be used by
(Windows or Java) end users to set their own update schedules, or to silence the update
queries performed by the agent.
upgrade A move from a lesser version of an application to a newer, usually
improved version of an application.
upgrade code The code required to install a newer version of existing software.
upgrading The process of installing a newer version of existing software.
URL See uniform/universal resource locator.
user interface (UI) The user’s access to the software.
Term Definition
user profile Record of an individual end user’s settings, such as shortcuts, favorites,
and settings for application, display, and hardware. User profiles enable
multiple users to share a single computer while maintaining their own
preferences.
validation The process of validating, that is, to confirm the true form of data.
value pack (VP) An installation that upgrades the features and functions of an installed
application.
variable A value stored in the computer. Its value can be composed of any
printable characters, numeric or text. Unlike a constant, whose value
never changes, a variable’s value can be changed at any time.
volume The total amount of space, in blocks, on one piece of media.
VP See value pack.
Web installation An installation that end users can access and run from a Web site.
Web site A location on the World Wide Web.
WinDir Stores the path to the executable file for Win16 on Win32 (WOW).
window The area in which an open application appears on a screen.
Windows API The Windows application programming interface (API), which provides
the building blocks that are used by applications written for the Windows
platform. Each API is a specific method prescribed by a computer
operating system or by an application program. A programmer writing
an application can make requests of the operating system or another
application with the use of a Windows API. Each API has different
system requirements to run properly.
Windows installation The compact disc that contains the Windows operating system. If your
CD computer manufacturer installed the operating system on your
computer, the installation CD should have been included with your
computer documentation. If you installed the Windows operating system
on your computer, you used the installation CD to do so.
Windows Installer (1) An installation and configuration service. It is based on a data-driven
model and provides all installation data and instructions in a single,
complete package. In the data-driven installation model, a master set of
installation tables is created where every application resource (files,
registry keys, and so on) is clearly tied to the component or feature it
supports. The user selects the objects to install and where to install
them, and the Windows Installer manages the procedural instructions.
(2) Refers to the service, properties, and tables of an .msi package.
Windows Installer An operating system component that centrally manages application
service installation configuration and application uninstallation.
Windows NT service See Windows service.
Windows service Long-running executable applications that run in their own Windows
sessions. For example, writing messages to an event log.
Term Definition
Windows system Contains core operating system files, which are necessary to keep the
folder computer running properly. Errors occurring during installation may be a
result of missing or corrupt files contained in the System folder.
wizard (1) A program utility that works as an interactive guide by walking the
user step-by-step through an unfamiliar task.
(2) The InstallShield Wizard is the wizard that displays during the run
time of an installation or uninstallation. It presents the end user with a
flexible, predefined series of dialogs that walk them through the
installation or uninstallation process.
wizard dialog Dialogs that display to the end user during installation and uninstallation.
They enable end users to interact with the operation by reading or
specifying information.
wizard interface Used by the end user to interact with a wizard at run time.
WYSIWYG What you see is what you get.
XCopyFile An InstallScript function that copies one or more files and subdirectories
to a target directory, creating subdirectories on the target machine, if
necessary.
XML See extensible markup language.
XSL See extensible stylesheet language.
project type 25
wizard 366 S
QuickPatch projects 26
custom action 533 saving
procedures for 282 project with new name or location 30
SCResetLicense*.exe 218
searching for files and folders in your project
R 103
See cata source names (DSNs) 471
Readme 428 See DLL custom actions 151
reboot 159 See end-user dialogs 491
redistributable 105 See INI File Changes 473
adding to your project 105 See Pocket PC installations 26
browsing for 113 See projects 24
removing from your project 118 Select Icon dialog box 350
redistributables self-extracting installation file, creating 209
adding prerequisites to projects 109 sequences
managing gallery of 111 for installing prerequisites 119
setup prerequisites 117 for small-update patches 279
registering COM servers 123 serial number validation 158
registry entries 133 setting uninstall behavior for registry keys 140
creating keys 133 Setup DLL Properties dialog box 352
creating values 135 setup prerequisites 117
drag-and-drop 134 adding to projects 109
importing .reg files 381 adding to redistributables gallery 115
install/uninstall behavior for 139 configuring a release that includes 117
REG_EXPAND_SZ 137 installation order for 119
REG_MULTI_SZ 137 overview 117
removing 195 release location for 120
installation for a mobile device from your removing from projects 119
project 195 removing from redistributables gallery 116
merge modules and objects from your running installations with 118
project 118 uninstalling applications with 118
setup prerequisites from projects 119 Setup Prerequisites dialog box 353
setup prerequisites from redistributables setup types 442
gallery 116 accessing at run time 96
trialware file 264 edit 94
requirements 495 view for 442
requirements for target systems 4 Setup.exe 209
running an installation creating for your installation 209
running multiple .msi files simultaneously including setup prerequisites in 117
117 installing Windows Installer with an
with setup prerequisites 118 application 291
Setup.exe Command-Line Parameters 581