(BTW HTML email is generally sort of frowned on here)
Unix doesn't run windows programs. I suggest you actually read some of the documentation at www.winehq.com http://www.winehq.com , especially the Winelib stuff.
Basically wine is a Unix program that understands the structure of Windows DLLS and exes. Wine itself runs, loads the dlls and exes into memory and executes them. Some DLLS are replaced by plug-compatible unix so's that interface to the lower levels. So CreateBitmap will eventually result in calls into probably X11 code.
Bill
-----Original Message----- From: Preetham [mailto:preetham@student.utdallas.edu] Sent: Tuesday, July 09, 2002 5:24 PM To: wine-devel@winehq.com Subject: newbie question
Hi all:
I have a very elementary question. How does the Winodws program run in Unix. For example, i write a program where i call the CreateBitmap() method, what happens. How is a dll called in the unix environment. From what i know, unix dlls are .so files. From the wingdi.h file in the wine\include directory, how does the unix OS know how to resolve the WINAPI call. If i am right, windows dll's are implemented in unix, how is this done. I'm kinda flustered at the moment, would appreciate the help Thanks, Preetham.
Thanx bill. But what i want to know is where exactly is this call(CreateBitmap will eventually result in calls into probably X11 code) done. I have looked into the documentation in winehq.com, i get a fair idea of how it is done, however when i look into the source code, im unable to understand much. What i want to know is, this program that loads the windows exe and which runs them, where is this program located. Also, the code where CreateBitmap is mapped into the Xlib, where is this code. I am looking at some kind of low level documentation, or atleast a place where i could start. Thanks, Preetham
----- Original Message ----- From: Medland, Bill To: Wine devel (E-mail) Sent: Tuesday, July 09, 2002 4:10 PM Subject: RE: newbie question
(BTW HTML email is generally sort of frowned on here)
Unix doesn't run windows programs. I suggest you actually read some of the documentation at www.winehq.com, especially the Winelib stuff.
Basically wine is a Unix program that understands the structure of Windows DLLS and exes. Wine itself runs, loads the dlls and exes into memory and executes them. Some DLLS are replaced by plug-compatible unix so's that interface to the lower levels. So CreateBitmap will eventually result in calls into probably X11 code.
Bill -----Original Message----- From: Preetham [mailto:preetham@student.utdallas.edu] Sent: Tuesday, July 09, 2002 5:24 PM To: wine-devel@winehq.com Subject: newbie question
Hi all:
I have a very elementary question. How does the Winodws program run in Unix. For example, i write a program where i call the CreateBitmap() method, what happens. How is a dll called in the unix environment. From what i know, unix dlls are .so files. From the wingdi.h file in the wine\include directory, how does the unix OS know how to resolve the WINAPI call. If i am right, windows dll's are implemented in unix, how is this done. I'm kinda flustered at the moment, would appreciate the help Thanks, Preetham.
Preetham wrote:
Thanx bill. But what i want to know is where exactly is this call(CreateBitmap will eventually result in calls into probably X11 code) done. I have looked into the documentation in winehq.com, i get a fair idea of how it is done, however when i look into the source code, im unable to understand much. What i want to know is, this program that loads the windows exe and which runs them, where is this program located. Also, the code where CreateBitmap is mapped into the Xlib, where is this code. I am looking at some kind of low level documentation, or atleast a place where i could start. Thanks, Preetham
----- Original Message -----
*From:* Medland, Bill <mailto:Bill.Medland@accpac.com> *To:* Wine devel (E-mail) <mailto:wine-devel@winehq.com> *Sent:* Tuesday, July 09, 2002 4:10 PM *Subject:* RE: newbie question (BTW HTML email is generally sort of frowned on here) Unix doesn't run windows programs. I suggest you actually read some of the documentation at www.winehq.com <http://www.winehq.com>, especially the Winelib stuff. Basically wine is a Unix program that understands the structure of Windows DLLS and exes. Wine itself runs, loads the dlls and exes into memory and executes them. Some DLLS are replaced by plug-compatible unix so's that interface to the lower levels. So CreateBitmap will eventually result in calls into probably X11 code. ...
You could start by going to your wine source dir and typing this:
find . -name *.c | grep CreateBitmap
or
find . -name *.spec | grep CreateBitmap
Le mer 10/07/2002 à 02:36, Michael Cardenas a écrit :
Preetham wrote:
Thanx bill. But what i want to know is where exactly is this call(CreateBitmap will eventually result in calls into probably X11 code) done. I have looked into the documentation in winehq.com, i get a fair idea of how it is done, however when i look into the source code, im unable to understand much. What i want to know is, this program that loads the windows exe and which runs them, where is this program located.
The code for wine is a bit scattered all over the place. The main executable (wine) is built in miscemu, but some source from elsewhere in the tree is used.
Also, the code where CreateBitmap is mapped into the Xlib, where is this code. I am looking at some kind of low level documentation, or atleast a place where i could start. Thanks, Preetham
[snip]
...
You could start by going to your wine source dir and typing this:
find . -name *.c | grep CreateBitmap
or
find . -name *.spec | grep CreateBitmap
tools/findfunc fills exactly that need. Usage: ./findfunc FUNCTION
-- michael cardenas lead windows compatibility engineer lindows.com . hyperpoem.net . "Be the change you want to see in the world" -Mahatma Gandhi
Vincent