易语言Socket异步通迅测试源码
系统结构:客户连接,客户1,客户2,客户3,客户4,客户5,客户6,客户7,客户8,客户9,客户10,客户断开,启动,停止,监听,发送文本,发送,接收,接收文本,断开连接,取服务器端口,取服务器IP,取客户IP,取客户端口,异步选择,检查连接状态,连接,断开,发送文本,发送,接收,接收文本,取本机端口,异步选择,检查连接状态,配置,关闭,接收,发送,取本机端口,取本机名,取本机IP组,窗口消息处理,客户进入,客户离开,数据到达,显示信息,窗口消息处理2,断开连接,数据到达客户,服务断开,显示信息2,setsockopt,getsockopt,WSAGetLastError,WSAIsBlocking,WSACleanup,发送文本_send,send,recv,接收文本_recv,WSAStartup,htons,ntohs,socket,gethostname,getsockname,closesocket,connect,WSAAsyncSelect,inet_addr,WSACancelBlockingCall,inet_ntoa,bind,listen,accept,取字节集变量数据地址,API_调用子程序,API_调用子程序2,关闭内核对象,API_lstrcpynA,select,recvfrom,sendto,RtlMoveMemory,gethostbyname,getpeername,呼叫窗口函数地址_,设置窗口信息_,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ _按钮1_被单击
| |
| |------ 客户连接
| |
| |------ 客户1
| |
| |------ 客户2
| |
| |------ 客户3
| |
| |------ 客户4
| |
| |------ 客户5
| |
| |------ 客户6
| |
| |------ 客户7
| |
| |------ 客户8
| |
| |------ 客户9
| |
| |------ 客户10
| |
| |------ 客户断开
| |
| |------ _时钟1_周期事件
| |
| |------ _滑块条1_位置被改变
| |
| |------ _客户1_数据到达
| |
| |------ __启动窗口_将被销毁
| |
| |------ _客户1_连接断开
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |
======服务器类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 启动
| |
| |------ 停止
| |
| |------ 监听
| |
| |------ 发送文本
| |
| |------ 发送
| |
| |------ 接收
| |
| |------ 接收文本
| |
| |------ 断开连接
| |
| |------ 取服务器端口
| |
| |------ 取服务器IP
| |
| |------ 取客户IP
| |
| |------ 取客户端口
| |
| |------ 异步选择
| |
| |------ 检查连接状态
| |
| |
======客户类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 连接
| |
| |------ 断开
| |
| |------ 发送文本
| |
| |------ 发送
| |
| |------ 接收
| |
| |------ 接收文本
| |
| |------ 取本机端口
| |
| |------ 异步选择
| |
| |------ 检查连接状态
| |
| |
======数据报类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 配置
| |
| |------ 关闭
| |
| |------ 接收
| |
| |------ 发送
| |
| |------ 取本机端口
| |
| |
======网络通讯类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 取本机名
| |
| |------ 取本机IP组
| |
| |
======窗口程序集1
| |
| |------ _窗口1_创建完毕
| |
| |------ _按钮1_被单击
| |
| |------ 窗口消息处理
| |
| |------ 客户进入
| |
| |------ 客户离开
| |
| |------ 数据到达
| |
| |------ 显示信息
| |
| |------ _按钮2_被单击
| |
| |------ _停止_被单击
| |
| |
======窗口程序集2
| |
| |------ _窗口2_创建完毕
| |
| |------ _连接_被单击
| |
| |------ 窗口消息处理2
| |
| |------ 断开连接
| |
| |------ 数据到达客户
| |
| |------ 服务断开
| |
| |------ 显示信息2
| |
| |------ _时钟1_周期事件
| |
| |------ _按钮3_被单击
| |
| |------ _滑块条1_位置被改变
| |
| |------ _断开_被单击
| |
| |------ _按钮1_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ setsockopt
| |
| |---[dll]------ getsockopt
| |
| |---[dll]------ WSAGetLastError
| |
| |---[dll]------ WSAIsBlocking
| |
| |---[dll]------ WSACleanup
| |
| |---[dll]------ 发送文本_send
| |
| |---[dll]------ send
| |
| |---[dll]------ recv
| |
| |---[dll]------ 接收文本_recv
| |
| |---[dll]------ WSAStartup
| |
| |---[dll]------ htons
| |
| |---[dll]------ ntohs
| |
| |---[dll]------ socket
| |
| |---[dll]------ gethostname
| |
| |---[dll]------ getsockname
| |
| |---[dll]------ closesocket
| |
| |---[dll]------ connect
| |
| |---[dll]------ WSAAsyncSelect
| |
| |---[dll]------ inet_addr
| |
| |---[dll]------ WSACancelBlockingCall
| |
| |---[dll]------ inet_ntoa
| |
| |---[dll]------ bind
| |
| |---[dll]------ listen
| |
| |---[dll]------ accept
| |
| |---[dll]------ 取字节集变量数据地址
| |
| |---[dll]------ API_调用子程序
| |
| |---[dll]------ API_调用子程序2
| |
| |---[dll]------ 关闭内核对象
| |
| |---[dll]------ API_lstrcpynA
| |
| |---[dll]------ select
| |
| |---[dll]------ recvfrom
| |
| |---[dll]------ sendto
| |
| |---[dll]------ RtlMoveMemory
| |
| |---[dll]------ gethostbyname
| |
| |---[dll]------ getpeername
| |
| |---[dll]------ 呼叫窗口函数地址_
| |
| |---[dll]------ 设置窗口信息_
调用的DLL命令:
.DLL命令 setsockopt, 整数型, "ws2_32.dll", "setsockopt", , 置操作_
.参数 网络通讯标识符, 整数型
.参数 级别, 整数型
.参数 操作名称, 整数型
.参数 操作结构, 空闲
.参数 操作结构长度, 整数型
.DLL命令 getsockopt, 整数型, "ws2_32.dll", "getsockopt", , 取操作_
.参数 网络通讯标识符, 整数型
.参数 级别, 整数型
.参数 操作名称, 整数型
.参数 操作结构, 空闲
.参数 操作结构长度, 整数型, 传址
.DLL命令 WSAGetLastError, 整数型, "ws2_32.dll", "WSAGetLastError", , 取最后错误_
.DLL命令 WSAIsBlocking, 整数型, "ws2_32.dll", "WSAIsBlocking", , 是否阻塞_
.DLL命令 WSACleanup, 整数型, "ws2_32.dll", "WSACleanup", , 卸载Winsocket服务
.DLL命令 发送文本_send, 整数型, "ws2_32.dll", "send", , 发送数据(TCP,当这次发送数据未发送完时返回剩余字节数)
.参数 网络通讯标识符, 整数型, , s
.参数 缓冲区, 文本型, , buf
.参数 缓冲区长度, 整数型, , lLen
.参数 标志, 整数型, , flags
.DLL命令 send, 整数型, "ws2_32.dll", "send", , 发送数据_(TCP,当这次发送数据未发送完时返回剩余字节数)
.参数 网络通讯标识符, 整数型, , s
.参数 缓冲区, 字节集, 传址, buf
.参数 缓冲区长度, 整数型, , lLen
.参数 标志, 整数型, , flags
.DLL命令 recv, 整数型, "ws2_32.dll", "recv", , 接收字节集数据(TCP,当数据这次未接收完时返回剩余字节数)
.参数 网络通讯标识符, 整数型, , s
.参数 缓冲区, 字节集, 传址, buf数据(提供变量)
.参数 缓冲区长度, 整数型, , lLen
.参数 标志, 整数型, , flags
.DLL命令 接收文本_recv, 整数型, "ws2_32.dll", "recv", , 接收文本数据(TCP,当数据这次未接收完时返回剩余字节数)
.参数 网络通讯标识符, 整数型, , s
.参数 缓冲区, 文本型, 传址, buf数据(提供变量)
.参数 缓冲区长度, 整数型, , lLen
.参数 标志, 整数型, , flags
.DLL命令 WSAStartup, 整数型, "ws2_32.dll", "WSAStartup", , 初始化WnSocket服务
.参数 必需版本, 整数型, , wVersionRequired
.参数 服务信息, 套接字信息, , lpWSAData
.DLL命令 htons, 短整数型, "ws2_32.dll", "htons", , 转换为network 排列方式的数目
.参数 十六位主机命令, 短整数型, , hostshort端口号
.DLL命令 ntohs, 短整数型, "ws2_32.dll", "ntohs", , 转换为端口号-网络转换到本机
.参数 十六位网络端口, 短整数型, , netshort欲转换值
.DLL命令 socket, 整数型, "ws2_32.dll", "socket", , 创建套接字
.参数 协议族, 整数型, , af使用的通信协议的协议族
.参数 类型, 整数型, , lType流套接字类型
.参数 协议, 整数型, , protocol使用的通信协议
.DLL命令 gethostname, 整数型, "ws2_32.dll", "gethostname", , 取本机名,失败返回-1,成功返回0。
.参数 name, 文本型, 传址, 给变量,用于存放名称
.参数 namelen, 整数型, , 上一个参数的长度
.DLL命令 getsockname, 整数型, "ws2_32.dll", "getsockname", , 获取本地接口的地址信息(IP和端口)。成功返回0
.参数 s, 整数型, , 句柄
.参数 name, 套接字地址, 传址, 地址信息
.参数 namelen, 整数型, 传址, name长度,Sockaddr_in长度为16
.DLL命令 closesocket, 整数型, "ws2_32.dll", "closesocket", , 销毁套接字
.参数 套接字描述符, 整数型
.DLL命令 connect, 整数型, "ws2_32.dll", "connect", , 连接到服务器(TCP)
.参数 网络通讯标识符, 整数型, , s
.参数 名称结构, 套接字地址, , addr
.参数 名称结构长度, 整数型, , namelen(16)
.DLL命令 WSAAsyncSelect, 整数型, "ws2_32.dll", "WSAAsyncSelect", , 异步选择_ 本函数自动将套接口设置为非阻塞模式 0 表明是成功的
.参数 网络通讯标识符, 整数型, , s标识一个需要事件通知的套接口的描述符
.参数 窗口句柄, 整数型, , hWnd标识一个在网络事件发生时需要接收消息的窗口句柄
.参数 消息值, 整数型, , wMsg在网络事件发生时要接收的消息
.参数 事件, 整数型, , lEvent位屏蔽码,用于指明应用程序感兴趣的网络事件集合.
.DLL命令 inet_addr, 整数型, "ws2_32.dll", "inet_addr", , 点数格式转换为整数格式IP地址-到网络地址_
.参数 IP地址, 文本型, 传址, cp欲被转换的IP地址
.DLL命令 WSACancelBlockingCall, 整数型, "ws2_32.dll", "WSACancelBlockingCall", , 取消阻塞_
.DLL命令 inet_ntoa, 整数型, "ws2_32.dll", "inet_ntoa", , 将整数格式IP地址转换为点数格式(返回值是内存地址指针)
.参数 网络地址, 整数型, , lIn欲转换整数格式IP地址
.DLL命令 bind, 整数型, "ws2_32.dll", "bind", , 绑定一个地址和端口
.参数 套接字描述符, 整数型
.参数 地址结构, 套接字地址, 传址, 地址信息
.参数 结构大小, 整数型, , 地址信息长度(长度16
.DLL命令 listen, 整数型, "ws2_32.dll", "listen", , 监听
.参数 sockfd, 整数型, , 套接字描述符
.参数 backlog, 整数型, , 最多容纳客户请求数
.DLL命令 accept, 整数型, "ws2_32.dll", "accept", , 等待用户进入并接受连接
.参数 s, 整数型, , 套接字描述符
.参数 addr, 套接字地址, 传址, 地址信息
.参数 addrlen, 整数型, 传址, 地址信息长度(长度为16)
.DLL命令 取字节集变量数据地址, 整数型, , "lstrcpynA"
.参数 lpString1, 字节集
.参数 lpString2, 字节集
.参数 iMaxLength, 整数型
.DLL命令 API_调用子程序, 整数型, "user32.dll", "CallWindowProcA"
.参数 机器码, 字节集
.参数 程序指针, 子程序指针
.参数 参数1, 整数型
.参数 参数2, 整数型
.参数 参数3, 整数型
.DLL命令 API_调用子程序2, 整数型, "user32.dll", "CallWindowProcA"
.参数 机器码, 字节集
.参数 程序指针, 子程序指针
.参数 参数1, 整数型
.参数 参数2, 文本型
.参数 参数3, 整数型
.DLL命令 关闭内核对象, 整数型, "kernel32.dll", "CloseHandle", 公开, 关闭一个内核对象。其中包括文件、文件映射、进程、线程、security和同步对象等。涉及文件处理时,这个函数通常与vb的close命令相似。应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的 非零表示成功,零表示失败。会设置GetLastError
.参数 对象句柄, 整数型, , 欲关闭的一个对象的句柄;
.DLL命令 API_lstrcpynA, 整数型, "kernel32.dll", "lstrcpynA", , 取变量数据地址
.参数 lpString1, 文本型
.参数 lpString2, 文本型
.参数 iMaxLength, 整数型
.DLL命令 select, 整数型, "ws2_32.dll", "select"
.参数 nfds, 整数型
.参数 readfds, fd_set, 传址, 指向一组等待可读性检查的套接口
.参数 writefds, fd_set, 传址, 指向一组等待可写性检查的套接口
.参数 exceptfds, fd_set, 传址, 指向一组等待错误检查的套接口
.参数 timeout, 整数型, 传址
.DLL命令 recvfrom, 整数型, "ws2_32.dll", "recvfrom", , 接收数据(UDP)
.参数 s, 整数型, , 套接字描述符
.参数 buf, 字节集, 传址, 数据(提供变量)
.参数 len, 整数型, , 数据长度
.参数 flags, 整数型, , 0
.参数 from, 套接字地址, 传址, 来源地址信息(提供变量)
.参数 fromlen, 整数型, 传址, 地址信息长度(提供变量)
.DLL命令 sendto, 整数型, "ws2_32.dll", "sendto", , 发送数据(UDP)
.参数 s, 整数型, , 套接字描述符
.参数 buf, 字节集, 传址, 数据
.参数 len, 整数型, , 数据长度
.参数 flags, 整数型, , 0
.参数 to, 套接字地址, 传址, 目标地址信息
.参数 tolen, 整数型, , 地址信息长度
.DLL命令 RtlMoveMemory, , "kernel32.dll", "RtlMoveMemory"
.参数 hpvDest, 字节集, 传址
.参数 hpvSource, 整数型
.参数 cbCopy, 整数型
.DLL命令 gethostbyname, 整数型, "ws2_32.dll", "gethostbyname", , 成功返回内存指针
.参数 name, 文本型, 传址, 机器名称
.DLL命令 getpeername, 整数型, "ws2_32.dll", "getpeername", , 获取远端信息(已连接对方IP和端口)。成功返回0
.参数 s, 整数型, , 句柄
.参数 name, 套接字地址, 传址, 地址信息
.参数 namelen, 整数型, 传址, name长度,Sockaddr_in长度为16
.DLL命令 呼叫窗口函数地址_, 整数型, "user32.dll", "CallWindowProcA", , CallWindowProcA将消息传答窗口函数
.参数 前一窗口函数地址, 整数型, , lpPrevWndFunc
.参数 窗口句柄, 整数型, , hwnd
.参数 消息值, 整数型, , msg
.参数 附加参数1, 整数型, , wParam
.参数 附加参数2, 整数型, , lParam
.DLL命令 设置窗口信息_, 整数型, "user32.dll", "SetWindowLongA", , 在窗口结构中为指定的窗口设置信息 指定数据的前一个值
.参数 窗口句柄, 整数型, , hwnd,欲为其取得信息的窗口的句柄
.参数 窗口信息值, 整数型, , nIndex,请参考GetWindowLong函数的nIndex参数的说明
.参数 窗口信息新值, 整数型, , dwNewLong,由nIndex指定的窗口信息的新值
易语言类似易的KEY注册验证和KEY生成模块源码,生成钥匙文件,文本加密,钥匙文件注册,十六进制到十进制,文本解密...
易语言简易版超级列表框加入超链接源码,超级列表框置超链接,SendMessage_...
易语言监控tcp连接后续删除连接源码,GetPort,GetAscIP,API_GetTcpTable,API_LocalSize,API_CopyMemory,API_inet_ntoa,API_lstrlen,API_ntohs,API_SetTcpEntry...
易语言监控TCP连接API源码,GetPort,GetAscIP,API_GetTcpTable,API_LocalSize,API_CopyMemory,API_inet_ntoa,API_lstrlen,API_ntohs...
易语言电影信息采集器金牛报喜交流源码,采集信息,提取网页信息,读取海报...
易语言清除cookies模块源码,清空cookies,清空history,清空cache,清空cache文件,列出对应项目,清除项目,InternetSetOption,FindFirstUrlCacheEntry,FindNextUrlCacheEntry,FindCloseUrlCache,DeleteUrlCacheEntry...
易语言注册表监视源码,CreateEvent,RegOpenKeyEx,RegCloseKey,CloseHandle,RegNotifyChangeKeyValue,WaitForSingleObject,WaitForMultipleObjects...
易语言歌词同步源码,载入字幕文件,同步,滚动字幕...
易语言本地修改QQ群群公告源码,搜索QQ号,搜索QQ群,获取群公告,更改群公告...