Clsid что это в реестре

от admin

Введение

CLSID или Class Identifier — это строка буквенно-цифровых символов (как цифр, так и букв алфавита), которые используются для представления конкретного экземпляра объектной модели компонентов (Component Object Model или COM) или программы на основе COM. Он позволяет операционным системам и программному обеспечению, особенно для Windows, обнаруживать программные компоненты и получать к ним доступ, не идентифицируя их по именам. Хотя Microsoft прекратила использование COM в пользу инфраструктуры .NET, COM продолжает использоваться в качестве важного компонента для многих часто используемых программ и не планирует прекращения его использования.

Примеры объектов, которые используют COM и соответствующий CLSID, включают ActiveX, каталог «Мой компьютер» и меню «Пуск» Windows. Типичный идентификатор CLSID в вашем реестре Windows может выглядеть следующим образом:

Наиболее вероятным случаем с CLSID является ситуация, когда веб-сайт просит вас обновить ActiveX или другую программу. Ваш браузер определяет версию вашего программного обеспечения, проверяя его CLSID, и передает эту информацию на веб-сайт без ущерба для вашего компьютера.

Однако поддельные обновления часто используются для распространения вредоносного программного обеспечения и других угроз для ПК, и вам следует избегать загрузки обновлений с веб-сайтов, которым вы не доверяете.

Когда хорошая запись CLSID становится плохой

Если CLSID поврежден, ваш компьютер может испытывать проблемы связанные с программой с которой связан CLSID. Одной из распространенных проблем является повреждение CLSID, в результате чего программное обеспечение не может проверить свою версию и обновить себя. Удаление и переустановка программного обеспечения обычно решают эту проблему.

Наиболее распространенная проблема связанная с записью CLSID в реестре заключается в том, что программа не убирает свой CLSID из реестра при удалении программы. Хотя это плохая практика программирования которая загромождает реестр компьютера бессмысленными текстовыми записями, неиспользуемая запись CLSID вряд ли повредит вашему компьютеру. Однако некоторые программы очистки реестра и другие программы обслуживания системы специализируются на удалении этого «мусора» на основе CLSID. В очень экстремальных ситуациях, например на компьютере с ограниченными системными ресурсами, реестр с слишком большим количеством неиспользуемых записей CLSID может вызвать проблемы с производительностью.

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

Исчезновение CLSID

Хотя CLSID обычно является постоянной текстовой записью в вашем реестре — по крайней мере до тех пор пока вы не удалите программу с которой он связан, временные папки и файлы также могут отображать записи CLSID в своих именах. Это часто обусловленно установщиками программ, которые распаковывают файлы для установки а затем удаляют их. Большинство таких файлов и папок должны автоматически удаляться после завершения установки, но случаях плохого кода установщика или прерывания процесса установки вам может потребоваться удалить эти объекты самостоятельно, хотя они не должны повредить ваш компьютер.

Не все программы использующие CLSID вынуждены записывать свои CLSID в реестр Windows. COM-компоненты RegFree или Registration-Free могут хранить свои записи CLSID в своих собственных файлах EXE или в отдельных файлах XML. Это имеет определенные преимущества, такие как возможность установки программы несколько раз в виде нескольких разных версий. Однако поддержка RegFree COM более ограничена и иногда (в случае общесистемных программ, таких как DirectX) полностью недоступна.

Разница между COM CLSID и остальной частью вселенной COM

Интерфейс COM с CLSID — это объектная модель компонентов (Component Object Model), метод взаимодействия использующий философию объектно-ориентированного программирования (или ООП). Он не имеет прямой связи с суффиксом веб-домена .COM, который обозначает «коммерческий» домен верхнего уровня.

Аналогично, COM-компоненты CLSID не связаны с файлами .COM, которые являются подтипом исполняемого файла или EXE-файла. Хотя некоторые компоненты Windows и другие программы используют .COM, этот устаревший формат файла требует эмуляции MS-DOS, которая не включена (по умолчанию) в 64-разрядных ОС Windows.

