SlideShare une entreprise Scribd logo
1  sur  6
Télécharger pour lire hors ligne
W H I T E PA P E R




                     MSI Sequences and Standard
                     Actions: An Introduction
                     by Robert Dickau
                     Principal Technical Training Writer, Flexera Software
MSI Sequences and Standard Actions:
    An Introduction
    Introduction
    Instead of using an explicit script, Windows Installer (MSI)    The InstallShield Help Library contains information
    uses sequences to specify the order in which operations         about using every view and wizard in the InstallShield
    are performed and the conditions under which they are           environment. The InstallShield Help Library is available when
    performed. This white paper introduces Windows Installer        you press F1 with any view selected; you can also select
    sequences, and describes some of the built-in actions that      Contents from the Help menu to view the help library.
    make up a typical installation program.
                                                                    In addition to the graphical environment, InstallShield
    It also highlights how InstallShield® from Flexera Software     provides several tools for modifying and building projects
    makes it easier to work with sequences and standard actions.    from the command line or an external script. For example, to
                                                                    build a project from the command line, batch file, or other
    Using the InstallShield Environment                             automated process, you can use the executable IsCmdBld.
    This white paper frequently refers to the InstallShield         exe. The IsCmdBld executable is located in the System
    development environment. It is assumed you are familiar         subdirectory of the InstallShield distribution directory.
    with the general layout of the InstallShield interface, which
    contains a list of views with which you can modify different    To rebuild a project, you pass IsCmdBld the project file
    portions of your installation project.                          path, the product configuration name, and the release
                                                                    name that you want to rebuild. A sample command appears
                                                                    as follows:

                                                                    	 	scmdbld	-p	C:ProductName.ism	-a	BuildConfig	-r	
                                                                      i
                                                                      ReleaseName

                                                                    In addition, InstallShield provides an Automation interface,
                                                                    with which you can modify the contents of a project file
                                                                    without using the graphical environment.


                                                                       Learn More about InstallShield
                                                                       If you wish to learn more about the capabilities of
                                                                       InstallShield, please visit the Flexera Software Web
                                                                       site at www.flexerasoftware.com/installshield.


    For example, the General Information view is where you set
    general product and project properties; the Setup Design
    view enables you to edit the features, components, and
    component data used by your project; the Registry view
    enables you to modify the registry data installed by your
    installation program; and the Direct Editor view gives you
    access to the raw MSI database tables.


2                                                                                Flexera Software: InstallShield White Paper Series
MSI Sequences and Standard Act ions: An Introduct ion




Top-Level Sequences
Windows Installer supports three types of installation, called
a normal installation, administrative installation, and
advertised installation.

  • A normal installation is the type performed when
    the user double-clicks an MSI database file, or runs
    msiexec.exe with the /i switch (or the /package switch,
    starting with Windows Installer 3.0). This white paper        In general, the User Interface sequence shows dialog
    focuses on normal installations.                              boxes and queries the user and the target system, but does
  • An administrative installation simply creates an              not perform any system changes. On the other hand, the
    uncompressed version of the installation image                Execute sequence performs system changes, but does not
    in a specified target directory, usually a network            display any user-interface elements.
    location. An administrator performs an administrative
    installation by launching msiexec.exe with the /a             A normal installation runs both the User Interface sequence
    switch. An administrative installation does not register      and the Execute sequence. A silent installation performs
    the product with the target system, in the sense that         only the Execute sequence, meaning that any actions in
    an administrative installation creates no shortcuts, no       the User Interface will be skipped for a silent installation.
    registry data, no uninstallation entry, and so forth.         Reduced-UI and basic-UI installations, such as an
  • An advertised installation installs various application       uninstallation launched from the Remove button in the Add
    “entry points”—shortcuts, file-extension information,         or Remove Programs panel, also skip the actions in the User
    and COM information—but does not install any                  Interface sequence. Similarly, launching an installer in test
    application data (files, registry data, and the like) until   mode from the InstallShield environment (by clicking the Test
    the user invokes one of these entry points. Advertised        toolbar button or pressing Ctrl+T) effectively runs only the
    installations are useful for saving disk space on the         User Interface sequence.
    target system until the product or specific features of it
    are needed. A user can advertise                              The User Interface sequence and the Execute sequence run
    an installation by passing msiexec.exe the /jm or             in different processes. The two processes communicate using
    /ju switch, indicating per-machine and per-user               properties. Only the values of public properties—those with
    advertisement, respectively.                                  an all-uppercase name, such as MYCUSTOMPROPERTY—
                                                                  are passed from the User Interface sequence to the Execute
