Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какая программа использует порт? 
:(
    Опции темы
E_v_g
Дата 2.3.2007, 01:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 15.11.2006

Репутация: нет
Всего: нет



Исходные данные: номер порта и имя программы (серверная часть). Причем может быть несколько одновременно запущенных экземпляров сервера, слушающих разные порты. Требуется по номеру порта определить, слушает ли его сервер и если да, то закрыть программу-сервер. Как реализовать?
PM ICQ   Вверх
Matematik
Дата 2.3.2007, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: 24
Всего: 50



PM MAIL WWW ICQ   Вверх
E_v_g
Дата 2.3.2007, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 15.11.2006

Репутация: нет
Всего: нет



Видел уже что-то подобное. Вот выдержка из результата работы этой программы:

      127.0.0.1: | 27016 | ESTABLISHED  |               RS.exe | (3284)
      127.0.0.1: |  1847 | ESTABLISHED  |     RemoteClient.exe | (1868)


RS.exe - это мой сервер, RemoteClient.exe - это мой клиент. Они соединились по порту 92552. Чтой-то я не вижу в этом листинге моего порта...  smile 
PM ICQ   Вверх
dodik
Дата 3.3.2007, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.3.2007

Репутация: нет
Всего: нет



не может быть порт 92552, их всево 65к с копейками
PM MAIL   Вверх
E_v_g
Дата 5.3.2007, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 15.11.2006

Репутация: нет
Всего: нет



Почему же тогда с 92552 работает? Проверено!
PM ICQ   Вверх
MetalFan
Дата 5.3.2007, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Цитата(E_v_g @  5.3.2007,  10:46 Найти цитируемый пост)
Почему же тогда с 92552 работает? Проверено!

ага) работает. а что же не работать? ты какие компоненты используешь?
чаще всего порт задается в Integer, хотя в "кишках" происходит неявное преобразование в word.
в листинге и не будет "твоего" порта, если он > максимального значения двойного слова (65535).
смотри:
Код

procedure TForm1.btn1Click(Sender: TObject);
var
  lInt: Integer;
  lWord: Word;
begin
  lInt := 92552;
  lWord := lInt;
  ShowMessage( IntToStr( lWord) );
end;

легким движением твой 92552 превращается в 27016.


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
W1zArD
Дата 5.3.2007, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 29.1.2006

Репутация: нет
Всего: 3



htons
htonl
WinSock.pas
PM   Вверх
aktuba
Дата 5.3.2007, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Цитата

htons
htonl
WinSock.pas


какая разница, что ты используешь? портов все-равно 65535... ну нету больше. так что, когда ты задаешь значение в интежер - любая библиотека преобразует (точнее урежет) его до Word, как и показал Metalfan... Он тебе даже показал результат, который у тебя и есть - 27016...

P.S.: как ты можешь работать с сетью, если даже не знаешь, что такое порт???


--------------------
user posted image
PM MAIL WWW Skype   Вверх
E_v_g
Дата 6.3.2007, 05:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 15.11.2006

Репутация: нет
Всего: нет



Да знаю я, просто по запарке выставил, проверил - работает, ну и оставил.  smile 
Действительно, если < 65000, то все как надо. Спасибо!
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0801 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.