Automatic Application Updates
If an application can update automatically, its update mechanism functions with ThinApp. If the application downloads the update and runs an installer or patching program, this activity occurs inside the virtual environment and ThinApp stores the changes from the update software in the sandbox. When the application restarts, it uses the version of the executable file in the sandbox and not the executable file from the original package.
For example, if you capture Firefox 1.5, your autoupdate mechanism might prompt you to upgrade to Firefox 2.0. If you proceed with the upgrade, the application downloads the updates, writes the updates to the sandbox, and prompts you to restart the application. When you run the captured application again, Firefox 2.0 starts. If you delete the sandbox, Firefox reverts back to version 1.5.
To merge changes that an auto update mechanism makes with the original package to build an updated executable file, use the sbmerge.exe utility. See Application Updates That the Administrator Triggers.
Dynamic Updates Without Administrator Rights
You can update applications dynamically without requiring administrator rights. For example, .NET-based applications that download new DLL files from the Internet as part of their update process must run the ngen.exe file to generate native image assemblies for startup performance. In typical circumstances, the ngen.exe file writes to HKLM and C:\WINDOWS, both of which are only accessible with administrator accounts. With ThinApp, the ngen.exe file can install native image assemblies on guest user accounts but stores changes in a user-specific directory.
You can update the package on a central computer and push the changes to client machines or to central network shares as a new captured executable file. Use one of the following options for applying updates:
Applications with auto-update capabilities can undergo updates. If the update is a patch.exe file, the patch program can run in the virtual environment and run from a cmd.exe file entry point. Changes occur in the sandbox during automatic updates or manual updates to allow you to revert to the original version by deleting the sandbox.
If you apply patches in the virtual environment on a central packaging machine, you can use the sbmerge.exe utility to merge sandbox changes made by the update with the application. See Application Updates That the Administrator Triggers.
If you must update a small set of files or registry keys, replace the files in the captured project. This approach is useful for software developers who integrate ThinApp builds with their workflow.