Each of these installation types is represented by a top-level    sequence. (Such properties should also be listed in the
sequence. You can inspect and manipulate these top-level          SecureCustomProperties property.) Values of private
sequences in the Custom Actions and Sequences view of             properties—those with a name that contains a lowercase
the InstallShield environment, in the “Behavior and Logic”        letter, such as Privileged—will be reset to their defaults when
view group.                                                       execution switches from the User Interface sequence to the
                                                                  Execute sequence.

                                                                  Introduction to Actions
                                                                  Sequences are ordered lists of actions, where an action
                                                                  corresponds to one operation performed by the installation.
                                                                  If you expand a sequence icon in the Sequences tree, you
                                                                  can view the individual actions contained in that sequence.
                                                                  The following figure shows some of the actions appearing in
                                                                  the User Interface sequence of a typical installation project.
User Interface and Execute Subsequences
Each of the top-level sequences is divided into two
subsequences, called the User Interface (UI) sequence and
the Execute sequence. For a normal installation, these
sequences are represented by the MSI database tables
InstallUISequence and InstallExecuteSequence. (The tables
used for the advertisement and administration sequences
are called AdvtUISequence, AdvtExecuteSequence,
AdminUISequence, and AdminExecuteSequence.) In the
InstallShield environment, each of the subsequences is
displayed in a separate tree under the corresponding top-
level sequence.




Flexera Software: InstallShield White Paper Series                                                                                        3
MSI Sequences and Standard Act ions: An Introduct ion




    Different types of actions are represented by different icons.   In the Sequences view (or the Direct Editor view), you
    Dialog actions are represented by the following icon (dialog     can also modify the condition associated with an action.
    actions can occur only in the User Interface sequence):          For example, to specify that an action should run only
                                                                     on Windows 2000 or later, you can give the action the
                                                                     condition VersionNT>=500, or to specify that an action
                                                                     should run only when the installer has been launched or
                                                                     deployed by an administrator, you can use the condition
    Standard actions—built-in actions provided by the Windows        Privileged. If an action has no condition associated with it,
    Installer service—are represented by the following icon:         it will always run.

                                                                     To insert an action into the sequences, you can right-click
                                                                     the action that should precede your action and select Insert.
                                                                     In the Insert Action panel that appears, you can select the
                                                                     type of action you want to insert (standard action, custom
    Custom actions are represented by the following icon:            action, merge module action, and so forth), select the
                                                                     specific action, and specify an optional condition for
                                                                     the action.

                                                                     You can also place actions in the sequences using the
                                                                     Custom Actions tree in the Custom Actions and
    By default, every new InstallShield project contains several     Sequences view.
    custom actions.
                                                                     Exceptions to the rule that Windows Installer executes
    Each action is represented by a record in one of the             actions in order of increasing sequence number are the
    sequence tables (InstallUISequence, InstallExecuteSequence,      various “setup complete” dialog boxes, which have negative
    and so forth). Each record in the sequence tables contains       sequence numbers in the User Interface sequence.
    Action, Condition, and Sequence fields. In general, actions
    run in order of ascending Sequence number. (Rollback
    actions run in the opposite order.) The Custom Actions and
    Sequences view of the InstallShield environment displays
    actions in order of increasing sequence number. To move
    an action to a different point in a sequence or from one
    sequence to another, you                                         The negative sequence numbers that have special
    can drag it from the old location and drop it onto the           significance to Windows Installer are the following:
    new location.
                                                                       • –1 for the SetupCompleteSuccess dialog box, displayed
    NOTE: One case where an action can be called without                 at the end of a successful installation.
    appearing in the sequence tables is an action launched             • –2 for the SetupInterrupted dialog box, displayed if the
    with a DoAction event associated with a dialog box control,          user cancels the installation.
    such as a button. Similarly, some types of custom actions          • –3 for the SetupCompleteError dialog box, displayed if
    can call other actions using the MsiDoAction function or             the installation fails because a fatal error occurred.
    the Session.DoAction method.
                                                                     Windows Installer provides several dozen standard actions
    You can also view actions in the Direct Editor view,             that carry out an installation. Some of the categories of
    selecting the desired table and sorting the records by           standard actions are:
    sequence number.
                                                                       • Disk-costing (or file-costing) actions, which determine
                                                                         whether the target system has enough disk space to
                                                                         install the application. Actions in this category include
                                                                         CostInitialize, FileCost, and CostFinalize.
                                                                       • Actions that handle common system changes,
                                                                         which include manipulation of files, directories,
                                                                         registry data, environment variables, INI file data,
                                                                         and so forth. Actions in this category include
                                                                         InstallFiles, CreateFolders, WriteRegistryValues,
                                                                         WriteEnvironmentStrings, and WriteIniValues.
                                                                       • Script-generation actions, which handle creation of
                                                                         the internal script that Windows Installer uses to carry
                                                                         out an installation. Actions in this category include the
                                                                         InstallInitialize and InstallFinalize actions.


