Чтение онлайн

ЖАНРЫ

Реестр Windows 7

Климов Александр Петрович

Шрифт:

Аналогично поступаем с файлами BMP, ZIP, LNK и т. д.

Для папок и Портфеля нужно использовать, соответственно, разделы Folder и Briefcase . Особняком стоит файл Документ журнала (.jnt) , используемый для создания файла программы Журнал (Journal.exe). Для удаления данного пункта нужно удалить раздел ShellNew из ветви реестра HKCR\.jnt\jntfile .

Создание собственных команд для меню Создать

Ко мне нередко обращались за помощью, когда обнаруживали, что после установки какой-то программы вдруг исчезала возможность создания текстового файла или другого файла при помощи команды Создать .

Попробуем самостоятельно создать свои пункты в меню Создать . Для примера возьмем файлы REG и HTM. Выбор их не случаен. Так как вы читаете книгу о реестре, логично научиться использовать файлы REG в своих целях, а файлы HTM

пригодятся для веб-мастеров, которые пред почитают создавать веб-страницы при помощи Блокнота.

Команды для создания новых файлов: REG и HTML

Итак, наша цель – добавить новый пункт в меню Создать , при помощи которого будут создаваться заготовки REG-файла с нужной структурой. Первый и очевидный шаг – перейти в раздел HKCR и найти подраздел .reg . Создаем в нем новый раздел ShellNew .

Так как создавать пустой файл не имеет большого смысла, будем использовать в созданном разделе параметр FileName , в котором будет прописан шаблон для нового файла.

Запустим Проводник и создадим в любой папке файл registry.reg (как это сделать, описано в первой главе) следующего содержания:

Windows Registry -Editor Version 5.00

Теперь его нужно скопировать в папку C:\Windows\ShellNew . Этот каталог хранит заготовки для файлов, которые создаются с помощью контекстного меню.

Вернемся в редактор реестра и создадим в разделе HKCR\.reg\ShellNew строковый параметр FileName со значением C:\Windows\ShellNew\registry.regtxt . Теперь осталось перезагрузить компьютер и посмотреть на получившийся результат. Мы видим, что в меню Создать появилась команда Файл реестра, которая создает новый файл Файл реестра.reg (рис. 4.22.).

Если открыть созданный файл с помощью Блокнота, то в нем обнаруживается строчка Windows Registry Editor Version 5.00 . Теперь можно быстро создавать REG-файлы, добавляя нужные разделы и параметры.

Рис. 4.22. Создание нового файла реестра

По тому же принципу можно создавать команды меню для создания других файлов. Например, добавим в меню Создать команду для создания HTML-файла по шаблону.

Поместим в папку C:\Windows\ShellNew предварительно созданный в другом месте файл index.html следующего содержания:

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

<title>Мой заголовок</title>

</head>

<body>

</body>

</html>

Файл можно создать в Блокноте – технология работы точно такая же, как при создании REG-файла.

Откроем редактор реестра и в разделе HKCR\.html создадим новый раздел ShellNew .

В только что созданном разделе HKCR\.html\ShellNew создадим строковый параметр FileName , содержащий имя созданного выше файла-шаблона – index.html (рис. 4.23).

Рис. 4.23. Новый раздел и параметр в реестре

После перезагрузки компьютера в меню Создать появится пункт Документ HTML , щелчок по которому создает документ по шаблону, заданному файлом index.htm.

Удаление команды Отправить

Если вы хотите скрыть команду Отправить из контекстного меню файлов, то присвойте пустое значение параметру по умолчанию в разделе HKCR\AllFilesystemObjects\shellex\ContextMenuHandlers\SendTo .

Создание собственных команд для контекстного меню Проводника и Рабочего стола

Мы знаем, как удалять или редактировать некоторые команды из контекстного меню Проводника и Рабочего стола. Настало время научиться создавать свои собственные команды. Информация о контекстном меню Проводника и Рабочего стола хранится в разделе реестра HKCR\Directory\Background\Shell . Именно отсюда система узнает, какие команды нужно отобразить в контекстном меню и какие программы нужно запустить, когда пользователь щелкает по выбранной команде меню. Таким образом, вооружившись этими знаниями, мы сможем сами создавать нужные нам команды.

