Если Вы работаете с разными типами файлов, а также используете меню «Создать», то, возможно, Вы задавались вопросом, как можно добавить новые пункты в это меню. В предыдущей статье я описал проблему, в которой по непонятным причинам из этого меню пропал пункт «Текстовый документ». Для его возвращения использовался reg-файл, который автоматически добавлял в системный реестр соответствующие правки. Однако, при необходимости, Вы можете самостоятельно подправить реестр Windows, и тем самым добавить свои типы файлов в меню «Создать», чтобы сделать Вашу работу с Windows более удобной.
Метод, описанный в этой статье, работает как для Windows XP, так и для Windows 7. Многие программы, например, WinRar, используют такой подход для добавления в меню «Создать» своих собственных типов файлов.
Добавить пункт в меню «Создать» (через правку реестра, ShellNew)
Настройки для каждого расширения файла в реестре Windows найти не сложно. Для этого необходимо запустить редактор реестра и развернуть ветку:
HKEY_CLASSES_ROOT
Вы увидите огромный список разделов, большинство из которые начинаются с точки. Ведь, как известно, расширение файла добавляется через точку к имени файла (по умолчанию расширения скрыты, но их отображение не трудно включить).
И так, предположим, что мы хотим произвести манипуляции над таким типом файла, как html (веб-страница). Находим в нашем списке раздел “.html” и разворачиваем его. Давайте сразу создадим там подраздел с именем “ShellNew” (без кавычек), как показано на рисунке:
Так вот, задача, которую мы себе поставили (добавить в меню «Создать» новый пункт — файл с типом html), имеет несколько решений. В зависимости от того, что мы хотим получить в результате, наша задача имеет несколько решений. В любом случае необходимо создавать новый параметр в разделе “ShellNew”.
Параметры раздела “ShellNew”
А параметры могут быть следующие. Как правило, необходимо выбрать только один из них для каждого расширения файла.
Имя параметра | За что отвечает |
---|---|
Command | Выполнить комманду для создания нового файла. Тип параметра — строковой (REG_SZ). |
Data | Создать файл с содержимым, которое будет указано в значении этого параметра. Этот параметр должен иметь двоичный тип (REG_BINARY), но если содержимое создаваемого файла будет состоять всего из одной строки, то можно этому параметру задать строковой тип (REG_SZ). Если заданы параметры FileName и NullFile, то этот параметр игнорируется. |
FileName | Создать файл с содержимым. Тип — строковой (REG_SZ). Содержимое будет браться из файла, путь к которому указан в этом параметре. Имеет приоритет над NullFile. Если путь в этом параметре задан не полный, а просто имя файла, то Windows будет искать файл по следующим путям:
|
NullFile | Создать пустой файл. Тип — строковой (REG_SZ). Не принимает значение (может иметь любое содержимое — важен лишь факт существования данного параметра). Не учитывается, если задан FileName. Создание этого параметра равнозначно созданию пустого параметра Data. |
Ещё раз повторюсь, что для добавления своего пункта в меню «Создать» требуется создать только один из этих параметров.
Добавление пунктов в меню «Создать»
Первые 2 параметра из таблицы выше рекомендуется использовать только опытным пользователям. В этой статье я не буду останавливаться на них, лишь отмечу, что параметр “Command” используется для вызова внешней программы, которая создаёт файл. Примером такой программы может быть создание ярлыка — запускается специальная программа (Мастер), которая позволяет задать свойства создаваемого ярлыка в несколько шагов.
Параметр “Data” используется тогда, когда создаваемый файл должен иметь какое-то содержимое (как правило — бинарное). Поэтому его тип — двоичный (REG_BINARY).
Здесь пример только с использованием “FileName” и “NullFile”.
Добавление пунктов в меню «Создать» для создания пустого html-файла
Создадим в разделе “ShellNew” (который мы создали внутри раздела “.html”) параметр с именем “NullFile”. В меню «Создать» появится дополнительный пункт для файла с типом html. У меня он имеет название «Chrome HTML Document», потому что html-файлы на моем компьютере ассоциированы с браузером Google Chrome.
При клике по этому пункту будет создаваться пустой html-файл.
Добавление пунктов в меню «Создать» для создания html-файла с заданным содержимым
Если мы хотим, чтобы наш файл создавался не пустой, а по заданному шаблону, то необходимо создать этот шаблон. Для этого я скопирую в паку C:WindowsShellNew файл “myhtml.html” с нужным мне содержимым, а в “ShellNew” создам параметр с именем “FileName”, в котором напишу просто “myhtml.html”. Как я уже написал выше, если указывать не полный, а короткий путь к файлу-шаблону, то Windows будет искать этот шаблон в первую очередь в директории “C:WindowsShellNew” (и двух других).
Теперь наш файл при создании уже будет иметь некое содержимое, Windows просто скопирует его с шаблона “myhtml.html”.
В Windows 7 создать файл в директории “C:WindowsShellNew” при включённом UAC не получится. Поэтому его надо создать в другом месте, а затем скопировать.
Надеюсь, я понятно рассказал о том, как добавлять свои пункты в меню «Создать», но если нет — можете смело задавать вопросы в комментариях.