Можно ли добавиться в исключения?

229
22 июля 2019, 13:10

Можно ли добавиться (программно себя) в исключения Firewall'a? Пишу аналог Bittorrent. Постоянно Firewall беспокоится, что-то чует, не знает что. Речь идет о сторонних Firewall. Да и Windows Firewall тоже мне таблички разноцветные показывает какие-то.

P.S. Ну, или как можно сделать так, чтобы они доверяли моему процессу? Можно как-то с ними договориться?

Answer 1

Насчет именно программно, вызовом функции WinAPI, не скажу, а через вызов Net shell можно. Функцией system или ShellExecute выполняете команду

netsh.exe advfirewall firewall add rule name="имя правила" dir=in action=allow program="путь к программе" enable=yes

Команда должна выполняться от администратора, с поднятием привилегий. В нормальной ситуации ее запускает инсталлятор. В скрипте InnoSetup, например, она выглядит так:

[Run]
Filename: "{sys}\netsh.exe"; Parameters: "advfirewall firewall add rule name=""имя правила"" dir=in action=allow program=""{app}\программа.exe"" enable=yes"; Flags: runhidden skipifdoesntexist; Description: "Adding firewall rule for моя программа"; StatusMsg: "Adding firewall rules..."

Это, разумеется, для Windows Firewall. Про брандмауэры других производителей надо спрашивать у этих самых производителей.

Answer 2

Краткий ответ - так просто - нельзя. Если бы можно было, то все вирусы и трояны давно бы добавили себя в исключения и грош цена была всем фаерволам.

По хорошему - нужно получать сертификат, подписывать свое приложение и потом договариваться с другими фаерволами/антивирусами, что бы они Ваше приложение пропускали.

Но обычно, такие программы разрабатывают с выключенных фаерволом (ужас-ужас) или настраивают ручками, что бы папка с исходниками была в исключениях.

READ ALSO
Как отправить массив по локальной сети?

Как отправить массив по локальной сети?

Сейчас сообщения я отсылаю с помощью:

143
Заставить set сортироваться по убыванию

Заставить set сортироваться по убыванию

Как известно, set - множество в С++, которое отсортировано по возрастаниюМне известно, что можно сделать так, чтобы set был отсортирован по убыванию

157
Не получается назначить права на файл

Не получается назначить права на файл

Не получается назначить права на файлПрошу помощи!!!:

157