Показать сообщение отдельно
  #1  
Старый 20.02.2014, 22:27
Noooob Noooob вне форума
Прохожий
 
Регистрация: 24.12.2013
Сообщения: 38
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию ServerSocket отключение клиєнтов

Помогите пожалуйста. Как мне отключить пользователя? Процедура провкрки:
Код:
if cmd = '101' then
  begin
  UserConnect(name,Form1.ListBox1);
  end;
 if cmd = '102' then
  begin
  UserConnect(name,Form1.ListBox2);
  end
  else
  begin
  //здесь должен отключаться
  end;
Регистрация если прошел проверку:
Код:
type
 PPacket = ^Packet; {Указатель на запись}
 Packet = record    {Запись с данными о пользователе}
 Nick:string;
 end;
...........
Text := Copy(msg,4,MaxInt);
    New(NewClient);
    NewClient^.Nick := Text;
    Form1.ServerSocket1.Socket.Data := NewClient;
    ListBox.Items.Add(Text);
Пробовал:
Код:
for i:= 0 to Form1.ServerSocket1.Socket.ActiveConnections - 1 do
    if PPacket(Form1.ServerSocket1.Socket.Connections[i].Data)^.Nick = 'test.1' then
     begin
     showmessage('found')
     end
     else
     begin
      Form1.ServerSocket1.Socket.Disconnect(i);
      showmessage('+');
      //break;
      end;
но на 2 рядке ошибка EAccessViolation
Ответить с цитированием