An X-Client Wrapper for Microsoft Windows?
S asks: "In my opinion, one of X11's most underrated features is the ability
to export the display of an [X] application to an X-Server that can be physically separated from the application's host (use a remote display). I have used this countless times to dramatically increase my ability to 'get stuff done' from a distance. Recently I discovered Cygwin's ability to run XFree86 in rootless mode (startx -- -rootless) where there is no main X root window, and imported displays get their own 'native-looking' window on the Microsoft Windows platform. This also has saved me much headache when working from a Windows machine to do Linux-type things. My question is: Is there some way to export the display of Microsoft Windows windows to a remote X-Server? I'm not talking VNC/RFB here, and terminal services (via rdesktop) ALMOST fits the bill, but I don't want a root window. I want to simply export the display of (say... photoshop) to my X workstation. Googling is not an easy task; 'windows' is too much of a generic term to get usable results. What I have found, however, suggests
Wine as a buffer between native Windows GUI calls and the X protocol, but offers no actual solution. Does anyone know of software that allows allows Windows to export the display of
its windows to an X server (ie, an X-Client wrapper for Windows)?"
My comment isn't really helpful, but I wanted to chip in with a clarification. Rootless mode is not a feature of Cygwin, but XFree86 itself. It is of primary use for MacOS X users who want to run X apps [locally or not]. It is also useful for running a second X server on top of another, though the applications of that are particular.
I'm as mimsy as the next borogove but your mome raths are completely outgrabe.
There would be amazing advantages to doing it differently though - for more discussion on this see XOpenWin
although nothing has yet been accomplished through this project. The key things to do which would make this possible are:
- separate out the Wine GDI and x11drv dlls (see this message)
- port these dlls to cygwin
- persuade windows to use them in place of the normal gdi
If anyone is really interested in that solution, it will take time and effort, but is definitely possible. Join the mailing lists!My only nits about either modes is that you still have a root X window (standard grey crosshatch) that's started minimized but otherwise sits in the process list and can sometimes make quick switching a bit more difficult without activating the wrong X app. I'd wish that the Cygwin X server could be started as a background service such that 1) it stays off the process list, and 2) to get an xterm to a remote computer up, I would simply have to ssh to that computer via putty or cygwin's ssh, point DISPLAY back , and let loose the X applications, as opposed to having to start the X server on Windows manually each time.
"Pinky, you've left the lens cap of your mind on again." - P&TB
"I can see my house from here!" - ST:
To expand on this, Citrix Metaframe runs on a windows 2000 Application Terminal Server. This adds a lot of manageability and the ICA protocol. You can access applications in "seemless" mode with the modern unix clients. While it is extremely cool and works very well it's not a solution for a single user but more for a department or enterprise level. This is mostly due to cost. Something like 2000+ dollars for the product, 300+ dollars for each connection licence, and 85 bucks for every pre-windows2000 client. Given the potential benefits it is well worth the price if you can avoid having 2 pc's on each desk.
Disclamer: I am a CCEA and CCI working for a citrix implementer (http://www.vector.com) but it is a blast!!!
Disclamer Disclamer: I just typed this whole message on my treo300 and I'm just starting to have an attack of "nintendo thumbs"
I know you specifically said "not VNC/RFB", but Alkit VNC may do what you want. It is a modified version of WinVNC that allows you to share a single window instead of the entire desktop.
I don't know what relationship (if any) it has to the modified version of TightVNC mentioned in another thread, but I've used it and it works.