程序简介:两个套接口:
stcpactive[0],
stcpactive[1],分别用来接收两个客户端的数据两个事件对象:
EventArray[0]
EventArray[1],分别用来关联两个套接口一个网络事件信息
NetworkEvent其实,PC都是接收客户端的数据,所以网路事件信息只有FD_READ

解决方案 »

  1.   

    程序哪里有问题呢?小弟弄了好几天了
    //建立套接口与事件对象的联系
    for(i=0;i<2;i++)
    {
    //设定关注的网络事件和事件对象之间的联系
    Index=WSAEventSelect(stcpactive[i],EventArray[i],FD_READ);
    }while(1)
    {
    //等待事件对象触发
    Index=WSAWaitForMultipleEvents(2,EventArray,false,5000,false);
            //获取EventArray对应的网络事件信息
    Index=WSAEnumNetworkEvents(
    stcpactive[Index-WSA_WAIT_EVENT_0],
    EventArray[Index-WSA_WAIT_EVENT_0],
    &NetworkEvent);
    //若网络事件信息NetworkEvent为FD_READ
    if(NetworkEvent.lNetworkEvents  & FD_READ)
    {
    //如果是第一台仪器
                      {
                    }
    //如果是第二台仪器
                      {
                    }
            }
      

  2.   

    直接接收数据就行了,不用判断if(NetworkEvent.lNetworkEvents  & FD_READ)
    {     recv(stcpactive[Index-WSA_WAIT_EVENT_0],..);}