![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как проверить открыты ли порты 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]напиши сканер портов