Método ID2D1Factory1::RegisterEffectFromStream (d2d1_1.h)

Registra um efeito dentro da instância de fábrica com a propriedade XML especificada como um fluxo.

Sintaxe

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

Parâmetros

[in] classId

Tipo: REFCLSID

O identificador do efeito a ser registrado.

[in] propertyXml

Tipo: IStream

Uma lista das propriedades, tipos e metadados de efeito.

[in, optional] bindings

Tipo: const D2D1_PROPERTY_BINDING*

Uma matriz de propriedades e métodos.

Isso associa uma propriedade por nome a um método específico implementado pelo autor do efeito para manipular a propriedade. O nome deve ser encontrado na propriedadeXml correspondente.

bindingsCount

Tipo: UINT32

O número de associações na matriz de associação.

effectFactory

Tipo: PD2D1_EFFECT_FACTORY

A fábrica estática usada para criar o efeito correspondente.

Retornar valor

Tipo: HRESULT

O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

HRESULT Descrição
S_OK Não ocorreu nenhum erro.
E_OUTOFMEMORY Direct2D não pôde alocar memória suficiente para concluir a chamada.
E_INVALIDARG Um parâmetro inválido foi passado para a função de retorno.

Comentários

Direct2D efeitos devem definir suas propriedades no momento do registro por meio de XML de registro. Um efeito declara várias propriedades do sistema necessárias e também pode declarar propriedades personalizadas. Consulte Efeitos personalizados para obter mais informações sobre como formatar o parâmetro propertyXml .

RegisterEffect é atômico e referência contada. Para cancelar o registro de um efeito, chame UnregisterEffect com a classId do efeito.

ORegisterEffect importante não contém uma referência à DLL ou ao arquivo executável no qual o efeito está contido. O aplicativo deve garantir independentemente que o tempo de vida da DLL ou do arquivo executável contenha completamente todas as instâncias de cada efeito registrado e criado.
 
Além dos efeitos internos que estão registrados globalmente, essa API registra efeitos somente para essa fábrica, dispositivo derivado e interfaces de contexto do dispositivo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 e Atualização de Plataforma para Windows 7 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 e Atualização de Plataforma para Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho d2d1_1.h
Biblioteca D2d1.lib
DLL D2d1.dll

Confira também

ID2D1Factory1

ID2D1Factory1::UnregisterEffect