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

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

Как узнать свободен ли порт? [D6, WinXP]


eXtreme ©   (2004-05-29 14:21:00) 

Открываем ServerSocket с определенным портом (например 4444). Как узнать свободен ли этот порт?


eXtreme   (2004-05-29 15:43:00) [1]

Или ServerSocket1.Socket.LocalPort :)
Всем спасибо!


SammIk   (2004-05-29 15:37:00) [2]

int getsockname (
 SOCKET                  s,                    
 struct sockaddr FAR     *name,  
 int FAR                 *namelen            
);


eXtreme   (2004-05-29 15:34:00) [3]

Хотя вру, теперь надо узнать какой порт выделен для сокета :) Свойство ServerSocket1.Port остается 0 :(


SammIk   (2004-05-29 15:33:00) [4]

Тока в пределах от 1024 до 5000


eXtreme   (2004-05-29 15:29:00) [5]

Если в ServerSocket оставить порт нулевым, то система сама выделит свободный порт. Так что и узнавать ничего не надо.
Polevi, спасибо за помощь!


Polevi   (2004-05-29 15:19:00) [6]

нет


eXtreme   (2004-05-29 15:07:00) [7]

конечно можно обработать исключение вручную, но имхо криво как-то... нет ли другого способы. "правильного".


eXtreme   (2004-05-29 15:06:00) [8]

Если порт занят и открыть серверный сокет с таким же номером порта выскакивает мессага с ошибкой, а это не допустимо!


Polevi   (2004-05-29 15:03:00) [9]

по успешности операции открытия


Наверх

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