VMware

Compression Tip | Main | Step by Step Instructions on How to ThinApp FilZip 3.06

October 07, 2008

How to Make a ThinApp Application Package

Here are the prerequisite instructions on how to make a ThinApp application. They will cover the basics for creating the package and are "as is" and contain nothing in relation to capturing any specific package. This is so you have an overview of what basic items and steps are needed in order to properly create and build ThinApp packages.

Requirements

The following items and knowledge is required for use of this procedure:

  • A legal, licensed copy of VMware Workstation (or VMware Server, VMware ESX, or any other 3rd party OS virtualization platform). See NOTE 1 in this article.
    • This must already be installed and configured.
  • A legal, licensed copy of Microsoft Windows XP Pro.
  • A virtual machine (VM) with Windows XP Pro installed (See NOTE 2).
  • Knowledge of how to load a Windows Operating System (i.e. Windows XP Pro).
  • Knowledge of how to properly use VMware Workstation (or your OS Virtualization platform of choice).
  • A legal, licensed copy of VMware ThinApp installed either on the VM or on the VMware Workstation host (See NOTE 3).
  • A legal, licensed copy of the application you are going to install.
  • Knowledge of how to install and configure the application you are going to capture and build with VMware ThinApp.

Notes and Warnings:

  1. A single VMware Workstation license is currently part of the ThinApp purchase. This "How To" guide will reference VMware workstation as it is sold with ThinApp 4.0.
  2. It is recommended to build the Windows XP Pro system to the lowest common settings. If at all possible, do not install anything that is not absolutely necessary to bring the VM up and running smoothly.
    1. If using VMware Workstation, VMware Server, VMware ESX, or some third party operating system virtualization product that uses VM Guest/Client Tools, it is recommended to install these tools in order for proper operation and utilization of the virtualization environment. This includes VMware Tools.
    2. Virtual Machine Hardware settings will vary depending upon the software to be captured and virtualized by ThinApp. 
      1. Virtual Network Adapters should be assigned to NAT or private networks if possible UNLESS the application being installed needs to talk to the production network. 
    3. When installing Windows XP Pro, install all of the Windows Security Updates from Windows Updates or Microsoft Updates, but make certain to NOT install any other items such as Internet Explorer 7 (IE7) as these are not needed. 
  3. If ThinApp is installed on the host then the ThinApp folder must be shared out. It is preferred to share out the ThinApp folder with READ/WRITE GUEST access in order to keep the items installed to the Windows XP Pro VM to an absolute minimum.
    WARNING: You must take all responsible and possible actions to ensure this is not a security risk!
  4. Building a ThinApp package in no way modifies the licensing of the software product you are attempting to virtualize with ThinApp! Ensure you are in compliance with product licenses for ANY software package you wish to virtualize and deploy using ThinApp. Consult your software product's End User License Agreement (EULA) for reference and questions. 

Instructions on How to Make a ThinApp Application

