SlideShare ist ein Scribd-Unternehmen logo
1 von 6
Downloaden Sie, um offline zu lesen
W H I T E PA P E R




                     Validating MSI Updates
                     and Patches
                     by Robert Dickau
                     Principal Technical Training Writer, Flexera Software
Validating MSI Updates and Patches
Introduction                                                            It is also assumed you are familiar with some of the wizards
The success of a Windows Installer–based update package involves        available with InstallShield, such as the Release Wizard and
a long list of considerations when the update is being performed.       Component Wizard.
These considerations involve file versioning, key file information,
product and component GUIDs, and more, and differ according to             • The Release Wizard, available under the Build menu and also
the update type (small update, minor upgrade, or major upgrade)              from the Releases view, lets you describe the properties—
and packaging (full installation or patch package).                          media type, compression settings, and so forth—of a release,
                                                                             and then builds the specified release image.
InstallShield supports different validation rules for upgrades and         • The Component Wizard, available by right-clicking a feature
patches, which can assist you in identifying and avoiding potential          in the Setup Design view, lets you create special types of
problems. This white paper describes these built-in validation rules,        components, such as components for COM servers, fonts, and
and how to address any validation warnings or errors that occur.             Windows services.

Using the InstallShield Environment                                     The InstallShield Help Library contains information about using every
This white paper frequently refers to the InstallShield development     view and wizard in the InstallShield environment. The InstallShield Help
environment. It is assumed you are familiar with the general layout     Library is available when you press F1 with any view selected; you can
of the InstallShield interface, which contains a list of views with     also select Contents from the Help menu to view the help library.
which you can modify different portions of your installation project.
                                                                        In addition to the graphical environment, InstallShield provides
                                                                        several tools for modifying and building projects from the command
                                                                        line or an external script. For example, to build a project from the
                                                                        command line, batch file, or other automated process, you can use
                                                                        the executable IsCmdBld.exe. The IsCmdBld executable is located
                                                                        in the System subdirectory of the InstallShield distribution directory.

                                                                        To rebuild a project, you pass IsCmdBld the project file path, the
                                                                        product configuration name, and the release name that you want to
                                                                        rebuild. A sample command appears as follows:

                                                                          iscmdbld -p C:ProductName.ism -a BuildConfig -r ReleaseName

                                                                        In addition, InstallShield provides an Automation interface, with
                                                                        which you can modify the contents of a project file without using the
                                                                        graphical environment.
For example, the General Information view is where you set general
product and project properties; the Setup Design view enables you           Learn More about InstallShield
to edit the features, components, and component data used by your           If you wish to learn more about the capabilities of
project; the Registry view enables you to modify the registry data          InstallShield, please visit the Flexera Software Web
installed by your installation program; and the Direct Editor view          site at www.flexerasoftware.com/installshield
gives you access to the raw MSI database tables.                        Figure 1: Critical actions during installation


2                                                                                            Flexera Software: InstallShield White Paper Series
Validat ing MSI Updates and Patches




Performing Upgrade Validation
By default, InstallShield will perform upgrade validation each time
you build a release image. You can change this by pulling down
the Tools menu, selecting Options, activating the Validation tab,
and selecting the desired behavior.




When you perform a build, the upgrade validation results are
displayed in the Build tab of the output window at the bottom of
the InstallShield environment. Any messages displayed will contain      Similarly, you can right-click an upgrade item in the Upgrades view
a validation rule number and a description of the project elements      and select Validate Item to carry out validation on that item.when
involved in the rule.                                                   installed to directories with spaces.




Any validation warnings or errors will also be displayed in the Tasks
tab of the output window.

                                                                        Validation Rules
                                                                        Many of the InstallShield validation rules apply only to certain types
                                                                        of updates. The categories of upgrade validation rules are the
                                                                        following:

You can click the error number in the Error Code column to obtain         • All types of upgrades: Val003, Val005
more information about that error from the InstallShield technical-       • Minor upgrades: Val001, Val002, Val004, Val006, Val007,
support Web site.                                                           Val009, Val012
                                                                          • Major upgrades: Val008, Val013, Val014
If you build a project from the command line or a batch file using        • Patches only: Val011, Val015
Iscmdbld.exe, the update validation results will be displayed at the
command prompt and written to the build log file.                       The following are the built-in upgrade validation rules.

You can also use the Upgrade Validation Wizard, in which you            Val001: Files removed from a later product version should have
browse for your latest and previous product versions, and then run      corresponding RemoveFile records. If a file that existed in the earlier
upgrade validation on the two versions. To launch this wizard pull      version of your project is no longer present in the later version, the
down the Build menu, select Validate, and then select Upgrade           minor upgrade process will not remove the file unless you add a
Validation Wizard. After you browse for the MSI databases being         corresponding record to the RemoveFile table.
validated, the wizard displays information, warning, and error
messages in the Summary panel, pictured in the following figure.




Flexera Software: InstallShield White Paper Series                                                                                               3
Validat ing MSI Updates and Patches




To access the RemoveFile table in InstallShield you can use the          source during the application of a patch. In addition, the
Direct Editor view. In the Direct Editor you can select the RemoveFile   REINSTALLMODE value applies to all features being reinstalled,
table, and add records corresponding to files you want to delete.        which in the case of the “a” flag can cause older files to overwrite
                                                                         newer ones.)
See also Val002, Val009.
                                                                         Val005: For all types of updates, displays a warning if any features
Val002: For minor upgrades, this validation rule displays a note for     have a default install level of 0 (zero), or can conditionally be
RemoveFile records that apply only on installation.                      set to 0.