Место CLSID в индустрии вредоносных программ

Записи CLSID могут использоваться как для запуска вредоносных, так и безопасных программ. Руткиты, трояны, вредоносные объекты Browser Helper Objects и другие типы вредоносных программ могут использовать систему CLSID для автоматического запуска или при срабатывании определенных условий. Большинство компетентных программ защиты от малвари будут обнаруживать и удалять вредоносные записи CLSID вместе с вредоносными программами которые с ними связаны. Однако, как и обычные записи CLSID, нетронутые вредоносные записи CLSID для удаленных программ не могут нанести вред вашему компьютеру.

Также известно, что малварь использует записи CLSID для вызовов других программ (таких как Internet Explorer). Эти программы могут подавать, или не подавать видимые признаки того что они открыты, хотя в большинстве случаев вы должны иметь возможность обнаруживать процесс открытой программы через диспетчер задач и аналогичные утилиты. Такие атаки могут использоваться для проведения различных онлайн-атак без ведома пользователя ПК. В то время как знание CLSID не требуется для повседневного использования ПК, знание о его возможностях и ограничениях может помочь устранить ошибки программного обеспечения и реестра с минимальными потерями для ПК.

Windows Немного о CLSID

Из справки microsoft следует,объект clsid имеет право на то,что бы его называли программой-оболочкой для глобального уникального идентификатора (GUID) для COM-класса.
А так же приведу цитату следующего содержания:

Хм,хм. то есть ключ clsid по сути является уникальным именем ,сгенерированный по определенному принципу и несущим в себе ссылку на объект,имя которого было сгенерировано в код CLSID.

Так,давайте немного практики.

Здесь я описал несколько примеров использования ключей CLSID.
Кроме того разного рода функционал может быть добавлен в автозагрузку,использован в каких то своих целях.
Что бы сравнить возможности,я попрошу вас заглянуть в эти три темы по очереди:
Параметры команды shell
Краткий справочник по CLSID
И например вот эта

Посмотрев эти темы мы убедимся,что функционал CLSID довольно обширен и мощный.

раздел реестра |Описание

AppID |Зависимые AppID с CLSID.
AutoConvertTo | Задает автоматическое преобразование данного класса объектов, в новый класс объектов.
AutoTreatAs | Автоматически устанавливает CLSID для TreatAs ключ к указанному значению.
AuxUserType |Определяет короткие имена и отображаемое имя приложения.
Control | Определяет объект как элемент Управления ActiveX.
Conversion | Используется Conversion диалоговое окно для определения форматов.
DataFormats |Определяет форматы по умолчанию и данные, которые поддерживаются приложением.
DefaultIcon | Иконка используемая по умолчанию для объекта.
InprocHandler | Указывает, использует ли приложение пользовательский обработчик.
InprocHandler32 | Указывает, использует ли приложение пользовательский обработчик.
InprocServer | Задает путь к in-process server DLL.
InprocServer32 | Регистрация 32-bit in-process server и определяет модель потоков на сервере,которые могут работать в домашней группе.
Insertable | Указывает на то, что у объекта этого класса должно появиться в Insert Object диалоговое окно списка при использовании COM-контейнер приложений.
Interface | Указывает, что у объекта этого класса должен появиться в Insert Object диалоговом окне списка, когда используется приложениями COM контейнеров.
LocalServer |Задает полный путь к 16-бит локального сервера приложений.
LocalServer32 | LocalServer32 определяет местоположение приложения COM-сервера для запуска приложений локального сервера.
MiscStatus |Определяет, как создать и отобразить объект.
ProgID | Ассоциированные ProgID с CLSID.
ToolBoxBitmap32 | Определяет имя модуля и идентификатор ресурса для изображения (16 х 16) используемого для панели инструментов или кнопки панели инструментов.
TreatAs | Определяет CLSID класса, могут имитировать текущий класс.Эмуляция проявляется в способности одного приложения открывать и редактировать объект другого класса, сохраняя исходный формат объекта.
Verb | Определяет глаголы, которые будут зарегистрированы для приложения.
Version | Указывает номер версии управления.
VersionIndependentProgID | Ассоциированные ProgID с CLSID. Это значение используется, чтобы определить последнюю версию объекта application.

