This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: X client wrapper for Win apps?


Jehan!

	I think you may have stumbled upon something!

	You joke about the solution being Wine, but that may not be far from the
truth.

	First, some history; a few years ago I wrote a TCPIP stack (a Winsock) that
replaced the Microsoft one for wireless networking. At some point, I wrote a
driver that let you use both stacks simultaneously, so it can be done
without being circular, and there are plenty of ways it can be handled
elegantly.

	Anyhow, back to what I was saying about your idea of Wine as a solution:

	It COULD be done! Admittedly, it might not be a snap, but Wine already uses
a POSIX layer to accomplish what it needs to do.
In our case, it would use Cygwin!

Talk about a truly engrossing project!


-----Original Message-----
From: cygwin-xfree-owner@cygwin.com [mailto:cygwin-xfree-owner@cygwin.com]On
Behalf Of Jehan
Sent: Thursday, September 19, 2002 12:05 PM
To: cygwin-xfree@cygwin.com
Subject: Re: X client wrapper for Win apps?

Stuart Adamson wrote:
>>Every Windows draw command is translated into calls to a GDI
>>driver. this
>>driver is either the driver of the graphics card or a
>>printer. The people
>>from wine already have written a driver which exports a GDI
>>interface and
>>maps all calls to X11. Maybe this is a starting point.
>
>
> But xfree86 will also be using this interface to draw to the screen (as
> will the logon box etc).  I can see this becoming rather circular ....
>
> You need to be able to set the GDI context per application.
>
> Maybe the way forward is to filter calls to user32.dll (where most of the
> basic
> windowing functions end up).  By filtering I mean renaming user32.dll to
> user32-real.dll and writing your own user32.dll which either sends
requests
> to
> X11 or to user32-real.dll, depending on the process id of the requesting
> process.

Oh nice! I'll then look forward to the new Windows service pack and the
number of new posts in the mailing about XFree being broken after the
upgrade.

But I have a better idea, replace the kernel32.dll with our own that
will convert Windows calls into a Linux/BSD/Un*x calls. That way,
instead of having Windows window showing in Xfree running in Windows,
you'll just have Windows on top of Xfree. We would also have a perfect
Unix layer for Windows then, we won't need Cygwin anymore, we would use
Linux/BSD/Un*x directly. It will also add to the
security/performance/whatever.

Oh wait, that's WINE isn't it? ;)

        Jehan



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]