4                                                                                 Flexera Software: InstallShield White Paper Series
MSI Sequences and Standard Act ions: An Introduct ion




InstallShield provides many custom actions to enhance            About Flexera Software
Windows Installer functionality, enabling support for            Flexera Software is the leading provider of strategic
executing SQL scripts, searching and modifying XML files,        solutions for Application Usage Management; solutions
creating Web sites and virtual directories for IIS, and more.    delivering continuous compliance, optimized usage and
                                                                 maximized value to application producers and their
As described earlier, the Execute sequence contains the          customers. Flexera Software is trusted by more than 80,000
actions that make changes to the target system.                  customers that depend on our comprehensive solutions-
                                                                 from installation and licensing, entitlement and compliance
                                                                 management to application readiness and enterprise license
                                                                 optimization - to strategically manage application usage
                                                                 and achieve breakthrough results realized only through the
                                                                 systems-level approach we provide. For more information,
                                                                 please go to: www.flexerasoftware.com




For standard actions, Windows Installer typically waits for
one action to complete before continuing in the sequences
to the next action. One consequence of this behavior is that
Windows Installer does not support performing part of a
standard action, running custom code, and then completing
the standard action.

For example, an installation cannot install only some files,
launch a custom action, and then complete the file-transfer
action. Instead, the standard InstallFiles action occurs as a
single operation, and a custom action must be called either
before or after InstallFiles, but not during InstallFiles.

Summary
This white paper introduces Windows Installer sequences,
and describes some of the built-in actions that make
up a typical installation program. It also highlights how
InstallShield® from Flexera Software makes it easier to work
with sequences and standard actions.


   Begin a Free Evaluation of InstallShield
   You can download a free trial version of InstallShield from
   the Flexera Software Web site at:
   www.flexerasoftware.com/installshield/eval

   Want to learn more best practices for building quality
   installations? Join an InstallShield training class – visit
   www.flexerasoftware.com/training for available classes.


How Flexera Software Professional Services Can Help
As well as our public and onsite training courses, Flexera
Software can deliver focused workshop-style Consulting
to address your specific interest areas. A concrete
understanding of the core mechanisms within MSI is critical
to be successful, of which Sequences and Standard Actions
is one. Find out more at www.flexerasoftware.com/services/
consulting/software-installations.htm.




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.
                                                                                                                                                                           IS_WP_CustomActions_Oct11

Contenu connexe

Tendances

Eql tr symantec-backup-exec-10d-tr1024
Eql tr symantec-backup-exec-10d-tr1024Eql tr symantec-backup-exec-10d-tr1024
Eql tr symantec-backup-exec-10d-tr1024casanoteva
 
Using VMware Infrastructure for Backup and Restore
Using VMware Infrastructure for Backup and RestoreUsing VMware Infrastructure for Backup and Restore
Using VMware Infrastructure for Backup and Restorewebhostingguy
 
Vb.net session 14
Vb.net session 14Vb.net session 14
Vb.net session 14Niit Care
 
VDI Performance of PRIMERGY S7 Server Generation
VDI Performance of PRIMERGY S7 Server GenerationVDI Performance of PRIMERGY S7 Server Generation
VDI Performance of PRIMERGY S7 Server GenerationKingfin Enterprises Limited
 
Cluster aware updating v1.0
Cluster aware updating v1.0Cluster aware updating v1.0
Cluster aware updating v1.0hypervnu
 
