我有一个使用Winsock进行网络连接的程序,我们现在的一个要求就是将程序移植到Linux上.阻止我们这样做的唯一因素是Winsock.
我的问题是:我可以轻松地将其移植到Linux实现中吗?
是否有任何陷阱我应该注意,如果我只是包含适当的头文件,我必须要处理什么样的事情?
谢谢你的帮助!
我发布了代码,但由于法律原因,我不能不幸.
但是,我们的代码确实使用了以下内容:
WSAStartup(..)
WSACleanup(..)
Socket(..)
sendto(..)
recvfrom(..)
ioctlsocket(..)
setsocketopt(..)
最佳答案
这取决于您是否使用任何特定于Windows的网络功能,或者您只是主要使用大多数与BSD兼容的API.
因此,如果您使用重叠的I / O和I / O完成端口以及Winsock API的其他高级部分,那么移植将非常困难,如果您只是使用BSD兼容的东西,那么应该很容易写一个薄的翻译层,甚至只是在Windows特定的ifdef中有winsock启动和关闭的东西……
这可能会有所帮助:http://tangentsoft.net/wskfaq/articles/bsd-compatibility.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。