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


Функция CLSIDFromProgIDEx (combaseapi.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 при возврате.

Возвращаемое значение

Эта функция может возвращать следующие значения.

Код возврата Описание
S_OK
Идентификатор CLSID успешно получен.
CO_E_CLASSSTRING
Зарегистрированный идентификатор CLSID для ProgID недопустим.
REGDB_E_WRITEREGDB
Произошла ошибка при записи CLSID в реестр. См. примечания ниже.

Комментарии

CLSCTX_ENABLE_CODE_DOWNLOAD включает автоматическую установку отсутствующих классов с помощью IntelliMirror или управления приложениями из 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 combaseapi.h (включая Objbase.h)
Библиотека Ole32.lib
DLL Ole32.dll

См. также раздел

ProgIDFromCLSID