Недокументированные и малоизвестные возможности Windows XP - Роман Клименко
Шрифт:
Интервал:
Закладка:
Если вам необходимо изменить имя сетевого клиента (по умолчанию это имя — Microsoft Windows Network, но можно изменить его на любое другое, например Моя сеть), которое можно найти по пути Сетевое окружение►Вся сеть, то ActiveX-объект сетевого клиента не поможет. Данное имя считывается из параметра строкового типа Name ветви реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanworkstationNetworkProvider — именно этот параметр и нужно изменять.
Рис. 4.5. Результат изменения названия Панели управления
■ LocalizedString — используется в Windows для локализации операционной системы и содержит название ActiveX-объекта, заменяющее собой название из параметра (По умолчанию).
■ SortOrderIndex — этот параметр DWORD-типа может присутствовать в некоторых подразделах ActiveX-объектов, отображаемых на Рабочем столе, например в подразделах ActiveX-объектов Мой компьютер, Мои документы и Корзина. Он определяет порядок расположения этих ActiveX-объектов на Рабочем столе.
■ InfoTip — данный параметр строкового типа определяет строку подсказки, отображаемую для значка соответствующего ActiveX-объекта при наведении и удержании на нем указателя мыши.
Подразделы ветви ActiveX-объекта
Подразделы, описывающие ActiveX-объекты, кроме параметров, могут содержать множество дочерних подразделов. Среди них могут присутствовать и уже рассмотренные shell и shellex, а также некоторые из следующих подразделов.
■ DefaultIcon — параметр (По умолчанию) данного подраздела определяет путь к файлу рисунка, применяемому для отображения значка ActiveX-объекта (например, этот параметр ActiveX-объекта {20D04FE0-3AEA-1069-A2D8-08002B30309D} определяет значок для папки Мой компьютер).
■ Данный подраздел может также хранить параметр строкового типа OpenIcon, который определяет путь к файлу рисунка, используемому вместо стандартного рисунка значка открытого ActiveX-объекта. На рис. 4.6 можно увидеть результат изменения этого параметра для приведенного выше ActiveX-объекта {20D04FE0-3AEA-1069-A2D8-08002B30309D}.
Рис. 4.6. Изменение значка на панели заголовка папки Мой компьютер
ПРИМЕЧАНИЕ
Значение приведенного выше параметра (а также некоторых других параметров, которые будут описаны) может быть переопределено в ветви реестра HKEY_CURRENT_ USERSoftwareMicrosoftWindowsCurrentVersionExplorerCLSID{CLSID+Hомep ActiveX-объекта}.
■ ShellFolder — параметры этого подраздела определяют различные свойства значка ActiveX-объекта, а также команд его контекстного меню. Подраздел может включать в себя следующие параметры.
• WantsFORDISPLAY— присутствие этого параметра строкового типа запрещает системе выводить название соответствующего ActiveX-объекта под его значком. Например, если создать этот параметр в ветви реестра {645FF040-5081-101B-9F08-00AA002F954E}, то можно добиться такого же эффекта, как и на рис. 4.7.
Рис. 4.7. Скрытие названия значка Корзины
• HideInWebView — присутствие этого параметра строкового типа говорит системе о том, что она должна скрывать значки, соответствующие данному ActiveX-объекту, при использовании нового вида окна Проводника (при установке переключателя в положение Отображение списка типичных задач в папках на вкладке Общие диалога Свойства папки).
• HideFolderVerbs — присутствие данного параметра строкового типа говорит системе о том, что она не должна добавлять к контекстному меню значка ActiveX-объекта команды контекстного меню стандартного идентификатора Folder.
ПРИМЕЧАНИЕ
Существует и альтернативная возможность — сказать системе, что она обязана добавить к контекстному меню данного ActiveX-объекта команды, определяемые идентификатором Folder. Для этого необходимо установить битовую маску 0х20000000 в параметре DWORD-типа Attributes, описание которого приведено ниже.
• Attributes — значение данного параметра DWORD-типа определяет, будут ли отображаться различные стандартные команды контекстного меню для значка данного ActiveX-объекта. Параметр является битовой маской, биты которой имеют следующую функциональность: 0х00000001 — определяет присутствие команды Копировать; 0х00000002 — устанавливает присутствие команды Вырезать; 0х00000010 — определяет команду Переименовать; 0х00000020 —устанавливает команду Удалить; 0х00000040 — определяет отображение команды Свойства; 0х00000100 — устанавливает отображение команды Вставить; 0х00200000 — определяет отображение команд, содержащихся в подразделе ContextMenuHandlers (он является дочерним по отношению к разделу shellex, который, в свою очередь, располагается в одном из разделов идентификаторов).
Например, на рис. 4.8 отображено контекстное меню значка Корзины с использованием значения параметра Attributes, равного 0х20000030.
Рис. 4.8. Редактирование контекстного меню значка Корзины
ПРИМЕЧАНИЕ
В подразделе ShellFolder может присутствовать DWORD-параметр CallForAttributes. Если его значение отлично от 0, то система не будет использовать содержимое параметра Attributes для ограничения контекстного меню значка данного ActiveX-объекта.
Это далеко не все подразделы, которые могут находиться в ветви ActiveX-объекта, но это самые интересные из них (с точки зрения возможностей изменения). О других подразделах ветви ActiveX-объекта можно узнать в базе данных по реестру, поставляемой вместе с этой книгой.
Другие разделы корневого раздела
Уже была рассмотрена большая часть содержимого корневого раздела реестра HKEY_CLASSES_ROOT — разделы расширения, идентификатора и раздел CLSID, но, кроме них, корневой раздел включает в себя еще несколько разделов, которые стоит описать. Некоторые из описываемых в разделах параметров реализуют уникальные возможности, которых в Windows больше никакими другими способами достичь нельзя.
■ DeskLink — реализует возможность создания ярлыков на Рабочем столе с помощью команды контекстного меню файлов Отправить. Он описывает ActiveX-объект, предназначенный для выполнения этой операции. Если удалить или переименовать этот раздел, то соответствующая возможность будет запрещена.
■ Applications — определяет список программ, которые будут отображаться в диалоге Открыть с помощью. Он включает в себя подразделы, названные в честь соответствующих программ. Если подраздел присутствует, то диалог Открыть с помощью будет содержать возможность открытия файла с помощью этой программы.
Раздел Applications имеет и противоположную описанной выше функции возможность — он определяет те программы, которые никогда не будут отображаться в диалоге Открыть с помощью. Если программа не должна отображаться в диалоге, то в дочернем подразделе раздела Applications, названном в честь данной программы, нужно создать параметр строкового типа NoOpenWith. Значение этого параметра не используется.
Можно еще создать строковый параметр NoStartPage. Если в дочернем подразделе раздела Applications, названном в честь данной программы, будет находиться приведенный строковой параметр, то, сколько бы вы ни вызывали соответствующую программу, она не будет отображаться в списке часто используемых программ нового меню Пуск.
Еще один параметр строкового типа, который может содержаться в подразделе, названном в честь необходимой программы, — TaskbarGroupIcon. Его значение определяет путь к файлу рисунка, который будет использоваться в качестве значка сгруппированных программ на Панели задач. Например, можно создать данный параметр в ветви реестра HKEY_CLASSES_ROOTApplicationsexplorer.exe (рис. 4.9).
Рис. 4.9. Изменение рисунка группы программ
Но, кроме параметров, раздел Applications может хранить и другие подразделы. Например, в нем может находиться подраздел shell, включающий в себя дополнительные глаголы (или переопределение уже существующих) для файлов, ассоциированных с соответствующей программой уже после того, как будет изменено содержимое подраздела shell ветви HKEY_CLASSES_ROOTApplications«приложение».
Кроме подраздела shell, в некоторых разделах ветви системного реестра HKEY_CLASSES_ROOTApplications могут находиться и другие подразделы. Например, в ветви HKEY_CLASSES_ROOTApplicationsexplorer.exe может располагаться подраздел drives. С его помощью можно переопределить файлы рисунков, применяемые в качестве значков логических дисков. Для этого достаточно в подразделе drives создать вложенный подраздел с названием соответствующим букве диска, значок которого нужно изменить, а в созданном подразделе нужно создать еще один — DefaultIcon. Параметр (По умолчанию) этого подраздела как раз и определяет значок, используемый для отображения данного диска. Например, чтобы сменить значок диска H:, нужно изменить параметр (По умолчанию) ветви реестра HKEY_CLASSES_ROOTApplicationsexplorer.exedriveshDefaultIcon.
■ MIME — содержит сведения обо всех типах MIME, зарегистрированных на компьютере. Описание всех этих типов находится в ветви системного реестра HKEY_CLASSES_ROOTMIMEDatabaseContent Type, включающей в себя подразделы с именами, соответствующими типу (audio/basic, image/bmp, text/plain и т.д.). Эти подразделы могут хранить следующие параметры: