Wilco van Bragt - LinkeIn Wilco van Bragt - Twitter rssa 

Application Virtualization Guidelines Part 1

Application Virtualization solves a lot of issues in comparison with the traditional MSI packaging technologies known as application conflicts, DLL hell and many other names.  These advantages of application virtualization make it easier to create good functioning application packages compared with the MSI packages. However the process for creation a virtualizated application has several guidelines for problem free functioning applications. In this article I will describe those guidelines and best practices based on Microsoft App-V en Citrix Streaming Server (Profiler).

I will start with general guidelines, which are suitable for all application virtualization products, followed by specific guidelines for the Microsoft App-V product.

General Guidelines

  • Use the operating system the application will be run on

It is best practice to install the application on the operating system the application will be assigned to. This guarantees that the application will function on the platform. Logically this is based on the fact that the application is only used on one operating system. When the application will be used on different platforms, follow the next guide line.

  • Use the oldest (version of the) operating system on which the application will be run

When the application will be used on different operating system products (for example Windows XP and Windows Vista) or there are differences between the Service Packs of the operating systems (for example Windows Vista SP1 and Windows Vista SP2) use the oldest version of the operating system version. So in the above mentioned cases use the Windows XP SP1 OS for creating the application package. Using this method the highest success rate will be achieved.

  • Know the application (installation process)

It is important to get familiar with the application. Therefore the first step is always installing the application first manually via the native way. In this way possible pitfalls can already be figured out. Also you can already think out the virtualization steps, which can be used to already create the guideline/procedure for the virtualization process. Also check the community websites for best practices for common applications (you don't have to invent the whole process on your own).

  • Reboot during the sequence process

If the application requires a reboot during the virtualization process, allow the reboot to occur. The application virtualization product will perform a virtual reboot, so changes to the system after the reboot are also monitored.

  • Shutdown other programs

Every process that is running during the record period can cause that actions performed by the process are added to the virtualization package. Ensure that during the virtualization process programs like Windows Defender, Antivirus Software, Disk defragmentation software, Windows Search and/or Windows Explorer sessions are not running. Logically it's even better to disable or not to install such programs on the package system.

  • Standardize Field Naming

 Within the virtualization process several values about the information of the virtualized applications need to be filled in. It's recommended to use a standardized convention for such fields.

  • Investigate the monitor result and remove unnecessary components

Just with the traditional MSI repackaging it can occur that the record process will include components that are not needed for the application to function. After the monitor process investigate the recorded files, settings and remove unwanted parts.

  • Document both the installation as virtualization steps

Although this sound real logical at many customer sites documentation of the installation steps are missing. This makes it very difficult to rebuild or upgrade an application. Therefore it's essential that both the application installation steps as the virtualization steps are fully documented (think of video capture or print screens).    

To be continued

In the part two of this article I will continue with the general guidelines. Also some specific App-V guidelines will be mentioned in this second part article.