Функция CLSIDFromProgIDEx (objbase.h)
Активирует автоматическую установку, если политика COMClassStore включена.
Это аналогично поведению CoCreateInstance , когда не указаны ни CLSCTX_ENABLE_CODE_DOWNLOAD, ни CLSCTX_NO_CODE_DOWNLOAD.
Синтаксис
HRESULT CLSIDFromProgIDEx(
[in] LPCOLESTR lpszProgID,
[out] LPCLSID lpclsid
);
Параметры
[in] lpszProgID
Указатель на идентификатор ProgID, для которого запрашивается ИДЕНТИФИКАТОР CLSID.
[out] lpclsid
Получает указатель на полученный идентификатор CLSID при возврате.
Возвращаемое значение
Эта функция может возвращать следующие значения.
Код возврата | Описание |
---|---|
|
Идентификатор CLSID успешно получен. |
|
Зарегистрированный идентификатор CLSID для ProgID недопустим. |
|
Произошла ошибка при записи ИДЕНТИФИКАТОРа CLSID в реестр. См. примечания ниже. |
Комментарии
CLSCTX_ENABLE_CODE_DOWNLOAD включает автоматическую установку отсутствующих классов с помощью IntelliMirror/Application Management из Active Directory. Если этот флаг не указан, политика COMClassStore ("Скачать отсутствующие com-компоненты") определяет поведение (по умолчанию: без скачивания).
Если политика COMClassStore включает автоматическую установку, CLSCTX_NO_CODE_DOWNLOAD можно использовать для явного запрета скачивания для активации.
Если включено одно из следующих значений реестра (имеет значение 1), включена автоматическая загрузка отсутствующих классов:
- HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\App Management\COMClassStore
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\App Management \COMClassStore
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | objbase.h (включая Objbase.h) |
Библиотека | Ole32.lib |
DLL | Ole32.dll |