Ключ ProgID независимо от версии
Связывает ProgID с CLSID. Этот ключ используется для определения последней версии приложения объекта.
Параметр реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Classes
<version-independent ProgID>
CurVer = ProgID
Замечания
Ключ HKEY_LOCAL_MACHINE\SOFTWARE\Classes соответствует ключу HKEY_CLASSES_ROOT , который был сохранен для совместимости с более ранними версиями COM.
Формат программы, независимой от <версии ProgID<.<>>компонент>, разделенный точками, пробелами и номером версии. Независимо от версии ProgID, например ProgID, можно зарегистрировать с помощью имени, доступного для чтения.
ProgID — это ProgID последней установленной версии класса.
Приложения должны зарегистрировать независимый от версии программный идентификатор в ключе ProgID, независимом от версии. Идентификатор ProgID независимо от версии относится к классу приложения и не изменяется с версии на версию, а не остается константой во всех версиях, например в Microsoft Word Document. Он используется с языками макросов и ссылается на текущую установленную версию класса приложения. Идентификатор ProgID, независимый от версии, должен соответствовать имени последней версии приложения объекта.
Например, идентификатор ProgID, независимый от версии, используется при создании диаграммы или таблицы с кнопкой панели инструментов. В этой ситуации приложение может использовать независимый от версии ProgID, чтобы определить последнюю версию необходимого приложения объекта.
Идентификатор ProgID, независимый от версии, хранится и поддерживается исключительно кодом приложения. При получении независимой от версии ProgID функция CLSIDFromProgID возвращает CLSID текущей версии.
Для преобразования между этими двумя представлениями можно использовать CLSIDFromProgID и ProgIDFromCLSID.
С помощью IOleObject::GetUserType или OleRegGetUserType можно изменить идентификатор на отображаемую строку.
Если пользовательский обработчик не используется, запись должна быть задана в OLE32.DLL, как показано в следующем примере:
HKEY_CLASSES_ROOT\CLSID\{00000402-0000-0000-C000-000000000046}
InprocHandler = ole32.dll
См. также