windows API写一个程序
使多个客户端访问服务器
实现,客户端和服务器的通信
详细步骤???

解决方案 »

  1.   

    很基本的socket C/S程序
    在网上搜索,修改一下就可以
      

  2.   

    1.写一个线程函数,功能是创建SOCKET;和服务器连接;发送和接收数据.
    2.用这个线程函数创建多个线程.
      

  3.   

            SOCKET s = ::socket(AF_INET, SOCK_DGRAM, IPPROTO_TCP);
    if(s == INVALID_SOCKET)
    {
    printf("Failed socket()\n");
    return 0;
    } sockaddr_in sin;
    sin.sin_family = AF_INET;
    sin.sin_port = htons(7800);
    sin.sin_addr.S_un.S_addr = inet_addr("122.124.1.168");
            
            if(::connect(s,(sockaddr*)&sin,sizeof(sin)) == -1)
             {
               printf("Failed connect()\n");
               return 0;
              } char buff[MAX_BYTE]; for(int i=0; i<MAX_BYTE; i++)
    buff[i]='a';

    while(TRUE)
    {
    send(s,buff,strlen(buff),0);
                    int nRecv = ::recv(s, buff, 10240, 0);
            if(nRecv > 0)
    {
    buff[nRecv] = '\0';
                     printf("Recive Data:(%s) %d Bytes.\r\n",
                                   buff,nRecv);
    }
    Sleep(5000);
    } ::closesocket(s);
      

  4.   

    [1] 启动服务线程
    [2] create socket
    [3] bind ip and port
    [4] listen
    [5] while(...)
        accept(s,..)
        do as you want
      

  5.   

    客户 create socket ->  bind  -> connect -> send
    服务器  create socket -> bind -> listen
                                       |
                                       |
                                      起线程去accetp -> recv