易语言WinsockAPI模块源码
系统结构:模块信息,启动,停止,重启,取回客户,断开客户,取回数据,发送数据,发送数据流,监听线程,客户线程,检测超时,call,API调用出错信息,启动线程,创建进入许可证,删除进入许可证,进入许可区,退出许可区,强制结束线程,WSAStartup,WSACleanup,socket,closesocket,listen,bind,htons,htonl,inet_addr,accept,WSAAccept,send,recv,shutdown,getpeername,ntohs,inet_ntoa,WSAResetEvent,RtlMoveMemory,lstrcpyn,WSAEventSelect,WSACreateEvent,WSACloseEvent,WaitForSingleObject,WSAEnumNetworkEvents,GetLastError,FormatMessage,CreateThread,CloseHandle,Sleep,InitializeCriticalSection,DeleteCriticalSection,EnterCriticalSection,LeaveCriticalSection,TerminateThread,WSAWaitForMultipleEvents,WSASetEvent,AcceptEx,WSAGetOverlappedResult,setsockopt,WSARecv,WSAGetLastError,WSASend,CreateIoCompletionPort,处理函数,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 模块信息
| |
| |
======网络服务器
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 启动
| |
| |------ 停止
| |
| |------ 重启
| |
| |------ 取回客户
| |
| |------ 断开客户
| |
| |------ 取回数据
| |
| |------ 发送数据
| |
| |------ 发送数据流
| |
| |
======程序集_网络服务器
| |
| |------ 监听线程
| |
| |------ 客户线程
| |
| |------ 检测超时
| |
| |------ call
| |
| |
======程序集_错误处理
| |
| |------ API调用出错信息
| |
| |
======程序集_线程操作
| |
| |------ 启动线程
| |
| |------ 创建进入许可证
| |
| |------ 删除进入许可证
| |
| |------ 进入许可区
| |
| |------ 退出许可区
| |
| |------ 强制结束线程
| |
| |
======调用的Dll
| |
| |---[dll]------ WSAStartup
| |
| |---[dll]------ WSACleanup
| |
| |---[dll]------ socket
| |
| |---[dll]------ closesocket
| |
| |---[dll]------ listen
| |
| |---[dll]------ bind
| |
| |---[dll]------ htons
| |
| |---[dll]------ htonl
| |
| |---[dll]------ inet_addr
| |
| |---[dll]------ accept
| |
| |---[dll]------ WSAAccept
| |
| |---[dll]------ send
| |
| |---[dll]------ recv
| |
| |---[dll]------ shutdown
| |
| |---[dll]------ getpeername
| |
| |---[dll]------ ntohs
| |
| |---[dll]------ inet_ntoa
| |
| |---[dll]------ WSAResetEvent
| |
| |---[dll]------ RtlMoveMemory
| |
| |---[dll]------ lstrcpyn
| |
| |---[dll]------ WSAEventSelect
| |
| |---[dll]------ WSACreateEvent
| |
| |---[dll]------ WSACloseEvent
| |
| |---[dll]------ WaitForSingleObject
| |
| |---[dll]------ WSAEnumNetworkEvents
| |
| |---[dll]------ GetLastError
| |
| |---[dll]------ FormatMessage
| |
| |---[dll]------ CreateThread
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ Sleep
| |
| |---[dll]------ InitializeCriticalSection
| |
| |---[dll]------ DeleteCriticalSection
| |
| |---[dll]------ EnterCriticalSection
| |
| |---[dll]------ LeaveCriticalSection
| |
| |---[dll]------ TerminateThread
| |
| |---[dll]------ WSAWaitForMultipleEvents
| |
| |---[dll]------ WSASetEvent
| |
| |---[dll]------ AcceptEx
| |
| |---[dll]------ WSAGetOverlappedResult
| |
| |---[dll]------ setsockopt
| |
| |---[dll]------ WSARecv
| |
| |---[dll]------ WSAGetLastError
| |
| |---[dll]------ WSASend
| |
| |---[dll]------ CreateIoCompletionPort
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ 处理函数
调用的DLL命令:
.DLL命令 WSAStartup, 整数型, "ws2_32.dll", "WSAStartup"
.参数 wVersionRequiredas, 整数型
.参数 lpWSAData, WSADATA, 传址
.DLL命令 WSACleanup, 整数型, "ws2_32.dll", "WSACleanup"
.DLL命令 socket, 整数型, "ws2_32.dll", "socket"
.参数 af, 整数型
.参数 lType, 整数型
.参数 protocol, 整数型
.DLL命令 closesocket, 整数型, "ws2_32.dll", "closesocket"
.参数 s, 整数型
.DLL命令 listen, 整数型, "ws2_32.dll", "listen"
.参数 s, 整数型
.参数 backlog, 整数型
.DLL命令 bind, 整数型, "ws2_32.dll", "bind"
.参数 s, 整数型
.参数 addr, addr, 传址
.参数 namelen, 整数型
.DLL命令 htons, 短整数型, "ws2_32.dll", "htons"
.参数 hostshortas, 整数型
.DLL命令 htonl, 整数型, "ws2_32.dll", "htonl"
.参数 hostlong, 整数型
.DLL命令 inet_addr, 整数型, "ws2_32.dll", "inet_addr"
.参数 cp, 文本型
.DLL命令 accept, 整数型, "ws2_32.dll", "accept"
.参数 s, 整数型
.参数 addr, 整数型
.参数 addrlen, 整数型
.DLL命令 WSAAccept, 整数型, "ws2_32.dll", "WSAAccept"
.参数 s, 整数型
.参数 sockaddr, 整数型
.参数 addrlen, 整数型
.参数 lpfnCondition, 整数型
.参数 dwCallbackData, 整数型
.DLL命令 send, 整数型, "ws2_32.dll", "send"
.参数 s, 整数型
.参数 buf, 字节集
.参数 lLen, 整数型
.参数 flags, 整数型
.DLL命令 recv, 整数型, "ws2_32.dll", "recv"
.参数 s, 整数型
.参数 buf, 字节集
.参数 lLen, 整数型
.参数 flags, 整数型
.DLL命令 shutdown, 整数型, "ws2_32.dll", "shutdown"
.参数 s, 整数型
.参数 how, 整数型
.DLL命令 getpeername, 整数型, "ws2_32.dll", "getpeername"
.参数 s, 整数型
.参数 name, addr, 传址
.参数 namelen, 整数型, 传址
.DLL命令 ntohs, 整数型, "ws2_32.dll", "ntohs"
.参数 netshortas, 短整数型
.DLL命令 inet_ntoa, 整数型, "ws2_32.dll", "inet_ntoa"
.参数 in, 整数型
.DLL命令 WSAResetEvent, 整数型, "ws2_32.dll", "WSAResetEvent"
.参数 hEvent, 整数型
.DLL命令 RtlMoveMemory, 整数型, , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 整数型
.参数 Length, 整数型
.DLL命令 lstrcpyn, 整数型, , "lstrcpynA"
.参数 lpString1, 字节集, 传址
.参数 lpString2, 字节集, 传址
.参数 iMaxLength, 整数型
.DLL命令 WSAEventSelect, 整数型, "ws2_32.dll", "WSAEventSelect"
.参数 s, 整数型
.参数 hEventObject, 整数型
.参数 lNetworkEvents, 整数型
.DLL命令 WSACreateEvent, 整数型, "ws2_32.dll", "WSACreateEvent"
.DLL命令 WSACloseEvent, 整数型, "ws2_32.dll", "WSACloseEvent"
.参数 hEvent, 整数型
.DLL命令 WaitForSingleObject, 整数型, , "WaitForSingleObject"
.参数 hHandle, 整数型
.参数 dwMilliseconds, 整数型
.DLL命令 WSAEnumNetworkEvents, 整数型, "ws2_32.dll", "WSAEnumNetworkEvents"
.参数 s, 整数型
.参数 hEventObject, 整数型
.参数 lpNetworkEvents, WSANETWORKEVENTS, 传址
.DLL命令 GetLastError, 整数型, , "GetLastError"
.DLL命令 FormatMessage, 整数型, , "FormatMessageA"
.参数 dwFlags, 整数型
.参数 lpSource, 整数型
.参数 dwMessageId, 整数型
.参数 dwLanguageId, 整数型
.参数 lpBuffer, 文本型, 传址
.参数 nSize, 整数型
.参数 Arguments, 整数型
.DLL命令 CreateThread, 整数型
.参数 lpThreadAttributes, 整数型
.参数 dwStackSize, 整数型
.参数 lpStartAddress, 子程序指针
.参数 lpParameter, 整数型
.参数 dwCreationFlags, 整数型
.参数 lpThreadId, 整数型, 传址
.DLL命令 CloseHandle, 整数型, , "CloseHandle"
.参数 hObject, 整数型
.DLL命令 Sleep, 整数型, , "Sleep"
.参数 dwMilliseconds, 整数型
.DLL命令 InitializeCriticalSection
.参数 lpCriticalSection, 多线程许可证, 传址
.DLL命令 DeleteCriticalSection
.参数 lpCriticalSection, 多线程许可证, 传址
.DLL命令 EnterCriticalSection
.参数 lpCriticalSection, 多线程许可证, 传址
.DLL命令 LeaveCriticalSection
.参数 lpCriticalSection, 多线程许可证, 传址
.DLL命令 TerminateThread, 整数型, , "TerminateThread"
.参数 hThread, 整数型
.参数 dwExitCode, 整数型
.DLL命令 WSAWaitForMultipleEvents, 整数型, "ws2_32.dll", "WSAWaitForMultipleEvents"
.参数 cEvents, 整数型
.参数 WSAEVENT, 整数型, 传址 数组
.参数 fWaitAll, 整数型
.参数 dwTimeout, 整数型
.参数 fAlertable, 整数型
.DLL命令 WSASetEvent, 整数型, "ws2_32.dll", "WSASetEvent"
.参数 hEvent, 整数型
.DLL命令 AcceptEx, 整数型, "mswsock.dll", "AcceptEx"
.参数 sListenSocket, 整数型
.参数 sAcceptSocket, 整数型
.参数 lpOutputBuffer, 字节型, 数组
.参数 dwReceiveDataLength, 整数型
.参数 dwLocalAddressLength, 整数型
.参数 dwRemoteAddressLength, 整数型
.参数 lpdwBytesReceived, 整数型, 传址
.参数 lpOverlapped, WSAOVERLAPPED, 传址
.DLL命令 WSAGetOverlappedResult, 整数型, "ws2_32.dll", "WSAGetOverlappedResult"
.参数 s, 整数型
.参数 lpOverlapped, WSAOVERLAPPED, 传址
.参数 lpcbTransfer, 整数型, 传址
.参数 fWait, 整数型
.参数 lpdwFlags, 整数型, 传址
.DLL命令 setsockopt, 整数型, "ws2_32.dll", "setsockopt"
.参数 s, 整数型
.参数 level, 整数型
.参数 optname, 整数型
.参数 optval, 整数型, 传址
.参数 optlen, 整数型, 传址
.DLL命令 WSARecv, 整数型, "ws2_32.dll", "WSARecv"
.参数 s, 整数型
.参数 lpBuffers, WSABUF, 传址 数组
.参数 dwBufferCount, 整数型
.参数 lpNumberOfBytesRecvd, 整数型, 传址
.参数 lpFlags, 整数型, 传址
.参数 lpOverlapped, WSAOVERLAPPED, 传址
.参数 lpCompletionRoutine, 整数型
.DLL命令 WSAGetLastError, 整数型, "ws2_32.dll", "WSAGetLastError"
.DLL命令 WSASend, 整数型, "ws2_32.dll", "WSASend"
.参数 s, 整数型
.参数 lpBuffers, WSABUF, 传址 数组
.参数 dwBufferCount, 整数型
.参数 lpNumberOfBytesSent, 整数型, 传址
.参数 dwFlags, 整数型
.参数 lpOverlapped, WSAOVERLAPPED, 传址
.参数 lpCompletionRoutine, 整数型
.DLL命令 CreateIoCompletionPort, 整数型, , "CreateIoCompletionPort"
.参数 Handle, 整数型
.参数 ExistingCompletionPort, 整数型
.参数 CompletionKey, 整数型
.参数 NumberOfConcurrentThreads, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。