Добавление произвольного системного ActiveX-элемента в Рабочий стол области переходов проводника
По умолчанию в проводнике отображается определенный набор объектов ActiveX: Избранное, Библиотеки, Компьютер и Сеть или более расширенный, если у Вас в настройках элемента Параметры папок установлен флажок Показать все папки.
Чтобы добавить какой-либо из системных объектов в область переходов, Вам необходимо знать его статистически уникальный 128-битный идентификатор – {GUID}.
Список всех идентификаторов ({GUID}) находится в разделе реестра: HKEY_CLASSES_ROOT\CLSID\{GUID}. Из данного списка в в область переходов, добавить Вы можете, те ActiveX-объекты, которые имеют интерфейс IShellFolder (интерфейс для объектов, расширяющих пространство имен оболочки). Данный факт определяется наличием в {GUID} разделе реестра подраздела ShellFolder.
Для экономии времени, необходимого на поиск нужного элемента Вы можете воспользоваться утилитой CSLID Dump, позволяющей получить список всех ActiveX-объектов, имеющих IShellFolder интерфейс.
- Скачайте CSLID Dump, распакуйте архив и запустите программу.
- Найдите в CLSID Dump, необходимый Вам {GUID} ActiveX-объекта и откройте его в реестре:
- Нажмите в самой программе на кнопку Open Regedit
Или:
- Запустите редактор реестра (WIN + R › regedit › ОК) и откройте раздел
HKEY_CLASSES_ROOT\CLSID\{GUID}
…где вместо {GUID} вставьте найденное Вами значение.
- Откройте в данном разделе подраздел ShellFolder.
HKEY_CLASSES_ROOT\CLSID\{GUID}\ShellFolder
Например: элементу "Все задачи" соответствует {GUID} равный {ED7BA470-8E54-465E-825C-99712043E01C}, следовательно необходимо открыть:
HKEY_CLASSES_ROOT\CLSID\{ED7BA470-8E54-465E-825C-99712043E01C}\ShellFolder
- Задайте полные права на доступ к разделу HKEY_CLASSES_ROOT\CLSID\{GUID}\ShellFolder.
- Щелкните правой кнопкой мыши на выбранном разделе реестра и выберите из меню пункт Разрешения.
- Выделите группу Администраторы, установите флажок Полный доступ и нажмите кнопку ОК.
- Если флажок недоступен или Вы видите сообщение об ошибке, то нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
- Выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.
- Выделите группу Администраторы, установите флажок Полный доступ и нажмите кнопку ОК.
- Если в разделе HKEY_CLASSES_ROOT\CLSID\{GUID}\ShellFolder присутствует строковый параметр WantsParseDisplayName, то удалите его.
- Если в разделе HKEY_CLASSES_ROOT\CLSID\{GUID}\ShellFolder отсутствует строковый параметр PinToNameSpaceTree, то создайте его с пустым значением.
Включите отображение объекта для перечисления.
- Если необходимо, измените значение параметра Attributes таким образом, чтобы третья цифра стала равна 0. Например: вместо 20100004 задайте 20000004.
Добавьте Ваш ActiveX-объект в пространство имен Рабочего стола.
- Перейдите в раздел:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ Desktop\NameSpace
- Создайте здесь подраздел с названием идентичным Вашему {GUID}. Например:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ Desktop\NameSpace\{ED7BA470-8E54-465E-825C-99712043E01C}
Разрешите отображение Вашего объекта только в области переходов проводника, исключая отображение его на Рабочем столе.
- Перейдите в раздел:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel
- Создайте здесь DWORD-параметр с названием идентичным Вашему {GUID} и задайте ему значение равное 1.
- Закройте редактор реестра.
- Выйдите из системы и войдите в нее заново или перезагрузите компьютер.
Описанным выше способом, Вы можете добавить почти любой из ActiveX-объектов имеющих интерфейс IShellFolder.