연결되지 않은 파일 형식에 대한 열기 대화 상자에서 애플리케이션을 제외하는 방법
사용자가 등록된 파일 형식의 멤버가 아닌 파일(즉, 알 수 없는 파일 형식)을 열려고 하거나 사용자가 파일의 바로 가기 메뉴에서 기본프로그램을 선택하거나> 열기를 선택하면 셸은 사용자가 파일을 여는 데 사용되는 프로그램을 지정할 수 있는 하위 메뉴 또는 대화 상자를 제공합니다.
기본적으로 HKEY_CLASSES_ROOT\ 애플리케이션의 하위 키로 등록된모든 애플리케이션은 열기 대화 상자에 표시됩니다. 이러한 애플리케이션은 애플리케이션이 파일 형식 을 처리하도록 등록되었는지 여부에 관계없이 Open에 표시됩니다.
애플리케이션이 특정 파일 형식을 여는 데 사용해서는 안 되거나 사용할 수 없는 경우 열기 대화 상자에 애플리케이션이 표시되지 않도록 하려면 이 항목에 설명된 두 가지 기술 중 하나를 사용합니다.
지침
1단계:
애플리케이션의 하위 키에 NoOpenWith 항목을 추가합니다. 애플리케이션에서 파일 형식을 사용하는 경우 Windows는 해당 정보를 기록하여 권장 프로그램 목록을 작성합니다. 이 목록은 다음 스크린샷과 같이 하위 메뉴로 열기 에 표시됩니다.
이러한 권장 애플리케이션은 다음 스크린샷과 같이 열기 대화 상자의 권장 프로그램 부분에도 표시됩니다.
참고
애플리케이션이 파일 형식에 대해 OpenWithList 또는 OpenWithProgIDs에 자신을 등록한 경우 NoOpenWith 항목이 설정된 경우에도 권장 프로그램 목록에 표시됩니다. 또한 애플리케이션이 권장 프로그램 목록에서 제공되는지 여부에 관계없이 사용자는 실행 파일로 수동으로 찾아볼 수 있습니다.
애플리케이션은 애플리케이션의 하위 키 아래에 NoOpenWith 값을 지정하여 이 추적을 사용하지 않도록 설정할 수 있습니다.
NoOpenWith 항목은 다음 예제와 같이 빈 REG_SZ 값입니다.
HKEY_CLASSES_ROOT
Applications
MyProgram.exe
NoOpenWith
NoOpenWith 항목을 설정하면 다음과 같은 효과가 있습니다.
- 애플리케이션이 해당 파일 형식을 처리하도록 특별히 등록되지 않은 한 끌어서 놓기를 통해 애플리케이션의 점프 목록에 파일을 고정하지 않습니다.
- 애플리케이션이 해당 파일 형식을 처리하도록 특별히 등록되지 않은 한 일반 파일 대화 상자와 SHAddToRecentDocs 함수에 대한 호출이 애플리케이션의 점프 목록에 파일을 추가하지 못하도록 합니다.
2단계:
애플리케이션이 열기 대화 상자에 표시되지 않도록 하는 두 번째 방법은 SupportedTypes 하위 키를 사용하여 애플리케이션이 열 수 있는 파일 형식의 확장자를 명시적으로 나열하는 것입니다. 이렇게 하면 애플리케이션이 열 수 없는 파일 형식에 대해 열기 대화 상자에 표시되지 않습니다. 또한 애플리케이션이 앞에서 설명한 대로 권장 프로그램 목록에 표시됩니다.
이 메서드는 애플리케이션이 특정 파일 형식으로 파일을 저장할 수 있지만 해당 파일 형식을 열 수 없는 경우에 특히 유용합니다. 또한 애플리케이션은 저장 대화 상자를 호출할 때 IFileDialog::SetOptions를 통해 FOS_DONTADDTORECENT 플래그를 설정해야 합니다. 이렇게 하면 점프 목록의 최근 또는 자주 사용하는 부분에 항목이 추가되지 않습니다. 또한 OpenWithList에서 애플리케이션이 추적되지 않도록 차단합니다.
지원되는 각 확장은 다음 예제와 같이 SupportedTypes 하위 키 아래에 항목으로 추가됩니다. 항목은 연결된 값이 없는 REG_SZ 또는 REG_NULL 형식입니다.
HKEY_CLASSES_ROOT
Applications
ApplicationName
SupportedTypes
.ext1
.ext2
.ext3
SupportedTypes 하위 키가 제공되면 해당 확장이 있는 파일만 애플리케이션의 점프 목록에 고정하거나 애플리케이션의 최근 또는 자주 사용하는 대상 목록에서 추적할 수 있습니다.
NoOpenWith 항목은 SupportedTypes 하위 키를 재정의하고 열기 대화 상자에서 애플리케이션 을 숨깁니다.