Hi Martin,
Each DLL should only import standard win32 api functions exported by other (lower level) DLLs. Where possible, the code should be able to be compiled and run on a windows box. (ok, that excludes kernel, gdi, user, winsock, etc). That is necessary to support dll=native linking. In theory, we should only have to implement ntdll and the device driver interfaces, then Microsoft's kernel, gdi, user, etc. would all run on top of those too. Practically, some of our low level DLLs need the wineserver interface. Your client side register_async() func should be present in all the dlls that use it because Windows has no equivilent export from NTDLL (or any other dll). Maybe you could create an inline function in a header? My guess is that WinNT implements WSARecv() and ReadFile() using something like NtReadFile(). http://www.osr.com/ntinsider/1996/native.htm Mike > On 16 Jan 2002, Alexandre Julliard wrote: > > > Also note that because of dll separation you cannot use functions like > > register_async() from winsock. If absolutely necessary they could be > > exported, but I think it would be much better to use straight server > > calls (and in theory these functions shouldn't be used from comm.c > > either). > > Hmm. I guess I don't fully understand dll separation. Are you telling me > that the scheduling mechanism for async requests shouls be implemented > separately in each DLL? If so, I could have spared my efforts to build > a "generic" interface to async requests. I'd just mention that > this would be error-prone, because different parts of wine with > equivalent functionality would need to be maintained. Note > that an app is allowed to mix ReadFile() and WSARecv() calls > for a socket (however braindead that would be). I'd assume that > in Windows there must be a hidden layer for asynchronous requests > somewhere, too, or do you think their respective code is completely > separate? ------------------------------------------ mailto:[EMAIL PROTECTED] ph +82 16 430 0425 __________________________________________________________________ Get your free Australian email account at http://www.Looksmart.com.au