Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Windows 7 Маленькие хитрости Добавление ярлыков в "Панель управления", "Компьютер" и на рабочий стол в Windows 7 RSS

Добавление ярлыков в "Панель управления", "Компьютер" и на рабочий стол в Windows 7

Текущий рейтинг: 4.48 (проголосовало 77)
 Посетителей: 32800 | Просмотров: 41615 (сегодня 0)  Шрифт: - +

Введение

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

Так как добавлять ярлыки будем таким образом, чтобы пользователь не смог их удалить из контекстного меню, а также нажатием на кнопку Delete на клавиатуре, добавлять их будем при помощи системного реестра. Для этого нам нужно будет создать или воспользоваться существующим GUID в ветке реестра HKEY_CLASSES_ROOT\CLSID\, для генерации которого, в случае необходимости, можно воспользоваться стандартной утилитой uuidgen.exe, входящей в состав Microsoft SDK, либо перейдя по следующей ссылке. В свою очередь, GUID (Globally Unique Identifier) — это статистически уникальный 128-битный идентификатор. Его главная особенность — уникальность, которая позволяет создавать расширяемые сервисы и приложения без опасения конфликтов, вызванных совпадением идентификаторов. Хотя уникальность каждого отдельного GUID не гарантируется, общее количество уникальных ключей настолько велико (2128 или 3,4028х1038), что вероятность того, что в мире будут независимо сгенерированы два совпадающих ключа, достаточно мала.

В тексте GUID записывается в виде строки из шестнадцатеричных цифр, разбитых на группы дефисами и окружённой фигурными скобками: {6F9619FF-8B86-D011-B42D-00CF4FC964FF}. Microsoft применяет GUID в OLE, COM и DCOM — например, в качестве идентификаторов для классов (CLSID), интерфейсов (IID), библиотек типов (LIBID). Использование GUID гарантирует, что две (возможно, несовместимые) версии одного компонента могут иметь одно и то же имя, но быть отличимыми по GUID.

Алгоритм, который Microsoft использовала для генерации GUID, был широко раскритикован. В частности, в качестве основы для генерации части цифр GUID использовался MAC-адрес сетевого адаптера, что означало, например, что по данному документу MS Word (также получающему при создании свой уникальный GUID) можно было определить компьютер, на котором он был создан. Позже Microsoft изменила алгоритм таким образом, чтобы он не включал в себя MAC-адрес.

Для корректного описания объекта нужно создать следующие разделы внутри нашего CLSID. Например:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}]
@="Редактор реестра"
"InfoTip"="Открывает редактор системного реестра"
"System.ControlPanel.Category"="5"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\DefaultIcon]
@="%SYSTEMROOT%\\regedit.exe"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open\Command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\
  00,00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\ShellFolder]
"Attributes"=dword:00000000

Про все разделы и параметры реестра, которые применяются в текущем твике описаны в следующей таблице:

Раздел реестраПараметрТип данныхЗначениеОписание
HKCR\CLSID\{ID}@REG_SZРедактор реестраНазвание ярлыка
HKCR\CLSID\{ID}InfoTipREG_SZОткрывает редактор реестраПодробное описание ярлыка. Отображается при наведении курсора на сам ярлык
HKCR\CLSID\{ID}\DefaultIcon@REG_SZ%SYSTEMROOT%\\regedit.exeПуть к иконке для ярлыка
HKCR\CLSID\{ID}\Shell\Open\Command@REG_SZ

25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\

00,00

Путь к самому приложению
HKCR\CLSID\{ID}\ShellFolderAttributesDWORD00000000Запрещает переименование/удаление ярлыка

Если значение параметра Attributes не указывается, то созданный ярлык можно будет переименовывать и удалять.

Добавление ярлыка в "Панель управления"

После того, как GUID будет добавлен, необходимо указать его в разделе, который отвечает за отображение компонентов в "Панели управления", "Компьютере" или на рабочем столе. Например, для того, чтобы создать новый ярлык в панели управления, нужно сделать следующее: в разделе

Windows Registry Editor Version 5.00

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\

создаем новый раздел, название которого будет полностью соответствовать созданному нами ранее GUID. В нем случае, будет выглядеть так: {77708248-f839-436b-8919-527c410f48b9}. После этого, в созданном разделе, изменить значение параметра по умолчанию (@), например так: @="Добавляет редактор системного реестра на Панель управления"

В итоге должно получиться следующее:

*
Увеличить рисунок

Сам твик реестра:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}]
@="Редактор реестра"
"InfoTip"="Открывает редактор системного реестра"
"System.ControlPanel.Category"="5"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\DefaultIcon]
@="%SYSTEMROOT%\\regedit.exe"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open\Command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\
  00,00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\ShellFolder]
"Attributes"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{77708248-f839-436b-8919-527c410f48b9}]
@="Добавляет редактора системного реестра в панель управления"

Добавление ярлыка в "Компьютер"

Для того, чтобы в новый ярлык появился в окне "Компьютер", необходимо немного изменить твик, который рассматривался выше. В данном случае используемый GUID нужно добавить в раздел, который отвечает за "Компьютер", а именно:

Windows Registry Editor Version 5.00

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{CLSID}

. После этого ярлык появится в группе "Другие", как показано на следующем скриншоте:

*
Увеличить рисунок

Твик реестра:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}]
@="Редактор реестра"
"InfoTip"="Открывает редактор системного реестра"
"System.ControlPanel.Category"="5"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\DefaultIcon]
@="%SYSTEMROOT%\\regedit.exe"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open\Command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\
  00,00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\ShellFolder]
"Attributes"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{77708248-f839-436b-8919-527c410f48b9}]
@="Добавляет редактора системного реестра в Компьютер"

Добавление ярлыка на рабочий стол

Для того, чтобы в новый ярлык появился на рабочем столе, нужно сделать следующее: используемый GUID добавляем в раздел, который отвечает за рабочий стол Windows, а именно в раздел

Windows Registry Editor Version 5.00

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{CLSID}

После этого ярлык появится на рабочем столе, причем удалить без помощи реестра будет невозможно. Увидеть это можно на скриншоте:

Твик реестра:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}]
@="Редактор реестра"
"InfoTip"="Открывает редактор системного реестра"
"System.ControlPanel.Category"="5"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\DefaultIcon]
@="%SYSTEMROOT%\\regedit.exe"

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open]

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\Shell\Open\Command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\
  00,00

[HKEY_CLASSES_ROOT\CLSID\{77708248-f839-436b-8919-527c410f48b9}\ShellFolder]
"Attributes"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{77708248-f839-436b-8919-527c410f48b9}]
@="Добавляет редактора системного реестра на рабочий стол"

Заключение

В данной статье я рассказал о том, как можно добавить ярлык для любого приложения как компонент "Панели управления", "Моего компьютера", а также как можно его добавить на рабочий стол при помощи системного реестра Windows. Благодаря этому руководству можно добавлять ярлыки без возможности удаления пользователями, то есть можно дать пользователям возможность открывать необходимые им приложения непосредственно из "Компьютера", а также запретить удалять некоторые ярлыки, которые расположены на рабочем столе.


Статья опубликована в рамках конкурса "Наш выбор - Windows 7!". Оригинальный стиль автора сохранен.

Автор: Dmitry_Bulanov  •  Иcточник: http://dimanb.spaces.live.com  •  Опубликована: 13.10.2009
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.