大家好,我在做一个伪三层系统我在处理execsql的时候,sendtext并且serversocket接收执行反馈,即可了。但在处理clientsocket组件提交select请求后,serversocket利用adoquery接受请求并且查询
结果我该如何反馈给clietsocket并处理

解决方案 »

  1.   

    select登陆的时候还是可以的,反馈有无找到就可以了,但是在select结果集的时候就发生了一个问题自己有笨方法处理,求入流点的方法
      

  2.   

    clietsocket等待serversocket的返回
      

  3.   

    定义OleVariant类型,直接把DataSet的结果集以这种类型传回客户端,发送的时候也可以这么做。
      

  4.   

    楼主还在用D6,不用Indy?还是觉得Indy不好用?
      

  5.   


    OK,表示理解,我去常识D7,我觉得winsocket比较爽。indy还不是太习惯。socket的每个客户端连接线程比较好处理
    indy没有深入研究过这个每个客户端连接处理
      

  6.   

    我以为你用的是TServerSocket,TClietSocket,这两个是D6才有的,D7用的TTcpServer,TTcpClient。我说的方法不一定可行,我那么说是因为三层里面会用到类似的方法,如果可以直接传送DataSet,那么在客户端和服务端就可以把它转为TClientDataSet,这样通用性就会比较好一点。我最近也要做类似的功能,到时我也会去试一下。
      

  7.   

    用INDY好,INDY一般支持1000客户端没什么问题,TServerSocket基于选择模型的,支持的客户端个数有限。
      

  8.   

    Indy用的是阻塞模式,1000客户端,同时有1000,或者几百个线程同时在跑不知道会怎么样,Indy10改动挺大的,这方面相关的资料又很少,我最近在也在做类似的东西,不大敢用Indy想用IOCP实现,正在研究这个。