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

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

Как проверить открыты ли порты x на своей машине [D7, Win95/98, Win2k, WinXP]


SamAlex ©   (2005-08-19 08:14:00) 

привет всем Как проверить открыты ли порты x на своей машине с помощью delphi?


Polevi   (2005-08-25 10:14:00) [1]

>BiN ©   (22.08.05 09:40) [9]
это слишком сложно :)


Fay   (2005-08-25 05:07:00) [2]

2 SamAlex   (24.08.05 10:44) [13]
Тогда уж
спосибо огромное увожаемые мостера
8)


ДосЯ   (2005-08-24 17:23:00) [3]

>127.0.0.1

этот ip зарезервирован за loop-девайсом и поэтому может не работать так листинеры Вешают на внешнии IP


SamAlex   (2005-08-24 10:44:00) [4]

спасибо огромное увожаемые мастера


Rouse_   (2005-08-23 15:47:00) [5]

В дополнение к BiN ©   (22.08.05 09:40) [9]
http://rouse.front.ru/tcpstat.zip


Fay   (2005-08-23 09:09:00) [6]

2 OldNaum ©   (19.08.05 10:25) [5]
А "массив портов" - не глупость?


AbrosimovA   (2005-08-23 08:30:00) [7]

procedure TForm1.Scan;
var i:word;
begin
 tcpclient1.RemoteHost:=edit3.text;
 for i:=StrToInt(Edit4.Text) to StrToInt(Edit5.Text) do
  begin
   Application.ProcessMessages;
   if Stop then begin
    Stop:=false;
    Box1.Caption:=' Сканирование портов ';
    Exit;
   end;
   Box1.Caption:=' Сканирование портов: '+inttostr(i)+' ';
   tcpclient1.RemotePort:=IntToStr(i);
   tcpclient1.Connect;
   if tcpclient1.Connected then
    listbox1.Items.Add('Найден порт: '+IntToStr(i));
 end;
end;


BiN   (2005-08-22 09:40:00) [8]

Для военных -) повторяю: Список TCP-портов можно получить вызовом одной функции. см. [3].


SamAlex   (2005-08-22 06:08:00) [9]

Nes ©
Я написал один в один такойже код не работет я не могу понять почему:(((


Nes   (2005-08-19 14:53:00) [10]

Конечно не летает со скоростью света, но открытые порты выдаёт...
procedure TForm1.Button1Click(Sender: TObject);
begin
tcpclient1.RemotePort:=inttostr(spinedit1.Value);
tcpclient1.RemoteHost:=edit1.Text;
memo1.Lines.Add('It may take some time...');
tcpclient1.Open;
if tcpclient1.Connected then memo1.Lines.Add(edit1.Text+':'+inttostr(spinedit1.Value)+' opened') else begin
memo1.Lines.Add(edit1.Text+': '+inttostr(spinedit1.Value)+' closed')
end;
tcpclient1.Close;
end;


Nes   (2005-08-19 14:43:00) [11]

Тебе нужно проверить парочку нужных портов или все?


OldNaum   (2005-08-19 10:25:00) [12]

глупости какие-то, имхо =) вопрос задан таким образом, что тут просто делается все =) имеешь массив портов. в цикле перебирая массив портов, пытаемся "открыть" сокет по указаному порту, соответственно обрабатывая ошибку, которая возникает в случае наличия уже открытого порта (#16060 вроде бы, константы не помню, юзай F1). вот и все проблемы решаются.

З.Ы. Если нужно действительно сканер портов, то уже и решения другие )


XProger   (2005-08-19 10:07:00) [13]

http://XProger.mirgames.ru/- XScanner


BiN   (2005-08-19 09:12:00) [14]

Получить список TCP-соединений на локальной машине можно с помощью GetTcpTable.


SamAlex   (2005-08-19 08:38:00) [15]

написал не работает говорю проверить хост 127.0.0.1 а он молчит еслиесть код пришлите плиз


pOLYmORph   (2005-08-19 08:22:00) [16]

напиши сканер портов


Наверх

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