CLSID (GUID) Список расположения Shell в Windows 10

Shell это интерпретатор команд операционной системы, с помощью команд Shell . из диалогового окна «Выполнить» , вы можете получить доступ к расположению: Элементов Панели управления, Параметрам, системным папкам, программам и другим системным настройкам Windows 10.

С каждой версией Windows, добавляются множество новых локаций Shell. Ниже вы найдете список местоположений Shell CLSID (GUID), доступных в Windows 10.

Сегодня я хотел бы поделиться с вами наиболее полным списком местоположений Shell в Windows 10.

Shell Folders

Папки Shell являются объектами ActiveX, которые отображают специальную виртуальную папку или виртуальный апплет. В некоторых случаях они обеспечивают доступ к физическим папкам на жестком диске или даже к функциональности ОС, как «Свернуть все окна» или переключатель Alt + Tab .

Читать:
Как поменять подпись в почте the bat

Ниже вы узнаете, как выполнять команды CLSID-апплетов, использовать аплет в качестве ярлыка рабочего стола. CLSID является глобально уникальным идентификатором, который идентифицирует объект класса COM.

Что вы можете сделать с Shell Folders

Вы можете использовать их в различных сценариях, но в общем случае Вы можете использовать их, чтобы создать ярлык для конкретного апплета панели управления или функции Windows. Например, следующая команда откроет папку» Все элементы Панели управления«: Shell.

Команды апплета CLSID — Диалоговое окно Выполнить:

Примечание: Нажмите клавиши Win + R на клавиатуре, скопируйте команду ниже и вставьте ее в диалоговое окно «Выполнить«.

Эта команда откроет окно: Все элементы панели управления.

Следующая команда откроет окно Сетевые подключения:

И следующая команда откроет папку «Applications», где вы найдете все установленные программы и приложения на вашем компьютере под управлением Windows 10.

Команды CLSID-апплетов, это множество интересных вещей.

Список расположения Shell CLSID (GUID) в Windows 10.

