Откройте все http-ссылки из Windows в моем приложении UWP

#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. Это означает, что он не должен ассоциироваться с этим протоколом. Приложение по умолчанию для определенного типа файлов-это параметр операционной системы, который в принципе не может быть «захвачен» пользовательским приложением.