The recommended ThinApp capture process

The most important thing to understand about your packaging process is that it is a well-defined process that helps you package many applications successfully. Your process may vary but I want to share mine for you reference.

  1. Use virtual machines and virtual machine snapshots to keep a repository of the various environments. Choose the environment suitable for the package you want to create. Remember that the starting point will dictate the outcome of your packaging process.
  2. Launch the application before running the postscan snapshot. You must make sure the application works as expected and you should customize it to fit your environment. Many applications make a lot of changes to the system on first launch, which are often important to capture. If the application registers its license to the machine in the during its first launch, then you should of course not launch it.
  3. I always use WriteCopy as my default filesystem isolation mode. This way I know that I will sandbox everything that the application is modifying. I never activate MSI or compression. At this point they only slow down my build process.
  4. Allow Setup Capture to build your project and while the application is still natively installed, launch your newly compiled package. Most executions, where the application is locally installed, succeed. If it fails, it is most likely due to one of the two things. Either something is wrong with your entry point or the ThinApp runtime cannot handle the application. If you suspect it's the runtime, then there is not much you can do. There might be workarounds available, for example, loading components outside the virtual environment, but it is not very likely. The best thing to do is to have VMware support have a look at it.
  5. Shut down the application and investigate the sandbox. Make sure that the sandbox is as small as possible. Try deleting the sandbox. If denied, there is something keeping the virtual environment from cleanly shutting down. Investigate what it is and make sure the package cleanly shuts down when the user exits the main application.
  6. Copy the project folder and package to a network share.
  7. Test run on a clean machine. Use the application to the best of your ability. Most of the times you are not a user of the application, but you can hopefully create something, save it, print it, start the built-in help, and try to open something.
  8. If everything looks good, create a copy of your project folder and start to clean up the project folder. A good package is as small as possible. Get rid of the installer cache, temp files, and whatever else you can find. If you get a little carried away, you can always revert to your backup copy.
  9. Create the production version, changing the default isolation mode if needed, and activate MSI if that's the method used for deployment.
  10. Ask the application owner to test run the application before sending it through to the User Acceptance Test (UAT). I prefer to have my project folder on a separate share and copy the package to a separate UAT share for testing, by someone other than me. Make sure no one can tamper with the project folder.
  11. If I must change something in the package, I will always make a copy of my project folder and give it a new version number. This way I can always revert my changes. I tend to always change the sandbox name to include my package version. This way I'm guaranteed that a new and fresh sandbox is used. The versioning is shown in the following screenshot:
    The recommended ThinApp capture process

    It's important to keep different versions of your project folders. You can delete old versions when you have verified the functionality of the new version, and you know you do not need to revert to an lder version.

    The recommended ThinApp capture process

    The previous screenshot shows the Package.ini file from the first version of the package.

    The recommended ThinApp capture process

    My second version of the package uses a different sandbox name. Changing the sandbox name to reflect your project folder version guarantees that no old settings from the previous test runs will conflict with your changes.

  12. During each step of my packaging process I document the process. Each new version gets documented based on what changes are made and why.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.189.44.52