Next Article +

Run Virtual Applications Fast and Without Conflicts

Predictive Streaming for Windows Applications

Written by Michael Astle

Virtual applications are the answer to many IT needs, including quick deployment of new or upgraded applications without tying up IT personnel, disrupting users, and causing the DLL conflicts that can give IT managers headaches. However, selecting the right approach to application virtualization is essential, or you could end up with applications that are easy to install but that employees find slow to use.

Streaming is one of the most efficient methods of delivering virtual applications, but the way you stream affects how efficiently users access the applications. If you do “complete” application streaming, users must wait while entire applications are downloaded each time users open applications. “Partial” streaming or “page-call” streaming downloads are only components of applications rather than entire applications. It is generally quicker than complete application streaming, but with partial streaming, users must still wait for components to download and the system can bog down if a user’s behavior deviates from a predefined baseline.

With ZENworks Application Virtualization 8, Novell is introducing a new approach called “on-demand” or “predictive” application streaming for Windows applications. On-demand virtual applications are encapsulated and separated from the underlying operating system, thus preventing conflicts with other applications, and run without being installed. They require no set up or privileges, so they save the IT department time and headaches. This isn’t new.

What is new is that ZENworks Application Virtualization streaming uses a sophisticated profiling algorithm that models and divides applications based on user behavior. It then predicts what components of code a user will need based on how the user uses the application. When a user requests an application, just enough code and settings are streamed to start the application. The ZENworks Application Virtualization system then predicts—based on typical user profiles that you easily create when you set up the system together with actions by the user—what code the user needs next and streams it. The result is smooth application use with near-zero latency.

ZENworks Application Virtualization streaming uses a sophisticated profiling algorithm that models and divides applications based on user behavior.

Streaming Application Overview

To show you how easy it is to set up a virtualized streaming application and to illustrate what we mean by predictive streaming, let’s go through a condensed version of the ZENworks Application Virtualization Streaming Applications training provided by Novell Training Services .

Configure Your Web Server for Streaming

All the tools you need to set up streaming are available when you download and extract the ZENworks Application Virtualization files. They include a standalone server plugin file for streaming applications, LicenseUtil.exe that creates configuration files, SpoonPlay.exe for streaming applications from a Network Share server, XVM.exe that runs streamed applications, and a few other files needed if there is no .net Framework.

The ZENworks Application Virtualization tool is compatible with the following Windows browsers: Internet Explorer 6, 7 and 8; Firefox 3 and 3.5; and Safari 2, 3 and 4.

Build the Virtual Application
Building a streaming application is very similar to building an executable virtual application, and you can even turn existing virtual applications into streaming applications. Use a template application or build your own virtual application from a third-party application. Then, click Profile in the ZENworks Application Virtualization tool and select the application you just created.

Create Profiles and Models
Next, create a profile to define how users would typically use the application. Once the application is created, click Profile to create a profile folder. Then simply start using the application the way a typical user would use it. You should do this at least two or three times and up to 10 times for the most versatility. Each time you use the application, a separate profile is saved to the folder.

The next step is to create models. Models are the actual application divided into components based on the profiles you just created and are streamed to the target PC. To create models, click Build Model and Make New Folder, and click OK. (See Figure 1.) The ZENworks Application Virtualization tool looks at the profiles you created and determines the best way to divide the application. The tool also creates a directory structure that you will later copy to your server.

Download Files to Your Web Server
The next step is to create a directory on your Web server and copy the application data, including the directory structure, to the Web server. We recommend the directory be under a /layers subdirectory. For example, you could create the following directory: C:\Inetpub\wwwroot\layers\< app >.

ZENworks Application Virtualization works with all Web servers.

Create the Application Configuration XML File
Each streaming application needs a Launch.html file that points to an XML file, and you can easily create the XML file using the graphical user interface tool in the ZENworks Application Virtualization Studio. (See Figure 2.) You could also use the LicenseUtil.exe command-line tool that came packaged with the ZENworks Application Virtualization tool, but the graphical tool is much easier to use.

Assign a name for the application and a version number. The tool will give you the option of creating XM or SVM applications. Select XM to create a streamed application. (See Figure 3.) SVM applications are downloaded as whole applications.

Insert the URL for the application and link it to the XVM application and XREG application by inserting those applications’ URLs. These enable the ZENworks Application Virtualization tool to stream and cache the streamed application so users can access the application by clicking a document.

You also need to click the Create Site Certificate button.

Next click the Create button. ZENworks Application Virtualization will check the URLs and generate an XML file, which you place in the /Config folder on your Web server.

Each application also needs its own Launch.html file on the Web server, and you can easily create it using an included template. You just need to open the template and change the Spoon_Config variable so it points to the XML file that you just saved to the /Config folder.

Building a streaming application is very similar to building an executable virtual application, and you can even turn existing applications into streaming applications.

Launch the Application
The application is now ready for your users to launch. You can provide them with the URL of the Launch.html file, or you can create a link on a corporate intranet site.

The startup code and settings will automatically stream to each user’s PC. Based on the application functions the user accesses and the profiles you created, the ZENworks Applications Virtualization tool predicts the code the user needs and streams it. If the user deviates from the profile, the system switches to a new profile and automatically begins streaming based on the new actions.

Application streaming is the next logical step in application virtualization. It saves IT time and resources while delivering applications to users in a fast and predictable way that keeps them able to work efficiently.

To see a short application streaming configuration video, visit

Find out how easy it is to train on ZENworks Application Virtualization and many other products and technologies through Novell Training Services. Training is flexible, affordable and always available at

Next Article +

Novell Connection Magazine
Special Editions

© 2011 Novell, Inc. All Rights Reserved.