![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Закрыть порты TCP:135/UDP:445 програмным образом [D6, WinXP]
Arazel © (2006-02-27 17:03:00)Как?
Ketmar (2006-07-02 15:43:00) [1]>Volf_555 © (06.03.06 16:08) [15]
поделитесь, какие именно грибочки кушаете и как их готовить, а?
Dred (2006-07-01 18:34:00) [2]Вообще-то в Виндах за открытый порт отвечают сетевые программы или сервисы! Хочешь закрыть порт - заверши процесс или останови службу! А вот какой процесс или службу... да поможет тебе F1!
Volf_555 (2006-03-06 16:08:00) [3]
> Dmitrij_K (06.03.06 15:56) [12]
> Гениально!
>
> IdUDPServer1.Active:=False;
> --------------
> Тем более если Active:=True - то возникнит ошибка, тк порт
> уже закрыт
>
> LOL
К тому же я используюtry...except...endчтобы не возникала ошибка при попытке закрытия порта
Допустим - UserGate пытается открыть порт, который уже открыт другой программой - и не получается соответственно.
Мои действия:
Пишу обработчик события на кнопке
procedure TForm1.Button1Click(Sender: TObject);
begin
try
IdTCPServer1.DefaultPort:=8080;
IdTCPServer1.Active:=False;
except
ShowMessage('Ошибка!');
end;
end;
После этого перезапускаю UserGate и больше ошибок не возникают
Dmitrij_K (2006-03-06 15:59:00) [4]
> Почему тогда у меня порты закрываются на УРА?
Может травка хорошая?
Volf_555 (2006-03-06 15:58:00) [5]Почему тогда у меня порты закрываются на УРА?
Dmitrij_K (2006-03-06 15:56:00) [6]Гениально!
IdUDPServer1.Active:=False;
--------------
Тем более если Active:=True - то возникнит ошибка, тк порт уже закрыт
LOL
Volf_555 (2006-03-06 15:53:00) [7]Пример использования:
procedure TForm1.Button1Click(Sender: TObject);
begin
IdTCPServer1.DefaultPort:=135;
IdTCPServer1.Active:=False;
IdUDPServer1.DefaultPort:=445;
IdUDPServer1.Active:=False;
end;
Volf_555 (2006-03-06 15:45:00) [8]Попробуй использовать следующий код.
Проверял - работает на УРА! :)
procedure TForm1.N16Click(Sender: TObject);
var
s:String;
begin
s:=InputBox('Введите порт, который необходимо закрыть','№ порта:','');
try
IdTCPServer1.DefaultPort:=StrToInt(s);
IdTCPServer1.Active:=False;
except
ShowMessage('Ошибка!!!');
end;
end;
Arazel (2006-03-06 08:08:00) [9]umbra © (03.03.06 11:32) [8]
Ну ладно как они там проверяют что-то до меня доходит
Но все же как закрыть насильно порты 135/445 даже пусть
сам Windows их использует!
Может есть у Windows кое какие примочки для этого?
umbra (2006-03-03 11:32:00) [10]2 Arazel © (01.03.06 05:18) [6]
> А какже тогда работают firewall(ы)?
проверяют все пакеты, приходящие на сетевой интерфейс и не пускают ненужные.
ZzzzZ (2006-03-03 07:14:00) [11]Хех, это тебе на высм.ру
Вот а не судьба фаером их заблочить?
Arazel (2006-03-01 05:18:00) [12]А какже тогда работают firewall(ы)?
Я решил это сделать из под драйвера
но я не когда не работал в драйвере с сокетами
может кто что знает?
umbra (2006-02-28 17:19:00) [13]а иначе никак. в винде эти порты заняты.
Arazel (2006-02-28 17:07:00) [14]Ну это совсем нето!
umbra (2006-02-28 12:52:00) [15]по смыслу - проверять все пакеты, приходящие на сетевой интерфейс и не пускать ненужные.
Arazel (2006-02-28 12:27:00) [16]Не получится! На них уже весят!
Dmitrij_K (2006-02-27 22:01:00) [17]Повесить на них свой сервер?