Проверить TCP/IP порт (CheckTCPIPPort)

Ответить
Аватара пользователя
Alex
Ас
Сообщения: 2833
Зарегистрирован: Вт апр 05, 2005 3:28 pm
Откуда: Kaliningrad City
Благодарил (а): 2 раза
Поблагодарили: 91 раз
Контактная информация:

Проверить TCP/IP порт (CheckTCPIPPort)

Сообщение Alex » Ср апр 02, 2008 7:23 pm

Миссия действия:
Действие предназначено для проверки возможно ли открыть TCP/IP порт на локальном компьютере (команда Bind) или подключиться к удаленному компьютеру по указанному адресу и TCP/IP порту (команда Connect). Первый вариант (проверка на возможность открыть порт) производится если включена опция Check local TCP/IP port. Второй вариант - если эта опция отключена.
Примеры использования:
1. Если некое приложение может быть запущено многократно, каждый раз при этом пытается открыть жестко зашитый внутри программы порт. Программа выдает ошибку (так как порт уже занят другим работающим экземпляром программы) и необходимо перед запуском программы проверять свободен порт или нет. Эту проверку можно осуществлять с включенной опцией Check local TCP/IP port.
2. Если некое приложение через неизвестное время перестает принимать подключения извне, то можно периодически проверять наступил такой момент или нет. При наступлении этого момента (когда программа "засбоила") можно ее перезапускать.

Поля на форме:
IP - Адрес локального интерфейса (если включена опция Check local TCP/IP port) или удаленного компьютера.
Port - Порт, который программа попытается открыть или к которому будет производиться попытка подключения.
Check local TCP/IP port - Если включена эта опция, то программа будет пытаться открыть указанный порт на локальном интерфейсе (если не указан параметр IP, то на всех локальных интерфейсах). Если опция отключена, то будет производиться попытка подключиться к указанному адресу по указанному порту (аналог операции telnet : open).

Результирующие параметры:
Success - Результат выполнения действия, успешно выполнена проверка или нет;
IsFree - Параметр возвращает свободен ли порт по указанному локальному интерфейсу (при включенной опции Check local TCP/IP port). Если опция отключена, то параметр вернет True в случае отсутствия подключения к указанному удаленному адресу/порту; False если подключение установить удалось.
NotFreeReason - При включенной опции Check local TCP/IP port возвращает описание, которое выдает Windows на безуспешную попытку открыть локальный порт. При отключенной опции - причину почему не получилось открыть удаленный адрес/порт.

Brig
Ас
Сообщения: 109
Зарегистрирован: Вт янв 30, 2007 11:41 am
Благодарил (а): 0
Поблагодарили: 9 раз

Re: Проверить TCP/IP порт (CheckTCPIPPort)

Сообщение Brig » Вт июн 30, 2009 10:39 pm

[quote]Если опция отключена, то параметр вернет True в случае отсутствия подключения к указанному удаленному адресу/порту; False если подключение установить удалось.[/quote]
ИМХО, логичнее было бы наоборот...

Аватара пользователя
Alex
Ас
Сообщения: 2833
Зарегистрирован: Вт апр 05, 2005 3:28 pm
Откуда: Kaliningrad City
Благодарил (а): 2 раза
Поблагодарили: 91 раз
Контактная информация:

Re: Проверить TCP/IP порт (CheckTCPIPPort)

Сообщение Alex » Пн июл 06, 2009 6:40 pm

Вообще все дело в теории относительности. Мне кажется, что правильнее так как есть :). Именно так исторически сложилось, первый метод был добавлен первым, вот он и главный.

Ответить