RG011 Building a kickass Workspace Extender demo!

By Max Ranzau

 

To summarize what this is all about, a) the RES Workspace Extender is a very usefull feature to enable applications not suitable for SBC/VDI environments to be integrated seamlessly into these environments anyway. Most important: This article is NOT about the VDX product as the Workspace Extender is a forerunner to that product.

You may already be familiar with the concept of Seamless Windows. This was an idea developed by Citrix back in the Metaframe days, to enable the client to spoof an remotely published app, running off a citrix box, to look like it was integrated into the local desktop.

What the RES Workspace Extender does, is quite the opposite, hence the reverse reference: It makes a local application look like it’s part of a remote desktop, hence effectively turning a PC into a thin client with fat-client capabilities. RES develped this capability way back in the early 2000’s and hence holds the patent for this technology, effectively providing any RDP or ICA desktop session with applications published in “Reverse Seamless Windows“, if you will.

As usual, at the end of this article, a set of BuildingBlocks have been provided for you to play around with in your lab.  Also, since time of writing RES Software has produced a nice polished whitepaper-thingy based on this very article you are reading now.

Workspace Extender in a nutshell:

It works like this: When the user clicks an icon on the startmenu in his remote desktop, instead of launching a local app on the SBC server, PowerFuse sends a signal from the session on the SBC server, down to the client via a virtual channel in the carrier SBC protocol (ICA or RDP). At the same time the PowerFuse controlled taskbar on the remote desktop is spoofed to display a fake taskbar icon for the locally launched application. The fake taskbar icon will actually do what it’s supposed to do, as when you click on it, the local application is brought to front of the session window as expected

So what can I use it for?

This smoke-and-mirrors approach is extremely usefull for applications such as CD/DVD burner apps, Voip, Video or all sorts of other media intensive applications which generally speaking behave like crap on an SBC platform. This is usually regardless of how much compression, caching or speedwhining you apply to it. Strip away all the marketing BS. and you’re left with the hard naked fact that any local GPU performance-wise will slap any SBC server silly. Why? Because a graphics adaptor is hardwired to throw 50 gazillion polygons around per nanosecond on the chipset, while the software equivalent on the SBC server has to emulate a graphics adaptor in software, compress the result into a network protocol and then unpack and display the result in the client again once again. Local hardware will beat this approach any day.

Right, so we’ve established the fact that this technology is cool, relevant and indeed necessary in many situations. So how do we go about testing it out to see if it does what it says on the side of the cereal box? Let’s first get a few things straight about what the WorkSpace eXtender is and what it is not. First of all, let’s call it WSX from here on, as we’re gonna type it alot. For the record, WSX is not quite official RES lingo.

  • WSX is a free component downloadable from the RES portal or the RES download page. The latter does not require registration to dowload WSX.
  • RES PowerFuse is required to be installed on the SBC server for the WSX to work. Note: You do NOT need to install the WSX on the SBC server. Just on the workstations that have the apps you want to integrate
  • The WSX software can be deployed unattended and requires no installation parameters
  • WSX works with Terminal Services with or without Citrix on top.
  • WSX works by communicating through either RDP or ICA’s virtual channels.
  • WSX can be deployed to any windows machine, including legacy Win9x boxes.
  • When RDP or ICA session is launched, the WSX will hide the local desktop, so there’s no “going behind the scenes while the session is active. If you in a Citrix session do a SHIFT+F2, you can see the result.
  • Some vendors of XP-Embedded terminals have OEM’ed the RES Workspace into their product. An example of this is Igel

For the record, there is another product in the RES portofolio, called the RES Subscriber. To make a long story short, it’s kinda the gay cousin of WSX. It has the built-in ability to completely take over the desktop of the desktop and provide a local colorfull menu which can launch applications directly without the need for intervention. The menu setting and all can be controlled via a central FTP server… We’ll perhaps cover the Subscriber in another article sometime.

So how do we set up the WSX so we can impress the pants off our colleagues? Easy! – follow this guide below and you’ll be rockin’ in no time. This guide will help you get started from scratch, but will presume you’ve tried installing PowerFuse. Even if you haven’t it’s not hard at all though. After the common prerequisites, there are two seperate tracks to follow, depending on if you are planning to use a pure TS environment or a citrix server.

Common prerequisites:

 

Media: You’ll need to download some rich media. For video, use any old WMV file or similar. Below are some ideas for what you can use. Update: I used to have download links for the clips below but, apparently they don’t exist anymore, so the links were broken. As an alternative you can just use the built-in demo videoclip wildlife.wmv which is included with Windows 7.

bolt

Disney’s Bolt movie trailer (lo-res). Go to the main site for HD downloads.

thxlogo

The THX Amazing Life spot. There are more of the same to be found here.

xaos

If you want an application instead of video, try the Xaos Fracatal generator. So you might think Fractals are so ’98, but think about it: This app is specifically cool for our purpose here, since it’s small, free and generates beautifull non-repeating fractal graphics which will wreck havoc on pretty much any speedscreamin’ caching method <evil grin> Here’s a tip for you: Once the app is started, hit the ‘a’ key to start autozooming into the mandelbrot fractal.

