Расширение возможностей ваших типов файлов

Из каждого правила есть исключения, для Windows 7 это вдвойне справедливо. В разделе «Анализ типа файла» показана основная система типов файлов с набором разделов, названных по имени расширений файла, и соответствующих разделов типа файлов. Оказывается, в реестре есть и еще одна связь, влияющая на ваши типы файлов.
Многие разделы содержат значения под названием PerceivedType, которые указывают на подразделы в HKEY_LOCAL_MACHINE\ SOFTWARE\Classes\SystemFileAssociations. Там разделы работают так же, как и обыкновенные разделы типа файлов, но у них гораздо больше возможностей. Вместо того чтобы быть соединенным с одним или двумя расширениями файлов, раздел воспринятого типа может быть соединен с десятками.
Скажем, вы только установили новую утилиту для изменения размеров изображений, которую требуется использовать с множеством форматов фотографий. Вместо того чтобы установить ее значением по умолчанию для этих типов файлов, вы решаете добавить элемент контекстного меню для каждого поддерживаемого формата. Конечно, можно сделать это для каждого из приблизительно графических форматов, которые поддерживает утилита, но оказывается, все, что вам нужно сделать, чтобы повлиять на все ваши файлы изображений сразу,это добавить в раздел
HKEY LOCAL MACHINE\SOFTWARE\Classes\SystemFileAssociations\image\shell\ my.neprogram
По умолчанию раздел image, указанный здесь, соединен со всеми расширениями файлов, для которых PerceivedType установлен как image, а именно: .bmp, .dib, .emf, .gif, .ico, .jfif, jpe, .jpeg, jpg, .png, .rle, .tif, .tiff, .wdp и .wmf.
В Windows7 установлены только пять разделов воспринятого типа, но можно в любой момент добавить свои разделы в ветвь SystemFileAssociations, что позволит вам затем соединить по крайней мере одно расширение файлов, добавив значение PerceivedType, указывающее на ваш новый раздел. Преимущество в том, что можно использовать этот раздел, чтобы добавить пользовательский элемент контекстного меню, который влияет на большое количество различных типов файлов сразу. Недостаток - это еще одно место, куда придется заглядывать, разыскивая нежелательный элемент контекстного меню или источник ошибки.
Для того чтобы разорвать соединение между расширением типа файла и воспринятым типом, сотрите значение PerceivedType из раздела расширения. Чтобы соединить тип файла с существующим PerceivedType, создайте новое строковое значение под названием PerceivedType в разделе расширения и установите его содержание - имя воспринятого типа в ветви SystemFileAssociations.
Если вы пытаетесь стереть действие из контекстного меню, которое соединяется через воспринятый тип, File Type Doctor выводит на экран поле для подтверждения, которое перечисляет другие расширения файлов, на которые повлияет изменение. Аналогично, создавая новое действие, можно выбрать контекст; щелкните на кнопке Properties рядом со списком Scope, чтобы вывести на экран все расширения, связанные с текущим выбором.
Изучая в реестре ветвь HKEY_CLASSES_ROOT\SysteniFileAssociations, вы можете обнаружить разделы расширения файла, такие как HKEY_CLASSES_ROOT\ SystemFileAssociations\. png. Они выглядят и работают точно так же, как разделы расширения и разделы типа файлов в HKEY_CLASSES ROOT, но используются, прежде всего, для того, чтобы сослаться на расширения Проводника, которые были предустановлены вместе с Windows. Вопрос, почему они находятся здесь, а не в HKEY classes.root с остальными расширениями, не до конца ясен, но SystemFileAssodations несомненно является еще одной ветвью, где можно искать разделы, влияющие на типы файлов.