Как GitHub запускает приложение GitHub Desktop прямо из браузера?
Работает даже при использовании Google Chrome. Я думал, что это невозможно за пределами Internet Explorer.
Как GitHub запускает приложение GitHub Desktop прямо из браузера?
Работает даже при использовании Google Chrome. Я думал, что это невозможно за пределами Internet Explorer.
Предположим, что вы зарегистрировали пользовательский протокол, следуя руководству Регистрация приложения в схеме URI.
Используя простой reg-файл, который выглядит следующим образом, вы зарегистрируете собственный протокол с именем mytest:
запускает C:\temp\test.bat
при его вызове.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\mytest]
@="URL:mytest Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\mytest\shell]
[HKEY_CLASSES_ROOT\mytest\shell\open]
[HKEY_CLASSES_ROOT\mytest\shell\open\command]
@="\"C:\\temp\\test.bat\" \"%1\""
Используя следующий контент для test.bat
вы получите окно cmd, которое отображает аргумент и остается открытым:
echo %1%
pause
Это работает прямо на вашем cmd, IE и Firefox. Chrome и Opera предупредят вас, что вы собираетесь запустить приложение. Эта информация также доступна в этом вопросе: Пользовательский обработчик протокола в Chrome
Если вы посмотрите дальше, то обнаружите, что приложение github регистрирует протокол github-windows таким образом. Таким образом, вполне вероятно, что есть способ заставить его работать с Chrome. К сожалению, сейчас я не могу углубляться в это, поскольку приложение не хочет реагировать ни на один браузер.
[Настройка программы] Добавьте подключ в ваше приложение "SupportedProtocols" HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\
Затем добавьте Str Type с названием каждого протокола, который вы хотите обработать, без значений
[Настройка приложения] Далее добавьте / обновите запись вашего приложения в разделе HKEY_CLASSES_ROOT\Applications\
* Если вашему приложению необходимо сохранить URL-адрес, выполните следующие действия. Добавьте тип Str с именем "SaveURL".
* Если вашему приложению необходимо использовать URL-адрес, выполните следующие действия. Добавьте тип DWORD с именем "UseURL". Установите его значение равным 1.
Выше должно включить поддержку вашего приложения