Для добавления новой команды в контекстное меню, достаточно создать в разделе HKCR\Directory\Background\Shell новый подраздел. Предположим, мы хотим, чтобы в меню появилась команда, запускающая стандартный Блокнот. Создаем подраздел notepad и сразу можем проверить и убедиться,

что в контекстном меню Рабочего стола появилась одноименная команда.

Естественно, такая команда не очень нас устраивает, и мы хотим задать собственный текст, например Блокнотик.

Для этого редактируем параметр по умолчанию созданного подраздела и записываем для него новое значение, которое мы хотим видеть, например, прописываем слово «Блокнотик» (рис. 4.24).

Рис. 4.24. Новый раздел реестра для добавления команды в контекстное меню

Проверяем и убеждаемся, что в контекстном меню появилась команда Блокнотик (рис. 4.25). Пункт меню мы добавили, но щелчок по нему пока ни к чему полезному не приводит. Для того чтобы новый пункт меню не только отображался, но и работал, нам понадобится настроить еще некоторые параметры.

Рис. 4.25. Новый пункт меню

Подраздел notepad может содержать в себе другие подразделы и различные параметры строкового типа. Сначала рассмотрим параметры. Мы уже знаем, что параметр по умолчанию определяет название команды. Также можно использовать следующие параметры:

► MUIVerb – значение данного параметра заменяет собой значение параметра по умолчанию, то есть мы можем в нем задать имя для команды в меню.

► Extended – наличие данного параметра без значения говорит системе о том, что команда должна отображаться только при нажатии клавиши Shift . Вы можете посмотреть на подраздел HKCR\Directory\Background\shell\cmd , в котором содержится такой параметр. Поэтому, если держать нажатой клавишу Shift , в контекстном меню появится команда Открыть окно команд .

► LegacyDisable – присутствие данного параметра запрещает отображение в контекстном меню создаваемой команды. Правда, тогда не понятно, зачем вообще создавать команду, если ее не нужно выводить на экран.

► ProgrammaticAccessOnly – присутствие данного параметра так же запрещает отображение в контекстном меню создаваемой команды, разрешая только программный доступ к ней.

► NoWorkingDirectory – наличие данного параметра говорит о том, что при работе программы (если команда контекстного меню запускает программу) не нужно указывать рабочий каталог программы.

Теперь перейдем к подразделам. Прежде всего, нужно создать подраздел command . Параметр по умолчанию данного подраздела должен содержать в себе команду, которая будет выполняться при выборе соответствующего элемента контекстного меню. В нашем случае нужно прописать команду notepad.exe (рис.4.26).

Рис. 4.26. Настройки в реестре для новой команды

Как видите, несколько несложных операций в реестре – и мы получаем новую команду для контекстного меню Рабочего стола и Проводника. А зная алгоритм создания новой команды, вы можете изучить и отредактировать параметры других программ, которые вы прописали в операционной системе.

Включение/выключения эскизов

Рассмотрим практический пример создания собственной команды в меню Проводника.

Если вы предпочитаете просматривать файлы в режиме Значки, то заметили, что, например, значки картинок отображаются в виде эскизов. В настройках папки можно изменить данное поведение и отключить показ эскизов.

Включать или отключать эти настройки очень утомительно. Судите сами – сначала надо нажать клавишу Alt , чтобы появилась строка меню у Проводника, далее выбираем меню Сервис ► Параметры папок... . Теперь нужно переключиться на вкладку Вид и поставить или убрать флажок у команды Всегда отображать значки, а не эскизы . Упростим задачу при помощи реестра и небольшого VBS-сценария, который циклически меняет значения параметра IconsOnly в разделе HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced .

Создадим новый раздел ToggleThumb в разделе HKCU\ Software\Classes\Directory\Background\Shell и присвоим параметру по умолчанию строковое значение Включить/ Выключить эскизы . Тем самым мы создали новую команду для контекстного меню папки в Проводнике. Обратите внимание, что теперь мы используем раздел HKCU , чтобы действие примера распространялось только на одного пользователя.

В только что созданном подразделе ToggleThumb cоздаем подраздел command и прописываем в параметре по умолчанию строку wscript.exe «%WinDir%\togglethumbs.vbs» (рис. 4.27).

Поделиться с друзьями: