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
ThinApp User’s Guide
70 VMware, Inc.
Sandbox Structure
ThinApp stores the sandbox using a file structure almost identical to the build project structure. ThinApp uses
macro names for shell folder locations, such as %AppData%, instead of hard coded paths. This structure enables
the sandbox to migrate to different computers dynamically when the application runs from new locations.
The sandbox contains the following registry files:
Registry.rw.tvr – Contains all registry modifications that the application makes.
Registry.rw.lck – Prevents other computers from simultaneously using a registry located on a network
share.
Registry.tvr.backup – Contains a backup of the .tvr file that ThinApp uses when the original .tvr
file is corrupted.
In addition to these registry files, the sandbox contains directories that include %AppData%,
%ProgramFilesDir%, and %SystemRoot%. Each of these folders contains modifications to respective folders
in the captured application.
Making Changes to the Sandbox
ThinApp stores file system information in the virtual registry. The virtual registry enables ThinApp to
optimize file system access in the virtual environment. For example, when an application tries to open a file,
ThinApp does not have to consult the real file system for the real system location and again for the sandbox
location. Instead, ThinApp can check for the existence of the file by consulting only the virtual registry. This
ability increases the ThinApp runtime performance.
VMware does not support modifying or adding files directly to the sandbox. If you copy files to the sandbox
directory, the files are not visible to the application. If the file already exists in the sandbox, you can overwrite
and update the file. VMware recommends that you perform all modifications from the application itself.
Listing Virtual Registry Contents with vregtool
Because the sandbox contains the modifications to the registry, you might need the vregtool utility to view
modified virtual registry changes. You must have access to the vregtool utility in C:\Program
Files\VMware\VMware ThinApp.
A sample command to list the contents of a virtual registry file is vregtool registry.rw.tvr printkeys.










