用了TClientSocket和TServerSocket,要做服务器端得开一个TServerSocket,要开一个客户端得用一个TClientSocket,如果程序启动的时候根据环境自动判断做服务器端或者客户端,那么只用一个控件怎么办?有哪个控件可以完成该功能?

解决方案 »

  1.   


    VB下可以,发现delphi也应该去借鉴一下
    VB的某些优点
      

  2.   

    用udp就不会有这样的问题.要不用socket api函数来写这样的代码,跟本就不需要控件哈.
      

  3.   

    udp的例子你可以看看这个http://princed.mblogger.cn/posts/14471.aspx
      

  4.   

    不太清楚你所要实现的要求,你时想在什么时候进行客户端/服务器端的切换
    如果你的想法是在找到服务器端的时候变成客户端,在找不到客户端的时候变成服务器端的话
    你可以先用TClientSocket连接假想中的服务器,如果连接不上,再使用TServerSocket做服务器
      

  5.   

    用udp就可以了,udp是无连接,所以不用去理client,还是server
      

  6.   

    ft
    这这....虽然你做的程序可能在逻辑上是client(假设一下)但是实际上它有server的行为
    也就是说,clientsocket&serversocket要同时存在于程序上
    这里的client和server和一般意义上的客户端与服务器是不同的概念
    就想C/S结构中的c与s一样