一个控制端一个服务端,各一个winsock控件,好像只能实现单向通讯?      是不是非得控制端和服务端上面各两个winsock控件(一个收,一个发),      服务端和控制端上面各一个winsock控件各开两个端口,一个收一个发?

解决方案 »

  1.   

    奇怪的问题,你怎么会这样认为呢?
    无论是服务器还是客户端,都用相同的控件,它们都具备相同的方法、属性和事件,为什么不能进行双向通讯。你只需要在两端的程序中都写入发送和接收的代码即可,它们的发送和接收是互不干扰的。例如:你建立一个窗体内含两个Winsock,它们的名称分别为Server和Client
    那么:你可以用Server.SendData发送服务器要发送给客户端的数据
          同样可以用Client.SendData发送客户端要发送给服务器的数据
          而
          你的Server_DataArrival事件将接收Client.SendData发来的数据
          而你的Client_DataArrival事件将接收Server.SendData发来的数据放在两个程序中可以,将两个程序分别放在两台机器中也没有问题,我做过很多这样的程序,你可以做个小程序来试验。如果需要代码,请续贴。
      

  2.   

    谢谢回答引用(例如:你建立一个窗体内含两个Winsock)好了。自己建立了两个文件,分别一个winsock实现了双向通信。我的思想好狭隘哦如果你有好的代码,请贴上来给我学习。