Windows Socket网络编程学习笔记一

Posted explorer101

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows Socket网络编程学习笔记一相关的知识,希望对你有一定的参考价值。

作者:朱金灿




如何理解Windows Socket?


我的理解:Windows Socket相当于Windows平台上两个网络实体开辟的一条通信通道,这条通信通道的实现细节对网络双方是不可见的(呵呵,你就知道它是Windows制造)。通过这条通道,网络双方可以传输各种数据。


你可能急不可待地问这条通道是怎样开辟的呢?下面我以服务器段和客户端作为网络双方进行说明。



 这样你看明白了吗?服务器和客户端之间的连接实际上是服务器端Socket和客户端Socket之间的连接。那么在程序中具体如何呢?实际上很简单,就是在服务器端程序创建一个Socket类对象,在客户端程序创建一个Socket类对象,然后把连接、数据传输等网络通信等工作交给他俩去做。


了解了Socket通信模型,你是不是觉得Windows Socket网络编程不像想象中那么难呢?然后你可以去了解MFC中的Socket类CAsyncSocket和CSocket类的用法,建议你重点看看那篇《Windows Sockets: Socket Notifications》以及下面的



•   Windows Sockets: Using Class CAsyncSocket

•   Windows Sockets: Deriving from Socket Classes

•   Windows Sockets: How Sockets with Archives Work

•   Windows Sockets: Blocking

•   Windows Sockets: Byte Ordering

•   Windows Sockets: Converting Strings

    其实MFC中的Socket类和CWnd类有一点是相似的,就是有一些消息激发函数。你需要理解什么条件下这些函数会响应。最后我建议你看懂《Windows Sockets: Socket Notifications》的例程(点击Sample链接),那是一个简单的聊天程序,这对理解Socket很有好处(我就是从那得到启发的)。


以上是关于Windows Socket网络编程学习笔记一的主要内容,如果未能解决你的问题,请参考以下文章

网络编程学习笔记:Socket编程

Windows编程课程学习笔记

Windows编程课程学习笔记

Socket网络编程学习笔记

python 3.x 学习笔记13 (网络编程socket)

Socket网络编程学习笔记 网络编程Socket与TCP/UDP