Я пытался заблокировать приложение UWP для получения данных с локального порта UDP в следующем сценарии:
- Windows 10 | Версия 10.0.16299 Build 16299
- Цель UWP и минимальная версия 10.0.16299
- Заявленные возможности:
- Интернет (клиент и сервер)
- Интернет (Клиент)
- UdpClient прослушивает 127.0.0.1:1234
- Протестировано на двух разных системах в разных сетях с одинаковым результирующим поведением
Мне известно об инструменте CheckNetIsolation
, и я уже несколько раз пытался выполнить следующие шаги:
- Убедитесь, что приложение зарегистрировано во время работы с
CheckNetIsolation loopbackexempt -s
- Очистка всех исключений с помощью
CheckNetIsolation loopbackexempt -c
и ручное добавление приложения сCheckNetIsolation loopbackexempt -a -n=*Package Family Name*
- Запуск приложения, когда все ограничения сняты с помощью
CheckNetIsolation loopbackexempt -c
Я запускаю свое приложение из Visual Studio, awaiting for UdpClient.ReceiveAsync()
для возврата чего-либо в цикле while.
Мой код работает нормально, когда я использую его из консольного приложения .Net Framework 4.7.2, поэтому я могу исключить любые ошибки, мешающие этому.
Единственное , что позволяет мне получать данные в моем приложении UWP, - запуск CheckNetIsolation loopbackexempt -is -n=*Package Family Name*
. Как только я перестаю работать, мой UDP-клиент перестает получать aata.
К сожалению, решение, которое я нашел, и другие инструменты, которые перенаправляют связь таким образом, что они кажутся отправленными из другого источника, невозможны из-за различных ограничений.