Как установить program.exe в качестве браузера по умолчанию в Windows 10?

Мне нужно установить мой program.exe в качестве браузера по умолчанию в Windows 10, Я не могу найти способ, как это сделать. Даже с regedit,

Пожалуйста, дайте несколько советов, как это сделать?

Спасибо!

2 ответа

Решение

Я полагаю, вы зарегистрировали себя в качестве обработчика по умолчанию для протоколов HTTP и HTTPS? Это позаботится обо всем до Windows Vista.

Вы также должны зарегистрироваться в качестве программы по умолчанию, но, как отмечено в разделе "Как стать браузером по умолчанию", это будет просто отображать уведомление о более новых версиях Windows.

Тип файла и модель ассоциации URI изменены в Windows 8:

Приложения больше не могут программно устанавливать себя в качестве обработчика по умолчанию для типа файла или URI. Вместо этого теперь пользователь всегда контролирует, какой обработчик по умолчанию используется для типа файла или схемы URI.

В Windows Vista до Windows 8 вы можете позвонить IApplicationAssociationRegistrationUI::LaunchAdvancedAssociationUI и пусть пользователь выберет ваше приложение по умолчанию. В Windows 10 даже этот API был ограничен и просто говорит пользователю вручную выполнить действия в приложении "Настройки".

Если ни одно приложение не зарегистрировано для определенного типа, вы станете по умолчанию, но это никогда не случается с браузерами.

Изменения в Windows 10 были объявлены здесь.

Единственная полная документация о том, как это сделать, кажется, находится в этом сообщении в блоге (ссылка на архив ). Используя этот метод, мне удалось установить файл сценария в качестве браузера по умолчанию.


Я создал следующий пакетный скрипт, чтобы несколько автоматизировать процесс установки/удаления необходимых ключей реестра. Вы можете вызвать его с параметрамиinstall <name> <command-to-open-exe> <icon?>зарегистрировать новый браузер, а затем с помощьюuninstall <name>чтобы удалить его.

Пример портативного браузера Firefox (включая значок EXE):script.bat install FirefoxPortable "\"C:\whatever\firefox.exe\" \"%1\"" "C:\whatever\firefox.exe,0"иscript.bat uninstall FirefoxPortable

      @echo off

IF "%1" == "uninstall" (
    IF "%2" == "" (
        echo Usage: uninstall ^<name^>
    )
    IF NOT "%2" == "" (
        reg delete "HKCU\SOFTWARE\RegisteredApplications" /v "%2" /f
        reg delete "HKCU\SOFTWARE\Clients\StartMenuInternet\%2"  /f
        reg delete "HKCU\SOFTWARE\Classes\%2HTM" /f
    )
)

IF "%1" == "install" (
    IF "%2" == "" (
        echo Usage: install ^<name^> ^<command?^> ^<icon?^>
    )
    IF NOT "%2" == "" (
        reg add "HKCU\SOFTWARE\RegisteredApplications" /v "%2" /t REG_SZ /d "Software\Clients\StartMenuInternet\%2\Capabilities" /f


        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2" /t REG_SZ /d "%2" /f

        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities" /v "ApplicationDescription" /t REG_SZ /d "%2" /f
        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities" /v "ApplicationIcon" /t REG_SZ /d "%4" /f
        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities" /v "ApplicationName" /t REG_SZ /d "%2" /f

        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities\FileAssociations" /v ".htm" /t REG_SZ /d "%2HTM" /f
        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities\FileAssociations" /v ".html" /t REG_SZ /d "%2HTM" /f

        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities\Startmenu" /v "StartMenuInternet" /t REG_SZ /d "%2" /f

        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities\URLAssociations" /v "http" /t REG_SZ /d "%2HTM" /f
        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\Capabilities\URLAssociations" /v "https" /t REG_SZ /d "%2HTM" /f

        reg add "HKCU\SOFTWARE\Clients\StartMenuInternet\%2\shell\open\command" /t REG_SZ /d "%2HTM" /f


        reg add "HKCU\SOFTWARE\Classes\%2HTM" /t REG_SZ /d "%2 Handler" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM" /v "AppUserModelId" /t REG_SZ /d "%2" /f

        reg add "HKCU\SOFTWARE\Classes\%2HTM\Application" /v "AppUserModelId" /t REG_SZ /d "%2" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM\Application" /v "ApplicationIcon" /t REG_SZ /d "%4" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM\Application" /v "ApplicationName" /t REG_SZ /d "%2" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM\Application" /v "ApplicationDescription" /t REG_SZ /d "" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM\Application" /v "ApplicationCompany" /t REG_SZ /d "%2" /f

        reg add "HKCU\SOFTWARE\Classes\%2HTM\DefaultIcon" /t REG_SZ /d "%4" /f
        reg add "HKCU\SOFTWARE\Classes\%2HTM\shell\open\command" /t REG_SZ /d "%~3" /f
    )
)

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