Windows 7에서 기본 브라우저를 목록에없는 프로그램으로 변경하려면 어떻게합니까?


25

여러 브라우저를 정기적으로 사용하므로 이미 실행중인 브라우저 (또는 Firefox가없는 경우 Firefox)에서 페이지를 여는 스크립트를 작성했습니다. 이 스크립트를 기본 브라우저로 설정하고 싶습니다. "연결 설정"대화 상자로 이동하여 HTTP를 선택하고 "프로그램 변경"을 클릭하면 팝업 대화 상자에서 이미 설치 한 웹 브라우저 중 하나를 제외한 다른 것을 선택할 수 없습니다. 이것은 모든 프로토콜에 해당되는 것으로 보입니다 (파일 확장자가 아닌 "다른 프로그램"에서 선택하거나 나열되지 않은 프로그램을 찾아 볼 수 있음). Windows 도움말은 이에 대해 아무 것도 말하지 않으며 사용할 수없는 "찾아보기 ..."단추를 사용한다고 말합니다. 타사의 "기본 프로그램 편집기"도 시도했지만이 작업을 수행 할 수없는 것 같습니다.

스크립트를 기본값으로 수동으로 설정하는 방법이 있습니까 (레지스트리를 편집하여)?

답변:


36

예, 직접 레지스트리 조작으로 스크립트를 작성할 수 있습니다.

짧은 대답

로 다음의 각 복사 .reg파일 (예 : firefox.reg, chrome.reg, ie.reg)와 스위치 (또는 스크립트로 할 때 그들을 실행 reg.exe).

Firefox의 경우 :

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice]
"ProgId"="FirefoxURL"

Chrome의 경우 :

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice]
"ProgId"="ChromeHTML"

IE9의 경우 :

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice]
"ProgId"="IE.HTTP"

긴 대답

Windows는 사용자 별 표준 프로토콜 기본 등록을 UrlAssociations키 아래에 저장합니다 .

HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations

파일 연결과 마찬가지로 링크에 대한 "기본 프로그램"이있을 수 있습니다. 이 참조가 그와 같은 전문 용어 용어입니다 UserChoice세 이하 표준 파일 연결과 같은 쉘 등록도 키 -이 http수 PROGID 변경할 수는 있지만, 브라우저 근위 구성이에 추가 코멘트 하단을 참조 (기본 프로그램을 통해입니다 ).

내가 여기서 말하는 것은 제어판의 기본 프로그램 섹션으로 이동하여 브라우저를 설정할 때 변경하는 것입니다.

제어판의 프로토콜 기본 프로그램

이것을 레지스트리에서 직접 구성하려면 먼저 이미 존재하는지 검사합시다. 이 스크린 샷에서에서 해당 키로 이동 regedit.exe했으며 Chrome은 ChromeHTMLProgId 값으로 지정된 기본 브라우저 입니다.

regedit에서 UrlAssociations 하위 키로 이동

당신이 링크를 클릭하면 열리는 브라우저를 전환하기 위해 필요한 최소한의 변경은 변경하는 것입니다 ProgId세 이하 값을 UserChoice당신은 아마 변화 (원하는 각 프로토콜에 하위 키 httphttps같은 수 있지만 어떤 이유로 각을 원한다면 별도의 브라우저에서 열린 것 중 하나).

이제 Firefox, IE 및 전환하려는 다른 브라우저에 사용할 항목을 결정하기 만하면됩니다. 이것을 프로그래밍 방식으로 결정하려면 CapabilitiesFirefox의 브라우저 등록 키를 확인하십시오.

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\FIREFOX.EXE\Capabilities\URLAssociations

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet 모든 브라우저가 나열되는 위치이며 각 브라우저는 위의 구조를 가져야합니다.

regedit에서 기능 키로 이동

검사에서 Firefox로 전환하려면 FirefoxURLUrlAssociations에서 ProgId 값을 다시 사용한다는 것을 알 수 있습니다 .

(그러나 이처럼 파고 싶지 않다면 빠른 속임수가 있습니다. 기본적으로 원하는 브라우저를 설정하고 regedit를 새로 고쳐 브라우저가 무엇을 설정했는지 확인하십시오 UserChoice!)

키 값을로 변경하면 FirefoxURLFirefox에서 링크가 열립니다. 그런 다음 링크를 클릭하거나 제어판에서 올바른 기본값이 등록되었는지 다시 확인할 수 있습니다.

제어판에서 기본 프로그램을 다시 확인

