#c# #windows #uwp #http-protocols
Вопрос:
Я создаю приложение UWP, которое открывает все ссылки протокола http/https, по которым щелкают в окнах. Короче говоря, он действует так же, как браузер по умолчанию.
Я использовал следующее для связи с протоколами http/https
<Extensions>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="http">
<uap:DisplayName>httpUWP</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="https">
<uap:DisplayName>HttpUWP</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
</Extensions>
и способ обработки запуска protected override void OnActivated(IActivatedEventArgs args)
Приложение хорошо компилируется. Я установил свое приложение в качестве открывателя по умолчанию http
, и когда я пытаюсь открыть ссылку из Win R
системы или откуда-то из нее, приложение выдает File system error (-2147219196)
Итак, что мне теперь делать?
Ответ №1:
Я боюсь http
, https
что они входят в число имен схемы URI, зарезервированных для операционной системы, поэтому вы не можете связать их с вашим приложением.
Однако вы все равно можете изменить браузер по умолчанию в Windows.
Комментарии:
1. Я уже установил свое приложение по умолчанию, и когда я открываю ссылку, приложение запускается, показывает заставку, и система выдает эту ошибку.
2. Вам все равно не следует связывать свое приложение с какими-либо зарезервированными схемами URI.
3. Имеет смысл иметь какие-то зарезервированные вещи. Но в зарезервированном типе файла даже
.mp3
указан. Итак, означает ли это, что приложение UWP не может быть музыкальным плеером по умолчанию ?4. Это означает, что он не должен ассоциироваться с этим протоколом. Приложение по умолчанию для определенного типа файлов-это параметр операционной системы, который в принципе не может быть «захвачен» пользовательским приложением.