Book Image

VMware ThinApp 4.7 Essentials

By : Peter Bjork
Book Image

VMware ThinApp 4.7 Essentials

By: Peter Bjork

Overview of this book

VMware ThinApp 4.7 is an application virtualization and portable application creator which allows users to package conventional applications so that they are portable. "VMware ThinApp 4.7 Essentials" shows you how to deploy ThinApp packages in order to improve the portability, manageability and compatibility of applications by encapsulating them from the underlying operating system on which they are executed. Application virtualization improves the portability, manageability and compatibility of applications by encapsulating them from the underlying operating system on which they are executed. VMware ThinApp 4.7 is an application virtualization and portable application creator which allows users to package conventional applications so that they are portable. ThinApp eliminates application conflicts, reducing the need and cost of recoding and regression testing. In this book you will learn about how application virtualization works and how to deploy ThinApp packages. You will learn how to update and tweak ThinApp Projects before distribution. This book will then cover design and implementation considerations for future ThinApp projects.
Table of Contents (15 chapters)
VMware ThinApp 4.7 Essentials
About the Author
About the Reviewers

The ThinApp utilities folder and its content

The ThinApp utilities folder is installed in C:\Program Files\VMware\VMware ThinApp by default. Only the ThinApp packagers need access to the ThinApp utilities folder - end users never need access to it. If desired, you can move this folder to a network share and run all the tools from there. The ThinApp utilities are virtualized using ThinApp so the folder is just as portable as any ThinApp package. Placing the folder on a network share makes it easier to access the tools from any machine. Often when packaging, you are using virtual machines and reverting the virtual machines to clean states between each capture. Having the ThinApp utilities folder on a network share will make them easier to maintain. Changing the version of ThinApp used does not require a new snapshot of your virtual machine. Another benefit is that all your packager colleagues can share one and the same ThinApp utilities folder and settings.

Default location of the ThinApp utilities Folder.

If you don't place the ThinApp utilities folder in the default location, you should make sure that you specify an environment variable called THINSTALL_BIN pointing to the ThinApp utilities folder. This way the build.bat file will find the location of the tools needed while building your project folder. Using the THINSTALL_BIN environment variable allows you to have multiple versions of the ThinApp utilities folder present. You can switch between active folders by simply changing the value of the environment variable.

Specify the location of your ThinApp utilities folder with the help of the THINSTALL_BIN environment variable, as shown in the previous screenshot.

