用WINSOCK API实现同步阻塞方式的网络通讯

     在VB中进行网络通讯时,一般都爱使用Winsock控件,但此控件有两点缺点,一是需要一个窗口(当然也可以修改vbp文件,实现无窗口加载Winsock控件),二是通讯方式为异步非阻塞的,对于某些基于应答式的协议来说,比如HTTP、POP3、SMPT等,使用阻塞方式往往要方便得多,而且代码流程也清晰得多,增强了可读性,更不用说灵活性了(比如超时设置、缓冲区设置等)。虽然网络上有一些使用API编写的通讯类,但大类使用了WSAAsyncSelect方式,完全是Winsock的API版本,根本没啥意义,而且有的代码还不能很好地运行,为此,我使用API基于SELECT方式编写了一个同步阻塞方式的客户端通讯类,用来处理应答式网络协议,在实际工作中,取得了很好的效果,现将代码公布如下:

 

    另外,以后我还将贴出基于事件方式WSAEventSelect的客户端通讯代码,以及基于完成端口的服务器端VB多线程网络通讯代码,不过需要一段时间,因为这些日子有点忙,希望读者见谅。 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值