Partager via


ID2D1Factory1::RegisterEffectFromString, méthode (d2d1_1.h)

Inscrit un effet dans le instance de fabrique avec la propriété XML spécifiée sous forme de chaîne.

Syntaxe

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

Paramètres

[in] classId

Type : REFCLSID

Identificateur de l’effet à inscrire.

[in] propertyXml

Type : PCWSTR

Liste des propriétés d’effet, des types et des métadonnées.

[in, optional] bindings

Type : const D2D1_PROPERTY_BINDING*

Tableau de propriétés et de méthodes.

Cela lie une propriété par son nom à une méthode particulière implémentée par l’auteur de l’effet pour gérer la propriété. Le nom doit être trouvé dans la propriétéXml correspondante.

bindingsCount

Type : UINT32

Nombre de liaisons dans le tableau de liaison.

effectFactory

Type : PD2D1_EFFECT_FACTORY

Fabrique statique utilisée pour créer l’effet correspondant.

Valeur retournée

Type : HRESULT

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

HRESULT Description
S_OK Aucune erreur ne s'est produite.
E_OUTOFMEMORY Direct2D n’a pas pu allouer suffisamment de mémoire pour terminer l’appel.
E_INVALIDARG Un paramètre non valide a été passé à la fonction de retour.

Remarques

Les effets Direct2D doivent définir leurs propriétés au moment de l’inscription via le xml d’inscription. Un effet déclare plusieurs propriétés système requises et peut également déclarer des propriétés personnalisées. Pour plus d’informations sur la mise en forme du paramètre propertyXml, consultez Effets personnalisés.

RegisterEffect est à la fois atomique et compte de référence. Pour annuler l’inscription d’un effet, appelez UnregisterEffect avec le classId de l’effet.

ImportantRegisterEffect ne contient pas de référence à la DLL ou au fichier exécutable dans lequel l’effet est contenu. L’application doit s’assurer indépendamment que la durée de vie du fichier DLL ou exécutable contient entièrement toutes les instances de chaque effet inscrit et créé.
 
Outre les effets intégrés qui sont inscrits globalement, cette API enregistre uniquement les effets pour cette fabrique et les interfaces de contexte d’appareil et d’appareil dérivées.

Configuration requise

   
Client minimal pris en charge Windows 8 et Mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d2d1_1.h
Bibliothèque D2d1.lib
DLL D2d1.dll

Voir aussi

ID2D1Factory1

ID2D1Factory1::UnregisterEffect