Kuba Ober wrote:
On Sunday 25 September 2005 05:37, Ken Larson wrote:
I'm using wine to access a particular proprietary DLL (I don't have the
source for it) on Linux.  The way I'm doing this is to write an EXE that
wraps the DLL, and makes all of the functions available via socket
request and response messages.  My linux program has access to the
functions of the DLL by sending socket messages to the EXE running under
wine.  2 questions:

1. My DLL/EXE uses no calls to pop up graphical windows, so
theoretically no display is needed.  Of course wine needs a display
because it does not know that an EXE won't make such calls.  Is there a
way to run wine with a null or dummy display - so that it is effectively
running headless?

2. The sockets trick was the simplest way I could figure out how to do
IPC between a linux process and a wine process. However, is there are any better or faster way to do this? As far as I know I can't use

Your .exe can make regular linux syscalls as it's really running on linux. So you can essentially do whatever a regular linux application would, given constraints enforced by wine's signal handling and such. But all simple things like opening a pipe, using ipc() call etc will work. The only thing is that you need to code syscall() and a couple of wrappers for specific syscalls you want to use, but that's a simple matter and glibc sources are a reasonable reference for that.

Cheers, Kuba



This assumes that I'm using winelib, correct? (I currently am not, I'm compiling on windows, but considering using winelib instead)

Thanks,

Ken



Reply via email to