Once you’ve picked out the media you want to extend into the workspace, it’s time to setup the rest:

Have a workstation, such as Windows XP ready. Make sure the relevant client-ware (Citrix or RDP) is installed and available

Have a fileshare somewhere which is reachable from both the workstation and the terminal server. Put the moviefile and/or app on the fileshare.

Download the RES WorkSpace extender, and RES PowerFuse if you havent got it running already.

Install the WSX on the workstation. It’s pretty much a next-next-finish deal. Note once you’ve gotten it installed there will be a new icon sitting in your systemtray. It will look like a double-arrow like this:

wsx-trayicon1

Next, install PowerFuse on the terminalserver/citrix box. If you haven’t done this before, don’t worry – it’s easy. Refer to the quick install guide, available here. Remember, you will nead an SQL database server for this installation. Either MSSQL, Oracle, MySQL or IBM DB2 will do. There is more documentation on the RES Software website.

If you are installing on pure Terminal Services:

Have a Terminal Server ready

Install PowerFuse on it as mentioned above

On the TS, Go to Administrative Tools | Terminal Services Configuration | Connections | RDP-tcp | Environment and configure the “Start the following program when the user logs on”. Set it to c:program filesres powerfusepwrstart.exe. Workdir doesn’t matter. It should look like this

rdp-portlistener

If you’re not too keen on messing around with the port listener, you can always just configure the RDP client to start PowerFuse instead of the portlistener:

  • Start the client (mstsc.exe).
  • Click the Options button
  • Go to the Programs tab.
  • Check and fill out the Start the following program on connection” with the same path as above.

The result should look like this:

rdpclient-initprog

Note: For Terminal Server 2008, PowerFuse provides new a way to publish the MS Remote Apps (TS2008 Published Apps, if you will). As soon as the proper method has been verified, this article will be updated to reflect the relevant information. For now, use the above methods if unsure.

If you are installing on a Citrix server:

Have a citrix server ready

Install PowerFuse as mentioned in the common prerequisites. Install method is the same.

Start the PowerFuse console and go to RES PowerFuse Setup | Integration | Citrix Integration. Be sure to do this on the Citrix box itself, as the PowerFuse console only can talk to Citrix IMA if there is a Citrix server underneath. If you don’t, this entire node is not enabled. It looks like this:

pfc-ctx

Use the button highligted above; “Create a published application for the RES PowerFuse desktop”. This will fire up a easy wizard which will help you create a one-off published app, which in turn will start the PowerFuse environment. While in the wizard, you will be asked if you want to use the Defaults. Chances are you may not have set up defaults af this point. Even if you have, still chose No, as you want to ensure that Audio is going to be enabled (we’re playing video here, remember? :)

pfc-pub

Common stuff to configure afterwards

After you’ve completed the above step on either a terminal server or citrix box, you need to setup a couple of PowerFuse applications, to actually demonstrate the WSX capabilities. Before you continue though, take a moment and log in to the PowerFuse desktop to ensure it works as you expect.

Next, go back to the PowerFuse console and enter the Application Management node. Create a new application, using the add button.

As program command, use: %ProgramFiles%Windows Media Playerwmplayer.exe

As parameters use: /prefetch:1 \your-serverthefileshareBolt_Trailer.wmv

Call this app Bolt Trailer. The resulting application configuration should look like this:

scrshot6

Hit OK at the bottom to save.

Back in the Application tree, rightclick the Video via SBC and select Clone from the rightclick menu. Change the name of the cloned app to Bolt Trailer (WSX) . Finally, put a checkmark in the box “Run as Workspace Extension“:

scrshot7

How to test it

Okay, we’re done configuring. Here comes the fun part. Go back to the PowerFuse session.

  • If you’re still logged in, rightclick the Start button and select “Refresh Start Menu”. If you logged out, don’t worry about it, just log back in. The refesh will happen automagically when you login.
  • The two apps you’ve just created will be announced.
  • Try launching the Bolt Trailer app first. It should be somewhat jerky and look sucky in general. This is what we expected
  • Now try launching the Video via WSX app. If all goes well you will have a nice, smooth-running movieclip running, that appears like it’s running inside your remote desktop session.
  • The cool thing to point out is that the path to the media is exactly the same on both applications.
  • Notice also when the WSX enables application launches that the little double-arrow in the system tray changes color, when it’s being activated.

The buildingblock

For your convenience, I’ve put together a buildingblock with the definition of the applications. There are 4 applications in this block. Two for the Bolt Trailer and two for the Xaos Fractal generator. You may need to edit them a bit once they’ve been imported, as paths may not be consistent with the paths you are using in your own lab environment. Also note, the buildingblocks do not contain the medias referenced above. You’ll have to download them yourself.

Anyway download the buildingblock here:  legobrick_red

No Comments

No comments yet.

RSS feed for comments on this post.

Leave a comment

Comments are welcome as always. Just do the math below. * Time limit is exhausted. Please reload the CAPTCHA.