The InstallMode field of the RemoveFile table takes a numeric value,     A feature’s install level is a numeric value associated with that
specifying that the file(s) listed in the record are to be removed       feature. At run time, if a feature’s install level is strictly greater than
when the associated component is installed, uninstalled, or both. In     the value of the built-in property INSTALLLEVEL, the feature will not
a minor-upgrade situation, if a RemoveFile record uses the remove-       be selected for installation. A special case—the case tested by this
only-during-install flag (value 1), the file listed in the record will   validation rule—is that a feature install level of zero will deselect the
not be removed if the component associated with the RemoveFile           feature and hide it from the feature-selection dialog box.
record is not installed.
                                                                         The issue is that a feature must be installable in order for updated
This validation rule displays an informational message, not a            components to be installed. To fix warnings displayed by this
warning. If you do not intend to update this component, or if you        validation rule, you should ensure the feature is conditioned to be
are certain the component will be reinstalled during your minor          active during maintenance and update installations.
upgrade, you can safely ignore the message. Alternatively, you
can set the InstallMode value to 3, in which case the file might not     Val006: This rule displays an error message if a minor upgrade
be removed during the upgrade, but it will be removed when the           is being performed when a major upgrade should be, because a
product is removed.                                                      component or feature was removed from the product tree. A major
                                                                         upgrade is required if a component or feature has been removed
See also Val001.                                                         from the product tree.

Val003: This rule displays various informational messages, such as       Val007: Ensures the MSI file name has not changed for a minor
the type of upgrade to be performed. Displays an error if any of the     upgrade package. The MSI file name cannot change between
following are true:                                                      versions in a minor upgrade. Attempting to perform a minor
                                                                         upgrade when the MSI file name has changed can lead to MSI
    • The package code has not changed between the packages.             run-time error 1316.
    • The ProductVersion values of the two versions are identical in
      the first three fields.                                            Val008: Validates Upgrade table “action properties” and version
    • A major upgrade is being performed, but the wrong upgrade          data. Major upgrade settings—such as the range of product
      code is in the Upgrade table.                                      versions to update on a user’s system, and a public action property
                                                                         used to store update-related data at run time—are stored in the
In addition, this rule displays a warning if ProductVersion has not      Upgrade table of your MSI database. This rule performs the
changed at all between the versions.                                     following validation:

By default, InstallShield creates a new package code GUID every            • Ensures the action property is included in the value of the
time you perform a build. If you are creating an update package              SecureCustomProperties property.
by other means, you must change the package code for each new              • Ensures the action property is a public property, with an all-
release (along with other codes, depending on the type of update).           uppercase name.
                                                                           • Ensures the action property is not defined in the Property table.
Val004: For a minor upgrade, displays an error if a change to              • Displays a warning if an action property is repeated in
an existing component’s files will prevent the component from                multiple records.
being updated.                                                             • Ensures the minimum version is less than the maximum version.