Shell расположение Команда
Папка кэша ActiveX Shell.
Добавить в сетевое окружение Shell.
Администрирование Shell.
Все элементы панели управления Shell.
Все настройки Shell.
Все задачи Shell.
Все Приложения Shell.
Проводник Shell.
Автозапуск Shell.
Резервное копирование и восстановление (Windows 7) Shell.
Шифрование диска BitLocker Shell.
Устройства Bluetooth Shell.
Портфель Shell.
Cabinet Shell Folder Shell.
CLSID_AppInstanceFolder Shell.
CLSID_DBFolder Shell.
CLSID_DBFolderBoth Shell.
CLSID_Поиск Shell.
CLSID_StartMenuCommandingProviderFolder Shell.
CLSID_StartMenuLauncherProviderFolder Shell.
CLSID_StartMenuPathCompleteProviderFolder Shell.
CLSID_StartMenuProviderFolder Shell.
Command Folder Shell.
Общие папки ФС места Shell.
CompressedFolder Shell.
Подключение к Shell.
Панель управления Shell.
Панель управления Shell.
Диспетчер учетных данных Shell.
Программы по умолчанию Shell.
Папка делегата, которая появляется в компьютере Shell.
Папка delegate, которая появляется в папке файлов пользователей Shell.
Рабочий стол Shell.
DeviceCenter инициализация Shell.
DevicePairingFolder инициализация Shell.
Устройства и принтеры Shell.
Дисплей Shell.
Источник данных каталога содержимого DLNA Shell.
DXP Shell.
Центр специальных возможностей Shell.
Электронная почта Shell.
Расширение хранения данных источника Shell.
Результаты папки проводника браузера Shell.
Избранное Shell.
Индекс резервного копирования файлов Shell.
Параметры обозревателя файлов Shell.
История файлов Shell.
FileHistoryDataSource Shell.
Ярлык папки Shell.
Параметры шрифта Shell.
Шрифты Shell.
Часто используемые папки Shell.
Кэш Fusion Shell.
Игры Shell.
Установка программ Shell.
История Shell.
Домашняя группа Shell.
Домашняя группа Shell.
Домашняя группа Shell.
История IE и источник данных оболочки каналы для поиска Windows Shell.
IE RSS-каналы папки Shell.
Установленные обновления Shell.
Язык Shell.
LayoutFolder Shell.
Библиотеки Shell.
Папка библиотеки делегата, которая появляется в папке файлов пользователей Shell.
Папка библиотеки Shell.
Расположение папки Shell.
Управление беспроводными сетями Shell.
Медиа-серверы Shell.
Microsoft FTP-папка Shell.
Microsoft Office Outlook Shell.
Мои документы Shell.
Сеть Shell.
Сеть Shell.
Сеть и коммутационный центр Shell.
Сетевые подключения Shell.
Сетевые подключения Shell.
Значки в области уведомлений Shell.
Автономные файлы Shell.
Автономные файлы папки Shell.
OneDrive Shell.
Персонализация Shell.
Фотографии Shell.
Портативные устройства Shell.
Параметры электропитания Shell.
Предыдущие версии Shell.
Папка делегата результаты предыдущих версий Shell.
Папка результатов предыдущих версий Shell.
Принтеры Shell.
Принтеры Shell.
Папка printhood делегата Shell.
Программы и компоненты Shell.
Общие папки Shell.
Последние папки Shell.
Recent Items Instance Folder Shell.
Восстановление Shell.
Корзина Shell.
Подключения к рабочим столам и приложениям RemoteApp Shell.
Съемные диски Shell.
Съемные устройства хранения Shell.
Папка результатов Shell.
Выполнить Shell.
Поиск Shell.
Поиск Shell.
Папка поиска Shell.
Безопасность и обслуживание Shell.
Настройка доступа к программам и умолчаний Shell.
Просмотр DocObject Shell Shell.
Папка файловой системы оболочки Shell.
Папка файловой системы оболочки Shell.
Показать Рабочий стол Shell.
Распознавание речи Shell.
Меню «Пуск» Shell.
Дисковые пространства Shell.
StreamBackedFolder Shell.
Папка подписки Shell.
Представление задач, TaskView или Временная шкала Shell.
Центр синхронизации Shell.
Папка конфликтов центра синхронизации Shell.
Папки синхронизации результатов делегата Shell.
Папка результатов синхронизации Shell.
Синхронизация папки установки делегата Shell.
Синхронизация папки установки Shell.
Система Shell.
Восстановление системы Shell.
Панель задач и Навигация Shell.
Временные файлы Интернета Shell.
Временные файлы Интернета Shell.
Интернет Shell.
Это устройство Shell.
Этот компьютер Shell.
Этот компьютер Shell.
Устранение неполадок Shell.
Учетные записи пользователей Shell.
Учетные записи пользователей Shell.
User Pinned Shell.
Файлы пользователя Shell.
Защитник Windows Shell.
Компоненты Windows Shell.
Брандмауэр Windows Shell.
Центр мобильности Windows Shell.
Безопасность Windows Shell.
Рабочие папки Shell.
Папка оболочки WWan Shell.

Создание ярлыков для быстрого доступа к компонентам Windows 10.

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

Вы должны использовать Explorer.exe Shell. в качестве целевого ярлыка, чтобы создать ярлык к определенному местоположению Shell. В качестве альтернативы, вы можете использовать следующий синтаксис:

В следующем примере, показано как создать ярлык для команды Рабочий стол.

