
 
易语言Winsocket模块源码
系统结构:申请套接口,销毁套接口,关闭连接,绑定,监听,接受,连接,接收,发送,接收数据报,发送数据报,置缓冲区尺寸,取缓冲区尺寸,UDP置广播模式,UDP取广播模式,置阻塞模式,取客户信息,取自己信息,可读检查,错误检查,可写检查,IP到整数,IP到文本,转换时间,动态调用子程序,取2的N次方,内存_写字节集,取指针_文本型,例程服务端,服务端_接受线程,例程客户端,WSAStartup,WSACleanup,WSASocket,closesocket,WSARecv,WSASend,htons,getpeername,getsockname,ntohs,listen,inet_addr,inet_ntoa,bind,socket,accept,connect,Recv,RecvFrom,send,sendto,setsockopt,getsockopt,ioctlsocket,select,shutdown,LocalAlloc,LocalFree,LocalSize,GetLastError,RtlMoveMemory1,lstrcpyn2, 
======Win_Socket 
           |  | 
           |  |------ _初始化 
           |  | 
           |  |------ _销毁 
           |  | 
           |  |------ 申请套接口 
           |  | 
           |  |------ 销毁套接口 
           |  | 
           |  |------ 关闭连接 
           |  | 
           |  |------ 绑定 
           |  | 
           |  |------ 监听 
           |  | 
           |  |------ 接受 
           |  | 
           |  |------ 连接 
           |  | 
           |  |------ 接收 
           |  | 
           |  |------ 发送 
           |  | 
           |  |------ 接收数据报 
           |  | 
           |  |------ 发送数据报 
           |  | 
           |  |------ 置缓冲区尺寸 
           |  | 
           |  |------ 取缓冲区尺寸 
           |  | 
           |  |------ UDP置广播模式 
           |  | 
           |  |------ UDP取广播模式 
           |  | 
           |  |------ 置阻塞模式 
           |  | 
           |  |------ 取客户信息 
           |  | 
           |  |------ 取自己信息 
           |  | 
           |  |------ 可读检查 
           |  | 
           |  |------ 错误检查 
           |  | 
           |  |------ 可写检查 
           |  | 
           |  |------ IP到整数 
           |  | 
           |  |------ IP到文本 
           |  | 
           |  |------ 转换时间 
           |  | 
           |  | 
======调用程序集 
           |  | 
           |  |------ _启动子程序 
           |  | 
           |  |------ _临时子程序 
           |  | 
           |  |------ _读整数 
           |  | 
           |  |------ _写整数 
           |  | 
           |  |------ _读短整数 
           |  | 
           |  |------ _写短整数 
           |  | 
           |  |------ _取整数型数据地址 
           |  | 
           |  |------ _取字节集数据地址 
           |  | 
           |  |------ _申请内存 
           |  | 
           |  |------ _释放内存 
           |  | 
           |  |------ _内存尺寸 
           |  | 
           |  |------ 动态调用子程序 
           |  | 
           |  |------ 取2的N次方 
           |  | 
           |  |------ 内存_写字节集 
           |  | 
           |  |------ 取指针_文本型 
           |  | 
           |  | 
======例子 
           |  | 
           |  |------ 例程服务端 
           |  | 
           |  |------ 服务端_接受线程 
           |  | 
           |  |------ 例程客户端 
           |  | 
           |  | 
======调用的Dll 
           |  | 
           |  |---[dll]------   WSAStartup 
           |  | 
           |  |---[dll]------   WSACleanup 
           |  | 
           |  |---[dll]------   WSASocket 
           |  | 
           |  |---[dll]------   closesocket 
           |  | 
           |  |---[dll]------   WSARecv 
           |  | 
           |  |---[dll]------   WSASend 
           |  | 
           |  |---[dll]------   htons 
           |  | 
           |  |---[dll]------   getpeername 
           |  | 
           |  |---[dll]------   getsockname 
           |  | 
           |  |---[dll]------   ntohs 
           |  | 
           |  |---[dll]------   listen 
           |  | 
           |  |---[dll]------   inet_addr 
           |  | 
           |  |---[dll]------   inet_ntoa 
           |  | 
           |  |---[dll]------   bind 
           |  | 
           |  |---[dll]------   socket 
           |  | 
           |  |---[dll]------   accept 
           |  | 
           |  |---[dll]------   connect 
           |  | 
           |  |---[dll]------   Recv 
           |  | 
           |  |---[dll]------   RecvFrom 
           |  | 
           |  |---[dll]------   send 
           |  | 
           |  |---[dll]------   sendto 
           |  | 
           |  |---[dll]------   setsockopt 
           |  | 
           |  |---[dll]------   getsockopt 
           |  | 
           |  |---[dll]------   ioctlsocket 
           |  | 
           |  |---[dll]------   select 
           |  | 
           |  |---[dll]------   shutdown 
           |  | 
           |  |---[dll]------   LocalAlloc 
           |  | 
           |  |---[dll]------   LocalFree 
           |  | 
           |  |---[dll]------   LocalSize 
           |  | 
           |  |---[dll]------   GetLastError 
           |  | 
           |  |---[dll]------   RtlMoveMemory1 
           |  | 
           |  |---[dll]------   lstrcpyn2 
 
  
  
  
  
调用的DLL命令: 
.DLL命令 WSAStartup, 整数型, "ws2_32.dll", "WSAStartup", , 成功返回0, 初始化WnSocket服务 
    .参数 VersionReq, 短整数型 
    .参数 WSADataReturn, WSADATA, 传址 
.DLL命令 WSACleanup, 整数型, "ws2_32.dll", "WSACleanup", , 卸载Winsocket服务,成功返回0 
.DLL命令 WSASocket, 整数型, "ws2_32.dll", "WSASocketA", , 创建一个原始套接字。成功返回套接字,失败返回INVALID_SOCKET(0) 
    .参数 af, 整数型, , #AF_开头的常量。地址族描述,目前仅支持AF_INET格式,亦即ARPA Internet地址格式。  
    .参数 type, 整数型, , #SOCK_开头的常量。新套接口的类型描述。 
    .参数 protocol, 整数型, , #IPPROTO_开头的常量。套接口使用的特定协议,如果调用者不愿指定协议则定为0。 
    .参数 lpProtocolInfo, 整数型, , 该结构定义所创建套接口的特性。如果本参数非零,则前三个参数被忽略。 
    .参数 g, 整数型, , 套接口组的描述字。 
    .参数 dwFlags, 整数型, , 套接口属性描述。 
.DLL命令 closesocket, 整数型, "ws2_32.dll", "closesocket", , 销毁套接字 
    .参数 s, 整数型, , 套接字描述符 
.DLL命令 WSARecv, 整数型, "ws2_32.dll", "WSARecv", , 接收数据数组 
    .参数 s, 整数型 
    .参数 lpBuffers, 整数型, , inout,这里有点问题,应该不需要传值 
    .参数 dwBufferCount, 整数型 
    .参数 lpNumberOfBytesRecvd, 整数型, 传址, out 
    .参数 lpFlags, 整数型, 传址, inout 
    .参数 lpOverlapped, 整数型 
    .参数 lpCompletionRoutine, 整数型 
.DLL命令 WSASend, 整数型, "ws2_32.dll", "WSASend", , 发送数据数组 
    .参数 s, 整数型 
    .参数 lpBuffers, 整数型 
    .参数 dwBufferCount, 整数型 
    .参数 lpNumberOfBytesSent, 整数型, 传址 
    .参数 dwFlags, 整数型 
    .参数 lpOverlapped, 整数型 
    .参数 lpCompletionRoutine, 整数型 
.DLL命令 htons, 短整数型, "ws2_32.dll", "htons", , 端口转换到网络格式 
    .参数 hostshortas, 短整数型, , 十六位主机命令 
.DLL命令 getpeername, 整数型, "ws2_32.dll", "getpeername", , 取套接字对方地址 
    .参数 s, 整数型 
    .参数 name, SOCKADDR_IN, 传址 
    .参数 namelen, 整数型, 传址 
.DLL命令 getsockname, 整数型, "ws2_32.dll", "getpeername", , 取套接字自己地址 
    .参数 s, 整数型 
    .参数 name, SOCKADDR_IN, 传址 
    .参数 namelen, 整数型, 传址 
.DLL命令 ntohs, 短整数型, "ws2_32.dll", "ntohs", , 端口转换-1转256,256转1. 
    .参数 netshortas, 短整数型, , netshort欲转换值 
.DLL命令 listen, 整数型, "ws2_32.dll", "listen", , 监听-侦听 
    .参数 s, 整数型, , 套接字描述符 
    .参数 backlog, 整数型, , 最多容纳客户请求数(列队长度) 
.DLL命令 inet_addr, 整数型, "ws2_32.dll", "inet_addr", , 点数格式转换为整数格式IP地址 
    .参数 cp, 文本型, , 欲被转换的IP地址 
.DLL命令 inet_ntoa, 文本型, "ws2_32.dll", "inet_ntoa", , 整数格式转换为点数格式IP地址 
    .参数 in, 整数型 
.DLL命令 bind, 整数型, "ws2_32.dll", "bind", , 绑定端口 
    .参数 s, 整数型, , 建立socket时的Handle  socket套接字 
    .参数 name, SOCKADDR_IN 
    .参数 namelen, 整数型 
.DLL命令 socket, 整数型, "ws2_32.dll", "socket", , 创建套接字 
    .参数 af, 整数型, , 使用的通信协议的协议族 
    .参数 type, 整数型, , 流套接字类型 
    .参数 protocol, 整数型, , 使用的通信协议 
.DLL命令 accept, 整数型, "ws2_32.dll", "accept", , 等待用户进入并接受连接 
    .参数 s, 整数型, , 套接字描述符 
    .参数 addr, SOCKADDR_IN, 传址, 地址信息 
    .参数 addrlen, 整数型, 传址, 地址信息长度(长度为16) 
.DLL命令 connect, 整数型, "ws2_32.dll", "connect", , 连接到服务器(TCP) 
    .参数 s, 整数型, , 套接字描述符 
    .参数 addr, SOCKADDR_IN, 传址, 地址信息 
    .参数 namelen, 整数型, , 地址信息长度 
.DLL命令 Recv, 整数型, "ws2_32.dll", "recv", , 接收 
    .参数 s, 整数型 
    .参数 buf, 整数型 
    .参数 Len, 整数型 
    .参数 flags, 整数型 
.DLL命令 RecvFrom, 整数型, "ws2_32.dll", "recvfrom", , 接收数据报 
    .参数 s, 整数型 
    .参数 buf, 整数型 
    .参数 len, 整数型, , 缓冲区的长度 
    .参数 flages, 整数型 
    .参数 from, SOCKADDR_IN 
    .参数 fromlen, 整数型, 传址, 源地址处的长度 
.DLL命令 send, 整数型, "ws2_32.dll", "send", , 发送 
    .参数 s, 整数型, , 套接字描述符 
    .参数 buf, 整数型, , 欲发送的数据 
    .参数 buflen, 整数型, , 欲发送数据长度 
    .参数 flags, 整数型, , 保留值,给0 
.DLL命令 sendto, 整数型, "ws2_32.dll", "sendto", , 发送数据(UDP) 
    .参数 s, 整数型, , 套接字描述符 
    .参数 buf, 整数型, , 数据 
    .参数 len, 整数型, , 数据长度 
    .参数 flags, 整数型, , 保留值,给0 
    .参数 to, SOCKADDR_IN, 传址, 目标地址信息 
    .参数 tolen, 整数型, , 地址信息长度 
.DLL命令 setsockopt, 整数型, "ws2_32.dll", "setsockopt", , 置缓冲区尺寸 
    .参数 sockfd, 整数型 
    .参数 level, 整数型 
    .参数 optname, 整数型 
    .参数 optval, 整数型, 传址 
    .参数 optlen, 整数型 
.DLL命令 getsockopt, 整数型, "ws2_32.dll", "getsockopt", , 取缓冲区尺寸 
    .参数 sockfd, 整数型 
    .参数 level, 整数型 
    .参数 optname, 整数型 
    .参数 optval, 整数型, 传址 
    .参数 optlen, 整数型, 传址 
.DLL命令 ioctlsocket, 整数型, "ws2_32.dll", "ioctlsocket", , 置阻塞模式 
    .参数 s, 整数型 
    .参数 cmd, 整数型 
    .参数 argp, 整数型, 传址 
.DLL命令 select, 整数型, "ws2_32.dll", "select", , 文件读写检查。 
    .参数 nfds, 整数型 
    .参数 readfds, 整数型, , 指向一组等待可读性检查的套接口 
    .参数 writefds, 整数型, , 指向一组等待可写性检查的套接口 
    .参数 exceptfds, 整数型, , 指向一组等待错误检查的套接口 
    .参数 timeout, 整数型 
.DLL命令 shutdown, 整数型, "ws2_32.dll", "shutdown", , 关闭套接字 
    .参数 s, 整数型 
    .参数 how, 整数型 
.DLL命令 LocalAlloc, 整数型, "kernel32.dll", "LocalAlloc", , hMem,申请内存 
    .参数 uFlags, 短整数型, , 64 
    .参数 uBytes, 整数型, , 长度,len 
.DLL命令 LocalFree, 整数型, "kernel32.dll", "LocalFree", , 释放内存 
    .参数 hMem, 整数型, , hMem,地址 
.DLL命令 LocalSize, 整数型, "kernel32.dll", "LocalSize", , 取内存尺寸 
    .参数 hMem, 整数型 
.DLL命令 GetLastError, 整数型, , "GetLastError", , 取API错误信息 
.DLL命令 RtlMoveMemory1, 整数型, "kernel32", "RtlMoveMemory", , 写字节集 
    .参数 目标数据地址, 整数型, , lpvDest 
    .参数 源数据, 字节集, , lpvSource 
    .参数 尺寸, 整数型, , cbCopy 
.DLL命令 lstrcpyn2, 整数型, "kernel32", "lstrcpyn", , 取文本型指针。 
    .参数 目标数据地址, 文本型, , lpvDest 
    .参数 源数据, 文本型, , lpvSource 
    .参数 尺寸, 整数型, , cbCopy 
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...