Net framework session03
Net framework session03Net framework session03
Net framework session03Niit Care
 
Comp tia a+_session_14
Comp tia a+_session_14Comp tia a+_session_14
Comp tia a+_session_14Niit Care
 
system state backup restore
system state backup restoresystem state backup restore
system state backup restoressuser1eca7d
 
Managing enterprise with PowerShell remoting
Managing enterprise with PowerShell remotingManaging enterprise with PowerShell remoting
Managing enterprise with PowerShell remotingConcentrated Technology
 
Ms Sql server installation 2008R2
Ms Sql server installation 2008R2Ms Sql server installation 2008R2
Ms Sql server installation 2008R2Harshad Patel
 
Performance tuningtoolkitintroduction
Performance tuningtoolkitintroductionPerformance tuningtoolkitintroduction
Performance tuningtoolkitintroductionRohit Kelapure
 
Plesk 8.1 for Windows
Plesk 8.1 for WindowsPlesk 8.1 for Windows
Plesk 8.1 for Windowswebhostingguy
 
DB2 10 Security Enhancements
DB2 10 Security EnhancementsDB2 10 Security Enhancements
DB2 10 Security EnhancementsLaura Hood
 
1.2 introduction to scm - what does version number tell us
1.2   introduction to scm - what does version number tell us1.2   introduction to scm - what does version number tell us
1.2 introduction to scm - what does version number tell usSergii Shmarkatiuk
 
Java Standard Edition 5 Performance
Java Standard Edition 5 PerformanceJava Standard Edition 5 Performance
Java Standard Edition 5 Performancewhite paper
 

Tendances (18)

SP1_Battlecard
SP1_BattlecardSP1_Battlecard
SP1_Battlecard
 
Eql tr symantec-backup-exec-10d-tr1024
Eql tr symantec-backup-exec-10d-tr1024Eql tr symantec-backup-exec-10d-tr1024
Eql tr symantec-backup-exec-10d-tr1024
 
Using VMware Infrastructure for Backup and Restore
Using VMware Infrastructure for Backup and RestoreUsing VMware Infrastructure for Backup and Restore
Using VMware Infrastructure for Backup and Restore
 
Vb.net session 14
Vb.net session 14Vb.net session 14
Vb.net session 14
 
VDI Performance of PRIMERGY S7 Server Generation
VDI Performance of PRIMERGY S7 Server GenerationVDI Performance of PRIMERGY S7 Server Generation
VDI Performance of PRIMERGY S7 Server Generation
 
Cluster aware updating v1.0
Cluster aware updating v1.0Cluster aware updating v1.0
Cluster aware updating v1.0
 
Packaging Event 2008
Packaging Event 2008Packaging Event 2008
Packaging Event 2008
 
Net framework session03
Net framework session03Net framework session03
Net framework session03
 
Comp tia a+_session_14
Comp tia a+_session_14Comp tia a+_session_14
Comp tia a+_session_14
 
system state backup restore
system state backup restoresystem state backup restore
system state backup restore
 
Managing enterprise with PowerShell remoting
Managing enterprise with PowerShell remotingManaging enterprise with PowerShell remoting
Managing enterprise with PowerShell remoting
 
Ms Sql server installation 2008R2
Ms Sql server installation 2008R2Ms Sql server installation 2008R2
Ms Sql server installation 2008R2
 
Performance tuningtoolkitintroduction
Performance tuningtoolkitintroductionPerformance tuningtoolkitintroduction
Performance tuningtoolkitintroduction
 
Plesk 8.1 for Windows
Plesk 8.1 for WindowsPlesk 8.1 for Windows
Plesk 8.1 for Windows
 
DB2 LUW Auditing
DB2 LUW AuditingDB2 LUW Auditing
DB2 LUW Auditing
 
DB2 10 Security Enhancements
DB2 10 Security EnhancementsDB2 10 Security Enhancements
DB2 10 Security Enhancements
 
1.2 introduction to scm - what does version number tell us
1.2   introduction to scm - what does version number tell us1.2   introduction to scm - what does version number tell us
1.2 introduction to scm - what does version number tell us
 
Java Standard Edition 5 Performance
Java Standard Edition 5 PerformanceJava Standard Edition 5 Performance
Java Standard Edition 5 Performance
 

En vedette

Types of MSI Custom Actions
Types of MSI Custom ActionsTypes of MSI Custom Actions
Types of MSI Custom ActionsFlexera
 
Install shield
Install shieldInstall shield
Install shieldSoubow Su
 
OpenSource ToolChain for the Hybrid Cloud
OpenSource ToolChain for the Hybrid CloudOpenSource ToolChain for the Hybrid Cloud
OpenSource ToolChain for the Hybrid CloudIsaac Christoffersen
 
Next Level Crm
Next Level CrmNext Level Crm
Next Level CrmNext Level
 
Getting smarter about discovery streaming
Getting smarter about discovery streamingGetting smarter about discovery streaming
Getting smarter about discovery streamingMatt Strine
 
Cv javier romo dic 2015
Cv javier romo dic 2015Cv javier romo dic 2015
Cv javier romo dic 2015Javier Romo
 
NEXT LEVEL MEDIA
NEXT LEVEL MEDIANEXT LEVEL MEDIA
NEXT LEVEL MEDIANext Level
 
Being green in the workplace
Being green in the workplaceBeing green in the workplace
Being green in the workplaceJessica Brookes
 
What¹s wrong with presentations
What¹s wrong with presentationsWhat¹s wrong with presentations
What¹s wrong with presentationsCindy Kane, Ph.D.
 
In fin-nitie-vol-2-issue-1
In fin-nitie-vol-2-issue-1In fin-nitie-vol-2-issue-1
In fin-nitie-vol-2-issue-1Shashank .
 
Feedback Of First Draft
Feedback Of First DraftFeedback Of First Draft
Feedback Of First Draftguest7e7069
 

En vedette (15)

Types of MSI Custom Actions
Types of MSI Custom ActionsTypes of MSI Custom Actions
Types of MSI Custom Actions
 
Install shield
Install shieldInstall shield
Install shield
 
OpenSource ToolChain for the Hybrid Cloud
OpenSource ToolChain for the Hybrid CloudOpenSource ToolChain for the Hybrid Cloud
OpenSource ToolChain for the Hybrid Cloud
 
Wordpress prez 2011
Wordpress prez 2011Wordpress prez 2011
Wordpress prez 2011
 
Next Level Crm
Next Level CrmNext Level Crm
Next Level Crm
 
Getting smarter about discovery streaming
Getting smarter about discovery streamingGetting smarter about discovery streaming
Getting smarter about discovery streaming
 
Cv javier romo dic 2015
Cv javier romo dic 2015Cv javier romo dic 2015
Cv javier romo dic 2015
 
Marziale Dicembre 09
Marziale Dicembre 09Marziale Dicembre 09
Marziale Dicembre 09
 
NEXT LEVEL MEDIA
NEXT LEVEL MEDIANEXT LEVEL MEDIA
NEXT LEVEL MEDIA
 
Being green in the workplace
Being green in the workplaceBeing green in the workplace
Being green in the workplace
 
Integracion de las metricas
Integracion de las metricasIntegracion de las metricas
Integracion de las metricas
 
Islandia, Wyspa
Islandia, WyspaIslandia, Wyspa
Islandia, Wyspa
 
What¹s wrong with presentations
What¹s wrong with presentationsWhat¹s wrong with presentations
What¹s wrong with presentations
 
In fin-nitie-vol-2-issue-1
In fin-nitie-vol-2-issue-1In fin-nitie-vol-2-issue-1
In fin-nitie-vol-2-issue-1
 
Feedback Of First Draft
Feedback Of First DraftFeedback Of First Draft
Feedback Of First Draft
 

Similaire à MSI Sequences and Standard Actions: An Introduction

Customizing Your Uninstaller
Customizing Your UninstallerCustomizing Your Uninstaller
Customizing Your UninstallerFlexera
 
Free tools for rapidly deploying software
Free tools for rapidly deploying softwareFree tools for rapidly deploying software
Free tools for rapidly deploying softwareConcentrated Technology
 
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
 
Visual Studio commands
Visual Studio commandsVisual Studio commands
Visual Studio commandsPVS-Studio
 
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
 
4-Taxonomy of virtualization.docx
4-Taxonomy of virtualization.docx4-Taxonomy of virtualization.docx
4-Taxonomy of virtualization.docxshruti533256
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasicsseethalux
 
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...Concentrated Technology
 
