Обнаружение собственного обработчика протокола URL с использованием JavaScript в Windows 10 Edge Browser

В нашем веб-приложении нам нужно выяснить, зарегистрирован ли обработчик настраиваемого URL-протокола или нет на компьютере под управлением Windows 10, используя JavaScript с браузером Windows 10 EDGE.

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

Поскольку EDGE - это новый браузер, решения, предоставляемые другими пользователями в Интернете, не работают.

Ссылки, на которые я ссылался, которые не работают для меня в браузере EDGE:

https://gist.github.com/keyvanfatehi/f2f521c654bab106fdf9

Пожалуйста, помогите мне, спасибо

1 ответ

Решение

Может быть, этот обходной путь помогает:

Всякий раз, когда вы переходите к неизвестному протоколу с MS Edge, Windows спрашивает пользователя о приложении для обработки этого протокола. Вы можете просто перейти к своему протоколу и отобразить сообщение с некоторой информацией о том, что делать, если инструмент не открывается. Как то так (извините за скриншот на немецком):

<div id="toolBox">
    <p id="toolBoxText"></p>
 <input type="button" id="toolButton" onclick="openTool()" value="Start tool" />
</div>
<script type="text/javascript">
        function openTool(){
         window.location = 'myprotocol://command/';
         document.getElementById("toolButton").value = "Try again";
         document.getElementById("toolBoxText").innerHTML = "Thank you for using our tool. If the tool did not open successfully, please first download and install the tool <a href='download/'>here</a> and then try again."
        }
</script>

Другие вопросы по тегам