views:

2077

answers:

7

Can RDP clients launch a remote application and then only display that application (and not the desktop)? The application would appear fullscreen within the client and if the application were closed the session would end.

A: 

I think Citrix does that kind of thing. Though I'm not sure on specifics as I've only used it a couple of times. I think the one I used was called XenApp but I'm not sure if thats what you're after.

Liam
XenApp seems to be more about application virtualization than remote access (although I see it has remote option). I'm also looking for something in the open source camp (such as rdesktop).
Richard Dorman
Under the hood the key component of XenApp is still server-based computing (just as it was a decade ago when the product was called MetaFrame). It's just that marketing fashions have changed, and the product has broadened to contain more than just the app remoting core.
Steve Gilham
A: 

Not to my knowledge. For your consideration: MetaVNC

lance
Looks like MetaVNC does something similar to what I need but across multiple applications.
Richard Dorman
A: 

This is called "seamless" mode. rdesktop, the RDP client for Unix, is capable of this. From the manpage:

   -A     Enable SeamlessRDP. In this mode, rdesktop creates a X11 window for each window on the server
          side.  This  mode  requires  the  SeamlessRDP  server side component, which is available from
          http://www.cendio.com/seamlessrdp/.  When using this option, you  should  specify  a  startup
          shell which launches the desired application through SeamlessRDP.

See mentioned Cendio website for more information.

ypnos
+2  A: 

Yes, you can change the default shell from Explorer.exe to a specific application.

In Regedit, navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. The current shell should be Explorer.exe. Change it to YourApp.exe. That will change the shell for all users who log on to the machine. If you only want to change it for a specific user, go to the same key in HKEY_CURRENT_USER instead.

chrissr
Note: Users will still be able to CTRL-Alt-Del and access other applications. You may want to disable CTRL-Alt-Del for the account or group that will be logging in via RDP.
chrissr
This effectively disables the user to log in regularly.
ypnos
A: 

RDP will not do that natively.

As other answers have said -- you'll need to do some scripting and make policy changes as a kludge to make it hard for RDP logins to run anything but the intended application.

However, as of 2008, Microsoft has released application virtualization technology via Terminal Services that will allow you to do this seamlessly.

James
+2  A: 

Using an RDP connection file you can set the alternate shell to be your application; the file syntax is like

alternate shell:s:c:\winnt\system32\notepad.exe

and you pass that as a command-line argument to mstsc.exe; this similar to chrissr's solution, but without affecting every RDP session you launch. A fuller summary of settings here.

Steve Gilham
A: 

Another way is shown in this CodeProject article:

http://www.codeproject.com/KB/IP/tswindowclipper.aspx

The basic idea is to create a virutal channel that sends the windows position of the app(s) you want to show, then only render that part of the window on the client.

Jon Clegg