Список ключей CLSID можно найти в реестре — HKLM\SOFTWARE\Classes\CLSID.
Обратите внимание: некоторые из апплетов являются новыми для Windows 10, поэтому не все будут работать в Windows 7, 8.

Назначение реестра

Реестр является центральным хранилищем, в котором хранится информация об общих настройках в системах Windows 95 и Windows NT. Впервые реестр появился в Windows 3.1 для отображения деталей классов OLE, заданных по умолчанию расширениях оболочки операционной системы и нескольких дополнительных команд DDE. В Windows 95 и Windows NT в содержимое реестра включено состояние системы, которое ранее сохранялось в файлах с расширением .INI. Реестр содержит данные об инсталлированной в данный момент аппаратной части, опциях панели управления и выбранными пользователем установками программного обеспечения. Хотя в том, как каждая операционная система использует реестр имеются важные отличия, все, что в реестре связано с OLE, одинаково в обеих системах.

Реестр имеет иерархическую структуру, он подразделяется на ключи, подключи и значения. В Windows 95 определяемые корневые ключи включают в себя: HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_CONFIG и HKEY_DYN_DATA. (В Windows NT имеется только первые четыре ключа.) Данные, относящиеся к компонентам OLE, находятся в HKEY_CLASSES_ROOT. (Обратите внимание, что истинное положение компонентов OLE в иерархии реестра следующее: HKEY_LOCAL_MACHINE\SOFTWARE\Classes, но для совместимости с приложениями OLE Windows 3.1, для классов

OLE выделен собственный суррогатный корневой узел.)

Корневые ключи HKEY_CLASSES_ROOT состоят из элементов трех типов: расширений файлов, имен классов и системных входов. Элементы расширений файлов начинаются с точки (.), которая связывает файл с сервером составного документа (например, «.vsd» с Visio фирмы Visio Corporation). Имена классов представляют собой понятные человеку идентификаторы классов компонентов OLE, что в настоящее время можно использовать двумя способами. Первым применением имен классов является поддержка серверов составного документа OLE 1.0; при этом имена классов идентифицируются, например, так: «Visio.Drawing.4». Вторым использованием имен классов является автоматизация OLE. Примитивы макрокоманд автоматизации по имени создают объекты автоматизации OLE — в этом контексте имя класса называется «идентификатором программы» или «ProgID». Например, используя «Visio.Application» ProgID, программа Visual Basic может применять методы и свойства автоматизации, создавать объекты Visio и управлять ими.

Имеется три типа системных элементов реестра, каждый из которых является корневым и имеет собственную иерархию: TypeLib , Interface и CLSID. Иерархия TypeLib идентифицирует положение инсталлированных в данный момент библиотек типов, которые являются базами данных, описывающими содержимое компонентов OLE. Широко используемая для поддержки автоматизации библиотека типов описывает прототипы функций для всех поддерживаемых интерфейсов, а также включает в себя ссылки на файлы-подсказки, и поэтому инструменты разработки могут вызвать соответствующую страницу подсказки и помочь создателям макрокоманд правильно воспользоваться серверами автоматизации.

Иерархия Interface содержит список, отсортированный по идентификаторам интерфейса, всех инсталлированных в системе интерфейсов. Это дает возможность прочитать имя интерфейса ( IUnknown, IMalloc и т. д.) и подробности о каждом интерфейсе (количество функций в каждом интерфейсе и его базовый класс).

Последняя иерархия, иерархия CLSID детализирует все инсталлированные в данный момент (открытые) компоненты OLE. CLSID — это идентификатор класса. Также, как и идентификаторы интерфейсов (типы данных

IID и REFIID), идентификаторы классов (типы данных CLSID и REFCLSID) являются 128-разрядными (16 шестнадцатеричных цифр) числами, обеспечивающими машинный способ точной идентификации класса компонента. Также, как тип IID, CLSID имеет тип GUID:

Похожие статьи