CLSIDFromProgIDEx 関数 (combaseapi.h)

COMClassStore ポリシーが有効になっている場合に、自動インストールをトリガーします。

これは、CLSCTX_ENABLE_CODE_DOWNLOADもCLSCTX_NO_CODE_DOWNLOADも指定されていない場合の CoCreateInstance の動作に似ています。

構文

HRESULT CLSIDFromProgIDEx(
  [in]  LPCOLESTR lpszProgID,
  [out] LPCLSID   lpclsid
);

パラメーター

[in] lpszProgID

CLSID が要求される ProgID へのポインター。

[out] lpclsid

返された CLSID へのポインターを受け取ります。

戻り値

この関数は、次の値を返すことができます。

リターン コード 説明
S_OK
CLSID が正常に取得されました。
CO_E_CLASSSTRING
ProgID に登録されている CLSID が無効です。
REGDB_E_WRITEREGDB
CLSID をレジストリに書き込む際にエラーが発生しました。 下記の注釈を参照してください。

注釈

CLSCTX_ENABLE_CODE_DOWNLOADを使用すると、Active Directory から IntelliMirror/Application Management を使用して、不足しているクラスを自動的にインストールできます。 このフラグを指定しない場合、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
ヘッダー combaseapi.h (Objbase.h を含む)
Library Ole32.lib
[DLL] Ole32.dll

こちらもご覧ください

ProgIDFromCLSID