■ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace — содержит ссылки на те ActiveX-объекты, значки которых будут отображаться в папке Панель управления. Его формат аналогичен формату описанных выше разделов реестра, предназначенных для добавления значков ActiveX-объектов.
■ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\NetworkNeighborhood\NameSpace — определяет те ActiveX-объекты, значки которых будут отображаться в папке Сетевое окружение. Его формат аналогичен формату описанных выше разделов реестра, предназначенных для добавления значков ActiveX-объектов.
■ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace — определяет те ActiveX-объекты, значки которых будут отображаться в папке Удаленные компьютеры. Его формат аналогичен формату описанных выше разделов реестра, предназначенных для добавления значков ActiveX-объектов.
По умолчанию в этой ветви реестра присутствуют только ссылки на ActiveX-объекты Принтеры и Назначенные задания. Если вы как администратор не хотите, чтобы эти ActiveX-объекты отображались в папке удаленного компьютера, то можно их удалить.
■ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\NonEnum — раздел более категоричен, чем все рассмотренные ранее, — он определяет те из ActiveX-объектов, которые вообще не будут отображаться в оболочке пользователей (или конкретного пользователя, если применяется ветвь из корневого раздела HKEY_CURRENT_USER). Все ActiveX-объекты, описанные в этой ветви, не будут применяться при построении пользовательского интерфейса.
Чтобы запретить использование какого-либо ActiveX-объекта, достаточно создать в данной ветви реестра параметр DWORD-типа, названный в честь CLSID-номера скрываемого ActiveX-объекта, и присвоить ему значение, равное 1.
Хотелось бы сказать еще об одной недокументированной возможности скрытия ActiveX-объекта из всех мест оболочки, где он используется, — о параметре Attributes, находящемся в подразделе ShellFolder раздела скрываемого нами ActiveX-объекта. Содержимое данного параметра уже было описано в предыдущей главе, но не упоминалось об этой возможности.
Итак, чтобы скрыть значок ActiveX-объекта, достаточно его параметру Attributes присвоить битовую маску 0x00100000.
Кроме скрытия ActiveX-объектов, существует еще и возможность скрытия CPL-файлов из содержимого окна Панель управления. Для этого могут применяться две стандартные ветви реестра Windows, первой из которых является ветвь реестра HKEY_CURRENT_USER\Control Panel\don't load. Она может хранить список параметров строкового типа, названных в честь CPL-файлов, значения которых не важны. Все CPL-файлы, чьи имена описаны в качестве параметров ветви HKEY_CURRENT_USER\Control Panel\don't load, не будут отображаться в Панели управления. Например, чтобы скрыть апплет Мышь, необходимо в данной ветви реестра создать параметр строкового типа main.cpl (будет также скрыт апплет Клавиатура).
Предыдущая ветвь имеет один существенный недостаток применения — пользователь может удалить все созданные вами параметры. Если же вы не хотите, чтобы он мог это сделать, то нужно запретить полный доступ к данной ветви реестра, оставив только доступ на чтение. Можно просто воспользоваться другой ветвью реестра — HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\don't load. Она имеет такой же формат, что и предыдущая ветвь, но скрывает апплеты Панели управления для всех пользователей системы.
Теперь рассмотрим другие возможности реестра, которые можно использовать в своей системе.
■ Чтобы при создании ярлыка файла к его названию не добавлялся префикс Ярлык для, необходимо присвоить параметру REG_BINARY-типа link значение 0. Он расположен в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer (можно также использовать корневой раздел HKEY_LOCAL_MACHINE).
■ Еще одной возможностью, которую предоставляет пользователю Windows, является определение области вокруг значка, в пределе которой его перемещение не будет считаться перемещением как таковым — значок вернется на свое прежнее место (довольно часто при быстром двойном щелчке на значке можно его случайно переместить, что может испортить весь стиль оформления Рабочего стола). Для этого используются два параметра строкового типа, расположенных в ветви реестра HKEY_CURRENT_USER\Control Panel\Desktop. Первый из этих параметров называется DragHeight и определяет расстояние в пикселах, в пределах которого перемещение значка или окна по вертикали не приводит к перетаскиванию. Например, если значение этого параметра равно 35, то при перемещении значка на 35 пикселов вверх/вниз он останется на своем прежнем месте. Второй параметр называется DragWidth — определяет расстояние в пикселах, в пределах которого перемещение значка или окна по горизонтали не приводит к перетаскиванию.
Читать дальше