Поделиться через


Разделы реестра COM

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

Ключ. Description
AppID
Группирование параметров конфигурации (набор именованных значений) для одного или нескольких распределенных COM-объектов в одно расположение в реестре. Вложенные ключи под этим ключом используются для сопоставления идентификатора приложения (AppID) с именем удаленного сервера. Чтобы упростить управление общими параметрами безопасности и конфигурации, распределенные COM-объекты, размещенные одним исполняемым файлом, группируются в один AppID.
CLSID
Идентификатор класса (CLSID) — это глобальный уникальный идентификатор, определяющий объект класса COM. Если сервер или контейнер разрешает связывание с внедренными объектами, зарегистрируйте CLSID для каждого поддерживаемого класса объектов. Ключ CLSID содержит сведения, используемые обработчиком COM по умолчанию для возврата сведений о классе, когда он находится в состоянии выполнения.
Чтобы получить CLSID для приложения, используйте uuidgen.exe, найденные в каталоге \TOOLs com набор средств или используйте CoCreateGuid.
ProgID
Программный идентификатор (ProgID) — это запись реестра, которая может быть связана с CLSID. Ключ ProgID сопоставляет пользовательскую строку с CLSID. Как и clSID, ProgID определяет класс, но с меньшей точностью. Используйте ProgID в ситуациях программирования, когда нельзя использовать CLSID. Идентификаторы progID не должны отображаться в пользовательском интерфейсе. Идентификаторы progID не гарантируются уникальными, поэтому их можно использовать только в том месте, где не происходят столкновения имен.
VersionIndependentProgID
Связывает ProgID с CLSID. Он используется для определения последней версии приложения объекта. Как и progID, идентификатор ProgID, независимый от версии, можно зарегистрировать с помощью имени, доступного для чтения.
Приложения должны зарегистрировать независимый от версии программный идентификатор в ключе VersionIndependentProgID. Идентификатор ProgID независимо от версии относится к классу приложения и не изменяется с версии на версию, а не остается константой во всех версиях. Он используется с языками макросов и ссылается на текущую установленную версию класса приложения. Идентификатор ProgID, независимый от версии, должен соответствовать имени последней версии приложения объекта.
file_extension
Связывает расширение имени файла с ProgID.
Сведения, содержащиеся в ключе расширения имени файла, используются как системными, так и моникерами файлов. GetClassFile использует ключ расширения имени файла для предоставления связанного CLSID.
Интерфейс
Регистрирует новые интерфейсы путем связывания имени интерфейса с идентификатором интерфейса (IID). Он сопоставляет идентификаторы iiD с информацией, относяшейся к интерфейсу. Сведения требуются главным образом для использования интерфейсов между границами процесса.
При добавлении нового интерфейса ключ интерфейса должен быть завершен для com-регистрации нового интерфейса. Для каждого нового интерфейса должен быть один подраздел IID.
Ole
Управляет разрешениями на запуск и доступ по умолчанию для распределенных объектов COM, а также возможностей безопасности на уровне вызовов для приложений, которые не вызывают CoInitializeSecurity. Только администраторы имеют полный доступ к этой части реестра. У всех остальных пользователей есть доступ только для чтения.

Регистрация COM-приложений