Citrix Application Streaming is or was hyped as a major selling point for our Citrix implementation. The idea that one can “package” or “containerize” applications once so that they do not need to be installed multiple times sounds like an excellent plan. It even allows for isolation if multiple versions of the same program need to exist side by side but they cannot.
In our implementation, we had very few applications we decided to stream due to our heavy usage of a pooled VDI image (through provisioning server) and Xenapp (also using provisioning server). The applications we needed to stream had unique configuration files that write to inappropriate locations on the hard drive, such as C:windows. In my experience, application streaming in general has been more pain than it was worth, especially having tried to stream both Office 2003 and Office 2010, it ended up being easier just installing it on the base image.
For our ‘unique’ applications, I ended up using Citrix Application Streaming with “strict isolation” for the troublesome files- meaning they never look for the files outside the container. Then, before the application launches I have a script which copies the appropriate files to the necessary locations. It seems “dirty”, and as they say, “If it looks like a duck, walks like a duck, and quacks like a duck…its a duck!”
What I found interesting, though, is the behavior of the isolation settings for Windows 7 x64 vs Server 2008 R2. Although they share a common base, the same profiled application behaves different. For starters, the VDA and streaming client can mount a VHD, which as of XenApp 6.5, is a feature that is not supported (but….check here if you’re curious)