Beispiel #1
0
        static unsafe ManagedCustomPropertyProviderVftbl()
        {
            AbiToProjectionVftable = new ManagedCustomPropertyProviderVftbl
            {
                IInspectableVftbl         = global::WinRT.IInspectable.Vftbl.AbiToProjectionVftable,
                GetCustomProperty_0       = Do_Abi_GetCustomProperty_0,
                GetIndexedProperty_1      = Do_Abi_GetIndexedProperty_1,
                GetStringRepresentation_2 = Do_Abi_GetStringRepresentation_2,
                get_Type_3 = Do_Abi_get_Type_3
            };
            var nativeVftbl = (IntPtr *)ComWrappersSupport.AllocateVtableMemory(typeof(ManagedCustomPropertyProviderVftbl), Marshal.SizeOf <global::WinRT.IInspectable.Vftbl>() + sizeof(IntPtr) * 4);

            Marshal.StructureToPtr(AbiToProjectionVftable, (IntPtr)nativeVftbl, false);
            AbiToProjectionVftablePtr = (IntPtr)nativeVftbl;
        }
Beispiel #2
0
        static unsafe ManagedCustomPropertyProviderVftbl()
        {
            AbiToProjectionVftable = new ManagedCustomPropertyProviderVftbl
            {
                IInspectableVftbl = global::WinRT.IInspectable.Vftbl.AbiToProjectionVftable,

                GetCustomProperty_0       = Marshal.GetFunctionPointerForDelegate(new ICustomPropertyProvider_Delegates.GetCustomProperty_0(Do_Abi_GetCustomProperty_0)).ToPointer(),
                GetIndexedProperty_1      = Marshal.GetFunctionPointerForDelegate(new ICustomPropertyProvider_Delegates.GetIndexedProperty_1(Do_Abi_GetIndexedProperty_1)).ToPointer(),
                GetStringRepresentation_2 = Marshal.GetFunctionPointerForDelegate(new ICustomPropertyProvider_Delegates.GetStringRepresentation_2(Do_Abi_GetStringRepresentation_2)).ToPointer(),
                get_Type_3 = Marshal.GetFunctionPointerForDelegate(new ICustomPropertyProvider_Delegates.get_Type_3(Do_Abi_get_Type_3)).ToPointer(),
            };
            var nativeVftbl = (IntPtr *)ComWrappersSupport.AllocateVtableMemory(typeof(ManagedCustomPropertyProviderVftbl), Marshal.SizeOf <global::WinRT.IInspectable.Vftbl>() + sizeof(IntPtr) * 4);

            Marshal.StructureToPtr(AbiToProjectionVftable, (IntPtr)nativeVftbl, false);
            AbiToProjectionVftablePtr = (IntPtr)nativeVftbl;
        }