Let's have a look at some of the files you'll find within the ThinApp utilities folder. Most of them will be discussed in much more detail later in this book. The following are the files present:

  • AppSync.exe

    AppSync is one of the built-in update mechanisms within ThinApp. We will cover AppSync more in depth later in this book. Running AppSync.exe allows you to specify a package to AppSync and an AppSync URL, where the update is located, providing a more dynamic method of updating the deployed ThinApp packages than the AppSync you can configure using package.ini.


    The log monitor is a trace tool used to troubleshoot ThinApp packages.

  • Capture.ini and LogFilter.ini

    These are filter files used to filter what is captured while running the log monitor.

  • relink.exe

    Relink is used to inject a new runtime, certain settings, and a license key into an existing package without the need to completely rebuild the whole project folder.

  • sbmerge.exe

    Sbmerge stands for sandbox merge. It is a tool used by packagers to merge the content of a sandbox into an existing project folder. It is a great tool used to apply changes and updates to a project. Running sbmerge.exe without any switches will display the help file.

  • Setup Capture.exe

    Setup Capture is the tool used to capture an application installation and create a project folder. Within Setup Capture you can specify your license key and if you want to change the license key or "licensed to" name, you must change these within Setup Capture and then rebuild your project or run relink on the packages.

    You change the license key and "Licensed to" information by launching Setup Capture, clicking on the top-left corner and choosing License, as shown in the following screenshot:

    You are now shown the Enter License Key dialog box, as in the following screenshot:

    Type in your license key and licensed display name. Click on OK and then Cancel in the Setup Capture main window. You have now successfully updated the license information. Simply rebuild your project to update your packages or run relink.exe.

  • snapshot.exe

    This is the ThinApp snapshot tool. Running snapshot.exe from a command prompt allows you to capture an installation and create a project folder without running Setup Capture. Running snapshot.exe without any switches will give you the full help file. The following procedure will create a project folder using snapshot.exe:

    1. Run the command snapshot.exe c:\PreScan.snapshot.

    2. Install the application.

    3. Run snapshot.exe c:\PostScan.snapshot.

    4. Run snapshot.exe c:\PreScan.snapshot -SuggestName c:\PostScan.snapshot.

    5. Run the command snapshot.exe c:\PreScan.snapshot -Diff c:\PostScan.snapshot c:\ProjectFolder.

    6. Run snapshot.exe c:\PreScan.snapshot -SuggestProject c:\PostScan.snapshot c:\OutputTemplate.ini.

    7. Run snapshot.exe c:\OutputTemplate.ini -GenerateProject c:\ProjectFolder.

  • snapshot.ini

    Snapshot.ini is the exclusion list used by Setup Capture and snapshot.exe. Here you can specify parts of the operating system that should not be scanned during the capturing process. The defaults are implemented to keep your project from capturing unnecessary content. It's not recommended to have an antivirus software installed on your capturing machine, but if policy dictates that you must, you can use the snapshot.ini file to exclude locations for the antivirus log files and such. This keeps the changes from being a part of the captured environment and thereby polluting your project folder.

  • template.msi

    ThinApp can generate an MSI file to simplify the deployment of the ThinApp packages. Using an MSI file will allow the use of any existing deployment tool to distribute ThinApp packages. The MSI files that ThinApp generates are supported by any tool supporting MSI files but are not normal MSI files. ThinApp supports MSI files greater than 2 GB without the use of CAB files. This is accomplished with the help of virtualization within the MSI itself. You cannot use tools such as Orca to modify the MSI properties, since it will destroy the content of the MSI when saved. In order to change the MSI that ThinApp generates, you have to tweak the template.msi file instead. Changes applied to the template.msi (using Orca or any other tool) file will be incorporated into the MSI files that ThinApp generates.

  • ThinApp.ini

    ThinApp.ini contains the Setup Capture user settings, for example, the options to build or skip build at the end of the capture process.

  • ThinAppConverter.exe and ThinAppConverter.ini

    ThinApp Converter is a tool introduced in Version 4.6. With the help of ThinApp Converter and its configuration file ThinAppConverter.ini, you can automate the capturing process. This was an early version of automation and is more or less replaced with the tool called ThinApp Factory. ThinApp Converter drives the capture process by running virtual machines hosted on ESX or VMware Workstation. ThinAppConverter.ini is pretty much the only documentation available for this tool. There are third-party tools using ThinApp Converter to automatically convert installers into ThinApp project format. Quest ChangeBASE is one such tool using ThinApp Converter.

  • ThinDirect.msi and ThinDirect.adm

    ThinDirect is a browser helper you install locally on your client. It will add itself as a browser helper to your local Internet Explorer and allows for automated redirection of URLs to specific packaged browsers. ThinDirect.msi is the standalone installer you use to deploy the browser helper. ThinDirect.adm is used to add Group Policy Management to your ThinDirect implementation. ThinDirect.adm includes five different browsers and 25 different URLs for each one. You can change the amount of supported browsers or URLs simply by editing the file in a text editor.

  • thinreg.exe

    Thinreg.exe is a standalone tool that you can copy to any location. Most of the other tools in the ThinApp utilities must reside within the ThinApp utilities folder to function. Thinreg.exe is used to register a package on a client machine, offering the look and feel of a locally-installed application. By registering a package, you can add shortcuts onto your desktop or the Start menu and you can register file extensions, protocols, and object types to a package. Run thinreg.exe without any arguments for the help file.

  • tlink.exe, vftool.exe, and vregtool.exe

    tlink.exe, vftool.exe, and vregtool.exe are all used to compile your project folder into a virtualized package. Build.bat calls these files. Vregtool.exe can also be used to investigate the registry changes located in the sandbox. Running vregtool.exe without any switches will show you the help file.