Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Когда пользователь пытается открыть файл, который не является членом любого зарегистрированного типа файла (то есть неизвестный тип файла), или когда пользователь выбирает Открыть с помощью или Открыть с помощью -> выбрать программу по умолчанию из контекстного меню файла, оболочка представляет подменю или диалоговое окно, позволяющее пользователю указать программу, используемую для открытия файла.
По умолчанию любое приложение, зарегистрированное в качестве подключа HKEY_CLASSES_ROOT\Applications, отображается в диалоговом окне Открыть с помощью. Эти приложения представлены в Open с независимо от того, зарегистрировано ли приложение для обработки типа файла.
Чтобы предотвратить отображение приложения в диалоговом окне Открыть с помощью, если приложение не должно или не может использоваться для открытия определенных типов файлов, используйте один из двух методов, описанных в этом разделе.
Инструкции
Шаг 1.
Добавьте запись NoOpenWith в подраздел приложения. Если приложение использует тип файла, Windows записывает эти сведения для создания списка рекомендуемых программ. Этот список представлен в Open с помощью подменю, как показано на следующем снимке экрана.
Эти рекомендуемые приложения также отображаются в части Рекомендуемые программы диалогового окна Открыть с помощью, как показано на следующем снимке экрана.
Заметка
Если приложение зарегистрировалось в OpenWithList или OpenWithProgIDs для типа файла, оно появится в списке Рекомендуемые программы даже если установлена запись NoOpenWith. Кроме того, помните, что независимо от того, предлагается ли приложение в списке рекомендуемых программ, пользователь может вручную перейти к любому исполняемому файлу.
Приложения могут отключить это отслеживание, указав значение NoOpenWith в подразделе приложения.
Запись NoOpenWith является пустым значением REG_SZ, как показано в следующем примере.
HKEY_CLASSES_ROOT
Applications
MyProgram.exe
NoOpenWith
Настройка записи NoOpenWith также имеет следующие эффекты:
- Запрещает закрепление файла в списке переходов приложения с помощью перетаскивания, если приложение не зарегистрировано для обработки этого типа файла.
- Запрещает обычному диалоговому окну файла и любому вызову функции shAddToRecentDocs добавлять любой файл в список переходов приложения, если приложение не зарегистрировано для обработки этого типа файла.
Шаг 2.
Второй способ предотвратить появление приложения в диалоговом окне Открыть с помощью — использовать вложенный раздел SupportedTypes для явного перечисления расширений типов файлов, которые может открыть приложение. Это предотвращает отображение приложения в диалоговом окне Открыть с помощью диалогового окна для типов файлов, которые он не может открыть. Это также приводит к отображению приложения в списке рекомендуемых программ, как описано ранее.
Этот метод особенно полезен, если приложение может сохранить файл в виде определенного типа файла, но не может открыть этот тип файла. Приложение также должно задать флаг FOS_DONTADDTORECENT через IFileDialog::SetOptions при вызове диалогового окна "Сохранить". Это предотвращает добавление элемента в разделы последних или частых списка переходов. Он также предотвращает отслеживание приложения под OpenWithList.
Каждое поддерживаемое расширение добавляется записью в подразделе "Поддерживаемые Типы", как показано в следующем примере. Записи имеют тип REG_SZ или REG_NULLбез связанных значений.
HKEY_CLASSES_ROOT
Applications
ApplicationName
SupportedTypes
.ext1
.ext2
.ext3
Если предоставляется вложенный ключ SupportedTypes, то только файлы с этими расширениями могут быть закреплены в Jump List приложения или отслеживаться в списке назначений приложения, таких как Недавние или Часто используемые.
Запись NoOpenWith переопределяет подраздел SupportedTypes и скрывает приложение в диалоговом окне Открыть с помощью.