Реестр Windows 7
Шрифт:
Ко мне нередко обращались за помощью, когда обнаруживали, что после установки какой-то программы вдруг исчезала возможность создания текстового файла или другого файла при помощи команды Создать .
Попробуем самостоятельно создать свои пункты в меню Создать . Для примера возьмем файлы REG и HTM. Выбор их не случаен. Так как вы читаете книгу о реестре, логично научиться использовать файлы REG в своих целях, а файлы HTM пригодятся для веб-мастеров, которые пред почитают создавать веб-страницы при помощи Блокнота.
Команды для создания новых файлов: REG и HTML
Итак, наша цель – добавить новый пункт в меню Создать , при помощи которого будут создаваться заготовки REG-файла с нужной структурой. Первый и очевидный шаг – перейти в раздел HKCR и найти подраздел .reg . Создаем в нем новый раздел ShellNew .
Так
Запустим Проводник и создадим в любой папке файл 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-файлы, добавляя нужные разделы и параметры.
По тому же принципу можно создавать команды меню для создания других файлов. Например, добавим в меню Создать команду для создания 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).После перезагрузки компьютера в меню Создать появится пункт Документ HTML , щелчок по которому создает документ по шаблону, заданному файлом index.htm.
Удаление команды Отправить
Если вы хотите скрыть команду Отправить из контекстного меню файлов, то присвойте пустое значение параметру по умолчанию в разделе HKCR\AllFilesystemObjects\shellex\ContextMenuHandlers\SendTo .Создание собственных команд для контекстного меню Проводника и Рабочего стола
Мы знаем, как удалять или редактировать некоторые команды из контекстного меню Проводника и Рабочего стола. Настало время научиться создавать свои собственные команды. Информация о контекстном меню Проводника и Рабочего стола хранится в разделе реестра HKCR\Directory\Background\Shell . Именно отсюда система узнает, какие команды нужно отобразить в контекстном меню и какие программы нужно запустить, когда пользователь щелкает по выбранной команде меню. Таким образом, вооружившись этими знаниями, мы сможем сами создавать нужные нам команды.
Для добавления новой команды в контекстное меню, достаточно создать в разделе HKCR\Directory\Background\Shell новый подраздел. Предположим, мы хотим, чтобы в меню появилась команда, запускающая стандартный Блокнот. Создаем подраздел notepad и сразу можем проверить и убедиться, что в контекстном меню Рабочего стола появилась одноименная команда.
Естественно, такая команда не очень нас устраивает, и мы хотим задать собственный текст, например Блокнотик.
Для этого редактируем параметр по умолчанию созданного
Проверяем и убеждаемся, что в контекстном меню появилась команда Блокнотик (рис. 4.25). Пункт меню мы добавили, но щелчок по нему пока ни к чему полезному не приводит. Для того чтобы новый пункт меню не только отображался, но и работал, нам понадобится настроить еще некоторые параметры.
Подраздел notepad может содержать в себе другие подразделы и различные параметры строкового типа. Сначала рассмотрим параметры. Мы уже знаем, что параметр по умолчанию определяет название команды. Также можно использовать следующие параметры:
► MUIVerb – значение данного параметра заменяет собой значение параметра по умолчанию, то есть мы можем в нем задать имя для команды в меню.
► Extended – наличие данного параметра без значения говорит системе о том, что команда должна отображаться только при нажатии клавиши Shift . Вы можете посмотреть на подраздел HKCR\Directory\Background\shell\cmd , в котором содержится такой параметр. Поэтому, если держать нажатой клавишу Shift , в контекстном меню появится команда Открыть окно команд .
► LegacyDisable – присутствие данного параметра запрещает отображение в контекстном меню создаваемой команды. Правда, тогда не понятно, зачем вообще создавать команду, если ее не нужно выводить на экран.
► ProgrammaticAccessOnly – присутствие данного параметра так же запрещает отображение в контекстном меню создаваемой команды, разрешая только программный доступ к ней.
► NoWorkingDirectory – наличие данного параметра говорит о том, что при работе программы (если команда контекстного меню запускает программу) не нужно указывать рабочий каталог программы.
Теперь перейдем к подразделам. Прежде всего, нужно создать подраздел command . Параметр по умолчанию данного подраздела должен содержать в себе команду, которая будет выполняться при выборе соответствующего элемента контекстного меню. В нашем случае нужно прописать команду notepad.exe (рис.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).