5.1
Table Of Contents
- ThinApp User’s Guide
- Contents
- About This Book
- Installing ThinApp
- Capturing Applications
- Phases of the Capture Process
- Preparing to Capture Applications
- Capturing Applications with the Setup Capture Wizard
- Create a System Image Before the Application Installation
- Rescan the System with the Installed Application
- Defining Entry Points as Shortcuts into the Virtual Environment
- Set Entry Points
- Manage with VMware Horizon Application Manager
- Set User Groups
- Defining Isolation Modes for the Physical File System
- Set File System Isolation Modes
- Storing Application Changes in the Sandbox
- Customize the Sandbox Location
- Send Anonymous Statistics to VMware
- Customize ThinApp Project Settings
- Defining Package Settings
- Customize Package Settings
- Opening Project and Parameter Files
- Build Virtual Applications
- Advanced Package Configuration
- Capturing Internet Explorer 6 on Windows XP
- Capturing Multiple Application Installers with ThinApp Converter
- ThinApp Package Management
- Deploying Applications
- ThinApp Deployment Options
- Establishing File Type Associations with the thinreg.exe Utility
- Building an MSI Database
- Controlling Application Access with Active Directory
- Starting and Stopping Virtual Services
- Using ThinApp Packages Streamed from the Network
- Using Captured Applications with Other System Components
- Performing Paste Operations
- Accessing Printers
- Accessing Drivers
- Accessing the Local Disk, the Removable Disk, and Network Shares
- Accessing the System Registry
- Accessing Networking and Sockets
- Using Shared Memory and Named Pipes
- Using COM, DCOM, and Out-of-Process COM Components
- Starting Services
- Using File Type Associations
- Sample Isolation Mode Configuration Depending on Deployment Context
- Updating and Linking Applications
- Application Updates That the End User Triggers
- Application Sync Updates
- Using Application Sync in a Managed or Unmanaged Environment
- Update Firefox 2.0.0.3 to Firefox 3 with Application Sync
- Fix an Incorrect Update with Application Sync
- Application Sync Effect on Entry Point Executable Files
- Updating thinreg.exe Registrations with Application Sync
- Maintaining the Primary Data Container Name with Application Sync
- Completing the Application Sync Process When Applications Create Child Processes
- Application Link Updates
- View of the Application using Application Link
- Link a Base Application to the Microsoft .NET Framework
- Set Up Nested Links with Application Link
- Affecting Isolation Modes with Application Link
- PermittedGroups Effect on Linked Packages
- Sandbox Changes for Standalone and Linked Packages
- Import Order for Linked Packages
- File and Registry Collisions in Linked Packages
- VBScript Collisions in Linked Packages
- VBScript Function Order in Linked Packages
- Storing Multiple Versions of a Linked Application in the Same Directory
- Using Application Sync for a Base Application and Linked Packages
- Application Sync Updates
- Application Updates That the Administrator Triggers
- Automatic Application Updates
- Upgrading Running Applications on a Network Share
- Application Synchronization Using Group Policy Object
- Sandbox Considerations for Upgraded Applications
- Updating the ThinApp Version of Packages
- Application Updates That the End User Triggers
- Locating the ThinApp Sandbox
- Creating ThinApp Snapshots and Projects from the Command Line
- ThinApp File System Formats and Macros
- Creating ThinApp Scripts
- Callback Functions
- Implement Scripts in a ThinApp Environment
- API Functions
- Monitoring and Troubleshooting ThinApp
- Glossary
- Index
VMware, Inc. 41
Chapter 3 Deploying Applications
Building an MSI Database
If you do not create MSI files during the capture process, you can still create these files after building an
application. An MSI database is useful for delivering captured applications through traditional desktop
management systems to remote locations and automatically creating shortcuts and file type associations.
Basic Active Directory group policies provide ways to distribute and start MSI packages.
ThinApp creates an MSI database that contains captured executable files, installer logic, and the thinreg.exe
utility.
Customizing MSI Files with Package.ini Parameters
You can customize the behavior of MSI files by modifying Package.ini parameters and rebuilding the
application package.
The following parameters can affect MSI configuration:
The MSIInstallDirectory parameter sets the installation directory for the package.
For example, include MSIInstallDirectory=C:\Program Files\ in the Package.ini file.
The MSIDefaultInstallAllUsers parameter sets whether to install the package for all or individual
users. ThinApp installs the package in the %AppData% user directory.
For example, include MSIDefaultInstallAllUsers=0 in the Package.ini file.
For more information about this parameter, see “Specifying a Database Installation for Individual Users
and Machines” on page 42.
The MSIFileName parameter names the package.
For example, include MSIFilename=Firefox30.msi in the Package.ini file.
The MSIRequireElevatedPrivileges parameter indicates whether an installer needs elevated
privileges for deployment on Microsoft Vista. Installations for individual users do not usually need
elevated privileges but per-machine installations require such privileges.
For example, include MSIRequireElevatedPrivileges=1 in the Package.ini file.
The MSIProductCode parameter makes it easier to install a new version of the application. An MSI
database contains a product code and an upgrade code. When you update a package, keep the original
value of the MSIUpgradeCode parameter.
If the parameter value of the new version is the same as the value of the old version, the installation
prompts you to remove the old version. If the values for the parameter are different, the installation un
installs the old version and installs the new version.
VMware recommends that you avoid specifying an MSIProductCode value and allow ThinApp to
generate a different product code for each build.
Regardless of the parameter values specified at build time, you can override the settings at deployment time.
See “Force MSI Deployments for Each User or Each Machine” on page 42.
Modify the Package.ini File to Create MSI Files
For more information about MSI parameters, see “Customizing MSI Files with Package.ini Parameters” on
page 41.
Before you can modify MSI parameters, you must add an entry for the MSIFilename parameter to generate
MSI files.