For versioned files, Windows Installer tests only the component’s        TIP: See also Microsoft validation rule ICE61. ICE61 tests for the
key file when determining if a component should be installed. The        same conditions as Val008, with an additional test to ensure a
default REINSTALLMODE value of “omus” causes a file to install           major upgrade package will not attempt to update itself.
only over an older version, but not a newer or equal version. A
REINSTALLMODE value that includes the “e” or “a” flag will cause         If you used the Upgrades view of InstallShield, most of these
an equal file version to install over an existing file. (A drawback      settings will be enforced automatically.
to changing the value of REINSTALLMODE this way, however,
includes causing unnecessary prompts for the original installation




4                                                                                             Flexera Software: InstallShield White Paper Series
Validat ing MSI Updates and Patches




Val009: Just as files removed from a minor upgrade package              Summary
require records in the RemoveFile table (tested in Val001), registry    This white paper gave you an overview of the upgrade validation
data removed from a component must have corresponding data in           performed by InstallShield. It supports different validation rules for
the RemoveRegistry table. For a minor upgrade, this rule displays a     upgrades and patches, which can assist you in identifying and
warning or error message if registry data has been removed from a       avoiding potential problems. This update validation can help you
component, but there is missing or inappropriate information from       enforce design guidelines while you build your update packages.
the RemoveRegistry table.

See also Val001.                                                          Begin a Free Evaluation of InstallShield
                                                                          You can download a free trial version of InstallShield from
Val011: For a patch, this rule checks for schema compatibility.           the Flexera Software Web site at:
Windows Installer does not support patches if the before and after        www.flexerasoftware.com/installshield/eval
databases have different schemas, such as from MSI 1.2 to MSI
2.0 or from the schema of a “normal” installer to a “large” installer
(which alters a data type used by fields in the File, Media, and
Patch tables). If the database schema has changed between the             Want to learn more best practices for building quality installations?
earlier and later versions, you will need to package your update as       Join an InstallShield training class – visit
a full minor upgrade or major upgrade package.                            www.flexerasoftware.com/training for available classes.

Val012: Displays an error message if a minor upgrade package
contains new root-level features, or contains new subfeatures that      How Flexera Software Professional Services Can Help
are missing the required settings. A minor upgrade requires any         Knowing about validation rules is different to knowing how to deal
new feature to be a subfeature of an existing feature; and the new      with them, which ones to fix, and why. The consequences to your
feature must be set to be required and to follow its parent feature.    packages and repackaging infrastructure are also something that
If you want, you can make the new subfeature invisible to the           our experienced consultants can assist with. Find out more at
end user.                                                               www.flexerasoftware.com/services/consulting/software-
                                                                        installations.htm.
Val013: For a major upgrade, warns about use of the Remove
field of the Upgrade table. One field in the Upgrade table is the
Remove field, which can optionally contain a list of features to
remove. Use of this field will cause only those features listed to be
removed, leaving behind resources.

The default and usually most appropriate approach is to leave
the Remove field of an Upgrade record empty, which indicates to
remove all the features of the earlier version.

Val014: This rule checks for removed components in certain major
upgrades. The RemoveExistingProducts action can be scheduled in
different locations, to modify the major upgrade behavior. This rule
applies to the “Install setup then remove unneeded files” setting,
and not the “Completely uninstall old setup…” setting.

TIP: See also Windows Installer validation rule ICE63. ICE63 tests
for valid placement of the RemoveExistingProducts action, and
displays a warning or error message if the action is in an invalid
location. For more information, see the MSI Help Library topics
“ICE63” and “RemoveExistingProducts Action”.

Val015: This rule warns about package changes that will prevent
you from creating an uninstallable patch.




Flexera Software: InstallShield White Paper Series                                                                                               5
Flexera Software LLC                      Schaumburg                                United Kingdom (Europe,                   Japan (Asia,                              For more office locations visit:
1000 East Woodfield Road,                 (Global Headquarters):                    Middle East Headquarters):                Pacific Headquarters):                    www.flexerasoftware.com
Suite 400                                 +1 800-809-5659                           +44 870-871-1111                          +81 3-4360-8291
Schaumburg, IL 60173 USA                                                            +44 870-873-6300

Copyright © 2011 Flexera Software LLC. All other brand and product names mentioned herein may be the trademarks and registered trademarks of their respective owners.
                                                                                                                                                                                    IA_WP_Validation_Oct11

Weitere ähnliche Inhalte

Andere mochten auch

Blossoming Together Dr. Shriniwas Kashalikar
Blossoming Together Dr. Shriniwas KashalikarBlossoming Together Dr. Shriniwas Kashalikar
Blossoming Together Dr. Shriniwas Kashalikarshriniwaskashalikar
 
CIOB Complex Projects Contract 2013: Construction Issues in the Middle East
CIOB Complex Projects Contract 2013: Construction Issues in the Middle EastCIOB Complex Projects Contract 2013: Construction Issues in the Middle East
CIOB Complex Projects Contract 2013: Construction Issues in the Middle EastFrancis Ho
 
İrfan kaplan 125532 ödev 8
İrfan kaplan 125532 ödev 8İrfan kaplan 125532 ödev 8
İrfan kaplan 125532 ödev 8Güler Sarraf
 
Master key system part 13
Master key system   part 13Master key system   part 13
Master key system part 13canei2day
 
Master key system part 24
Master key system   part 24Master key system   part 24
Master key system part 24canei2day
 
全媒体出版 报告
全媒体出版  报告全媒体出版  报告
全媒体出版 报告guo
 
De patient José Van Der Schoor
De patient   José Van Der SchoorDe patient   José Van Der Schoor
De patient José Van Der SchoorMijnZorgnet
 
ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016Francis Ho
 
Whistleblower Rules Article
Whistleblower Rules ArticleWhistleblower Rules Article
Whistleblower Rules ArticleSamLieberman
 
Walaval Dr. Shriniwas Kashalikar
Walaval Dr. Shriniwas KashalikarWalaval Dr. Shriniwas Kashalikar
Walaval Dr. Shriniwas Kashalikarshriniwaskashalikar
 
More weapons, more power
More weapons, more powerMore weapons, more power
More weapons, more powertaobao.com
 
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...Flexera
 
FlexNet Delivery and FlexNet Operations On-Demand Tips & Tricks
FlexNet Delivery and FlexNet Operations On-Demand Tips & TricksFlexNet Delivery and FlexNet Operations On-Demand Tips & Tricks
FlexNet Delivery and FlexNet Operations On-Demand Tips & TricksFlexera
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editortaobao.com
 
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...SEO, LLC dba www.SplinternetMarketing.com
 
Convite De Formatura Diego Rodrigues Santos
Convite De Formatura   Diego Rodrigues SantosConvite De Formatura   Diego Rodrigues Santos
Convite De Formatura Diego Rodrigues SantosDiego Santos
 

Andere mochten auch (20)

Downtowndoughcookiecutters
DowntowndoughcookiecuttersDowntowndoughcookiecutters
Downtowndoughcookiecutters
 
Blossoming Together Dr. Shriniwas Kashalikar
Blossoming Together Dr. Shriniwas KashalikarBlossoming Together Dr. Shriniwas Kashalikar
Blossoming Together Dr. Shriniwas Kashalikar
 
CIOB Complex Projects Contract 2013: Construction Issues in the Middle East
CIOB Complex Projects Contract 2013: Construction Issues in the Middle EastCIOB Complex Projects Contract 2013: Construction Issues in the Middle East
CIOB Complex Projects Contract 2013: Construction Issues in the Middle East
 
İrfan kaplan 125532 ödev 8
İrfan kaplan 125532 ödev 8İrfan kaplan 125532 ödev 8
İrfan kaplan 125532 ödev 8
 
Master key system part 13
Master key system   part 13Master key system   part 13
Master key system part 13
 
Master key system part 24
Master key system   part 24Master key system   part 24
Master key system part 24
 
全媒体出版 报告
全媒体出版  报告全媒体出版  报告
全媒体出版 报告
 
Wizkids v 0.2
Wizkids v 0.2Wizkids v 0.2
Wizkids v 0.2
 
De patient José Van Der Schoor
De patient   José Van Der SchoorDe patient   José Van Der Schoor
De patient José Van Der Schoor
 
ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016
 
Whistleblower Rules Article
Whistleblower Rules ArticleWhistleblower Rules Article
Whistleblower Rules Article
 
Walaval Dr. Shriniwas Kashalikar
Walaval Dr. Shriniwas KashalikarWalaval Dr. Shriniwas Kashalikar
Walaval Dr. Shriniwas Kashalikar
 
More weapons, more power
More weapons, more powerMore weapons, more power
More weapons, more power
 
11 25-2011-seo-rankings-report
11 25-2011-seo-rankings-report11 25-2011-seo-rankings-report
11 25-2011-seo-rankings-report
 
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...
FlexNet Manager Suite Leverages Microsoft System Center to Deliver Next Gener...
 
FlexNet Delivery and FlexNet Operations On-Demand Tips & Tricks
FlexNet Delivery and FlexNet Operations On-Demand Tips & TricksFlexNet Delivery and FlexNet Operations On-Demand Tips & Tricks
FlexNet Delivery and FlexNet Operations On-Demand Tips & Tricks
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editor
 
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...
Seo search-optimization-rankings-analysis-expansive-internet-marketing-relate...
 
Convite De Formatura Diego Rodrigues Santos
Convite De Formatura   Diego Rodrigues SantosConvite De Formatura   Diego Rodrigues Santos
Convite De Formatura Diego Rodrigues Santos
 
Splinternetmarketing Ranking Report Internet Marketing
Splinternetmarketing Ranking Report Internet MarketingSplinternetmarketing Ranking Report Internet Marketing
Splinternetmarketing Ranking Report Internet Marketing
 

Ähnlich wie Validating MSI Updates and Patches

Designing an Update-Friendly MSI Installation
Designing an Update-Friendly MSI InstallationDesigning an Update-Friendly MSI Installation
Designing an Update-Friendly MSI InstallationFlexera
 
MSI / Windows Installer for NGN 'Dummies'
MSI / Windows Installer for NGN 'Dummies'MSI / Windows Installer for NGN 'Dummies'
MSI / Windows Installer for NGN 'Dummies'Roel van Bueren
 
Enhanced Visual Integrator Log
Enhanced Visual Integrator LogEnhanced Visual Integrator Log
Enhanced Visual Integrator LogSWK Technologies
 
ZCM Software Packaging and ZENworks Application Virtualization
ZCM Software Packaging and ZENworks Application VirtualizationZCM Software Packaging and ZENworks Application Virtualization
ZCM Software Packaging and ZENworks Application VirtualizationRoel van Bueren
 
Setup deployment in vs
Setup deployment in vsSetup deployment in vs
Setup deployment in vsnikhil sreeni
 
General Ledger Auto Updates on Completion
General Ledger Auto Updates on CompletionGeneral Ledger Auto Updates on Completion
General Ledger Auto Updates on CompletionSWK Technologies
 
Ax2012 technical Upgrade process
Ax2012 technical Upgrade processAx2012 technical Upgrade process
Ax2012 technical Upgrade processTariq Rafique
 
Dreamweaver cs5.5 read me
Dreamweaver cs5.5 read meDreamweaver cs5.5 read me
Dreamweaver cs5.5 read mejosephegojocruz
 
Improving Your Admin Image
Improving Your Admin ImageImproving Your Admin Image
Improving Your Admin Imageelisemoss
 
Extend Eclipse p2 framework capabilities: Add your custom installation steps
Extend Eclipse p2 framework capabilities: Add your custom installation stepsExtend Eclipse p2 framework capabilities: Add your custom installation steps
Extend Eclipse p2 framework capabilities: Add your custom installation stepsDragos_Mihailescu
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasicsseethalux
 
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...Flexera
 
ESM 5.5 Patch 1 Release Notes
ESM 5.5 Patch 1 Release NotesESM 5.5 Patch 1 Release Notes
ESM 5.5 Patch 1 Release NotesProtect724
 
Actor Model Import Connector for Microsoft Active Directory
Actor Model Import Connector for Microsoft Active DirectoryActor Model Import Connector for Microsoft Active Directory
Actor Model Import Connector for Microsoft Active Directoryprotect724rkeer
 

Ähnlich wie Validating MSI Updates and Patches (20)

Designing an Update-Friendly MSI Installation
Designing an Update-Friendly MSI InstallationDesigning an Update-Friendly MSI Installation
Designing an Update-Friendly MSI Installation
 
MSI / Windows Installer for NGN 'Dummies'
MSI / Windows Installer for NGN 'Dummies'MSI / Windows Installer for NGN 'Dummies'
MSI / Windows Installer for NGN 'Dummies'
 
installaware_faq
installaware_faqinstallaware_faq
installaware_faq
 
Enhanced Visual Integrator Log
Enhanced Visual Integrator LogEnhanced Visual Integrator Log
Enhanced Visual Integrator Log
 
Rapidly deploying software
Rapidly deploying softwareRapidly deploying software
Rapidly deploying software
 
ZCM Software Packaging and ZENworks Application Virtualization
ZCM Software Packaging and ZENworks Application VirtualizationZCM Software Packaging and ZENworks Application Virtualization
ZCM Software Packaging and ZENworks Application Virtualization
 
Setup deployment in vs
Setup deployment in vsSetup deployment in vs
Setup deployment in vs
 
General Ledger Auto Updates on Completion
General Ledger Auto Updates on CompletionGeneral Ledger Auto Updates on Completion
General Ledger Auto Updates on Completion
 
Ax2012 technical Upgrade process
Ax2012 technical Upgrade processAx2012 technical Upgrade process
Ax2012 technical Upgrade process
 
Dreamweaver cs5.5 read me
Dreamweaver cs5.5 read meDreamweaver cs5.5 read me
Dreamweaver cs5.5 read me
 
MSI Packaging Free eBook
MSI Packaging Free eBookMSI Packaging Free eBook
MSI Packaging Free eBook
 
Improving Your Admin Image
Improving Your Admin ImageImproving Your Admin Image
Improving Your Admin Image
 
Extend Eclipse p2 framework capabilities: Add your custom installation steps
Extend Eclipse p2 framework capabilities: Add your custom installation stepsExtend Eclipse p2 framework capabilities: Add your custom installation steps
Extend Eclipse p2 framework capabilities: Add your custom installation steps
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasics
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasics
 
Readme
ReadmeReadme
Readme
 
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...
Creating InstallAnywhere Installations for Hybrid (32-Bit & 64-Bit) Windows A...
 
ESM 5.5 Patch 1 Release Notes
ESM 5.5 Patch 1 Release NotesESM 5.5 Patch 1 Release Notes
ESM 5.5 Patch 1 Release Notes
 
Actor Model Import Connector for Microsoft Active Directory
Actor Model Import Connector for Microsoft Active DirectoryActor Model Import Connector for Microsoft Active Directory
Actor Model Import Connector for Microsoft Active Directory
 
Prepping software for w7 deployment
Prepping software for w7 deploymentPrepping software for w7 deployment
Prepping software for w7 deployment
 

Mehr von Flexera

Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...
Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...
Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...Flexera
 
Make Smarter Cloud Decisions at Every Step of Your Journey
Make Smarter Cloud Decisions at Every Step of Your JourneyMake Smarter Cloud Decisions at Every Step of Your Journey
Make Smarter Cloud Decisions at Every Step of Your JourneyFlexera
 
10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment
10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment
10 Tips to Optimize, Automate, and Govern your Hybrid IT EnvironmentFlexera
 
Using Automated Policies for SaaS Governance and Compliance
Using Automated Policies for SaaS Governance and ComplianceUsing Automated Policies for SaaS Governance and Compliance
Using Automated Policies for SaaS Governance and ComplianceFlexera
 
The Practical Approach for End-to-End SaaS Management
The Practical Approach for End-to-End SaaS ManagementThe Practical Approach for End-to-End SaaS Management
The Practical Approach for End-to-End SaaS ManagementFlexera
 
7 Things You Need to Know for Your Cloud-First Strategy
7 Things You Need to Know for Your Cloud-First Strategy7 Things You Need to Know for Your Cloud-First Strategy
7 Things You Need to Know for Your Cloud-First StrategyFlexera
 
The Role of In-House & External Counsel in Managing Open Source Software
The Role of In-House & External Counsel in Managing Open Source SoftwareThe Role of In-House & External Counsel in Managing Open Source Software
The Role of In-House & External Counsel in Managing Open Source SoftwareFlexera
 
Addressing Open Source Risks During M&A: A Legal View
Addressing Open Source Risks During M&A: A Legal ViewAddressing Open Source Risks During M&A: A Legal View
Addressing Open Source Risks During M&A: A Legal ViewFlexera
 
Having Trouble Managing All Your Cloud Services? We Know!
Having Trouble Managing All Your Cloud Services? We Know!Having Trouble Managing All Your Cloud Services? We Know!
Having Trouble Managing All Your Cloud Services? We Know!Flexera
 
Webinar: Maximizing the ROI of IT by Simplifying Technology Complexity
Webinar: Maximizing the ROI of IT by Simplifying Technology ComplexityWebinar: Maximizing the ROI of IT by Simplifying Technology Complexity
Webinar: Maximizing the ROI of IT by Simplifying Technology ComplexityFlexera
 
Webinar: What's New In FlexNet Manager Suite 2018 R1
Webinar: What's New In FlexNet Manager Suite 2018 R1Webinar: What's New In FlexNet Manager Suite 2018 R1
Webinar: What's New In FlexNet Manager Suite 2018 R1Flexera
 
Open Source Security - It can be done easily.
Open Source Security - It can be done easily.Open Source Security - It can be done easily.
Open Source Security - It can be done easily.Flexera
 
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...Flexera
 
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709Windows 10 webinar: What’s new for IT pros Windows 10 v 1709
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709Flexera
 
Don’t Let Hackers Breach Your Data: Shutting Your Risk Window on Apache Struts2
Don’t Let Hackers Breach Your Data:  Shutting Your Risk Window on Apache Struts2Don’t Let Hackers Breach Your Data:  Shutting Your Risk Window on Apache Struts2
Don’t Let Hackers Breach Your Data: Shutting Your Risk Window on Apache Struts2Flexera
 
BDNA joins Flexera
BDNA joins FlexeraBDNA joins Flexera
BDNA joins FlexeraFlexera
 
Flexera Event - The Game Has Changed - Are You Ready?
Flexera Event - The Game Has Changed - Are You Ready?Flexera Event - The Game Has Changed - Are You Ready?
Flexera Event - The Game Has Changed - Are You Ready?Flexera
 
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...Flexera
 
Keeping a Lid on Costs for Cloud Infrastructure and SaaS Applications
Keeping a Lid on Costs for Cloud Infrastructure and SaaS ApplicationsKeeping a Lid on Costs for Cloud Infrastructure and SaaS Applications
Keeping a Lid on Costs for Cloud Infrastructure and SaaS ApplicationsFlexera
 
Do You Manage Software? Understanding Your Role in Cybersecurity Defense
Do You Manage Software? Understanding Your Role in Cybersecurity DefenseDo You Manage Software? Understanding Your Role in Cybersecurity Defense
Do You Manage Software? Understanding Your Role in Cybersecurity DefenseFlexera
 

Mehr von Flexera (20)

Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...
Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...
Get a Complete View of Your Business Services and IT Estate in ServiceNow wit...
 
Make Smarter Cloud Decisions at Every Step of Your Journey
Make Smarter Cloud Decisions at Every Step of Your JourneyMake Smarter Cloud Decisions at Every Step of Your Journey
Make Smarter Cloud Decisions at Every Step of Your Journey
 
10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment
10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment
10 Tips to Optimize, Automate, and Govern your Hybrid IT Environment
 
Using Automated Policies for SaaS Governance and Compliance
Using Automated Policies for SaaS Governance and ComplianceUsing Automated Policies for SaaS Governance and Compliance
Using Automated Policies for SaaS Governance and Compliance
 
The Practical Approach for End-to-End SaaS Management
The Practical Approach for End-to-End SaaS ManagementThe Practical Approach for End-to-End SaaS Management
The Practical Approach for End-to-End SaaS Management
 
7 Things You Need to Know for Your Cloud-First Strategy
7 Things You Need to Know for Your Cloud-First Strategy7 Things You Need to Know for Your Cloud-First Strategy
7 Things You Need to Know for Your Cloud-First Strategy
 
The Role of In-House & External Counsel in Managing Open Source Software
The Role of In-House & External Counsel in Managing Open Source SoftwareThe Role of In-House & External Counsel in Managing Open Source Software
The Role of In-House & External Counsel in Managing Open Source Software
 
Addressing Open Source Risks During M&A: A Legal View
Addressing Open Source Risks During M&A: A Legal ViewAddressing Open Source Risks During M&A: A Legal View
Addressing Open Source Risks During M&A: A Legal View
 
Having Trouble Managing All Your Cloud Services? We Know!
Having Trouble Managing All Your Cloud Services? We Know!Having Trouble Managing All Your Cloud Services? We Know!
Having Trouble Managing All Your Cloud Services? We Know!
 
Webinar: Maximizing the ROI of IT by Simplifying Technology Complexity
Webinar: Maximizing the ROI of IT by Simplifying Technology ComplexityWebinar: Maximizing the ROI of IT by Simplifying Technology Complexity
Webinar: Maximizing the ROI of IT by Simplifying Technology Complexity
 
Webinar: What's New In FlexNet Manager Suite 2018 R1
Webinar: What's New In FlexNet Manager Suite 2018 R1Webinar: What's New In FlexNet Manager Suite 2018 R1
Webinar: What's New In FlexNet Manager Suite 2018 R1
 
Open Source Security - It can be done easily.
Open Source Security - It can be done easily.Open Source Security - It can be done easily.
Open Source Security - It can be done easily.
 
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...
Software Distribution, Customer Experience and the IoT: Get Ready for Fast, S...
 
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709Windows 10 webinar: What’s new for IT pros Windows 10 v 1709
Windows 10 webinar: What’s new for IT pros Windows 10 v 1709
 
Don’t Let Hackers Breach Your Data: Shutting Your Risk Window on Apache Struts2
Don’t Let Hackers Breach Your Data:  Shutting Your Risk Window on Apache Struts2Don’t Let Hackers Breach Your Data:  Shutting Your Risk Window on Apache Struts2
Don’t Let Hackers Breach Your Data: Shutting Your Risk Window on Apache Struts2
 
BDNA joins Flexera
BDNA joins FlexeraBDNA joins Flexera
BDNA joins Flexera
 
Flexera Event - The Game Has Changed - Are You Ready?
Flexera Event - The Game Has Changed - Are You Ready?Flexera Event - The Game Has Changed - Are You Ready?
Flexera Event - The Game Has Changed - Are You Ready?
 
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...
Webinar: Take Proactive Control of Your SAP Licensing, Indirect Usage and Ven...
 
Keeping a Lid on Costs for Cloud Infrastructure and SaaS Applications
Keeping a Lid on Costs for Cloud Infrastructure and SaaS ApplicationsKeeping a Lid on Costs for Cloud Infrastructure and SaaS Applications
Keeping a Lid on Costs for Cloud Infrastructure and SaaS Applications
 
Do You Manage Software? Understanding Your Role in Cybersecurity Defense
Do You Manage Software? Understanding Your Role in Cybersecurity DefenseDo You Manage Software? Understanding Your Role in Cybersecurity Defense
Do You Manage Software? Understanding Your Role in Cybersecurity Defense
 

Kürzlich hochgeladen

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 

Kürzlich hochgeladen (20)

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

Validating MSI Updates and Patches

  • 1. W H I T E PA P E R Validating MSI Updates and Patches by Robert Dickau Principal Technical Training Writer, Flexera Software
  • 2. Validating MSI Updates and Patches Introduction It is also assumed you are familiar with some of the wizards The success of a Windows Installer–based update package involves available with InstallShield, such as the Release Wizard and a long list of considerations when the update is being performed. Component Wizard. These considerations involve file versioning, key file information, product and component GUIDs, and more, and differ according to • The Release Wizard, available under the Build menu and also the update type (small update, minor upgrade, or major upgrade) from the Releases view, lets you describe the properties— and packaging (full installation or patch package). media type, compression settings, and so forth—of a release, and then builds the specified release image. InstallShield supports different validation rules for upgrades and • The Component Wizard, available by right-clicking a feature patches, which can assist you in identifying and avoiding potential in the Setup Design view, lets you create special types of problems. This white paper describes these built-in validation rules, components, such as components for COM servers, fonts, and and how to address any validation warnings or errors that occur. Windows services. Using the InstallShield Environment The InstallShield Help Library contains information about using every This white paper frequently refers to the InstallShield development view and wizard in the InstallShield environment. The InstallShield Help environment. It is assumed you are familiar with the general layout Library is available when you press F1 with any view selected; you can of the InstallShield interface, which contains a list of views with also select Contents from the Help menu to view the help library. which you can modify different portions of your installation project. In addition to the graphical environment, InstallShield provides several tools for modifying and building projects from the command line or an external script. For example, to build a project from the command line, batch file, or other automated process, you can use the executable IsCmdBld.exe. The IsCmdBld executable is located in the System subdirectory of the InstallShield distribution directory. To rebuild a project, you pass IsCmdBld the project file path, the product configuration name, and the release name that you want to rebuild. A sample command appears as follows: iscmdbld -p C:ProductName.ism -a BuildConfig -r ReleaseName In addition, InstallShield provides an Automation interface, with which you can modify the contents of a project file without using the graphical environment. For example, the General Information view is where you set general product and project properties; the Setup Design view enables you Learn More about InstallShield to edit the features, components, and component data used by your If you wish to learn more about the capabilities of project; the Registry view enables you to modify the registry data InstallShield, please visit the Flexera Software Web installed by your installation program; and the Direct Editor view site at www.flexerasoftware.com/installshield gives you access to the raw MSI database tables. Figure 1: Critical actions during installation 2 Flexera Software: InstallShield White Paper Series
  • 3. Validat ing MSI Updates and Patches Performing Upgrade Validation By default, InstallShield will perform upgrade validation each time you build a release image. You can change this by pulling down the Tools menu, selecting Options, activating the Validation tab, and selecting the desired behavior. When you perform a build, the upgrade validation results are displayed in the Build tab of the output window at the bottom of the InstallShield environment. Any messages displayed will contain Similarly, you can right-click an upgrade item in the Upgrades view a validation rule number and a description of the project elements and select Validate Item to carry out validation on that item.when involved in the rule. installed to directories with spaces. Any validation warnings or errors will also be displayed in the Tasks tab of the output window. Validation Rules Many of the InstallShield validation rules apply only to certain types of updates. The categories of upgrade validation rules are the following: You can click the error number in the Error Code column to obtain • All types of upgrades: Val003, Val005 more information about that error from the InstallShield technical- • Minor upgrades: Val001, Val002, Val004, Val006, Val007, support Web site. Val009, Val012 • Major upgrades: Val008, Val013, Val014 If you build a project from the command line or a batch file using • Patches only: Val011, Val015 Iscmdbld.exe, the update validation results will be displayed at the command prompt and written to the build log file. The following are the built-in upgrade validation rules. You can also use the Upgrade Validation Wizard, in which you Val001: Files removed from a later product version should have browse for your latest and previous product versions, and then run corresponding RemoveFile records. If a file that existed in the earlier upgrade validation on the two versions. To launch this wizard pull version of your project is no longer present in the later version, the down the Build menu, select Validate, and then select Upgrade minor upgrade process will not remove the file unless you add a Validation Wizard. After you browse for the MSI databases being corresponding record to the RemoveFile table. validated, the wizard displays information, warning, and error messages in the Summary panel, pictured in the following figure. Flexera Software: InstallShield White Paper Series 3
  • 4. Validat ing MSI Updates and Patches To access the RemoveFile table in InstallShield you can use the source during the application of a patch. In addition, the Direct Editor view. In the Direct Editor you can select the RemoveFile REINSTALLMODE value applies to all features being reinstalled, table, and add records corresponding to files you want to delete. which in the case of the “a” flag can cause older files to overwrite newer ones.) See also Val002, Val009. Val005: For all types of updates, displays a warning if any features Val002: For minor upgrades, this validation rule displays a note for have a default install level of 0 (zero), or can conditionally be RemoveFile records that apply only on installation. set to 0. The InstallMode field of the RemoveFile table takes a numeric value, A feature’s install level is a numeric value associated with that specifying that the file(s) listed in the record are to be removed feature. At run time, if a feature’s install level is strictly greater than when the associated component is installed, uninstalled, or both. In the value of the built-in property INSTALLLEVEL, the feature will not a minor-upgrade situation, if a RemoveFile record uses the remove- be selected for installation. A special case—the case tested by this only-during-install flag (value 1), the file listed in the record will validation rule—is that a feature install level of zero will deselect the not be removed if the component associated with the RemoveFile feature and hide it from the feature-selection dialog box. record is not installed. The issue is that a feature must be installable in order for updated This validation rule displays an informational message, not a components to be installed. To fix warnings displayed by this warning. If you do not intend to update this component, or if you validation rule, you should ensure the feature is conditioned to be are certain the component will be reinstalled during your minor active during maintenance and update installations. upgrade, you can safely ignore the message. Alternatively, you can set the InstallMode value to 3, in which case the file might not Val006: This rule displays an error message if a minor upgrade be removed during the upgrade, but it will be removed when the is being performed when a major upgrade should be, because a product is removed. component or feature was removed from the product tree. A major upgrade is required if a component or feature has been removed See also Val001. from the product tree. Val003: This rule displays various informational messages, such as Val007: Ensures the MSI file name has not changed for a minor the type of upgrade to be performed. Displays an error if any of the upgrade package. The MSI file name cannot change between following are true: versions in a minor upgrade. Attempting to perform a minor upgrade when the MSI file name has changed can lead to MSI • The package code has not changed between the packages. run-time error 1316. • The ProductVersion values of the two versions are identical in the first three fields. Val008: Validates Upgrade table “action properties” and version • A major upgrade is being performed, but the wrong upgrade data. Major upgrade settings—such as the range of product code is in the Upgrade table. versions to update on a user’s system, and a public action property used to store update-related data at run time—are stored in the In addition, this rule displays a warning if ProductVersion has not Upgrade table of your MSI database. This rule performs the changed at all between the versions. following validation: By default, InstallShield creates a new package code GUID every • Ensures the action property is included in the value of the time you perform a build. If you are creating an update package SecureCustomProperties property. by other means, you must change the package code for each new • Ensures the action property is a public property, with an all- release (along with other codes, depending on the type of update). uppercase name. • Ensures the action property is not defined in the Property table. Val004: For a minor upgrade, displays an error if a change to • Displays a warning if an action property is repeated in an existing component’s files will prevent the component from multiple records. being updated. • Ensures the minimum version is less than the maximum version. For versioned files, Windows Installer tests only the component’s TIP: See also Microsoft validation rule ICE61. ICE61 tests for the key file when determining if a component should be installed. The same conditions as Val008, with an additional test to ensure a default REINSTALLMODE value of “omus” causes a file to install major upgrade package will not attempt to update itself. only over an older version, but not a newer or equal version. A REINSTALLMODE value that includes the “e” or “a” flag will cause If you used the Upgrades view of InstallShield, most of these an equal file version to install over an existing file. (A drawback settings will be enforced automatically. to changing the value of REINSTALLMODE this way, however, includes causing unnecessary prompts for the original installation 4 Flexera Software: InstallShield White Paper Series
  • 5. Validat ing MSI Updates and Patches Val009: Just as files removed from a minor upgrade package Summary require records in the RemoveFile table (tested in Val001), registry This white paper gave you an overview of the upgrade validation data removed from a component must have corresponding data in performed by InstallShield. It supports different validation rules for the RemoveRegistry table. For a minor upgrade, this rule displays a upgrades and patches, which can assist you in identifying and warning or error message if registry data has been removed from a avoiding potential problems. This update validation can help you component, but there is missing or inappropriate information from enforce design guidelines while you build your update packages. the RemoveRegistry table. See also Val001. Begin a Free Evaluation of InstallShield You can download a free trial version of InstallShield from Val011: For a patch, this rule checks for schema compatibility. the Flexera Software Web site at: Windows Installer does not support patches if the before and after www.flexerasoftware.com/installshield/eval databases have different schemas, such as from MSI 1.2 to MSI 2.0 or from the schema of a “normal” installer to a “large” installer (which alters a data type used by fields in the File, Media, and Patch tables). If the database schema has changed between the Want to learn more best practices for building quality installations? earlier and later versions, you will need to package your update as Join an InstallShield training class – visit a full minor upgrade or major upgrade package. www.flexerasoftware.com/training for available classes. Val012: Displays an error message if a minor upgrade package contains new root-level features, or contains new subfeatures that How Flexera Software Professional Services Can Help are missing the required settings. A minor upgrade requires any Knowing about validation rules is different to knowing how to deal new feature to be a subfeature of an existing feature; and the new with them, which ones to fix, and why. The consequences to your feature must be set to be required and to follow its parent feature. packages and repackaging infrastructure are also something that If you want, you can make the new subfeature invisible to the our experienced consultants can assist with. Find out more at end user. www.flexerasoftware.com/services/consulting/software- installations.htm. Val013: For a major upgrade, warns about use of the Remove field of the Upgrade table. One field in the Upgrade table is the Remove field, which can optionally contain a list of features to remove. Use of this field will cause only those features listed to be removed, leaving behind resources. The default and usually most appropriate approach is to leave the Remove field of an Upgrade record empty, which indicates to remove all the features of the earlier version. Val014: This rule checks for removed components in certain major upgrades. The RemoveExistingProducts action can be scheduled in different locations, to modify the major upgrade behavior. This rule applies to the “Install setup then remove unneeded files” setting, and not the “Completely uninstall old setup…” setting. TIP: See also Windows Installer validation rule ICE63. ICE63 tests for valid placement of the RemoveExistingProducts action, and displays a warning or error message if the action is in an invalid location. For more information, see the MSI Help Library topics “ICE63” and “RemoveExistingProducts Action”. Val015: This rule warns about package changes that will prevent you from creating an uninstallable patch. Flexera Software: InstallShield White Paper Series 5
  • 6. Flexera Software LLC Schaumburg United Kingdom (Europe, Japan (Asia, For more office locations visit: 1000 East Woodfield Road, (Global Headquarters): Middle East Headquarters): Pacific Headquarters): www.flexerasoftware.com Suite 400 +1 800-809-5659 +44 870-871-1111 +81 3-4360-8291 Schaumburg, IL 60173 USA +44 870-873-6300 Copyright © 2011 Flexera Software LLC. All other brand and product names mentioned herein may be the trademarks and registered trademarks of their respective owners. IA_WP_Validation_Oct11