您的位置:逆风者 易语言 易语言精华 正文
 添加时间:2007-11-07 原文发表:2007-11-07 人气:137

看起来像似去年编的eWinSock的增强版,实际上是重新编写的全新组件,UDP通信时可以取得发送者的IP地址和端口。

有两个组件:

一、异步套接字。为用户界面事件型的,接收发送连接都有事件通知。

逆@风@者

二、同步套接字。已经封装成了一个TCP服务器,虽然表面是事件通知,但是内部是创建多线程的。因为有人说原来的TCP服务器模块连接数太少,所以编了个组件试试。何为同步套接字?即发送后和接收时都要等待用户一段时间,在这段时间内有用户响应或者直到超时才返回,但因为是工作在辅助线程里,不会影响进程(主线程)。

 有详细的例程:下载网页、WEB服务器、UDP聊天的和上传文件

2.0#1版更新

1、异步套接字类型增加“置为广播型”、“是否可写”和“是否可读”方法。

2、TCP服务器类型的线程池改用龚辟愚的多线程支持库的源码,支持设置等待线程数、等待时间,堆栈大小。并支持在线程中创建和使用COM对象。可组建高性能的服务器。

3、修改了WEB服务器例子,支持断点续传和中文路径名。

4、增加了网络留言板的例子,做为B/S应用示范。

5、增加用做线程协调的程序段许可证类。

2.0#2版更新

修改了在WIN98ME下线程池不能使用的问题(原线程池代码的BUG,据说还有30%的人还在用WIN98,所还是要继续更新)

2.0#3版更新

同步套接字的“接收”方法增加超时错误码反馈,用于区分接收的数据为空时,是等待超时还是被用户断开连接。

这点很重要,因为这样可以相当有了客户端断开事件

例:

.版本 2
.支持库 eSocket

.判断循环首 (控制)  ' 为全局变量,停止服务器时要退出所有线程的循环
    数据 = 当前客户.接收 (5)
    .如果真 (数据 = {  })
        .如果 (当前客户.取错误代码 () = #错误代码.WSAETIMEDOUT)  ' 原因为超时,而非被用户断开
            输出调试文本 (“没收到数据,继续等待...”)
            到循环尾 ()
        .否则

            输出调试文本 (“被用户断开了”)
            跳出循环 ()
        .如果结束

    .如果真结束

    输出调试文本 (“外理数据:”, 到文本 (数据))
.判断循环尾 ()

2.0#4版更新

修改同步套接字在客户断开时发送死锁的BUG和修改服务器忙时会暂停的问题

2.1#0版更新

据部分网友说端口有时取出会为负,这是因为易语言没有无符号短整型(端口用的USHORT),所以干脆把所有端口的参数改变整数型的,这样就不会有负数的现象,但是连接或绑定端口实际有效范围只能是1~65535,超过就无效了,也有说是1~32767的。

2007862524713741.rar
下载:
rar 文件

如果你没有网页测试WEB服务器,这里有一个网页相册可做为测试用


2006101118435465909.rar
下载:
rar 文件

相关文章

图象的双线性插值旋转
系统辅助支持库1.3正式版
WEB浏览器支持库(1.0#1版)
对象用法大全(常用对象应用)例程
Grid++Report控件易语言版帮助+全中文NPK文
动态创建窗口组件模块
逐字分割例程(速度提高5倍)
3000年万年历模块源码
枚举对象类模块1.0
WMI应用例程-简易系统信息查询器
COM对象操作支持库(1.1#0版)
用易语言编写IE的BHO插件
因特网服务支持库(1.2#1版)-用易语言编网
精灵助手支持库(1.4#3版)
GIF动画全操作支持库(1.2版)
Grid报表+小型仓库管理系统
用易自带控件做的端口映射器(端口数据转发
《易精经》前三章
汉化Visia Compiler汉语编程系统EMS0.5版编
易键录—鼠标键盘录制、模拟

相关评论


本文章所属分类:首页 易语言 易语言精华   支持库大全

  热门关键字: