我现在只能用一个Timer不断Readln,这好像不太好啊听见网上有人说什么多线程,堵塞,到底该怎么操作呢???听说好像有这个Demo啊,谁能给下下载地址,Indy8/9/10都可以啊或者给下具体的代码??我剩下的80分都给各位了,到底怎么办呢?

解决方案 »

  1.   

    http://groups.yahoo.com/group/Indy-Demos/
    http://www.nevrona.com/indy
    或者搜索一下,多得很
      

  2.   

    开个线程,客户端一旦连接上服务器,该线程就运行,仅列部分代码:
    procedure TRecThread.Execute;
    var
      ires,i,j : integer;
      recMsg : TMyMsg;
      sNode,ss : TTreeNode;
    begin
      { Place thread code here }
      FreeOnTerminate := True;  while ((not Terminated) and DM.tcpLog.Connected) do
      begin
        ires := DM.tcpLog.ReadFromStack;
        if ires > 0 then
        begin
          DM.tcpLog.ReadBuffer(recMsg,sizeof(recMsg));
          case recMsg.iType of