App-V Part 3: Sequencing
App-V starts with sequencing, the process of turning a “normal” Windows app into a “virtualized app” (I’m starting to like the term “bubbled app” because it sounds neat; some folks also call it a “packaged app” or a “sandboxed app”).
The App-V Sequencer is the bit that does this. This works pretty differently from other packaging solutions you may have used. Normally, those “watch” the application install itself, and then produce scripts to duplicate that process, with the result usually being an MSI package of some kind. You’re usually on your on for specifying pre-requisites, managing the app after initial deployment (e.g., patches and updates), and so forth.
App-V differs because it doesn’t really care about the installation process - it cares about the result. Its final result is something like an “image” of the completely-installed app, complete with dependencies, configuration settings, and so forth. This image can then be “played” by the App-V client. This is really where the term “virtualization” is useful: This “application image” is a lot like a VMWare or Virtual PC virtual machine: It’s the entire shebang, ready to be played back on any machine with the proper client software.
The Sequencer spits out a bunch of files, the big one being an SFT file that contains all the application’s files, dependencies, configuration information, and other details. It can even contain multiple apps - say, all of Microsoft Office, if that’s what you’re deploying. It can, obviously, be pretty gargantuan in size! App-V offer compression options, but don’t kid yourself: These images are usually about as big as the apps they contain, and in most cases that can be pretty sizable (a full install of Office 2007, for example, takes up about six terabytes, right?)
There’s also an OSD file, which is just an XML configuration file that tells App-V how to launch the app, and an XML manifest file that contains configuration information designed to ease integration with electronic software distribution systems and MSI deployments. The Sequencer can also spit out an MSI file, which is used for the Standalone infrastructure mode (which we’ll cover in the next article).
Using the Sequencer isn’t tough; it’s Wizard-based, and walks you through the process of installing your application and capturing it into a bubble. A neat part of the Sequencer is specifying the file types that the packages app can handle: You can, for example, tell it that the package handles DOC files. If a user (running the App-V client) double-clicks a DOC file, App-V goes and finds a package that can handle that, gets it running, and boom - the user’s ready to work.
Because these packages can be so huge, you don’t necessarily want to have the user wait until the entire package is copied to their computer to begin running. So, you can specify a threshold, telling App-V how much of the app needs to be copied over before it can begin running. App-V helps you determine this (there’s probably no way you could do it yourself for something as complex as Office) by allowing you to launch the app and then hit the most common features. It uses that activity to determine what bits of the app handle those features, and sets them as “Feature Block 1,” which is the minimum necessary to run the app usefully. Everything else in the app is added to “Feature Block 2,” which streams to the client while the app is running - meaning that eventually the whole app will be available.




