This documentation is archived and is not being maintained.

BitmapEffect.CreateUnmanagedEffect Method

Note: This API is now obsolete. The non-obsolete alternative is Effect.

When overridden in a derived class, creates a clone of the unmanaged effect.

Namespace:  System.Windows.Media.Effects
Assembly:  PresentationCore (in PresentationCore.dll)

[ObsoleteAttribute("BitmapEffects are deprecated and no longer function.  Consider using Effects where appropriate instead.")]
protected abstract SafeHandle CreateUnmanagedEffect()

Return Value

Type: System.Runtime.InteropServices.SafeHandle
A handle to the unmanaged effect clone.

The following example demonstrates an override of the CreateUnmanagedEffect method.


        [SecurityPermissionAttribute(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)]
        unsafe protected override SafeHandle CreateUnmanagedEffect()
        {
            const uint CLSCTX_INPROC_SERVER = 1;
            Guid IID_IUnknown = new Guid("00000000-0000-0000-C000-000000000046");
            Guid guidEffectCLSID = new Guid("84CF07CC-34C4-460f-B435-3184F5F2FF2A");
            SafeHandle wrapper = BitmapEffect.CreateBitmapEffectOuter();

            COMSafeHandle unmanagedEffect;
            uint hresult = Ole32Methods.CoCreateInstance(
								ref guidEffectCLSID,
								wrapper.DangerousGetHandle(),
								CLSCTX_INPROC_SERVER,
								ref IID_IUnknown,
								out unmanagedEffect);
            InitializeBitmapEffect(wrapper, unmanagedEffect);
            if (0 == hresult) return wrapper;
            throw new Exception("Cannot instantiate effect. HRESULT = " + hresult.ToString());
        }


.NET Framework

Supported in: 3.5, 3.0
Obsolete (compiler warning) in 4

.NET Framework Client Profile

Supported in: 3.5 SP1
Obsolete (compiler warning) in 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: