Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

пытаюсь определить IP-адрес подключенного клиента [D6, WinXP]


NorthMan ©   (2004-03-29 10:14:00) 

в ServerSocket. Читаю свойство ClientSocket.LocalAddress в ServerGetSocket(Sender: TObject; Socket: Integer;
 var ClientSocket: TServerClientWinSocket); При этом получаю ошибку "Access violation". Что я не так делаю?


NorthMan   (2004-03-29 11:19:00) [1]

Всем мпасибо, разобрался


Digitman   (2004-03-29 10:52:00) [2]


> NorthMan


тебе скорей всего не LocalAddress , а RemoteAddress нужен

procedure TMyForm.ServerSocketConnect(..);
begin
 MessageBox(0, PChar(Socket.RemoteAddress), 'IP-адрес удаленного клиента', mb_ok or mb_setforeground);
end;


Verg   (2004-03-29 10:41:00) [3]

Не, в данной точке ClientSocket = nil (или вообще какому-нибудь мусору).
Этот метод (событие) сервер и вызывает именно для того, что вдруг ты создашь какого-либо наследника TServerClientWinSocket.
Валидным он будет в событиях OnAccept и более поздних. Там и определяй LocalAddress.


Наверх

Титульная страница Поиск, карта сайта Написать письмо