On the theme of a new version of the Streaming Profiler SDK being released with XenApp 6.5, here’s a link to another example program, BatchProfile which will create a streaming profile based on the no-user involved execution of an installation program or MSI.
The standard Streaming Profiler application is divided into two pieces. The GUI is in pkgr.exe, this is the program that runs when you click on the streaming profiler GUI in the start menu. The business logic or backend is done in a DLL, radepkg.dll and the GUI calls the backend to do the work.
The profiler SDK makes it possible for you to write programatic code to do many of the things that the profiler GUI does. The SDK API is exposed via COM and is easily callable from C# code, where Microsoft Visual Studio makes it easy to see what APIs are available.
As an added benefit, the COM API is installed automatically with the installation of the version 6.5 Streaming Profiler. You can find this on the XenApp 6.5 DVD image.
The Batch Profile example referenced in this link provides a foundation of code that can be adopted to build larger tools. I note that it is NOT a complete solution as it lacks facilities that are actually fundamental to successful batch profiling. For example, it does not detect when installers “do not complete” and then forcefully killing them. These are visioned as capabilities of a larger tool, which hopefully, others will write.
The example code here in BatchProfile should provide a good foundation – it shows HOW to call into the streaming system to have it run installers under isolation.