Check ur file system and the filesystem n their machine normally this happens if there are filesystem differences FAT or NTFS . Or check with which Service pack they are running and what is you service pack of OS. also might be the case it requires Dotnet framework which you machhine doesnot have. Please see your event log and let me know cause of crash in your application .
So MFC's CSocket caused problems in your code and you want to go to raw sockets. Why? Wouldn't it be quicker to fix your code or use one of the many existing wrapper classes. There are blocking and event based socket classes out there, in alphabetical order:
It seems to be a C++ world stigma... instead of putting development effort into low-level coding, how about using a stable, documented library and improve the application with the extra time? I think it is not trivial to write a stable, flexible, efficient networking core. Perhaps you require at a later point HTTP proxy support, session handling, encryption or something else that a library would already provide. To be honest, other languages like Java or Python offer a better collection of reusable functionality, but at least for networking there are some good choices for C++ too.