您的位置首页百科知识

黑鸽子破解版

黑鸽子破解版

WinSock为我们提供了Windows环境下网络通讯的编程接口,鉴于Windows消息驱动的特点,这里主要采用异步选择机制。异步选择函数WSAAsyneSeleet0允许应用程序提名一个或多个感兴趣的网络事件,如FD— READ、FD W RITE、FD_ CONNECT、FD— ACCEPT等等代表的网络事件.当被提名的网络事件发生时,Windows应用程序的窗口函数将收到一个消息。这样就可以实现事件驱判饥动了。1.建立TCP连接服务器端首先通过调用socketO建立一个套接字,然后调用李建军Li,JianjunbindO将该套接字和本地网络地址绑定在一起,再调用listen0使套接字做好监听的准备.并规定它的请求队列的长度.之后就可以调用accept0来接受连接。Ss=socket(AF—INET,SOCK_STREAM,O);SA.sin_ family=AF_INET;SA、sin_ port=htons(atoi(szPort));,,监听端口SA.sin_addr.S— addr=inet_ addr(szlp)‖IP地址。bind(Ss,(struct sockaddr )&SA,sizeof(SA));W SAAsyncSelect Ss,hW ,W M— USER +100,FD— ACCEPT JFD— READIFD_CLOSE);listen(Ss,100);客户端在建立套接字后可以调用connect0和服务器端建立连接。Cs=socket(PF—INET,SOCK.sTREAM,O);SA.sin_ family= PFJNET;SA.sin_ port=htons(atoi(szPort));//J]~务器端端口。SA.sin_ addr.s_ addr=inet_ addr(szlp)‖服务器端IP地址。d=sizeOf(SA);connect(Cs,(struct sockaddr )&SA,d);WSAAsyncSelect (Cs,hW,WM—USER +100,FD—CONNECT IFD— —READIFD— —CLOSE);可以看出,服务器端和客户端都使用wSAAsyncSelect0函数为自己的网络事件挂接了一个Windows消息wM—USER+100。同时也看到要建立连接,客户端必须知道服务器端的监听端口和IP地址2.控制指令定义这里的控制指令是服务器端尘冲桥和客户端私自约定的.并没有使用TCP~P协议族中任何常用的协议。控制指令都是由控制端程序产生并发送到被控端的。每一个控制端发送到被控端的第一个8bit数据我们规定它为控制指令,这样就可以定义最多256个控制指令。#define USER_ LISTDRIVER Oxll ,/列被控端磁盘目录#define USER— RUN 0x22 ,/i重程运行被控端程序3.控制端程序设计下面为控制端发送控制指令的程序段,这里仅以“列被控端磁盘目录”和“远程派猛运行被控端程序”为例来作介绍。ease W M_ COMMAND:switeh(wParam){case BUTTON1:,/列被控端磁盘目录controllD= L ‖建立操作标识L(tist)szBuff[0]=USER_LISTDRIVER;//置入控制指令send(s,szBuf,1’0)‖通过己连接的套接字S发送到被控端break;ease BUTTON2:,/运行被控端程序eontrollD= R 建立操作标识R(run)szBuff[0]=USER_RUN;//置入控制指令