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

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

Закрыть порты 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]

Повесить на них свой сервер?


Наверх

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