Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Секреты Windows: статьи о реестре, rundll32.exe, программах Реестр Windows Vista. Рабочий стол: Значки, фон и конт. меню


Есть вопросы по работе с Windows? Задайте их нам и нашим посетителям в разделе Форум (http://onestyle.com.ua/q.php). Возможно, мы сможем помочь вам решить возникшие проблемы.

Новости нашего сайта:

В конец записи

Книга "Реестр Windows Vista. На 100%", Глава 3. Интерфейс, 3.2. Рабочий стол: Значки, фон и контекстное меню.

В контексте операционной системы рабочим столом называется объект, являющийся дочерним по отношению к объекту WindowStation, и описывающий содержимое логической поверхности экрана, окон, меню и ловушек.

А вот в контексте интерфейса операционной системы рабочим столом можно назвать основную область экрана, отображаемую при входе пользователя в систему. Меню ПУСК и панель задач также можно назвать частью рабочего стола. На рабочем столе могут храниться различные файлы и папки. Также именно на рабочем столе открываются все окна и диалоговые сообщения.

Именно рабочий стол с точки зрения интерфейса операционной системы мы и рассмотрим в данной главе.

Значки и фон рабочего стола

С точки зрения файлов и папок, отображаемых на рабочем столе, рабочий стол является ничем иным, как каталогом. Путь к этому каталогу, как мы уже знаем, содержится в параметре строкового типа Desktop, расположенном в ветви реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders.

Настройки рабочего стола можно изменить при помощи параметров REG_DWORD типа, расположенных в ветви реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer.

NoDesktop. Если значение данного параметра равно 1, тогда все содержимое рабочего стола будет скрыто (файлы, папки и ActiveX-объекты).

NoInternetIcon. Если значение данного параметра равно 1, тогда значок браузера Internet Explorer на рабочем столе отображаться не будет.

NoNetHood. Если значение данного параметра равно 1, тогда значок Сеть на рабочем столе отображаться не будет.

NoSaveSettings. Если значение данного параметра равно 1, тогда при выходе пользователя из системы не будут сохраняться измененные им настройки рабочего стола (например, положение окон или панели задач).

Работа со значками рабочего стола

Операционная система Windows Vista поддерживает некоторые возможности настройки отображения значков рабочего стола, а также параметры взаимодействия с ними.

Перемещение значков Например, можно определить расстояние в пикселях, перемещение значка на которое не будет считаться перемещением. То есть, значок останется на прежнем месте.

Для этого нужно ввести расстояние (в пикселях) в параметры строкового типа DragWidth и DragHeight, расположенные в ветви реестра HKCU\Control Panel\Desktop. Первый из этих параметров определяет расстояние по горизонтали, перемещение на которое не будет считаться перемещением. А второй — по вертикали.

Также значения этих параметров влияют на перемещение окон.

Расположение значков рабочего стола Координаты расположения всех значков, хранящихся на рабочем столе, а также элементов панели БЫСТРЫЙ ЗАПУСК панели задач, находятся в ветви реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop.

Диалог Параметры быстродействия При помощи элементов списка диалога ПАРАМЕТРЫ БЫСТРОДЕЙСТВИЯ также можно настроить параметры отображения значков рабочего стола.

Например, при помощи флажка ОТБРАСЫВАНИЕ ТЕНЕЙ ЗНАЧКАМИ НА РАБОЧЕМ СТОЛЕ можно изменить значение параметра REG_DWORD типа ListviewShadow ветви реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced. По умолчанию значение данного параметра равно 1.

Фон рабочего стола

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

Для этого достаточно воспользоваться ссылкой ФОНОВЫЙ РИСУНОК РАБОЧЕГО СТОЛА мастера ПЕРСОНАЛИЗАЦИЯ, после нажатия на которую отображается одноименный мастер.

Возможности работы с данным мастером мы с вами рассмотрели в предыдущей главе данной книги. Также в предыдущей главе книги мы рассмотрели ветви реестра и параметры, в которых хранятся сведения о расположении обоев рабочего стола.

Другие настройки рабочего стола

Кроме фона, на рабочем столе можно отобразить версию операционной системы (в нижнем правом углу экрана). Для этого достаточно параметру REG_DWORD типа PaintDesktopVersion, расположенному в ветви реестра HKCU\Control Panel\Desktop, присвоить значение 1.

Изменение действия при перемещении файла между папками По умолчанию при перемещении с зажатой левой клавишей мышки любого файла между папками или папкой и рабочим столом, выполняется именно его перемещение. Но кроме перемещения можно выполнять такие стандартные действия, как копирование и создание ярлыка — для их выполнения придется перенести файл с зажатой правой клавишей мышки, после чего в появившемся контекстном меню выбрать необходимый пункт.

Вы можете самостоятельно определить, какое действие будет по умолчанию выполняться при перемещении файла между папками. Для этого достаточно указать нужное действие в параметре REG_DWORD типа DEFAULTDROPEFFECT. Данный параметр может принимать следующие значения.

  • 1. При перемещении файла выполнять его копирование.
  • 2. При перемещении файла выполнять его перемещение.
  • 4. При перемещении файла выполнять создание его ярлыка.

Создать данный параметр можно в ветви реестра HKCR\*. В этом случае вы изменяете действие по умолчанию при перемещении между папками файла любого расширения.

Кроме того, данный параметр можно создать в ветви реестра вида HKCR\«идентификатор». В этом случае вы изменяете действие по умолчанию при перемещении между папками только файлов с соответствующим идентификатору расширением.

О идентификаторах расширений будет сказано далее в этой главе.

Контекстное меню рабочего стола и проводника

Рабочий стол имеет то же контекстное меню, что и проводник операционной системы. Это еще раз доказывает, что фактически рабочий стол является лишь каталогом.

Контекстное меню рабочего стола и проводника отображаться не будет если параметру REG_DWORD типа NoViewContextMenu, расположенному в ветви HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, присвоить значение 1.

Информация о контекстном меню рабочего стола и проводника содержится в ветви реестра HKCR\Directory\Background. В основном контекстное меню состоит из стандартных команд операционной системы, настроить которые не представляется возможным. Однако есть и команды-исключения.

Команда Открыть окно команд

Нововведением контекстного меню рабочего стола и проводника является команда ОТКРЫТЬ ОКНО КОМАНД. Данная команда отображается в контекстном меню только в том случае, если при вызове контекстного меню зажать клавишу SHIFT.

С ее помощью можно запустить программу cmd.exe с уже открытым каталогом %userprofile%\Desktop (или каталогом, из которого вы воспользовались соответствующей командой контекстного меню проводника).

Список Создать

Одной из команд контекстного меню рабочего стола и проводника, которую можно настроить, является список СОЗДАТЬ. Данный список предназначен для быстрого создания файлов с различными расширениями, а также для создания папок и ярлыков.

Удаление элементов списка

Самой простой операцией редактирования списка СОЗДАТЬ, которую поддерживает операционная система, является возможность удаления элементов данного списка. Для этого достаточно удалить подраздел ShellNew из ветви реестра вида HKCR\«расширение, файлы которого вы не хотите создавать с помощью списка Создать».

Например, ниже приведены некоторые расширения, файлы которых по умолчанию отображаются в списке СОЗДАТЬ, и которые из него можно удалить.

  • Briefcase. Определяет элемент ПОРФЕЛЬ списка СОЗДАТЬ.
  • .bmp. Определяет элемент ТОЧЕЧНЫЙ РИСУНОК списка СОЗДАТЬ. Данный элемент создает файл изображения, предназначенный для работы с программой mspaint.exe.
  • .contact. Определяет элемент КОНТАКТ списка СОЗДАТЬ. Данный элемент создает контакт в новой адресной книге почтового клиента Почта Windows (каталог %userprofile%\Contacts).
  • .zip. Определяет элемент СЖАТАЯ ПАПКА списка СОЗДАТЬ. Для удаления данного элемента нужно удалить раздел из ветви реестра HKCR\.zip\CompressedFolder.
  • .jnt. Определяет элемент ДОКУМЕНТ ЖУРНАЛА списка СОЗДАТЬ. Для удаления данного элемента нужно удалить раздел из ветви реестра HKCR\.jnt\jntfile. Данный элемент создает файл программы Журнал (%programfiles%\Windows Journal\Journal.exe). Эта программа предназначена для обладателей планшетных компьютеров.
  • .lnk. Определяет элемент ЯРЛЫК списка СОЗДАТЬ.
  • Folder. Определяет элемент ПАПКА списка СОЗДАТЬ.

Формирование списка Создать только для папок или разделов диска

Нововведением операционной системы Windows Vista является возможность формирования отдельного, отличного от списка СОЗДАТЬ рабочего стола, списка СОЗДАТЬ для папок и разделов диска. Точнее, можно указать расширения, которые будут отображаться в списке СОЗДАТЬ рабочего стола, но не будут отображаться в списке СОЗДАТЬ для папок или разделов диска.

Для этого используется параметр строкового типа NewMenuAllowedTypes. Значением данного параметра является список расширений, элементы которых будут отображаться в списке СОЗДАТЬ, разделенных точкой с запятой.

Например, значение .txt;.doc данного параметра говорит о том, что в каталогах или разделах диска должны отображаться только элементы списка СОЗДАТЬ, которые позволяют создавать текстовый документ и документ Word.

Параметр NewMenuAllowedTypes можно создавать в следующих ветвях реестра.

  • HKCR\Drive. Определяет отображаемые элементы списка СОЗДАТЬ контекстного меню корневого каталога раздела диска.
  • HKCR\Directory. Определяет отображаемые элементы списка СОЗДАТЬ контекстного меню любого каталога, кроме корневых каталогов разделов диска.

Создание и редактирование элементов списка

Более сложной операцией настройки списка СОЗДАТЬ является создание или редактирование настроек уже существующих элементов списка.

Для создания нового элемента списка СОЗДАТЬ нужно создать подраздел ShellNew в каталоге вида HKCR\«расширение, файлы которого вы хотите создавать с помощью списка Создать».

Параметры определения команды После этого в подразделе ShellNew нужно создать один из описанных ниже параметров строкового типа. Эти параметры определяют действие, которое будет выполняться после нажатия на созданный вами элемент списка СОЗДАТЬ.

  • Command. Содержит команду, которая будет выполняться при выборе данного элемента списка.

    Например, данный параметр используется при создании элементов КОНТАКТ, ДОКУМЕНТ ЖУРНАЛА.

    Для элемента КОНТАКТ значение этого параметра равно "%programFiles%\Windows Mail\Wab.exe" /CreateContact "%1". А для элемента ДОКУМЕНТ ЖУРНАЛА значение данного параметра равно "%ProgramFiles%\Windows Journal\Journal.exe" /n 0.

  • FileName. Содержит путь к файлу, который будет использоваться в качестве шаблона при создании нового файла.
  • NullFile. Данный параметр не должен содержать никакого значения. Он говорит о том, что будет создан пустой файл с соответствующим расширением.

Настройка элемента списка Создать Также подраздел ShellNew может содержать в себе следующие параметры строкового типа.

  • IconPath. Данный параметр определяет путь к значку, который будет отображаться в списке СОЗДАТЬ вместо стандартного значка приложения, ассоциированного с файлом.
  • MenuText. Данный параметр определяет название библиотеки и идентификатор ресурса, который будет заменять собой стандартное название соответствующего элемента в меню СОЗДАТЬ.

Параметры подраздела Config Кроме параметров подраздел ShellNew может содержать в себе вложенный подраздел Config. В этом подразделе могут находиться следующие параметры строкового типа.

  • NoExtension. Если данный параметр будет присутствовать в подразделе Config, тогда создаваемый соответствующим элементом списка СОЗДАТЬ файл не будет иметь расширения.
  • DontRename. Если данный параметр будет присутствовать в подразделе Config, тогда имя создаваемого при помощи соответствующего элемента списка СОЗДАТЬ файла не будет автоматически выделяться.

Другие настройки списка Создать

Кроме удаления и добавления элементов списка СОЗДАТЬ, существует возможность настройки отображения самого списка СОЗДАТЬ.

Перемещение списка Создать При помощи реестра операционной системы Windows Vista можно удалить линию-разделитель, отображаемую над списком СОЗДАТЬ.

Для этого достаточно присвоить параметру REG_DWORD типа flags, расположенному в ветви реестра HKCR\CLSID\{D969A300-E7FF-11d0-A93B-00A0C90F2719}, значение 0xffffffff.

Удаление списка Создать Также можно вообще удалить список СОЗДАТЬ из контекстного меню рабочего стола и проводника.

Для этого достаточно удалить из ветви реестра HKCR\Directory\Background\shellex\ContextMenuHandlers раздел New. Если такого раздела по умолчанию не существует, тогда удалите раздел с именем {D969A300-E7FF-11d0-A93B-00A0C90F2719}, или раздел, параметр (по умолчанию) которого будет содержать значение {D969A300-E7FF-11d0-A93B-00A0C90F2719}.

Добавление команд контекстного меню

Кроме настройки списка СОЗДАТЬ контекстное меню операционной системы Windows Vista поддерживает возможность добавления новых команд.

Добавление обычных команд

Нововведением операционной системы Windows Vista является возможность использования подраздела shell ветви реестра HKCR\Directory\Background для добавления новых команд к контекстному меню рабочего стола и проводника.

По умолчанию таким способом добавлена лишь команда ОТКРЫТЬ ОКНО КОМАНД.

Структура подраздела shell и параметры, которые могут в нем находиться, будут описаны далее в этой главе книги.

Добавление команд ActiveX

Также операционная система Windows Vista поддерживает возможность добавления команд при помощи подраздела ShellEx ветви реестра HKCR\Directory\Background\ShellEx\ContextMenuHandler. Именно с помощью данного подраздела и добавлен в контекстное меню рабочего стола и проводника список СОЗДАТЬ.

Структура подраздела shellEx и параметры, которые могут в нем находиться, будут описаны далее в этой главе книги.

Команд контекстного меню, которые можно добавить Не все ActiveX-объекты можно добавить к контекстному меню проводника и рабочего стола. Именно поэтому, несмотря на то, что мы еще не знаем структуру подраздела shellEx, ниже будут приведены ActiveX-объекты, добавление которых поддерживается контекстным меню рабочего стола и проводника.

Чтобы создать команду контекстного меню рабочего стола при помощи подраздела shellex, достаточно в ветви реестра HKCR\Directory\Background\ShellEx\ContextMenuHandler создать подраздел, названный в честь CLSID-номера ActiveX-объекта.

Например, можно использовать CLSID-номер одного из приведенных ниже ActiveX-объектов (можно указать только один из приведенных ниже ActiveX-объектов, если вы создадите несколько команд с этими ActiveX-объектами, последняя из них будет замещать предыдущие).

  • {2559a1f0-21d7-11d4-bdaf-00c04f60b9f0}. Добавляет к контекстному меню команду ПОИСК.
  • {2559a1f1-21d7-11d4-bdaf-00c04f60b9f0}. Добавляет к контекстному меню команду СПРАВКА И ПОДДЕРЖКА.
  • {3080F90E-D7AD-11D9-BD98-0000947B0257}. Добавляет к контекстному меню команду ПЕРЕКЛЮЧЕНИЕ ОКОН. С ее помощью можно вызвать диалог Flip3D.
  • {2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}. Добавляет к контекстному меню команду ВЫПОЛНИТЬ.

Также существует несколько ActiveX-объектов, которые не замещаются другими ActiveX-объектами.

  • {645FF040-5081-101B-9F08-00AA002F954E}. Добавляет к контекстному меню рабочего стола и проводника команду ОЧИСТИТЬ КОРЗИНУ.
  • {32714800-2E5F-11d0-8B85-00AA0044F941}. Добавляет к контекстному меню команду FIND PEOPLE. С ее помощью можно выполнить поиск в адресной книге почтового клиента Почта Windows.

Продолжение следует

Рейтинг: 0 
Оцените: 1 2 3 4 5
В начало записи
Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=310

В избранное