//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言服务器dll源码系统结构:服务器启动,设置窗口信息,服务器监听,服务器发送文本,服务器发送字节集,服务器接收字节集,服务器接收文本,取服务器IP,取服务器端口,取客户IP,取客户端口,服务器停止,断开连接,呼叫窗口地址,取本机名,取本机IP组,配置,关闭,接收,发送,取本机端口,启动,停止,监听,发送文本,发送字节集,接收,接收文本,断开连接,取服务器端口,取服务器IP,取客户IP,取客户端口,异步选择,检查连接状态,设置一个套接字选项,取操作_,取最后错误,是否阻塞,卸载Winsocket服务,发送文本型数据,发送字节集数据,接收字节集数据,接收文本型数据,初始化WnSocket服务,转换为端口,转换为端口号,创建套接字,取本机名,获取本地接口信息,销毁套接字,连接到服务器TCP,异步选择_,转换为IP,取消阻塞_,整数转换点数,绑定地址和端口,监听_,等待用户进入并接受连接,套接字的状态,接收数据UDP,发送数据UDP,拷贝内存,成功返回内存指针,获取远端信息,呼叫窗口函数地址_,设置窗口信息_, ======程序集 || ||------_启动子程序 || ||------_临时子程序 || ||------服务器启动 || ||------设置窗口信息 || ||------服务器监听 || ||------服务器发送文本 || ||------服务器发送字节集 || ||------服务器接收字节集 || ||------服务器接收文本 || ||------取服务器IP || ||------取服务器端口 || ||------取客户IP || ||------取客户端口 || ||------服务器停止 || ||------断开连接 || ||------呼叫窗口地址 || || ======网络通讯类 || ||------_初始化 || ||------_销毁 || ||------取本机名 || ||------取本机IP组 || || ======数据报类 || ||------_初始化 || ||------_销毁 || ||------配置 || ||------关闭 || ||------接收 || ||------发送 || ||------取本机端口 || || ======服务器类 || ||------_初始化 || ||------_销毁 || ||------启动 || ||------停止 || ||------监听 || ||------发送文本 || ||------发送字节集 || ||------接收 || ||------接收文本 || ||------断开连接 || ||------取服务器端口 || ||------取服务器IP || ||------取客户IP || ||------取客户端口 || ||------异步选择 || ||------检查连接状态 || || ======调用的Dll || ||---[dll]------设置一个套接字选项 || ||---[dll]------取操作_ || ||---[dll]------取最后错误 || ||---[dll]------是否阻塞 || ||---[dll]------卸载Winsocket服务 || ||---[dll]------发送文本型数据 || ||---[dll]------发送字节集数据 || ||---[dll]------接收字节集数据 || ||---[dll]------接收文本型数据 || ||---[dll]------初始化WnSocket服务 || ||---[dll]------转换为端口 || ||---[dll]------转换为端口号 || ||---[dll]------创建套接字 || ||---[dll]------取本机名 || ||---[dll]------获取本地接口信息 || ||---[dll]------销毁套接字 || ||---[dll]------连接到服务器TCP || ||---[dll]------异步选择_ || ||---[dll]------转换为IP || ||---[dll]------取消阻塞_ || ||---[dll]------整数转换点数 || ||---[dll]------绑定地址和端口 || ||---[dll]------监听_ || ||---[dll]------等待用户进入并接受连接 || ||---[dll]------套接字的状态 || ||---[dll]------接收数据UDP || ||---[dll]------发送数据UDP || ||---[dll]------拷贝内存 || ||---[dll]------成功返回内存指针 || ||---[dll]------获取远端信息 || ||---[dll]------呼叫窗口函数地址_ || ||---[dll]------设置窗口信息_ 调用的DLL命令: .DLL命令设置一个套接字选项,整数型,"ws2_32.dll","setsockopt",,setsockopt设置一个套接字选项 .参数网络通讯标识符,整数型,,s网络通讯标识符描述标识一个套接字。 .参数级别,整数型,,level级别在该选项定义(例如水平,SOL_SOCKET)。 .参数操作名称,整数型,,optname操作名称套接字选项的值被设置(例如,SO_BROADCAST)。该optname参数必须是一个套接字选项定义在指定的水平,或行为是不确定的 .参数操作结构,空闲,,optval操作结构指针在其中所请求的选项的值是指定的缓冲区 .参数操作结构长度,整数型,,optlen操作结构长度大小,指出以字节的缓冲区,由optval参数 .DLL命令取操作_,整数型,"ws2_32.dll","getsockopt",,getsockopt取操作_检索一个套接字选项 .参数网络通讯标识符,整数型,,确定一个套接字描述符 .参数级别,整数型,,在该选项定义的水平 .参数操作名称,整数型,,套接字选项的值要检索。例如:SO_ACCEPTCONN。该optname值必须是一个套接字选项定义在指定的水平,或行为是不确定的 .参数操作结构,空闲 .参数操作结构长度,整数型,传址 .DLL命令取最后错误,整数型,"ws2_32.dll","WSAGetLastError",公开,WSAGetLastError取最后错误_ .DLL命令是否阻塞,整数型,"ws2_32.dll","WSAIsBlocking",,WSAIsBlocking是否阻塞_ .DLL命令卸载Winsocket服务,整数型,"ws2_32.dll","WSACleanup",,WSACleanup卸载Winsocket服务终止ws2_32.dll文件的使用 .DLL命令发送文本型数据,整数型,"ws2_32.dll","send",公开,发送数据(TCP,当这次发送数据未发送完时返回剩余字节数) .参数网络通讯标识符,整数型,,s .参数缓冲区,文本型,,buf .参数缓冲区长度,整数型,,lLen .参数标志,整数型,,flags .DLL命令发送字节集数据,整数型,"ws2_32.dll","send",公开,发送数据_(TCP,当这次发送数据未发送完时返回剩余字节数) .参数网络通讯标识符,整数型,,s .参数缓冲区,字节集,传址,buf .参数缓冲区长度,整数型,,lLen .参数标志,整数型,,flags .DLL命令接收字节集数据,整数型,"ws2_32.dll","recv",公开,recv接收字节集数据(TCP,当数据这次未接收完时返回剩余字节数) .参数网络通讯标识符,整数型,,s .参数缓冲区,字节集,传址,buf数据(提供变量) .参数缓冲区长度,整数型,,lLen .参数标志,整数型,,flags .DLL命令接收文本型数据,整数型,"ws2_32.dll","recv",,接收文本数据(TCP,当数据这次未接收完时返回剩余字节数) .参数网络通讯标识符,整数型,,s .参数缓冲区,文本型,传址,buf数据(提供变量) .参数缓冲区长度,整数型,,lLen .参数标志,整数型,,flags .DLL命令初始化WnSocket服务,整数型,"ws2_32.dll","WSAStartup",,WSAStartup初始化WnSocket服务启动使用Winsock的DLL的一个进程如果成功,WSAStartup函数返回零 .参数必需版本,整数型,,wVersionRequired调用者可以使用的最高版本。在高字节指定次要版本号的低位字节指定了主版本号 .参数服务信息,套接字信息,,lpWSAData指向WSADATA数据结构,获得对WindowsSockets实现细节 .DLL命令转换为端口,短整数型,"ws2_32.dll","htons",,htons转换为network排列方式的数目 .参数十六位主机命令,短整数型,,hostshort端口号 .DLL命令转换为端口号,短整数型,"ws2_32.dll","ntohs",,ntohs转换为端口号-网络转换到本机 .参数十六位网络端口,短整数型,,netshort欲转换值 .DLL命令创建套接字,整数型,"ws2_32.dll","socket",,socket .参数协议族,整数型,,af使用的通信协议的协议族 .参数类型,整数型,,lType流套接字类型 .参数协议,整数型,,protocol使用的通信协议 .DLL命令取本机名,整数型,"ws2_32.dll","gethostname",,gethostname取本机名,失败返回-1,成功返回0。 .参数名称缓冲区,文本型,传址,name给变量,用于存放名称 .参数上一个参数的长度,整数型,,namelen上一个参数的长度 .DLL命令获取本地接口信息,整数型,"ws2_32.dll","getsockname",,getsockname获取本地接口的地址信息(IP和端口)。成功返回0 .参数句柄,整数型,,s .参数地址信息,套接字地址,传址,name .参数长度,整数型,传址,namelenname长度,Sockaddr_in长度为16 .DLL命令销毁套接字,整数型,"ws2_32.dll","closesocket",,closesocket .参数套接字描述符,整数型 .DLL命令连接到服务器TCP,整数型,"ws2_32.dll","connect",,connect .参数网络通讯标识符,整数型,,s .参数名称结构,套接字地址,,addr .参数名称结构长度,整数型,,namelen(16) .DLL命令异步选择_,整数型,"ws2_32.dll","WSAAsyncSelect",,WSAAsyncSelect_本函数自动将套接口设置为非阻塞模式0表明是成功的 .参数网络通讯标识符,整数型,,s标识一个需要事件通知的套接口的描述符 .参数窗口句柄,整数型,,hWnd标识一个在网络事件发生时需要接收消息的窗口句柄 .参数消息值,整数型,,wMsg在网络事件发生时要接收的消息 .参数事件,整数型,,lEvent位屏蔽码,用于指明应用程序感兴趣的网络事件集合. .DLL命令转换为IP,整数型,"ws2_32.dll","inet_addr",,inet_addr点数格式转换为整数格式IP地址-到网络地址_ .参数IP地址,文本型,传址,cp欲被转换的IP地址 .DLL命令取消阻塞_,整数型,"ws2_32.dll","WSACancelBlockingCall",,WSACancelBlockingCall .DLL命令整数转换点数,整数型,"ws2_32.dll","inet_ntoa",,inet_ntoa将整数格式IP地址转换为点数格式(返回值是内存地址指针) .参数网络地址,整数型,,lIn欲转换整数格式IP地址 .DLL命令绑定地址和端口,整数型,"ws2_32.dll","bind",,bind绑定一个地址和端口 .参数套接字描述符,整数型 .参数地址结构,套接字地址,传址,地址信息 .参数结构大小,整数型,,地址信息长度(长度16 .DLL命令监听_,整数型,"ws2_32.dll","listen",,listen在听取地方的功能状态,它是一个进入的连接侦听套接字 .参数套接字描述符,整数型,,sockfd .参数最多容纳客户请求数,整数型,,backlog .DLL命令等待用户进入并接受连接,整数型,"ws2_32.dll","accept",,accept在接受功能允许对传入套接字连接尝试 .参数套接字描述符,整数型,,s描述符标识已在侦听状态存入听功能的插座。连接实际上是由同是返回接受插座 .参数地址信息,套接字地址,传址,addr可选指向的缓冲区接收连接实体的地址,知道的通信层。该参数的确切地址的格式是由家庭中的地址时确定建立由sockaddr结构创建套接字 .参数地址信息长度,整数型,传址,addrlen可选指向一个整数,它包含结构长度指向的地址参数地址信息长度(长度为16) .DLL命令套接字的状态,整数型,"ws2_32.dll","select",,select功能的选择决定了一个或多个套接字的状态,等待在必要时进行同步I/O .参数nfds,整数型,,忽略。该nfds参数只包括与伯克利套接字的兼容性 .参数readfds,fd_set,传址,指向一组等待可读性检查的套接口 .参数writefds,fd_set,传址,指向一组等待可写性检查的套接口 .参数exceptfds,fd_set,传址,指向一组等待错误检查的套接口 .参数timeout,整数型,传址,最大时间选择等待,在一个TIMEVAL结构形式提供。设置超时参数为空的封锁行动 .DLL命令接收数据UDP,整数型,"ws2_32.dll","recvfrom",,recvfrom接收数据(UDP) .参数套接字描述符,整数型,,s .参数数据,字节集,传址,buf .参数数据长度,整数型,,len .参数长度的字节的缓冲区,整数型,,0 .参数来源地址信息,套接字地址,传址,from来源地址信息(提供变量) .参数地址信息长度,整数型,传址,fromlen地址信息长度(提供变量) .DLL命令发送数据UDP,整数型,"ws2_32.dll","sendto",,sendto发送数据(UDP) .参数套接字描述符,整数型,,s .参数数据,字节集,传址,buf .参数数据长度,整数型,,len .参数长度的字节的缓冲区,整数型,,0 .参数目标地址信息,套接字地址,传址,to .参数地址信息长度,整数型,,tolen .DLL命令拷贝内存,,"kernel32.dll","RtlMoveMemory",,例行的RtlMoveMemory移动内存向前或向后,或排列对齐在4字节块,任何剩余的字节之后 .参数目的地址,字节集,传址,hpvDest .参数源地址,整数型,,hpvSource .参数复制尺寸,整数型,,cbCopy .DLL命令成功返回内存指针,整数型,"ws2_32.dll","gethostbyname",,gethostbyname .参数机器名称,文本型,传址,name .DLL命令获取远端信息,整数型,"ws2_32.dll","getpeername",,getpeername获取远端信息(已连接对方IP和端口)。成功返回0 .参数句柄,整数型,,s句柄 .参数地址信息,套接字地址,传址,name地址信息 .参数地址信息长度,整数型,传址,namelenname长度,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指定的窗口信息的新值
