コード例 #1
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_DisconnectObject_5(IntPtr thisPtr, uint dwReserved)
 {
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).DisconnectObject(dwReserved);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #2
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_ReleaseMarshalData_4(IntPtr thisPtr, IntPtr pStm)
 {
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).ReleaseMarshalData(pStm);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #3
0
 private static int Do_Abi_Initialize_0(IntPtr thisPtr, IntPtr windowHandle)
 {
     try
     {
         ComWrappersSupport.FindObject <IInitializeWithWindow>(thisPtr).Initialize(windowHandle);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #4
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_MarshalInterface_2(IntPtr thisPtr, IntPtr pStm, ref Guid riid, IntPtr pv, global::Com.MSHCTX dwDestContext, IntPtr pvDestContext, global::Com.MSHLFLAGS mshlflags)
 {
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).MarshalInterface(pStm, ref riid, pv, dwDestContext, pvDestContext, mshlflags);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #5
0
 private static int Do_Abi_get_WindowHandle_0(IntPtr thisPtr, out IntPtr windowHandle)
 {
     windowHandle = default;
     try
     {
         windowHandle = ComWrappersSupport.FindObject <IWindowNative>(thisPtr).WindowHandle;
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #6
0
 private static int DoAbiGetBuffer(IntPtr thisPtr, out IntPtr buffer)
 {
     buffer = default;
     try
     {
         buffer = ComWrappersSupport.FindObject <global::SkiaSharp.Views.Windows.IBufferByteAccess>(thisPtr).Buffer;
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #7
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_GetMarshalSizeMax_1(IntPtr thisPtr, ref Guid riid, IntPtr pv, global::Com.MSHCTX dwDestContext, IntPtr pvDestContext, global::Com.MSHLFLAGS mshlflags, out uint pSize)
 {
     pSize = default;
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).GetMarshalSizeMax(ref riid, pv, dwDestContext, pvDestContext, mshlflags, out pSize);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #8
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_UnmarshalInterface_3(IntPtr thisPtr, IntPtr pStm, ref Guid riid, out IntPtr ppv)
 {
     ppv = default;
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).UnmarshalInterface(pStm, ref riid, out ppv);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #9
0
ファイル: IMarshal.cs プロジェクト: wjk/CsWinRT
 private static int Do_Abi_GetUnmarshalClass_0(IntPtr thisPtr, ref Guid riid, IntPtr pv, global::Com.MSHCTX dwDestContext, IntPtr pvDestContext, global::Com.MSHLFLAGS mshlFlags, out Guid pCid)
 {
     pCid = default;
     try
     {
         ComWrappersSupport.FindObject <global::Com.IMarshal>(thisPtr).GetUnmarshalClass(ref riid, pv, dwDestContext, pvDestContext, mshlFlags, out pCid);
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #10
0
 private static int Do_Abi_Create_Desktop_Window_Target(IntPtr thisPtr, IntPtr hwndTarget, byte isTopMost, out IntPtr desktopWindowTarget)
 {
     try
     {
         ComWrappersSupport.FindObject <global::Windows.UI.Composition.Desktop.ICompositorDesktopInterop>(thisPtr).CreateDesktopWindowTarget(hwndTarget, isTopMost != 0, out desktopWindowTarget);
         return(0);
     }
     catch (Exception ex)
     {
         desktopWindowTarget = IntPtr.Zero;
         return(Marshal.GetHRForException(ex));
     }
 }
コード例 #11
0
 private static int Do_Abi_Create_Graphics_Device(IntPtr thisPtr, IntPtr renderingDevice, out IntPtr graphicsDevice)
 {
     try
     {
         graphicsDevice = ComWrappersSupport.FindObject <global::Windows.UI.Composition.Interop.ICompositorInterop>(thisPtr).CreateGraphicsDevice(renderingDevice).ThisPtr;
         return(0);
     }
     catch (Exception ex)
     {
         graphicsDevice = IntPtr.Zero;
         return(Marshal.GetHRForException(ex));
     }
 }
コード例 #12
0
ファイル: IBufferByteAccess.cs プロジェクト: fabiant3/CsWinRT
 private static int Do_Abi_get_Buffer_0(IntPtr thisPtr, out IntPtr buffer)
 {
     buffer = default;
     try
     {
         buffer = ComWrappersSupport.FindObject <global::Windows.Storage.Streams.IBufferByteAccess>(thisPtr).Buffer;
     }
     catch (Exception ex)
     {
         return(Marshal.GetHRForException(ex));
     }
     return(0);
 }
コード例 #13
0
 private static int Do_Abi_GetGuid_0(IntPtr thisPtr, out Guid guid)
 {
     guid = default;
     try
     {
         guid = ComWrappersSupport.FindObject <global::WinRT.Interop.IErrorInfo>(thisPtr).GetGuid();
     }
     catch (Exception ex)
     {
         ExceptionHelpers.SetErrorInfo(ex);
         return(ExceptionHelpers.GetHRForException(ex));
     }
     return(0);
 }
コード例 #14
0
            private static int Do_Abi_Get_Source_Count(IntPtr thisPtr, out uint count)
            {
                count = default;

                try
                {
                    count = ComWrappersSupport.FindObject <global::Windows.Graphics.Effects.Interop.IGraphicsEffectD2D1Interop>(thisPtr).SourceCount;
                }
                catch (Exception ex)
                {
                    return(Marshal.GetHRForException(ex));
                }

                return(0);
            }
コード例 #15
0
            private static int Do_Abi_Get_Effect_Id(IntPtr thisPtr, out Guid guid)
            {
                guid = default;

                try
                {
                    guid = ComWrappersSupport.FindObject <global::Windows.Graphics.Effects.Interop.IGraphicsEffectD2D1Interop>(thisPtr).EffectId;
                }
                catch (Exception ex)
                {
                    return(Marshal.GetHRForException(ex));
                }

                return(0);
            }
コード例 #16
0
            private static int Do_Abi_Get_Source(IntPtr thisPtr, uint index, out IntPtr value)
            {
                value = default;

                try
                {
                    var source = ComWrappersSupport.FindObject <global::Windows.Graphics.Effects.Interop.IGraphicsEffectD2D1Interop>(thisPtr).GetSource(index);

                    value = MarshalInterface <global::Windows.Graphics.Effects.IGraphicsEffectSource> .FromManaged(source);
                }
                catch (Exception ex)
                {
                    return(Marshal.GetHRForException(ex));
                }

                return(0);
            }
コード例 #17
0
            private static int Do_Abi_GetSource_1(IntPtr thisPtr, out IntPtr source)
            {
                source = IntPtr.Zero;
                string _source;

                try
                {
                    _source = ComWrappersSupport.FindObject <global::WinRT.Interop.IErrorInfo>(thisPtr).GetSource();
                    source  = Marshal.StringToBSTR(_source);
                }
                catch (Exception ex)
                {
                    Marshal.FreeBSTR(source);
                    ExceptionHelpers.SetErrorInfo(ex);
                    return(ExceptionHelpers.GetHRForException(ex));
                }
                return(0);
            }
コード例 #18
0
            private static int Do_Abi_GetHelpFileContent_4(IntPtr thisPtr, out IntPtr helpFileContent)
            {
                helpFileContent = IntPtr.Zero;
                string _helpFileContent;

                try
                {
                    _helpFileContent = ComWrappersSupport.FindObject <global::WinRT.Interop.IErrorInfo>(thisPtr).GetHelpFileContent();
                    helpFileContent  = Marshal.StringToBSTR(_helpFileContent);
                }
                catch (Exception ex)
                {
                    Marshal.FreeBSTR(helpFileContent);
                    ExceptionHelpers.SetErrorInfo(ex);
                    return(ExceptionHelpers.GetHRForException(ex));
                }
                return(0);
            }
コード例 #19
0
            private static int Do_Abi_GetDescription_2(IntPtr thisPtr, out IntPtr description)
            {
                description = IntPtr.Zero;
                string _description;

                try
                {
                    _description = ComWrappersSupport.FindObject <global::WinRT.Interop.IErrorInfo>(thisPtr).GetDescription();
                    description  = Marshal.StringToBSTR(_description);
                }
                catch (Exception ex)
                {
                    Marshal.FreeBSTR(description);
                    ExceptionHelpers.SetErrorInfo(ex);
                    return(ExceptionHelpers.GetHRForException(ex));
                }
                return(0);
            }
コード例 #20
0
            unsafe private static int Do_Abi_Get_Property_Count(IntPtr thisPtr, uint *count)
            {
                try
                {
                    var res = ComWrappersSupport.FindObject <global::Windows.Graphics.Effects.Interop.IGraphicsEffectD2D1Interop>(thisPtr).PropertyCount;

                    if (count != null)
                    {
                        *count = res;
                    }
                }
                catch (Exception ex)
                {
                    return(Marshal.GetHRForException(ex));
                }

                return(0);
            }
コード例 #21
0
            private static int Do_Abi_Get_Property(IntPtr thisPtr, uint index, out IntPtr value)
            {
                value = default;

                try
                {
                    value = MarshalInspectable.CreateMarshaler(
                        ComWrappersSupport.FindObject <global::Windows.Graphics.Effects.Interop.IGraphicsEffectD2D1Interop>(thisPtr).GetProperty(index))
                            .As(Guid.Parse("4BD682DD-7554-40E9-9A9B-82654EDE7E62"))
                            .GetRef();
                }
                catch (Exception ex)
                {
                    return(Marshal.GetHRForException(ex));
                }

                return(0);
            }
コード例 #22
0
ファイル: IWeakReferenceSource.cs プロジェクト: wjk/CsWinRT
            private static int Do_Abi_GetWeakReference(IntPtr thisPtr, out IntPtr weakReference)
            {
                weakReference = default;

                try
                {
                    weakReference = ComWrappersSupport.CreateCCWForObject(new global::WinRT.Interop.ManagedWeakReference(ComWrappersSupport.FindObject <object>(thisPtr))).As <ABI.WinRT.Interop.IWeakReference.Vftbl>().GetRef();
                }
                catch (Exception __exception__)
                {
                    return(__exception__.HResult);
                }
                return(0);
            }