목적과 위치에 대한 가장 큰 힌트는 "큰 유형", 즉 해당 두드러기의 이름입니다 : HKLM 및 HKCU
파일 연결은 두 두드러기에 설정되며 두 가지 다른 목적이 있습니다.
이름에서 알 수 있듯이 HKCU 레지스트리 항목은 CURRENT USER에 대한 파일 연결을 설정하고 HKLM의 해당 파일 유형 설정을 대체합니다.
HKLM은 LOCAL MACHINE, 즉 머신의 모든 사용자에 대한 파일 연관을 설정합니다 (HKCU 항목으로 대체되지 않는 한). (Win98의 경우 HKCR은 HKLM \ Software \ Classes의 약칭 별칭 일뿐입니다. 개별 하이브가 아니거나 다른 하이브가 아니 었습니다. 그러나 이것은 Win XP에서 변경되었으며 더 이상 사실이 아닙니다. HKCR은 이제 병합의 결과 인 가상 하이브입니다. HKCU \ Software \ Classes \, HKCU \ Software \ Classes \ 및 HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts 키 (HKCU 정보가 우선)
이 2 단계 시스템은 일대일뿐만 아니라 일대일 및 일대 다 파일 연결 체계를 용이하게합니다. 예를 들어 .htm, .html 및 .shtml 파일 형식을 모두 ProgID = htmlfile로 설정하면 단일 브라우저를 정의 할 수 있습니다. OTOH의 항목에는 여러 브라우저, 편집기 또는 기타 앱 목록에서 파일을 열기위한 여러 항목이있는 OpenWithList 또는 OpenWithProgID 하위 키가 포함될 수 있습니다.
HKLM \ Software \ Classes \와 HKCU \ Software \ Classes는 모두 같은 방식으로 작동합니다 (하나는 다른 것보다 우선합니다). 가장 간단한 형태의 파일 확장자 (예 : HKCR.txt)의 레지스트리 키가 있으며 기본값은 해당 ProgID (예 : txtfile)입니다. 기본값 외에 또는 대신에 "OpenWithProgID"하위 키에 대해 추가 ProgID 이름이 나열되고 (예 : txtfile 및 htmlfile) "OpenWithList"아래에 하위 키로 나타나는 추가 응용 프로그램 이름 (예 : Notepad ++ .exe, Opera.exe, Firefox.exe).
각 ProgID는 HKCR 내의 다른 키 (예 : HKCR \ txt 파일)에 정의되어 있습니다. 이 키에는 사용할 아이콘과 관련 파일 (예 : HKCR \ txtfile \ shell \ open \ command)을 여는 방법, 인쇄하는 방법, 인쇄 방법 등을 알려주는 하위 키가 있습니다. 마찬가지로 각 응용 프로그램 이름은 HKCR \ Applications 아래에 하위 키로 정의됩니다 (예 : HKEY_CLASSES_ROOT \ Applications \ Firefox.exe \ shell \ open \ command).
HKCU \ Software \ Classes 키 외에도 사용자 계정 파일 연결은 HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts 키에 있습니다. 이러한 항목은 제안 된대로 Windows 탐색기 용이 아니라 사용자 계정 파일 연결 재정의의 추가 소스입니다. 항목은 탐색기의 파일 연결 도구 (Explorer \ Tools \ Folder Options \ File Types)에 의해 작성되며 나열된 각 파일 확장자에 대한 OpenWithList 및 / 또는 OpenwithProgID 하위 키를 포함합니다.
파일 연결을 결정하기 위해 Windows는 먼저 해당 파일 확장자에 대한 HKCU 항목을 찾습니다. 하나를 찾지 못한 경우에만 HKLM 항목이 작동합니다. (참고 : HKCU \ Software \ Classes 또는 HKCU \ MIcrosoft \ Windows \ CurrentVersion \ Explorer \ FileExts를 우선적으로 테스트하지는 않았지만 FileExts 키가 될 것 같습니다.) 마찬가지로 참조 된 ProgID 또는 응용 프로그램 이름이 HKCU에 없으면 HKLM 항목이 검색됩니다. (\ Applications \ 항목은 일반적으로 디스크상의 실제 exe 파일 이름과 동일하더라도 임의의 이름입니다.)
특정 사용자 계정에 대한 파일 연결을 정의하려면 HKCU 하이브에 항목을 만드십시오. 모든 사용자에 대한 연관을 정의하려면 HKLM 하이브 (HKCR)에 항목을 작성하고 해당 파일 유형에 대한 HKCU 하이브의 모든 참조를 삭제하십시오. 분명히 레지스트리 키에 대한 적절한 액세스 권한이 필요합니다.
대화식 또는 배치 모드에서 RegEdit을 사용하는 것을 선호하므로 assoc 및 ftype 도구를 사용하지 않지만 다른 의견에서는 HKLM 하이브에서만 작동하며 HKCU 키를 지우거나 설정하는 데 쓸모없는 것으로 보입니다. 더 많은 예제를 보려면 시간이 걸리고 RegEdit을 사용하여 위에서 언급 한 키를 찾아보십시오.