WINEGATE.DLL: Wine gateway to native Unix libraries

Ben Klein shacklein at gmail.com
Fri Feb 13 23:31:27 CST 2009


2009/2/14 Martin Hinner <martin at hinner.info>:
>  Purpose of this Wine DLL is to allow Windows applications to use
> directly Unix library functions. This is useful  for example for
> applications which talk to specific drivers  and it's not
> efficient/possible to create system native DLL  for such driver or
> library. Win32 app. vendor is required only to detect execution under
> Wine and load proper native library.

Windows apps don't call *nix libraries directly as is, so I'm not sure
I understand the purpose here. I can see it could potentially be
useful for porting apps using winelib, but I don't see how it can be
useful for full win32 apps precompiled for Windows systems.

>  I am sure there will be a lot of people arguing that Win32
> application SHOULD NOT be modified to behave differently in Wine.

The main reason for this is if the win32 app depends on some function
of Wine caused by a bug or missing feature, then a future version of
Wine will break the application (because the application is already
broken, and only behaves correctly under broken Wine).

> I agree that in most cases it's better to fix Wine than applications,
> but there are real world problems that cannot be efficiently solved
> outside the application. One good example is when Win32 app has to
> talk to custom hardware. In many cases there are native Linux drivers
> that have different API/etc and it is very very difficult to create
> wrapper library between Windows-style and Linux/Unix-style drivers. In
> such cases it's much easier to modify source code of Windows app to
> use either Linux or Windows drivers/DLLs/etc.

Why not use winelib for these cases if *nix support is important
enough to modify the source so it works nicer in Wine?



More information about the wine-devel mailing list