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


Ключ ProgID

Программный идентификатор (ProgID) — это запись реестра, которая может быть связана с CLSID. Как и CLSID, ProgID определяет класс, но с меньшей точностью, так как он не гарантируется глобально уникальным.

Запись реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\{ProgID }

Раздел реестра Описание
CLSID Связывает ProgID с CLSID.
Вставка Указывает, что этот класс вставляется в контейнеры OLE 2.
протокола Указывает, что этот класс OLE 2 можно вставить в контейнеры OLE 1.
оболочки Предоставляет сведения о печати оболочки Windows 3.1 и открыть файл.

 

Замечания

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

Формат ProgID — это <программе>.<компонента>.<версии>, разделенной периодами и без пробелов, как в Word.Document.6. ProgID должен соответствовать следующим требованиям:

  • Не более 39 символов.
  • Не содержат знаки препинания (включая символы подчеркивания и косые черты), кроме одного или нескольких периодов.
  • Не начинайте с цифры.
  • Отличаться от имени класса любого приложения OLE 1, включая OLE 1 версии одного и того же приложения, если есть один.

Так как ProgID не должен отображаться в пользовательском интерфейсе, можно получить отображаемое имя, вызвав IOleObject::GetUserType. См. также OleRegGetUserType.

Ключ HKEY_LOCAL_MACHINE\SOFTWARE\Classes соответствует ключу HKEY_CLASSES_ROOT, который был сохранен для совместимости с более ранними версиями COM.

IOleObject::GetUserType

OleRegGetUserType