이제 세심한주의를 기울 였다면 다음과 같은 몇 가지 결함을 발견했을 것입니다.

  1. IE URLAssociations의 브라우저 등록 아래 에 하위 키 가 없으므로 StartMenuInternetProgId 값은 어디에서 오는가? 답 : 적어도 더 이상 연구하지 않으면 모릅니다. 아직 찾지 못한 다른 키에서 하드 코딩되거나 발견되었을 수 있습니다.

  2. 파이어 폭스의 PROGID 그것의 아래의 URLAssociations있습니다 FirefoxURL,하지만 당신은 브라우저 자체의 옵션에서 등록을 클릭하면, 그것은 사용하는 FirefoxHTML대신 PROGID로! 왜? 다시, 나는 모른다. 둘 다 존재하며 Firefox를 가리 키기 때문에 작동합니다. 의도적 인 것일 수도 있지만 효과가없는 버그 일 수 있습니다.

  3. UserChoice기본 프로그램 이 없으면 어떻게됩니까 ? 답 : 프로토콜에 대한 "일반적인"파일 연결 (예 :) http이 사용됩니다. 이 단지 파일 연결 (같은 표준 PROGID 위치에서 발견된다 HKCU\Software\Classes, HKLM\Software\Classes하고 뷰에서 HKCR). 적어도 크롬은 정보를 설정한다고 생각하지만 파이어 폭스는 적어도 내 테스트에서 보이지 않는 것 같습니다.

  4. 이것을 기본 프로그램 편집기에 추가하려면 해당 응용 프로그램의 UserVoice Feedback 페이지 에서 제안하고 투표해야 합니다 . 개발 시간을 보내는 방법을 결정할 때 응용 프로그램 작성자가 해당 피드백에주의를 기울이는 것이 좋습니다.


2
자세한 답변 감사합니다. 설치된 브라우저 중 하나가 아닌 다른 것을 기본 HTTP 처리기로 설정하려면 어떻게해야합니까? 레지스트리에 아직 설치되지 않은 것을 사용하도록 설정할 수도 있습니까? 아니면 스크립트에 대한 레지스트리 항목을 만들어야합니까?
Morgan 5 월

2
@MorganMay 당신이해야 할 일은 UserChoice기본 프로그램 등록을 제거하여 "표준"파일 연결 키가 포인트 # 3에서 참조 된 것처럼 사용되도록하는 것입니다. 예를 들어 기본값 인 기본 사용자 HKEY_CLASSES_ROOT\http\shell\open\command와 동일한 키를 쓸 수 있습니다 HKEY_CURRENT_USER. 응용 프로그램 경로와 브라우저에 필요한 매개 변수 문자열 (예 : -- %1Chrome에 대한 생각)을 설정해야합니다.
Factor Mystic

1
끝까지 읽을 수있어서 다행입니다. ProgId 항목을 제거한 다음 HKCR \ http \ shell \ open \ command에서 "default"처리기를 설정하는 조합
Brent

-1

Windows 10에서 사용자 정의 무언가를 기본 프로토콜 처리기로 설정하려고 시도 하면서이 답변에 착륙 한 사람이 있다면 금이 간 것 같습니다.

이 질문에 대한 다른 대답 Clients\StartMenuInternet은 Windows 7에서 기본 브라우저를 설정하는 것에 대해 몰랐던 키로 한 걸음 더 가까이 다가갔습니다 . 그러나 Firefox의 StartMenuInternet키를 거의 복제 한 후에도 여전히 프로그램이 설정에 나타나지 않았습니다. 앱.

Revo Uninstaller를 사용하여 firefox의 제거를 시작하고 firefox의 제거 프로그램을 취소 한 다음 Revo가 남은 레지스트리 키를 스캔하도록 한 후 다른 키를 찾았습니다 HKLM\SOFTWARE\RegisteredApplications. 이것은 윈도우가 그 기능에 대해 알 수 있도록 등록 된 모든 프로그램을 저장하는 것 같습니다.

그래서 설치 한 후에 StartMenuInternet키에 키를 추가 HKLM\SOFTWARE\RegisteredApplications를 차례로 Software\Clients\StartMenuInternet\YOURPROGRAM\Capabilities정확히처럼 시작으로, 예 - Software\:

regedit의 스크린 샷 (10 명의 담당자가있을 때까지 이미지를 포함시킬 수 없습니다 ...)


-1

프로그램 (YName.exe)을 브라우저로 사용하려면 다음을 등록해야합니다.

1) ... 시작 메뉴 인터넷-위에서 설명한대로

HKCU \ Software \ Clients \ StartMenuInternet \ YName \ Capabilities \ URLAssociations

http = YNameURL

https = YNameURL

2) HKCU \ Software \ RegisteredApplications-위에서 설명한대로 :

YName = 소프트웨어 \ 클라이언트 \ 시작 메뉴 인터넷 \ Y 이름 \ 기능

3) HKCU \ Software \ Classes \ YNameURL \ shell \ open \ 명령

@ = Path \ YName.exe

4) HKCU \ Software \ Classes \ Applications \ YName.exe \ shell \ open \ command

@ = Path \ YName.exe



1
슈퍼 유저에 오신 것을 환영합니다 ! 답변은 영어로 작성해야합니다 (완전히).
Glorfindel

(1)  수퍼 유저 는 영어 전용 사이트입니다. 영어가 아닌 답변 부분을 삭제하십시오. (2) 모든 대답은 그 자체로 설 수 있어야한다. 이건 아닙니다. 답변은 다른 답변과 관련하여“위에서 설명한대로”라고 말해서는 안됩니다. 제발 편집 그 자체로 의미가 있도록이 있습니다. 크레딧을 제공하는 한 다른 답변의 일부를 복사해도됩니다. (3)이 말의 대부분은 이미 말한 것 같습니다. 어떤 새로운 정보를 추가하고 있는지 명확히하십시오.
스콧
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.