ID2D1Factory1::RegisterEffectFromStream メソッド (d2d1_1.h)

ストリームとして指定されたプロパティ XML を使用して、ファクトリ インスタンス内の効果を登録します。

構文

HRESULT RegisterEffectFromStream(
  [in]           REFCLSID                    classId,
  [in]           IStream                     *propertyXml,
  [in, optional] const D2D1_PROPERTY_BINDING *bindings,
                 UINT32                      bindingsCount,
                 const PD2D1_EFFECT_FACTORY  effectFactory
);

パラメーター

[in] classId

型: REFCLSID

登録する効果の識別子。

[in] propertyXml

種類: IStream

効果のプロパティ、型、およびメタデータの一覧。

[in, optional] bindings

型: const D2D1_PROPERTY_BINDING*

プロパティとメソッドの配列。

これにより、プロパティを名前でバインドし、プロパティを処理するために効果作成者によって実装された特定のメソッドにバインドされます。 名前は、対応する propertyXml に含まれている必要があります。

bindingsCount

種類: UINT32

バインド配列内のバインドの数。

effectFactory

種類: PD2D1_EFFECT_FACTORY

対応する効果を作成するために使用される静的ファクトリ。

戻り値

種類: HRESULT

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

HRESULT 説明
S_OK エラーは発生していません。
E_OUTOFMEMORY Direct2D は、呼び出しを完了するのに十分なメモリを割り当てませんでした。
E_INVALIDARG 返される関数に無効なパラメーターが渡されました。

注釈

Direct2D 効果では、登録時に登録 XML を使用してプロパティを定義する必要があります。 効果は、いくつかの必須システム プロパティを宣言し、カスタム プロパティを宣言することもできます。 propertyXml パラメーターの書式設定の詳細については、「カスタム効果」を参照してください。

RegisterEffect はアトミックカウントと参照カウントの両方です。 効果の登録を解除するには、効果の classId を使用して UnregisterEffect を呼び出します。

重要RegisterEffect は、効果が含まれている DLL または実行可能ファイルへの参照を保持しません。 アプリケーションは、DLL または実行可能ファイルの有効期間に、登録および作成された各効果のすべてのインスタンスが完全に含まれていることを個別に確認する必要があります。
 
グローバルに登録される 組み込みの効果 とは別に、この API は、このファクトリ、派生デバイス、およびデバイス コンテキスト インターフェイスに対してのみ効果を登録します。

要件

要件
サポートされている最小のクライアント Windows 7 のWindows 8とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 のWindows Server 2012とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー d2d1_1.h
Library D2d1.lib
[DLL] D2d1.dll

こちらもご覧ください

ID2D1Factory1

ID2D1Factory1::UnregisterEffect