Thanks, Martin!
EOF conditions are nasty. Seems we got it wrong... Please try the following patch (it should solve your problem). However I guess it needs regression testing because it changes overlapped ReadFile() semantics drastically. If this condition turns out to be right, we may actually be able to get rid of the special treatment of sockets in FILE_AsyncReadService().
Yes, the file read routine seems to work now. However the application doesn't run completely yet. But that's another problem, I think...
-- Martin Fuchs martin-fuchs@gmx.net