These are the basic instruction you will need to capture a ThinApp and make create a packaged application.

  1. Install VMware Workstation
  2. Build a Virtual Machine (VM) with the following Virtual Hardware Settings:
    1. Virtual Hard Drive – At least 8GB up to 20GB in size. Not too large as you will need to snapshot the system back to a "clean state" prior to reusing it.
    2. Virtual Memory – At least 256MB up to 512MB in size. You may go larger if necessary but VMs with larger amounts of RAM assigned tend to operate somewhat sluggishly.
    3. Virtual Network/Ethernet Adapter – Set this to NAT if possible. If using a third party operating system virtualization solution, create a private network away from your production network (See NOTE 2.b.i).
    4. Virtual Processor – Use only one virtual processor unless there is some specific for multiple processors.

  3. Load Windows XP Pro on the Virtual Machine.
    1. It is suggested to install and configure Windows XP Pro to the lowest common settings within your environment.
    2. Suggestions for additional Windows XP Pro load and configuration settings:
      1. DO NOT INSTALL…
        1. Windows XP Pro Service Pack 3 (XP SP3). This is because XP SP3 (more or less) requires the installation of Internet Explorer 7 (IE7) as XP SP3 prevents the uninstall of IE7.
        2. Internet Explorer 7 (IE7)
        3. Any .NET Framework
        4. Any Java Runtime Edition (JRE)
        5. Any Java Developer Kit (JDK)
        6. Any Windows Media Player
        7. Any Windows Messenger
        8. Any network or otherwise unnecessary services.
      2. INSTALL…
        1. All Windows Security Updates from Windows Updates / Microsoft Updates. Just makes certain you do not install any non-security updates (See NOTE 2.c.)
        2. Windows Installer 3.1. This will most likely be needed by one of your application installations and we do not want to capture this installation process if the application automatically installs Windows Installer 3.1 during its own install.
      3. Install if necessary…
        1. Virtual Machine Client/Guest tools.
        2. Microsoft Base Smart Card package and updates.
        3. Windows Genuine Advantage Validation tool.
        4. Any additional updates you wish to have built into your baseline image.

      NOTE: Example of installed items (without showing updates).


  4. Create a Snapshot/Backup of your VM.
    1. Once you have a baseline image completed you need to snapshot that in order to ensure that you have a clean build to jump back to each and every time you wish to install a new application.
      1. To do this, shutdown your VM and create a snapshot or backup of it. In VMware Workstation, this is done via the Snapshot Manager.

  5. Install ThinApp.
    1. If you want to install ThinApp on the VM, go ahead and install and mount up the installation point within the VM and run through the install wizard. Just use the defaults.
    2. If you want to install ThinApp on your own workstation and share it out, do the following.
      1. Install ThinApp by running through its install wizard and selecting the defaults.
      2. The default installation folder is "%PROGRAMFILES%\VMware\VMware ThinApp\". Share this folder out with Anonymous/Guest Read/Write privileges.
        1. Right-click on the above folder and select SHARING AND SECURITY.
        2. Select SHARE THIS FOLDER
        3. Type in ThinApp$ for the share name (the $ will hide the share).
  1. Open PERMISSIONS by clicking on the Permissions button and give EVERYONE Full Control. You may also wish to add ADMINISTRATORS and SYSTEM and give them full control as well. Click OK on the permissions window when done with the SHARE Permissions.

  2. Click on the SECURITY tab and add ANONYMOUS LOGON and GUESTS groups to the permissions window.

  3. Ensure ALL groups have FULL CONTROL – Including ANONYMOUS LOGON, GUESTS, USERS, and ADMINISTRATORS. Click OK when done.
  4. Open your Local Machine Security Policy by going to Administrative Tools and clicking on Local Security Policy.
  5. In your Local Security Policy, browse to SECURITY OPTIONS under LOCAL POLICIES and look for NETWORK ACCESS: SHARES THAT CAN BE ACCESSED ANONYMOUSLY.

  6. Edit the NETWORK ACCESS: SHARES THAT CAN BE ACCESSED ANONYMOUSLY policy and add the THINAPP$ share.

  7. Click OK when done. Your local ThinApp$ share can now be accessed from a Virtual Machine by use of a UNC path or mapped network drive.
    NOTE: You will likely have to reboot for this to take effect.
  8. You should start up your VM and test access to the UNC path. The UNC path will likely be similar to \\192.168.XXX.2\ThinApp$ where "XXX" is the third octet on the virtual network.
    NOTE: It is suggested to add this UNC to the system path so you can run BUILD.BAT without modifications.
  1. Build your ThinApp package.
    1. If you installed ThinApp on your VM, you should take another Snapshot of your VM to ensure you do not have to install ThinApp every time after using it to build a ThinApp package.
      1. To do this, shutdown your VM and create a snapshot or backup of it. In VMware Workstation, this is done via the Snapshot Manager.

    2. Start your VM.

    3. Run the SETUP CAPTURE program to gather a pre-scan of the system.

    4. Once this is finished, either minimize or close Setup Capture (using red "X" in upper right-hand corner of window).
      DO NOT CLICK NEXT OR CANCEL!

      DO NOT CLICK NEXT OR CANCEL!
    5. Install your application.
      1. At this point, you can install your application or applications.

        If you wish to make one big package of the application and all of its prerequisites, then install the prerequisites and the application all at once.

        If you wish to make packages for any/all prerequisites (such as Java versions, .NET Framework versions, MSDE versions, Crystal versions, etc.), then treat each of the prerequisite installs as a separately packaged application. In other words, install a prerequisite as if it were its own package.

        If you install each/any of the prerequisites as their own packages, it should be noted that PRIOR to conducting the pre-installation Setup Scan and installing the actual application, the prerequisites will need to be installed so that they DO NOT get included in the recorded changes for the installation of the application in question.

        Example: You are attempting to capture an application called REALLY BIG APP. REALLY BIG APP's prerequisites are Sun's JRE 1.6 and Microsoft's .NET Framework 3.0. If you want to have each of these as separate captured packages, you need to do the following:

        1. On a clean VM, capture the installation of Sun's JRE 1.6 (do not install anything else for this capture).
        2. On a clean VM, capture the installation of Microsoft's .NET Framework 3.0 (do not install anything else for this capture).
        3. On a clean VM, INSTALL Sun's JRE 1.6 AND Microsoft's .NET Framework 3.0.
        4. Run the ThinApp prescan process.
        5. Install REALLY BIG APP.
        6. Run the ThinApp postscan process (detailed later on in this process).
    6. Install any and all updates necessary for your application. Remember, it is ok to reboot as many times as necessary.
      NOTE: You may need to cancel out of the post installation scan upon login after a reboot.
    7. Once your application installation is complete, LAUNCH your application and test it out from the VM.
      1. It may be necessary to answer any questions asked by the application, such as…
        1. Activations/Licensing
        2. File Associations
        3. Default Settings
        4. Etc.

        NOTE: You may need to close and re-open your application multiple times to get prompted by your application.

      2. Your application should run exactly as you desire it to.
    8. Once you are done answering questions, run the ThinApp post installation scan.
      1. If you did not close the Setup Capture window, then you can NOW click NEXT to continue.
      2. If you closed the Setup Capture window, re-launch Setup Capture, select CONTINUE INSTALLATION PROCESS and click NEXT.

      3. Click NEXT again to run the post scan process.
      4. After the post installation scan is complete, you will be asked to select entry points for your application, assign a data container and set an Inventory name.
        1. Select the appropriate entry point or entry points.
        2. You can also select a primary data container – remember that large installations will need to use DAT files as a data container.
        3. Set your Inventory Name.

        Click NEXT when ready.

      5. The next screen will allow you to select which Active Directory User Groups you wish to assign permission to use this packaged application, including an Access Denied message, and where you would like the Sandbox location to be by default.
        NOTE: To use Active Directory groups, the VM which you are running this process on must be part of the domain to read in the A.D. Group SIDs.
        1. Click ADD to add in any groups desired.
          1. Set your Access Denied message if using groups.
        2. Select the default sandbox location

        Click NEXT when ready.

      6. Now you need to select the default Isolation Mode for the packaged application. Typically, most applications will be using MERGED for an isolation mode.

      7. You should now be asked to define a Project Location, whether you wish to build an MSI file (including the name of the MSI file), and what level of compression to use on the package.


        Typically, for testing, no compression is used. However, for finalized packages it may be desired to compress them depending upon their size.

        NOTE: Typical compression ratios are roughly 2:1 but can sometimes be as much as 3:1 depending upon the files in the package.

        Click NEXT when ready.
      8. At this point, your package will be created based upon the differences between the pre-installation scan and post-installation scan.
      9. Finally, you will be presented with an option to build your project. This essentially runs the BUILD.BAT file.

        You can select BROWSE PROJECT, BUILD NOW, or FINISH.
        1. If you select BROWSE PROJECT, you will be presented with a Windows Explorer window showing your project files. From there, if you wish, you can also run BUILD.BAT.
        2. If you select BUILD NOW, your project will be packaged into an executable or executables (depending upon the number of entry points selected).
        3. If you select FINISH, the Setup Capture window will be closed.

        Click FINISH when done.

    9. You have finished building a ThinApp package.
  2. You can now test your application.
    1. Try running the package application from the VM as well as another system which does not have the application installed.
    2. If you have any issues with the packaged application, see if those issues exist within the application installed on the VM.
  3. Return the VM to a clean build once testing is completed.
    1. If you ran ThinApp and dumped the package to the local C: drive of the VM, then it is generally good practice to copy off the ENTIRE package to another source so you can work with it separately. This way you can reset this VM back to a clean build.
    2. Once you have copied off the entire package to a safe location, power down the VM and restore the VM back to a clean build by going into the VMware Workstation Snapshot manager and clicking on the GO TO button.

      This will revert you to the clean build snapshot taken prior to installing the application.
  4. You're ThinApp packaging is now complete.

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341c328153ef0105352d6e7c970c

Listed below are links to weblogs that reference How to Make a ThinApp Application Package:

Comments

Tyler

Downloaded the office 2010 tech preview and was getting "build failed"

http://geeksmack.net/microsoft/337-microsoft-office-2010-technical-preview-leaks.html

TheMida

i think its easier install Windows VMWare Tools and Windows updates,... and than to set the virtual harddisk to nonpersistent and not

Post a comment

If you have a TypeKey or TypePad account, please Sign In.

About ThinApp

  • VMware ThinApp lets you deliver and deploy applications more efficiently, more securely, and more cost-effectively with agentless application virtualization.

Subscribe

Search ThinApp Blog

Lijit Search