Windows Vista and Trust Worthy Computing
Windows Vista and Trust Worthy ComputingWindows Vista and Trust Worthy Computing
Windows Vista and Trust Worthy Computingsamavedam_vijay
 
10 resource kit remote administration tools
10 resource kit remote administration tools10 resource kit remote administration tools
10 resource kit remote administration toolsDuggesh Talawar
 
Linux Assignment 3
Linux Assignment 3Linux Assignment 3
Linux Assignment 3Diane Allen
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2Pascal Rapicault
 
System Center Configuration Manager 2012 Overview
System Center Configuration Manager 2012 OverviewSystem Center Configuration Manager 2012 Overview
System Center Configuration Manager 2012 OverviewAmit Gatenyo
 

Similaire à MSI Sequences and Standard Actions: An Introduction (20)

Rapidly deploying software
Rapidly deploying softwareRapidly deploying software
Rapidly deploying software
 
Prepping software for w7 deployment
Prepping software for w7 deploymentPrepping software for w7 deployment
Prepping software for w7 deployment
 
Customizing Your Uninstaller
Customizing Your UninstallerCustomizing Your Uninstaller
Customizing Your Uninstaller
 
Free tools for rapidly deploying software
Free tools for rapidly deploying softwareFree tools for rapidly deploying software
Free tools for rapidly deploying software
 
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
 
Visual Studio commands
Visual Studio commandsVisual Studio commands
Visual Studio commands
 
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
 
4-Taxonomy of virtualization.docx
4-Taxonomy of virtualization.docx4-Taxonomy of virtualization.docx
4-Taxonomy of virtualization.docx
 
installaware_faq
installaware_faqinstallaware_faq
installaware_faq
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasics
 
Windows installerbasics
Windows installerbasicsWindows installerbasics
Windows installerbasics
 
3 management
3 management3 management
3 management
 
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
 
Windows Vista and Trust Worthy Computing
Windows Vista and Trust Worthy ComputingWindows Vista and Trust Worthy Computing
Windows Vista and Trust Worthy Computing
 
10 resource kit remote administration tools
10 resource kit remote administration tools10 resource kit remote administration tools
10 resource kit remote administration tools
 
Linux Assignment 3
Linux Assignment 3Linux Assignment 3
Linux Assignment 3
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2
 
System Center Configuration Manager 2012 Overview
System Center Configuration Manager 2012 OverviewSystem Center Configuration Manager 2012 Overview
System Center Configuration Manager 2012 Overview
 
iac.pptx
iac.pptxiac.pptx
iac.pptx
 
MSI Packaging Free eBook
MSI Packaging Free eBookMSI Packaging Free eBook
MSI Packaging Free eBook
 

Plus de 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
 

Plus de 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
 

