Как заставить мою программу запрашивать разрешения брандмауэра
Как мне сделать свое настольное приложение, чтобы сделать брандмауэр пользователя (я ищу ответ, который бы работал с любым брандмауэром, который мог установить пользователь), всплывают такие вопросы, как "эта программа хочет получить доступ к Интернету, если вы хотите разрешить это?" Я пытаюсь сделать игру (крестики-нолики, так как это моя первая игра), и я использую WPF и TCP (TcpListener и TcpClient).
Идея состоит в том, что один игрок будет размещать сервер и клиент, в то время как другой игрок на другом ПК будет запускать только клиент.
Я до сих пор не выяснил полностью, как обойти NAT, поэтому я просто отключаю свой маршрутизатор и подключаю свой компьютер напрямую к модему, чтобы проверить сервер. Я должен сделать то же самое с другим компьютером (на котором работает только клиент), а также отключить брандмауэр McAfee, поскольку он молча блокирует клиент, пытающийся подключиться к моему TcpListener.
Я проверил эту вещь: брандмауэр Windows с расширенными интерфейсами безопасности
но я не уверен, что именно так я решу свою проблему (похоже, она касается только брандмауэра Windows) и что мне нужно сделать, чтобы решить ее.
1 ответ
По сути, брандмауэр должен автоматически запускаться (в моих программах это происходило), но если этого не произойдет, вы можете добавить правила брандмауэра программно, как описано здесь или здесь.
Также рассмотрите вопрос аутентификации администратора:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Удачи!