BitmapEffect.InitializeBitmapEffect(SafeHandle, SafeHandle) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Precaución
BitmapEffects are deprecated and no longer function. Consider using Effects where appropriate instead.
Inicializa un controlador IMILBitmapEffect obtenido de CreateBitmapEffectOuter() con el IMILBitmapEffectPrimitive dado.
protected:
static void InitializeBitmapEffect(System::Runtime::InteropServices::SafeHandle ^ outerObject, System::Runtime::InteropServices::SafeHandle ^ innerObject);
[System.Security.SecurityCritical]
[System.Security.SecurityTreatAsSafe]
protected static void InitializeBitmapEffect (System.Runtime.InteropServices.SafeHandle outerObject, System.Runtime.InteropServices.SafeHandle innerObject);
[System.Security.SecurityCritical]
[System.Security.SecurityTreatAsSafe]
[System.Obsolete("BitmapEffects are deprecated and no longer function. Consider using Effects where appropriate instead.")]
protected static void InitializeBitmapEffect (System.Runtime.InteropServices.SafeHandle outerObject, System.Runtime.InteropServices.SafeHandle innerObject);
[System.Obsolete("BitmapEffects are deprecated and no longer function. Consider using Effects where appropriate instead.")]
protected static void InitializeBitmapEffect (System.Runtime.InteropServices.SafeHandle outerObject, System.Runtime.InteropServices.SafeHandle innerObject);
[<System.Security.SecurityCritical>]
[<System.Security.SecurityTreatAsSafe>]
static member InitializeBitmapEffect : System.Runtime.InteropServices.SafeHandle * System.Runtime.InteropServices.SafeHandle -> unit
[<System.Security.SecurityCritical>]
[<System.Security.SecurityTreatAsSafe>]
[<System.Obsolete("BitmapEffects are deprecated and no longer function. Consider using Effects where appropriate instead.")>]
static member InitializeBitmapEffect : System.Runtime.InteropServices.SafeHandle * System.Runtime.InteropServices.SafeHandle -> unit
[<System.Obsolete("BitmapEffects are deprecated and no longer function. Consider using Effects where appropriate instead.")>]
static member InitializeBitmapEffect : System.Runtime.InteropServices.SafeHandle * System.Runtime.InteropServices.SafeHandle -> unit
Protected Shared Sub InitializeBitmapEffect (outerObject As SafeHandle, innerObject As SafeHandle)
Parámetros
- outerObject
- SafeHandle
Contenedor IMILBitmapEffect exterior para inicializar.
- innerObject
- SafeHandle
IMILBitmapEffectPrimitive interno.
- Atributos
Ejemplos
En el ejemplo siguiente se muestra una implementación de CreateUnmanagedEffect que usa el método para inicializar el InitializeBitmapEffect objeto contenedor con el efecto personalizado.
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());
}
<SecurityPermissionAttribute(SecurityAction.Demand, Flags := SecurityPermissionFlag.UnmanagedCode)>
Protected Overrides Function CreateUnmanagedEffect() As SafeHandle
Const CLSCTX_INPROC_SERVER As UInteger = 1
Dim IID_IUnknown As New Guid("00000000-0000-0000-C000-000000000046")
Dim guidEffectCLSID As New Guid("84CF07CC-34C4-460f-B435-3184F5F2FF2A")
Dim wrapper As SafeHandle = BitmapEffect.CreateBitmapEffectOuter()
Dim unmanagedEffect As COMSafeHandle
Dim hresult As UInteger = Ole32Methods.CoCreateInstance(guidEffectCLSID, wrapper.DangerousGetHandle(), CLSCTX_INPROC_SERVER, IID_IUnknown, unmanagedEffect)
InitializeBitmapEffect(wrapper, unmanagedEffect)
If 0 = hresult Then
Return wrapper
End If
Throw New Exception("Cannot instantiate effect. HRESULT = " & hresult.ToString())
End Function