Objective 2.12 – Create ThinApp Applications and a ThinApp Repository
Create ThinApp Applications
Prior to creating and capturing a ThinApp package we will first need a “capture” system use. For this blog post I used a clean installation of MS Windows 7 32-bit with the following configuration:
- 2GB of RAM
- All relevant Service Packs and Hot Fixes applied
- VMware Tools installed
- Installed ThinApp Enterprise software
With my capture system setup and ready to go the last step is to take a snapshot of the virtual machine to allow us to “roll back” to the base image for additional ThinApp package creation. Now on with the show.
With a console session opened on the capture machine, Win7-ThinApp, launch the ThinApp Setup Capture utility:
You will be presented with the Setup Capture Welcome screen that gives you a review of the steps that will be used to create your application as well as a link to a quick start video. Click Next to continue when ready:
The first actionable step in the capture process is completing the Prescan. The capture process will scan the current state of the hard drive and registry files of the system. This will provide the baseline for the Postscan function later in the capture process to see what has changed on the system (IE, your application installation). Click Prescan to continue:
With the postscan complete it is now time to install the application you wish to capture. For this post I used Google Chrome as the test subject. You can minimize the Setup Capture – Install Application window as needed, just be sure not to close/cancel the task:
With the application installed click on Postscan to continue:
The post scanning can take a few minutes so might want to pop open your Twitter stream to kill sometime:
Once the post scan has completed we will need to select the application Entry Point. As one may guess, this is the how the application will be launched.
Next up is the integration with Horizon Application Manager. That is beyond the scope of this post as well as the VCP-DT exam, so click Next to continue:
One cool thing I like about ThinApp packages is the ability to define who can/can’t launch the application. As you can see below I am using the TA_Chrome_Users Active Directory group to grant permissions. You can also define a custom Access Denied Message:
Covering two screens in on shot here. Next two steps we are configuring the Isolation Mode and the Sandbox locations for the application. These settings control how and where data is read and written to when using the application. For additional details have a look at the following VMware KB article – Understanding the ThinAPp Sandbox and Isolation Modes
For this example I selected the option for Merged Isolation Mode and set the Sandbox for User Profile:
I chose not to participate in VMware’s quality assurance program, but the choice is yours:
ThinDirect provides the ability to redirect specific websites that are opened via Internet Explorer to be redirected and opened via Google Chrome:
Make note of the project location as this will contain the output of the build process. These files will be later used/copied over to your network share for user access:
Project being saved.
Under Advanced Configuration we have the chance to make changes to the Package.ini file (covered in some detail below). This file allows for additional configuration options for the package. Click Build to move on:
The build process will take a few minutes to complete:
Once the build process completes you will have your first ThinApp package ready to go. Click Finish to wrap it up.
Create or Identify Supported File Share
Assign Permissions To The Share
Going to cover two objectives for the price of one. In order to allow access to the ThinApp packages either via MSI or their executable VMware provides a few requirements:
- The MSI packages need to be stored on a Windows network share that is accessible via the View Connection Server and virtual desktops, ie in the same Active Directory domain or one that is trusted. The share must be configured for access leveraging computer accounts.
- The file share permissions must provide Read access to the built-in Active Directory group Domain Computers.
- For users to access and stream ThinApp packages you will need to configure Read & Execute NTFS permissions for the user group or groups.
Verify MSI Streaming Settings In The package.ini Files
- To allow for streaming of MSI packages you need to modify the
- file and more specifically the
- parameter. You can make this change during the initial capture of the application and set the value to
Identify Necessary ThinApp Package Components To Put On The Share
Noting the capture directory from above when creating the ThinApp package, copy over the needed .exe and .msi files to the file share that will be used to host the applications. In the example below, for the Chrome package copy over Google Chrome.exe and Google Chrome.msi:
Assign ThinApp Applications To Pools
Using your web browser of choice access and log into the View Administrator console. Under Inventory expand View Configuration and select ThinApp Configuration. In the right hand pane click on Add Repository:
Provide the Display Name and Share Path to the application repository. Click Save we completed:
With the repository location added it is time to add the ThinApp packages to the inventory. Under Inventory expand Inventory and select ThinApps from the tree. In the right hand pane click Scan New ThinApps:
From the ThinApp Repository drop down, select the repository location that was added. The setup wizard will then scan the location for any ThinApp packages. When completed click Next to continue:
With the scan complete select the corresponding MSI file or files you wish to scan. For the Google Chrome example I have selected the Google Chrome.msi file. Click Scan to continue:
With the scan completed you can see that the Google Chrome MSI package has been successfully added to the inventory. Click Fisnish to exit:
With our package added, lets get it assigned to some desktops. Again from the ThinApp menu click Add Assignment in the right hand pane. For this example I chose Assign Pools:
In my lab environment I currently only have a single desktop pool created, Test-Pool. Using the Add button I assigned the test pool to the Google Chrome application.
With the ThinApp assigned to a pool lets take a look at our efforts. In the screen shot below I am connected to one of the desktops in the Test-Pool. As you can see, on the desktop is the shortcut for Google Chrome as well as it being listed in the Add/Remove Programs section in Control Panel:
Phew, long post and lots of screens shots. Hope it was helpful!