procedure TFrm_server.senderinfo(Sender: TObject);
var
  i:integer;
  v_socket_id:integer;  //连接ID
  boolean_all:boolean;  //是否发给所有人
  MY_socket:TCustomWinSocket;
begin
  if boolean_all then
      for i := 0 to server.Socket.ActiveConnections - 1 do
        server.Socket.Connections[i].SendText('your_message')
  else
    begin
       MY_socket:=TCustomWinSocket.Create(v_socket_id); 
       MY_socket.SendText('your_message');
    end;
end;

解决方案 »

  1.   

    你应该在ClientAccept中做一些处理,你的意思就是说那一台机子一连一上来就发一个消息给他吗,这样就可以解决了!!!
      

  2.   

    zhouzx(atu) 的关键一句是
          MY_socket:=TCustomWinSocket.Create(v_socket_id); 
    吗? 当客户端连接过来的时候,在什么地方用这一条建立连接呢?
      

  3.   

    那是在连接上以后你想发送给特定的客户端时用的,你可在客户端刚连接上时用数组或stringlist,或session记录下客户端的IP和socket的连接ID,然后在你想发送消息的时候用那一句建立通话。
    如果要在客户端刚连上的时候发送消息那可在onClientAccept中写代码。