Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Microsoft GUI X

An X-Client Wrapper for Microsoft Windows? 62

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)?"
This discussion has been archived. No new comments can be posted.

An X-Client Wrapper for Microsoft Windows?

Comments Filter:
  • by DarkVein ( 5418 ) on Friday February 21, 2003 @07:10AM (#5351284) Journal
    Recently I discovered Cygwin's ability to run XFree86 in rootless mode (startx -- -rootless)

    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.

  • Citrix (Score:3, Interesting)

    by bob_dinosaur ( 544930 ) on Friday February 21, 2003 @07:24AM (#5351314)
    allows you to export a single application rather than a full desktop, so it appears as if the app is running on a local machine instead of the server. I'm not sure if WTS supports it, but it's worth a try. Oh, and it doesn't play well with window-managers like Vern.
    • Re:Citrix (Score:5, Informative)

      by scrybe_treo ( 626898 ) on Friday February 21, 2003 @09:44AM (#5351745)
      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'll 2nd this recommendation. I run Linux exclusively at home, but my employer of course uses Microsoft for email, networking, office, etc. There is a Citrix ICA client for Linux, and it works with Mozilla if you want to use the web portal. Also, you can map a local directory to a drive letter within the Citrix environment, so you can share files across the systems.

        Combine with our two-factor authentication and running over https, there's enough security to satisfy a lot of the suits' concerns.

        It's very weird to see Outlook '98 running as just another window on my Linux desktop!
      • OTOH, Citrix can be slow and expensive. Windows wasn't really designed for networking so simple stuff like scrolling through a document on the server can eat up large amounts of CPU.

        A question on the pricing, I guess you still have to buy client licences for Win2K Server in addition to the Citrix costs?

        It certainly helps with the management of applications (you just deploy on the server). The price differentials now for clients means that you end up with 8 users killing the 1GHz server dead, whilst they have 1.6GHz systems on their desktops doing almost nothing.

    • Re:Citrix (Score:2, Insightful)

      by GigsVT ( 208848 )
      Citrix is incredibly fast too. One downside is that it is very picky, and the mode you can put it in where you can resize the application window makes some applications unhappy. In other words, it's not nearly as transparent as X, but it is insanely fast and bandwidth efficient.
  • This would be a good thing to have for Mac OS X, too. I'm not holding my breath for either, though.
    • Yeah. NeXT did that trick and did it quite well.
      I was expecting remote displays in the OS X public beta
      but it's still not there. VNC fills the gap somewhat but
      it's pretty slow. I think I head once that OS X can't do it
      because of how they had to rework the display layer so
      you couldn't grab stills from DVDs, which Apple had to
      to to be license complient. Or maybe it's because they
      are not using Display PostScript.
      • They're using Display PDF which is substantially similar but dumbed down a little. I'm sure they could put a hook in to let you grab anything but the DVDs, intercepting the drawing calls.

        But they're at 10.2 already and haven't yet included an X server with the distribution, I'm not hopeful for X client support any time soon.

        Hopefully they get that new "optimized" X server into 10.3.

        Ob-On Topic: Is there any free PC-Anywhere type project for Windows that intercepts GDI calls? That might be the best starting point.
      • It is just as possible to implement these features as it was for NeXTSTEP and OpenStep. However, when Apple was reimplementing the basic graphics engine (Quartz- Display PDF) to use PDF instead of PS, they choose not to implement the remote display features. Which is a shame.
  • Someone finally got rootless mode working on Cygwin? Neat.
  • by Anonymous Coward
    I work in retail, for the time being. Recently, they put in new time clocks and scheduling software.

    The machines scattered around the store are widely varied and many of them are quite new, but all of them have the same software: Win95, and some Novell shit that looks more like a dieing gasp than a functional program.

    The point? These machines suck, overall.

    But that's not really the point, is it? No.

    The scheduling software runs on a Win2k AS box somewhere in the store, and uses 8-bit RDP for local display. You just run the scheduling app like any other app, and a Win2k startup banner appears in the middle of the monitor, just like any other window... It runs quite fast once the session boots up.

    RDP is, therefore, more flexible than the poster appears to give it credit for.

    And the trick, therefore, is not some funky-ass, nonexistant X/Win32 translation suite, but just to use existing, native protocols, and one of the many free RDP clients available with X output.

    Nevermind, of course, that licensing for Win2k AS is hideously expensive. You've all got an eye patch sitting around somewhere - if not, just "borrow" one from a friend.

    • It's not so much that I don't want to use RDP (even though I will need an translation layer in that case) more that I didn't want answers like "Use VNS, or Use rdesktop".

      S
    • I don't know if advising people to just pirate commercial software does anybody any help. We all know there's ways to get this done with money, we want to know if there's a native way to do it inside the OSS framework.

      A lot of us have an old windows machine laying around just to handle a special app for work (I VNC to one here just to do my timesheets every week). Getting a windows app to output onto my X Server would be the single most convenient addition to my system to date, and I don't feel like breaking the law to get it done, thank you very much.
  • by jeorgen ( 84395 ) on Friday February 21, 2003 @07:34AM (#5351335)
    If you want to get a window on Linux with one single Windows application in it, the screen sharing application tightvnc [tightvnc.com] has a beta [tightvnc.com] (se bottom of page) where you can e.g. share just one window instead of the whole screen. they've named it partial desktop sharing

    /jeorgen

  • by khanyisa ( 595216 ) on Friday February 21, 2003 @08:25AM (#5351472)
    No, there are no real X-Clients for Windows currently - I wrote that message you linked to. Like others have suggested, you can use either VNC or RFB to accomplish similar ends.

    There would be amazing advantages to doing it differently though - for more discussion on this see XOpenWin [redhat.com]

    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 [redhat.com])
    • 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!
  • Slight restatement (Score:5, Informative)

    by Masem ( 1171 ) on Friday February 21, 2003 @08:32AM (#5351490)
    In Cygwin's XFree: "-rootless" gets you windows without any window decorations at all unless you start an X window manager as well in the session, which gives you X type decorations while in Windows. Of late (since start of 2003?), Cygwin now supports "-multiwindow" which is like rootless, but give control of the window decorations and handling to the Windows OS, thus making such windows appear no different from the other apps you have up.

    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.

    • by Anonymous Coward on Friday February 21, 2003 @10:32AM (#5352010)
      You don't have to set DISPLAY when you use ssh.
      Just use "ssh -X -C remotemachine".
      The -X flag will handle setting DISPLAY for you.
      The -C compression flag is optional,
      but usually speeds up remote X apps.
  • DESQview/X (Score:5, Interesting)

    by Lord Sauron ( 551055 ) on Friday February 21, 2003 @09:39AM (#5351724)
    I read some people here say there isn't such thing YET, but as a matter of fact, there WAS. Unfortunatelly, no more.

    In ye good ol' DOS times, there was DESQview/X [cmu.edu], that allowed you to run Win 3.1 in a X-Window, and display it on any X-Server. It could also turn any 386 w/ DOS in a X-terminal.

    Pretty cool stuff, but probably little market share. You can see screenshots here [passagen.se]. More info here [bgdf.com]. If you don't care for 95/2000/XP support, as it doesn't have it, you can download DESQview/X here [chsoft.com] (I didn't test it, though.
    • Re:DESQview/X (Score:3, Informative)

      by RevAaron ( 125240 )
      This isn't what the poster was asking about. DV/X exported the entire Win 3.1 window to X11- not individual applications.

      DV/X was way cool though. Even cooler than regular Desqview- and unlike Win3.1, at the same time, could actually mutlitask between a terminal window downloading something from a BBS and another DOS program. :P
  • Alkit VNC (Score:4, Informative)

    by richardneish ( 464862 ) on Friday February 21, 2003 @10:13AM (#5351902)

    I know you specifically said "not VNC/RFB", but Alkit VNC [alkit.se] 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.

  • There's a library called "Detours" from Microsoft Research that aids intercepting Win32 calls.

    http://research.microsoft.com/sn/detours/
  • How perverse would that be?

    Use WINE compiled on win32 with the cygwin runtime to execute a windows app, but set WINE's display variable to the remote machine.

    I built the mtools package once upon a time with cygwin to copy files into and out of a Bochs disk image file. But WINE would be way out there.
  • by Jerf ( 17166 ) on Friday February 21, 2003 @01:33PM (#5353420) Journal
    It may seem obvious, but if you can run the program under Linux in Wine, you can export the display anywhere you want it to go. Don't recommend it for games, but I did it once for a "real application" over my LAN once, just to try it, and it works fine.

    Of course Wine doesn't run everything, but my experience is that if it does run something, it runs it stably. Try both wine and winex (the latter even if you aren't trying to run a game, I've had mixed experiences with both), and if it runs the app(s) you're looking to share, you're "done".

    I know it's not perfect and I know it's not quite what you're looking for, but sometimes you have to take what you can get.
  • This is one of those times where "old" fxrts like me tell nostalgic war stories that begin with "You used to be able to do that...."

    You used to able to do that with Desqview/X [slashdot.org] but Microsoft's "innovations" sidled it out of the market.

    Now let me tell you about my what my late-1970s VCR could do that modern ones can't...

    • Just what could your 1970's vcr do?
      • Just what could your 1970's vcr do?
        Here we go offtopic....

        It had a wired remote control that had a silver slider bar that would allow playback in any speed from 15x to 1/4x. It had a patented chip that made the sound intelligible at any of those speeds. In other words, when you played the program at 4 times normal, the sound stayed live and instead of hearing people talk like Mickey Mouse, they talked in their regular voices but 4 times faster. Some mini-tape recorders of that time got the same technology.

        It had skip and rewind to mark where any time your made a new recording it would put a undetectable audio mark on the tape where you can skip forwards or backwards to the mark.

        The whole thing was mechanical so when you pressed play or rewind cams and gears and belts would come into play with a sequence of clunk-clunks-clunkc to change modes by pushing up and down on the piano keys on the front.

        It was one of the first VCRs with a remote control. I still have tapes I recorded in those days, like the original Lathe of Heaven from PBS and Walter Cronkite's last CBS Evening News.
    • Now let me tell you about my what my late-1970s VCR could do that modern ones can't...

      Flash 12:00 in brighter blue?
  • XWinX (Score:2, Informative)

    by homer_ca ( 144738 )
    XWinX [sourceforge.net] is a similar project that exports a windows desktop to a remote X server. It can't run rootless yet, but that is a planned feature.
  • This is a great question and thread. I think it shows very well that X's network transparency is a great feature and is very useful. --adam
  • Xwin32 [starnet.com] looks to be what he is looking for. X server for windows. Seems to be whats needed here.
    • nope

      he is looking to export the display of a windoze box. XWin32 does the contrary: it allows you to open apps running on a unix machine on your windows machine--another one of those is exceed [hummingbird.com], which can be used with the PuTTY ssh client for example.

      The contrary is much trickier, and usually involves the use of windows terminal server, as outlined in posts above.
  • I used NCD WinCenter in conjunction with MS Windows NT 3.51, later Citrix bought if off and renamed it UIS, Unix Integration Services or something the like. Had MS Office displaying nicely in my 21-inches Trinitron Sun Solaris SPARC system. Wonderful!

    Perhaps you can find them in some abandonware site?
  • There is a quick and dirty solution to this and I use it all the time.

    It is an RDP client that will connect to a Terminal Server and give you an windows desktop. You just need to type this from the command line.

    rdesktop -s app.exe myserver.com

    You can get rdesktop from http://www.rdesktop.org.

    One of the best Windows/Linux Open Source utilities out there.

    Joe MacDonald
  • Are your connections secure? I don't see it noted here.

    You can have all the cool toys in the world but if you're passing info in clear text, why even bother with all this?

    Citrix can do the job for numerous 'nix platforms.

    You also might want to check out WRQ as they have been perfecting Excellent, Secure X Emulation products for many years.

    Dolemite
  • Win4Lin ? is that what you want?

The use of money is all the advantage there is to having money. -- B. Franklin

Working...