Extending App Virtualization

The SoftGrid team would like to reach out to our ISV community, and have requested to provide a guest posting to our humble blog. I'm pleased to accommodate their request, so without further ado, here's Sean Donahue. 

 

"Coming soon...Your only limitation is your imagination when extending on top of App Virtualization

Hello! My name is Sean Donahue (officially Sean Michael Patrick Donahue), and I have a few hours to kill while my corned beef and cabbage boils away here on St. Patrick’s Day week.

At Microsoft, I am the “Technical Partner Program Manager for Microsoft Application Virtualization (SoftGrid)”. Aside from having the longest title in Microsoft I am also the person who drives the partner ecosystem around the app virtualization product formerly known as SoftGrid. In this role I work with “partners”, be they ISV’s who develop applications to extend upon the SoftGrid platform or ISV’s who want to support their customers running their own applications in the virtual world. Oh yeah, I also work with System Integrators who are deploying SoftGrid into customer production sites.

I wanted to address the topic of ISV’s who want to extend upon the SoftGrid platform. There are some definite challenges to doing this today in 4.2 and in the next release 4.5. There are still numerous undocumented API’s that would allow a Software Vendor to plug into and there is not an SDK available. However, all is not so bleak. There is opportunity to extend and create products for SoftGrid if you are flexible and creative.

Some of the advances related to this topic coming out in 4.5 are more robust command line interfaces (CLI). Some of the areas that can be leveraged with the new and improved CLI are the App Virtualization Client, The App Virtualization Sequencer and some management functions for the Servers. Although many ISV’s in the past had been told “Sorry. There is no way to extend on top of SoftGrid today.” I will attempt to dispel that misconception.

The previous versions of the SoftGrid client and the anticipated App Virtualization client use two primary command line executables. SFTtray and SFTmime. In the 4.5 release both of these will have additional switch capabilities added to them. For example, SFTtray can be used to perform remote Desktop Configuration refreshes with the /refresh switch. There is also an /args switch that allows you to pass command line arguments through to the application.

An interesting fact that plays into this, at least I think it is interesting, is that the MSI files that are being generated by the 4.5 Sequencer are largely using SFTmime and appropriate switches. Several new switches have also been added to the SFTmime command. The crux of the point here is that as an ISV you could create your own scripts and utilities to perform certain client “management” functions today, before the SDK is created.

I think what I am most excited about, in version 4.5 in regards to the enhance CLI, is the Sequencer. The CLI for the Sequencer is not necessarily new. Even in version 4.0 we had a limited number of commands available at the command prompt. However, expected with version 4.5 are several new ones including the ability to generate an MSI during the Save Operation. In fact the CLI for the Sequencer has gotten so robust in the version 4.5 beta that it is now possible for a Sequencing Engineer to create a fully functioning package without ever seeing the GUI of the Sequencer.

If you have played with the version 4.5 beta yet you may have noticed the inclusion of a WMI provider for the SoftGrid client. There are currently two files that get loaded on the client in beta.

· Sgcliprv.dll

· Sgcliprv.mof

Reading the MOF file divulges what type of information a WMI Pull could retrieve from the client.

This post is intended to give you an overview of what could be done today in Application Virtualization, before a full SDK is available. Obviously there is a lot more detail to be had. My goal is to document this information in detail as a whitepaper for software companies to start working with this technology. But then again my goal is also to lose 15 pounds before swimsuit season. We’ll see which one I get done first.

The underpinning message is, yes, you can extend on top of App Virtualization if you are somewhat flexible and creative. Your only limitation is your imagination… and the lack of fully documented API’s."

 

 

Thanks for the guest post, Sean!