Dernier

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Dernier (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

MSI Sequences and Standard Actions: An Introduction

  • 1. W H I T E PA P E R MSI Sequences and Standard Actions: An Introduction by Robert Dickau Principal Technical Training Writer, Flexera Software
  • 2. MSI Sequences and Standard Actions: An Introduction Introduction Instead of using an explicit script, Windows Installer (MSI) The InstallShield Help Library contains information uses sequences to specify the order in which operations about using every view and wizard in the InstallShield are performed and the conditions under which they are environment. The InstallShield Help Library is available when performed. This white paper introduces Windows Installer you press F1 with any view selected; you can also select sequences, and describes some of the built-in actions that Contents from the Help menu to view the help library. make up a typical installation program. In addition to the graphical environment, InstallShield It also highlights how InstallShield® from Flexera Software provides several tools for modifying and building projects makes it easier to work with sequences and standard actions. from the command line or an external script. For example, to build a project from the command line, batch file, or other Using the InstallShield Environment automated process, you can use the executable IsCmdBld. This white paper frequently refers to the InstallShield exe. The IsCmdBld executable is located in the System development environment. It is assumed you are familiar subdirectory of the InstallShield distribution directory. with the general layout of the InstallShield interface, which contains a list of views with which you can modify different To rebuild a project, you pass IsCmdBld the project file portions of your installation project. path, the product configuration name, and the release name that you want to rebuild. A sample command appears as follows: scmdbld -p C:ProductName.ism -a BuildConfig -r i ReleaseName In addition, InstallShield provides an Automation interface, with which you can modify the contents of a project file without using the graphical environment. Learn More about InstallShield If you wish to learn more about the capabilities of InstallShield, please visit the Flexera Software Web site at www.flexerasoftware.com/installshield. For example, the General Information view is where you set general product and project properties; the Setup Design view enables you to edit the features, components, and component data used by your project; the Registry view enables you to modify the registry data installed by your installation program; and the Direct Editor view gives you access to the raw MSI database tables. 2 Flexera Software: InstallShield White Paper Series
  • 3. MSI Sequences and Standard Act ions: An Introduct ion Top-Level Sequences Windows Installer supports three types of installation, called a normal installation, administrative installation, and advertised installation. • A normal installation is the type performed when the user double-clicks an MSI database file, or runs msiexec.exe with the /i switch (or the /package switch, starting with Windows Installer 3.0). This white paper In general, the User Interface sequence shows dialog focuses on normal installations. boxes and queries the user and the target system, but does • An administrative installation simply creates an not perform any system changes. On the other hand, the uncompressed version of the installation image Execute sequence performs system changes, but does not in a specified target directory, usually a network display any user-interface elements. location. An administrator performs an administrative installation by launching msiexec.exe with the /a A normal installation runs both the User Interface sequence switch. An administrative installation does not register and the Execute sequence. A silent installation performs the product with the target system, in the sense that only the Execute sequence, meaning that any actions in an administrative installation creates no shortcuts, no the User Interface will be skipped for a silent installation. registry data, no uninstallation entry, and so forth. Reduced-UI and basic-UI installations, such as an • An advertised installation installs various application uninstallation launched from the Remove button in the Add “entry points”—shortcuts, file-extension information, or Remove Programs panel, also skip the actions in the User and COM information—but does not install any Interface sequence. Similarly, launching an installer in test application data (files, registry data, and the like) until mode from the InstallShield environment (by clicking the Test the user invokes one of these entry points. Advertised toolbar button or pressing Ctrl+T) effectively runs only the installations are useful for saving disk space on the User Interface sequence. target system until the product or specific features of it are needed. A user can advertise The User Interface sequence and the Execute sequence run an installation by passing msiexec.exe the /jm or in different processes. The two processes communicate using /ju switch, indicating per-machine and per-user properties. Only the values of public properties—those with advertisement, respectively. an all-uppercase name, such as MYCUSTOMPROPERTY— are passed from the User Interface sequence to the Execute Each of these installation types is represented by a top-level sequence. (Such properties should also be listed in the sequence. You can inspect and manipulate these top-level SecureCustomProperties property.) Values of private sequences in the Custom Actions and Sequences view of properties—those with a name that contains a lowercase the InstallShield environment, in the “Behavior and Logic” letter, such as Privileged—will be reset to their defaults when view group. execution switches from the User Interface sequence to the Execute sequence. Introduction to Actions Sequences are ordered lists of actions, where an action corresponds to one operation performed by the installation. If you expand a sequence icon in the Sequences tree, you can view the individual actions contained in that sequence. The following figure shows some of the actions appearing in the User Interface sequence of a typical installation project. User Interface and Execute Subsequences Each of the top-level sequences is divided into two subsequences, called the User Interface (UI) sequence and the Execute sequence. For a normal installation, these sequences are represented by the MSI database tables InstallUISequence and InstallExecuteSequence. (The tables used for the advertisement and administration sequences are called AdvtUISequence, AdvtExecuteSequence, AdminUISequence, and AdminExecuteSequence.) In the InstallShield environment, each of the subsequences is displayed in a separate tree under the corresponding top- level sequence. Flexera Software: InstallShield White Paper Series 3
  • 4. MSI Sequences and Standard Act ions: An Introduct ion Different types of actions are represented by different icons. In the Sequences view (or the Direct Editor view), you Dialog actions are represented by the following icon (dialog can also modify the condition associated with an action. actions can occur only in the User Interface sequence): For example, to specify that an action should run only on Windows 2000 or later, you can give the action the condition VersionNT>=500, or to specify that an action should run only when the installer has been launched or deployed by an administrator, you can use the condition Standard actions—built-in actions provided by the Windows Privileged. If an action has no condition associated with it, Installer service—are represented by the following icon: it will always run. To insert an action into the sequences, you can right-click the action that should precede your action and select Insert. In the Insert Action panel that appears, you can select the type of action you want to insert (standard action, custom Custom actions are represented by the following icon: action, merge module action, and so forth), select the specific action, and specify an optional condition for the action. You can also place actions in the sequences using the Custom Actions tree in the Custom Actions and By default, every new InstallShield project contains several Sequences view. custom actions. Exceptions to the rule that Windows Installer executes Each action is represented by a record in one of the actions in order of increasing sequence number are the sequence tables (InstallUISequence, InstallExecuteSequence, various “setup complete” dialog boxes, which have negative and so forth). Each record in the sequence tables contains sequence numbers in the User Interface sequence. Action, Condition, and Sequence fields. In general, actions run in order of ascending Sequence number. (Rollback actions run in the opposite order.) The Custom Actions and Sequences view of the InstallShield environment displays actions in order of increasing sequence number. To move an action to a different point in a sequence or from one sequence to another, you The negative sequence numbers that have special can drag it from the old location and drop it onto the significance to Windows Installer are the following: new location. • –1 for the SetupCompleteSuccess dialog box, displayed NOTE: One case where an action can be called without at the end of a successful installation. appearing in the sequence tables is an action launched • –2 for the SetupInterrupted dialog box, displayed if the with a DoAction event associated with a dialog box control, user cancels the installation. such as a button. Similarly, some types of custom actions • –3 for the SetupCompleteError dialog box, displayed if can call other actions using the MsiDoAction function or the installation fails because a fatal error occurred. the Session.DoAction method. Windows Installer provides several dozen standard actions You can also view actions in the Direct Editor view, that carry out an installation. Some of the categories of selecting the desired table and sorting the records by standard actions are: sequence number. • Disk-costing (or file-costing) actions, which determine whether the target system has enough disk space to install the application. Actions in this category include CostInitialize, FileCost, and CostFinalize. • Actions that handle common system changes, which include manipulation of files, directories, registry data, environment variables, INI file data, and so forth. Actions in this category include InstallFiles, CreateFolders, WriteRegistryValues, WriteEnvironmentStrings, and WriteIniValues. • Script-generation actions, which handle creation of the internal script that Windows Installer uses to carry out an installation. Actions in this category include the InstallInitialize and InstallFinalize actions. 4 Flexera Software: InstallShield White Paper Series
  • 5. MSI Sequences and Standard Act ions: An Introduct ion InstallShield provides many custom actions to enhance About Flexera Software Windows Installer functionality, enabling support for Flexera Software is the leading provider of strategic executing SQL scripts, searching and modifying XML files, solutions for Application Usage Management; solutions creating Web sites and virtual directories for IIS, and more. delivering continuous compliance, optimized usage and maximized value to application producers and their As described earlier, the Execute sequence contains the customers. Flexera Software is trusted by more than 80,000 actions that make changes to the target system. customers that depend on our comprehensive solutions- from installation and licensing, entitlement and compliance management to application readiness and enterprise license optimization - to strategically manage application usage and achieve breakthrough results realized only through the systems-level approach we provide. For more information, please go to: www.flexerasoftware.com For standard actions, Windows Installer typically waits for one action to complete before continuing in the sequences to the next action. One consequence of this behavior is that Windows Installer does not support performing part of a standard action, running custom code, and then completing the standard action. For example, an installation cannot install only some files, launch a custom action, and then complete the file-transfer action. Instead, the standard InstallFiles action occurs as a single operation, and a custom action must be called either before or after InstallFiles, but not during InstallFiles. Summary This white paper introduces Windows Installer sequences, and describes some of the built-in actions that make up a typical installation program. It also highlights how InstallShield® from Flexera Software makes it easier to work with sequences and standard actions. Begin a Free Evaluation of InstallShield You can download a free trial version of InstallShield from the Flexera Software Web site at: www.flexerasoftware.com/installshield/eval Want to learn more best practices for building quality installations? Join an InstallShield training class – visit www.flexerasoftware.com/training for available classes. How Flexera Software Professional Services Can Help As well as our public and onsite training courses, Flexera Software can deliver focused workshop-style Consulting to address your specific interest areas. A concrete understanding of the core mechanisms within MSI is critical to be successful, of which Sequences and Standard Actions is one. Find out more at www.flexerasoftware.com/services/ consulting/software-installations.htm. 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. IS_WP_CustomActions_Oct11