易语言tcp服务器框架源码
系统结构:初始化模块,释放模块,创建套字接口并返回句柄,绑定套字接口并返回状态,取系统信息,ipv4_基于处理器的核心数量创建工作线程,ipv6_基于处理器的核心数量创建工作线程,设置套字接口监听状态,ipv4启动,ipv4工作线程,ipv4线程工作恢复,ipv6启动,ipv6工作线程,ipv6线程工作恢复,断开用户,释放套字,断开连接,查询对方是否断开,发送数据,取回所有数据,API调用出错信息,创建互斥体,等待互斥体所有权,释放互斥体所有权,删除互斥体,ipv4处理线程,ipv6处理线程,WSA初始化,WSA卸载,创建套字接口,主机序到网络序,ipv6_绑定套字接口,执行线程,ipv4_绑定套字接口,挂起线程,销毁线程,创建线程,设置套字监听状态,获取系统信息,ipv4_getpeername,ipv6_getpeername,获取客户,WSAGetLastError,FormatMessage,结束套字,创建一个互斥体,等待一个互斥体,释放互斥体,删除一个互斥体,接收数据,断开客户连接,send,
======tcp核心程序集
| |
| |------ 初始化模块
| |
| |------ 释放模块
| |
| |------ 创建套字接口并返回句柄
| |
| |------ 绑定套字接口并返回状态
| |
| |------ 取系统信息
| |
| |------ ipv4_基于处理器的核心数量创建工作线程
| |
| |------ ipv6_基于处理器的核心数量创建工作线程
| |
| |------ 设置套字接口监听状态
| |
| |------ ipv4启动
| |
| |------ ipv4工作线程
| |
| |------ ipv4线程工作恢复
| |
| |------ ipv6启动
| |
| |------ ipv6工作线程
| |
| |------ ipv6线程工作恢复
| |
| |------ 断开用户
| |
| |------ 释放套字
| |
| |------ 断开连接
| |
| |------ 查询对方是否断开
| |
| |------ 发送数据
| |
| |------ 取回所有数据
| |
| |------ API调用出错信息
| |
| |
======互斥体
| |
| |------ 创建互斥体
| |
| |------ 等待互斥体所有权
| |
| |------ 释放互斥体所有权
| |
| |------ 删除互斥体
| |
| |
======模块测试程序集
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ ipv4处理线程
| |
| |------ ipv6处理线程
| |
| |
======调用的Dll
| |
| |---[dll]------ WSA初始化
| |
| |---[dll]------ WSA卸载
| |
| |---[dll]------ 创建套字接口
| |
| |---[dll]------ 主机序到网络序
| |
| |---[dll]------ ipv6_绑定套字接口
| |
| |---[dll]------ 执行线程
| |
| |---[dll]------ ipv4_绑定套字接口
| |
| |---[dll]------ 挂起线程
| |
| |---[dll]------ 销毁线程
| |
| |---[dll]------ 创建线程
| |
| |---[dll]------ 设置套字监听状态
| |
| |---[dll]------ 获取系统信息
| |
| |---[dll]------ ipv4_getpeername
| |
| |---[dll]------ ipv6_getpeername
| |
| |---[dll]------ 获取客户
| |
| |---[dll]------ WSAGetLastError
| |
| |---[dll]------ FormatMessage
| |
| |---[dll]------ 结束套字
| |
| |---[dll]------ 创建一个互斥体
| |
| |---[dll]------ 等待一个互斥体
| |
| |---[dll]------ 释放互斥体
| |
| |---[dll]------ 删除一个互斥体
| |
| |---[dll]------ 接收数据
| |
| |---[dll]------ 断开客户连接
| |
| |---[dll]------ send
调用的DLL命令:
.DLL命令 WSA初始化, 整数型, "ws2_32.dll", "WSAStartup"
.参数 使用版本号, 短整数型
.参数 wsa信息, WSAData
.DLL命令 WSA卸载, 整数型, "ws2_32.dll", "WSACleanup"
.DLL命令 创建套字接口, 整数型, "ws2_32.dll", "socket"
.参数 协议族, 整数型, , ipv4=2,ipv6=23
.参数 套接字类型, 整数型
.参数 通信协议, 整数型
.DLL命令 主机序到网络序, 短整数型, "ws2_32.dll", "htons"
.参数 主机序, 短整数型
.DLL命令 ipv6_绑定套字接口, 整数型, "ws2_32.dll", "bind"
.参数 套字接口, 整数型
.参数 地址结构, ipv6通用地址结构, 传址
.参数 地址结构长度, 整数型
.DLL命令 执行线程, , "kernel32.dll", "ResumeThread", , 执行挂起的线程,执行完毕后线程自动退出
.参数 hThread, 整数型, , CreateThread函数返回的线程句柄
.DLL命令 ipv4_绑定套字接口, 整数型, "ws2_32.dll", "bind"
.参数 套字接口, 整数型
.参数 地址结构, ipv4通用地址结构, 传址
.参数 地址结构长度, 整数型
.DLL命令 挂起线程, 整数型, "kernel32.dll", "SuspendThread", , 挂起线索
.参数 hThread, 整数型
.DLL命令 销毁线程, , "Kernel32.dll", "TerminateThread", , 强行中止线程。
.参数 hThread, 整数型, , CreateThread函数返回的线程句柄
.参数 dwExitCode, 整数型
.DLL命令 创建线程, 整数型, "Kernel32.dll", "CreateThread", , 生成线程成功,CreateThread函数返回新线程的句柄。否则返回NULL。线程执行完毕后自动退出(除非进入的是循环)。
.参数 lpThreadAttributes, 整数型, , 线程的security属性,缺省为0
.参数 dwStackSize, 整数型, , 线程的堆栈大小,为0时与进程相同
.参数 lpStartAddress, 子程序指针, , 线程函数的起始地址
.参数 lpParameter, 整数型, , 传递线程的上下文,可以传递一个整数型参数。
.参数 dwCreationFlags, 整数型, , 0:创建线程后立即启动,相反的是标志位CREATE_SUSPENDED,这样您需要稍后显示地让该线程运行(可设为-1)
.参数 lpThreadId, 整数型, 传址, 内核给新生成的线程分配的线程ID
.DLL命令 设置套字监听状态, 整数型, "ws2_32.dll", "listen"
.参数 套字句柄, 整数型
.参数 挂起数, 整数型
.DLL命令 获取系统信息, , "kernel32.dll", "GetSystemInfo"
.参数 系统信息, 系统信息, 传址
.DLL命令 ipv4_getpeername, 整数型, "ws2_32.dll", "getpeername"
.参数 s, 整数型
.参数 name, ipv4通用地址结构, 传址
.参数 namelen, 整数型, 传址
.DLL命令 ipv6_getpeername, 整数型, "ws2_32.dll", "getpeername"
.参数 s, 整数型
.参数 name, ipv6通用地址结构, 传址
.参数 namelen, 整数型, 传址
.DLL命令 获取客户, 整数型, "ws2_32.dll", "accept"
.参数 套字句柄, 整数型
.参数 地址, 整数型
.参数 地址长度, 整数型
.DLL命令 WSAGetLastError, 整数型, "ws2_32.dll", "WSAGetLastError"
.DLL命令 FormatMessage, 整数型, , "FormatMessageA"
.参数 dwFlags, 整数型
.参数 lpSource, 整数型
.参数 dwMessageId, 整数型
.参数 dwLanguageId, 整数型
.参数 lpBuffer, 文本型, 传址
.参数 nSize, 整数型
.参数 Arguments, 整数型
.DLL命令 结束套字, 整数型, "ws2_32.dll", "closesocket"
.参数 s, 整数型
.DLL命令 创建一个互斥体, 整数型, "kernel32.dll", "CreateMutexA"
.参数 security属性指针, 整数型
.参数 是否立即拥有, 逻辑型
.参数 互斥对象名, 文本型, 传址
.DLL命令 等待一个互斥体, 整数型, "kernel32.dll", "WaitForSingleObject"
.参数 对象句柄, 整数型
.参数 超时时间, 整数型
.DLL命令 释放互斥体, 逻辑型, "kernel32.dll", "ReleaseMutex"
.参数 互斥体, 整数型
.DLL命令 删除一个互斥体, 逻辑型, "kernel32.dll", "CloseHandle"
.参数 互斥体, 整数型
.DLL命令 接收数据, 整数型, "ws2_32.dll", "recv"
.参数 套接口, 整数型
.参数 缓冲区, 字节集, 传址
.参数 缓冲区长度, 整数型
.参数 标记, 整数型
.DLL命令 断开客户连接, 整数型, "ws2_32.dll", "shutdown"
.参数 套字接口, 整数型
.参数 方法, 整数型
.DLL命令 send, 整数型, "ws2_32.dll", "send", , 发送数据_(TCP,当这次发送数据未发送完时返回剩余字节数)
.参数 网络通讯标识符, 整数型, , s
.参数 缓冲区, 字节集, 传址, buf
.参数 缓冲区长度, 整数型, , lLen
.参数 标志, 整数型, , flags
易语言类似易的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群,获取群公告,更改群公告...