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?
What would be the "clean" way in theory?
Martin