Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Секреты Windows: статьи о реестре, rundll32.exe, программах Недокументированные возможности Windows XP. Реестр. Часть 4
Уважаемые подписчики, на нашем сайте (http://www.onestyle.com.ua) проводится опрос 'Содержимое какой из книг вы бы хотели прочитать в будущих статьях на нашем сайте?'. Голосование ведется до 7 апреля и пока что ведет книга 'Оптимизация и автоматизация работы на ПК. На 100%'. Если это не та книга, содержимое которой вы хотели бы видеть в данной рассылке, тогда спешите проголовать за выбранную книгу! Другие наши рассылки:
Новости нашего сайта:
Продолжение, начало в выпусках: 21 23 26 Книга "Недокументированные возможности Windows XP. Библиотека пользователя", Глава 2. Реестр Windows XP. Часть 4. Оболочка: Значки. В предыдущем разделе данной главы мы с вами полностью рассмотрели структуру корневого раздела HKEY_CLASSES_ROOT — это был единственный корневой раздел, структуру которого мы полностью рассмотрели в этой книге. Все дело в том, что структура остальных корневых разделов по своей природе не статична — нельзя точно предположить, какое название параметра решат использовать программисты при написании своего приложения и в какой ветви им захочется его создать. Поэтому структуру таких корневых разделов, как HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE (за исключением ветви HKEY_LOCAL_MACHINE\SYSTEM) мы не будем рассматривать вообще. Вместо этого будут описаны отдельные параметры, которые могут находиться в данных корневых разделах. При этом стоит еще сказать, что целью написания главы о реестре в этой книге было описание параметров реестра, доступ к которым нельзя получить никакими другими стандартными методами, кроме как с помощью реестра. Поэтому тем, кому интересна эта тема, еще раз советуется купить отдельную книгу, посвященную именно этому вопросу. Но давайте уже начнем рассматривать параметры реестра. И первым, что мы рассмотрим, будут различные настройки значков файлов или ActiveX-объектов (данный раздел книги не содержит в себе информации о настройках из корневого раздела HKEY_CLASSES_ROOT), которые можно изменить в операционной системе Windows XP. Изображения
Все мы уже привыкли к стандартным значкам Windows, таким как значок диска, файла неизвестного расширения, папки и т.д. Но иногда, все-таки, хочется разнообразия, поэтому давайте сейчас попробуем изменить некоторые стандартные значки, применяемые в операционной системе для файлов расширений. Для этого нам понадобится ветвь реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\SHELL ICONS. Данная ветвь как раз и содержит в себе список параметров строкового типа, определяющих пути к файлам рисунков, которые будут использоваться при следующем входе в систему для построения изображений стандартных значков. Значения этих строковых параметров определяют путь к файлу изображения, а имя параметра соответствует индексу данного значка в библиотеке shell32.dll (этот индекс указывает на изображение по умолчанию для данного значка). Список всех индексов и соответствующих им значков можно просмотреть в приложении D данной книги. А пока, чтобы не отвлекаться на перелистывание книги, скажем, что для отображения значка флоппи-дисковода используется значок с индексом 6, для отображения «руки» под расшаренной папкой используется значок с индексом 28, а для отображения значка файлов справки используется значок с индексом 23. Давайте попробуем изменить файлы рисунков для данных индексов. По умолчанию данная ветвь не присутствует в реестре, поэтому ее придется создать самостоятельно. А после создания ветви нужно создать в ней параметр строкового типа, имя которого равно 6 (для значка флоппи-дисковода), а значение параметра определяет путь к новому файлу рисунка. Аналогично создаются параметры для изменения других значков. Не всегда внесенные нами изменения вступают в силу сразу после перезагрузки — иногда нужно подождать некоторое время, чтобы система внесла изменения в файл shelliconcache (данный файл используется как кеш, содержащий в себе все файлы изображений, используемые для отображения значков в системе). Если же ждать не хочется, тогда можно попробовать самому удалить этот файл. Для этого нужно в командной строке ввести del shelliconcache или самостоятельно найти данный файл и удалить его (файл является суперскрытым, поэтому чтобы он отобразился, необходимо установить соответствующий флажок на вкладке Вид диалога Свойства папки). Кстати, существует также возможность изменения размера этого файла. Для этого предназначен параметр строкового типа Max Cached Icons, расположенный в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer. На рисунке 2.10 можно увидеть результат нашего изменения. Рисунок 1 Рис. 2.10. Изменение изображения, используемого для отображения «руки» расшаренных папок и значка флоппи-диска Другой возможностью, которую предоставляет нам операционная система Windows, является изменение значков дисков отдельно для каждого логического диска. Это делается с помощью ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\DRIVEICONS. Данная ветвь должна содержать в себе набор подразделов, каждый из которых назван в честь буквы логического диска (например, для диска C:\ создаваемый подраздел должен называться С). Внутри подраздела диска могут содержаться еще два подраздела. Первый из них называется DEFAULTICON — его параметр по умолчанию как раз и определяет путь к значку, который будет использоваться для отображения дисков. Второй же подраздел называется DEFAULTLABEL — если он присутствует, тогда значение его параметра по умолчание определяет название метки данного логического диска, применяемой, если диск не имеет своей собственной метки. Не забывайте также и о ветви реестра HKEY_CLASSES_ROOT\Applications\explorer.exe\drives\«буква диска»\DefaultIcon, с помощью которой также можно изменить значок для конкретного диска. Но кроме значка и метки диска операционная система Windows XP позволяет выполнить еще один хак — определить, на каком месте названия диска будет находиться буква логического диска. По умолчанию буква отображается в конце названия, что в некоторых случаях не совсем удобно — буква может скрываться, если название слишком большое. Поэтому, чтобы исправить этот недостаток, давайте попробуем воспользоваться параметром DWORD-типа SHOWDRIVELETTERSFIRST, расположенным в ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER. Он может принимать следующие значения:
При выполнении хака со значками диска следует учитывать, что если вы в данный момент используете вид ЭСКИЗЫ СТРАНИЦ, и при этом описываемый в предыдущем разделе параметр THUMBNAIL для идентификатора диска будет содержать путь к рисунку, тогда будет применяться именно рисунок из параметра THUMBNAIL, а не значок диска, изменяемый нами. Также следует учитывать, что существует еще один параметр, определяющий изображение, которое будет налаживаться поверх эскиза папки (если вы будете изменять эскиз для папки с помощью параметра THUMBNAIL). Этот параметр находится в ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\SHELL\BAGS\ALLFOLDERS\SHELL и называется LOGO (имеет строковый тип). Его значение определяет путь к рисунку, который будет налаживаться поверх папки при использовании режима отображения ЭСКИЗЫ СТРАНИЦ. Раз уж мы затронули эскизы страниц, тогда давайте еще немного поговорим и о них. Параметры отображения эскизов расположены в ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER. Данная ветвь может содержать в себе два параметра DWORD-типа, имеющих названия THUMBNAILQUALITY и THUMBNAILSIZE. Первый из этих параметров определяет качество создаваемых системой эскизов страниц и может принимать значения от 50 до 100 (значение по умолчанию — 90). Второй же параметр определяет размер эскизов. Он может принимать значения от 32 до 255 (по умолчанию его значение равно 96). А теперь давайте несколько слов скажем о настройке цвета названия различных значков операционной системы Windows. Мы не будем говорить о том, что можно изменить с помощью диалога СВОЙСТВА: ЭКРАН, поэтому получится не очень много, но тем не менее… Существует возможность изменения цвета зашифрованных и сжатых файлов в операционной системе Windows. Для этого применяются два параметра REG_BINARY-типа, имеющие следующий формат: 0хR 0хG 0xB 00, где 0хR определяет красную составляющую цвета, 0хG — зеленую, а 0xB — синюю (например, значение 00FF0000 определяет зеленый цвет имени файлов соответствующего типа). Эти параметры расположены в ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER. Первый из этих параметров называется ALTCOLOR и определяет цвет сжатых файлов, а второй параметр называется ALTENCRYPTIONCOLOR и служит для изменения цвета зашифрованных файлов. И последний хак — он относится к цвету отображения названия определенного ActiveX-объекта. Все дело в том, что в Windows существует возможность указать системе, что название конкретного ActiveX-объекта будет отображаться синим цветом (или цветом, который будет определен вышеописанным параметром ALTENCRYPTIONCOLOR). Для этого используется параметр ATTRIBUTES, расположенный в подразделе SHELLFOLDER ветви реестра, определяющей необходимый нам ActiveX-объект. Мы уже писали в предыдущем разделе об этом параметре, но еще не упоминали об этой возможности. Итак, чтобы отобразить название ActiveX-объекта, расположенное под его значком, синим цветом, достаточно установить данному параметру DWORD-типа битовую маску 0x04000000. Например, чтобы изменить цвет названия значка ПАНЕЛЬ ЗАДАЧ И МЕНЮ ПУСК, расположенного в папке ПАНЕЛЬ УПРАВЛЕНИЯ, необходимо отредактировать параметр ATTRIBUTES из ветви реестра HKEY_CLASSES_ROOT\CLSID\{0DF44EAA-FF21-4412-828E-260A8728E7F1}\SHELLFOLDER. К сожалению, на черно-белом изображении изменение цвета практически незаметно, поэтому рисунок приводить не будем. Также можно заставить систему отобразить название ActiveX-объекта зеленым цветом (или цветом, который будет определен вышеописанным параметром ALTCOLOR). Для этого нужно присвоить параметру ATTRIBUTES битовую маску 0х00002000. Следует только учесть, что в этом случае битовая маска 0x04000000 должна быть сброшена. И последняя возможность битовой маски ATTRIBUTES, которую мы рассмотрим — эффект полупрозрачности значка ActiveX-объекта. Для того чтобы добиться этого эффекта, нужно присвоить параметру ATTRIBUTES битовую маску 0х00008000. Данный эффект нельзя применить к значку Мой компьютер. Также существует одна особенность его применения для значка Корзина — при входе пользователя в систему полупрозрачность для него не применяется, но как только пользователь наведет на значок Корзина курсор мыши (и некоторое время подержит на нем), она станет полупрозрачной. Расположение
Кроме изменения значков различных файлов Windows существует возможность управления расположением значков на рабочем столе. Само расположение значков описано в подразделе HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\STREAMS\DESKTOP, поэтому если вы уже идеально настроили свой рабочий стол, тогда можно запретить полный доступ для этого подраздела системе, своей учетной записи и группе, к которой принадлежит ваша учетная запись, оставив только доступ на чтение. Также можно заставить значок КОРЗИНА при следующем входе в систему отображаться в правом нижнем углу. Для этого нужно присвоить параметру DWORD-типа ADJUSTRECYCLEBINPOSITION значение, равное 1 (См. рис. 2.11). Данный параметр расположен в ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\SCREENRESFIXER. После следующего входа в систему Windows, независимо от настроек подраздела HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\STREAMS\DESKTOP, отобразить значок корзины в правом нижнем углу. После этого система изменит значение параметра ADJUSTRECYCLEBINPOSITION на 2 (то есть, разрешит изменение расположения значка КОРЗИНА). Если же вы не хотите, чтобы расположение значка КОРЗИНЫ можно было изменить, тогда следует также запретить полный доступ и к этой ветви реестра, оставив только доступ на чтение. Рисунок 2 Рис. 2.11. расположение значка Корзина Также возможно определить порядок расположения ActiveX-объектов на рабочем столе. Для этого применяется параметр DWORD-типа SortOrderIndex, расположенный в подразделе ActiveX-объекта ветви реестра HKEY_CLASSES_ROOT\clsid. Например, если значение этого параметра для значка Корзина будет равно 0х00000060, значение для значка Мой компьютер будет равно 0х00000054, а значение для значка Мои документы будет равно 0х00000048, тогда на первом месте рабочего стола будет отображаться Корзина, на втором — Мой компьютер, а на третьем — Мои документы. Отображение
Еще одной возможностью, которую предоставляет пользователям Windows, является определение тех значков ActiveX-объектов, которые будут отображаться на рабочем столе, в папках ПАНЕЛЬ УПРАВЛЕНИЯ и МОЙ КОМПЬЮТЕР. Для этого применяется несколько ветвей реестра. ActiveX-объекты
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\namespace Данная ветвь реестра определяет те из ActiveX-объектов, которые будут отображаться на рабочем столе. Формат содержимого данного подраздела таков: он содержит набор дочерних подразделов, названных в честь CLSID-номера ActiveX-объекта, который должен отображаться на рабочем столе. Например, чтобы отобразить на рабочем столе значок, вызывающий диалог ВЫПОЛНИТЬ, необходимо создать в данном подразделе подраздел {2559A1F3-21D7-11D4-BDAF-00C04F60B9F0}. Результат можно видеть на рисунке 2.12. Рисунок 3 Рис. 2.12. Отображение на рабочем столе значка Выполнить Также данный подраздел можно создать в аналогичной ветви корневого раздела HKEY_LOCAL_MACHINE. В этом случае ActiveX-объект будет отображаться на рабочем столе всех пользователей компьютера, а не только на рабочем столе данного пользователя. Данная ветвь реестра кроме значков ActiveX-объектов, которые будут отображаться на рабочем столе, содержит еще и определение CLSID-номера {1f4de370-d627-11d1-ba4f-00a0c91eedba}. Не удаляйте определение этого номера, так как оно необходим для корректной работы с функцией поиска и его удаление сделает невозможным использование диалога, вызываемого комбинацией клавиш Windows+F. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons Если предыдущая ветвь реестра определяла те из значков ActiveX-объектов, которые будут отображаться на рабочем столе, то эта ветвь определяет совершенно противоположную возможность — она указывает на те ActiveX-объекты, которые не будут отображаться на рабочем столе. При этом можно указать отдельные наборы скрываемых значков в зависимости от типа меню ПУСК, используемого в данный момент, ведь данная ветвь содержит в себе два дочерних подраздела — CLASSICSTARTMENU и NEWSTARTPANEL. Если мы определим CLSID-номера в подразделе CLASSICSTARTMENU, тогда данные значки ActiveX-объектов не будут отображаться на рабочем столе при использовании классического меню ПУСК. Если же мы определим CLSID-номера в подразделе NEWSTARTPANEL, тогда данные значки ActiveX-объектов не будут отображаться на рабочем столе при использовании нового меню ПУСК. Чтобы определить CLSID-номер скрываемого ActiveX-объекта, достаточно в необходимом нам подразделе создать параметр DWORD-типа, названный в честь CLSID-номера скрываемого ActiveX-объекта. Значение этого параметра должно быть равно 1 (если значение равно 0, то значок ActiveX-объекта отображаться будет). Например, чтобы скрыть значок диалога ВЫПОЛНИТЬ…, который мы недавно добавили, необходимо создать в ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\HIDEDESKTOPICONS\CLASSICSTARTMENU (если используется классическое меню ПУСК) параметр DWORD-типа {2559A1F3-21D7-11D4-BDAF-00C04F60B9F0}, значение которого должно быть равно 1. Существует один интересный CLSID-номер ActiveX-объекта, описание которого вы не встретите в ветви реестра HKEY_CLASSES_ROOT\clsid. Это CLSID-номер {00000000-0000-0000-0000-000000000000}. Если запретить отображение данного CLSID-номера на рабочем столе с помощью вышеописанной ветви реестра, тогда после перезагрузки оболочки на рабочем столе останется только значок Корзины и Моего компьютера — остальные ActiveX- объекты, папки и файлы с рабочего стола будут скрыты. Также данную ветвь можно использовать и в корневом разделе HKEY_LOCAL_MACHINE. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\mycomputer\namespace Содержимое данной ветви реестра определяет список CLSID-номеров ActiveX-объектов, которые будут отображаться в папке МОЙ КОМПЬЮТЕР. Формат данной ветви полностью аналогичен формату описанной выше ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\DESKTOP\NAMESPACE. Аналогично, если использовать данную ветвь реестра, распложенную в корневом разделе HKEY_LOCAL_MACHINE, тогда определяемый данной ветвью значок будет отображен для всех пользователей системы, а не только для данного. Но между приведенными ветвями реестра для различных корневых разделов существует небольшое отличие — ветвь реестра из корневого раздела HKEY_LOCAL_MACHINE также может содержать в себе подраздел DelegateFolders, содержимым которого является подраздел {59031a47-3f72-44a7-89c5-5595fe6b30ee}. Этот подраздел определяет общие папки, отображаемые в папке Мой компьютер, и если удалить или просто переименовать подраздел DelegateFolders, то общие папки в папке Мой компьютер отображаться не будут. Например, давайте попробуем самостоятельно добавить в папку МОЙ КОМПЬЮТЕР значок ActiveX-объекта. На этот раз давайте создадим свой собственный ActiveX-объект. Как уже говорилось ранее, для создания уникального CLSID-номера ActiveX-объекта применяется программа guidgen.exe, входящая в стандартную поставку таких компиляторов, как Microsoft Visual Studio .NET и Microsoft Visual C++. После запуска данной программы перед нами появится диалог, в котором нужно определить, какой именно уникальный идентификатор нужно создать. Чтобы создать CLSID-номер, необходимо установить переключатель 4. Registry Format. После выбора типа уникального идентификатора, необходимо выбрать сам созданный идентификатор — нажимаем на кнопку NEXT GUID до тех пор, пока программа не создаст идентификатор, который нам понравится. А после этого достаточно нажать на кнопку COPY, чтобы поместить этот идентификатор в буфер обмена. Все, уникальный CLSID-номер у нас уже есть. Например, таким номером является {23D0F57C-5E2C-4FB2-BE50-B27DBD7EFB76}, созданный с помощью программы guidgen.exe. После создания CLSID-номера, нужно зарегистрировать его в системе. Для этого используется ветвь реестра HKEY_CLASSES_ROOT\CLSID, формат содержимого которой был описан в предыдущем разделе данной главы. Давайте создадим в этой ветви дочерний подраздел, названный в честь CLSID-номера, созданного для нас программой guidgen. Теперь необходимо назвать наш значок ActiveX-объекта — для этого используется параметр по умолчанию созданного нами подраздела. После этого нужно зарегистрировать для созданного нами ActiveX-объекта значок — для этого используется параметр по умолчанию дочернего подраздела ветви нашего CLSID-номера DEFAULTICON. Создав значок, давайте скроем все стандартные команды контекстного меню нашего значка — для этого присваиваем параметру DWORD-типа ATTRIBUTES значение 0. Этот параметр должен находиться в подразделе SHELLFOLDER ветви нашего CLSID-номера. И, наконец-то, создаем содержимое пользовательского контекстного меню — для этого используется подраздел SHELL ветви нашего CLSID-номера. Создаем в нем необходимые нам глаголы, а в них создаем подраздел command, параметр по умолчанию которого и будет определять команду, вызываемую при выборе из контекстного меню нашего значка соответствующего действия. А теперь у нас есть не только уникальный CLSID-номер, но и свой собственный ActiveX-объект. Осталось только создать подраздел {23D0F57C-5E2C-4FB2-BE50-B27DBD7EFB76} в ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\MYCOMPUTER\NAMESPACE и смотреть на то, что у нас получилось (Рис. 2.13). Рисунок 4 Рис. 2.13. Создание своего ActiveX-объекта и расположение его в папке Мой компьютер HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideMyComputerIcons А эта ветвь реестра скрывает значки из папки МОЙ КОМПЬЮТЕР. Ее формат полностью аналогичен уже рассмотренной нами ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\HIDEDESKTOPICONS, поэтому рассматривать ее мы не будем. Также данную ветвь можно использовать и в корневом разделе HKEY_LOCAL_MACHINE. Например, чтобы скрыть только что созданный нами значок ActiveX-объекта из папки МОЙ КОМПЬЮТЕР, необходимо создать параметр DWORD-типа {23D0F57C-5E2C-4FB2-BE50-B27DBD7EFB76} и присвоить ему значение, равное 1. Создавать данный параметр нужно в нашей ветви реестра HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\HIDEMYCOMPUTERICONS. 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 присвоить битовую маску 0х00100000. Скрытие CPL-файлов
Но кроме скрытия 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. Она имеет такой же формат, что и предыдущая ветвь, но скрывает апплеты ПАНЕЛИ УПРАВЛЕНИЯ для всех пользователей системы. Другие возможности
А теперь давайте рассмотрим некоторые другие возможности реестра, которые можно использовать в своей системе.
Продолжение следует Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=113
|
В избранное | ||