internal static GraphicsCaptureItem CreateForWindow(HandleRef hWindow)
    {
        var GraphicsCaptureItemGuid = new Guid("79C3F95B-31F7-4EC2-A464-632EF5D30760");
        var ptr = interop.CreateForWindow(hWindow, ref GraphicsCaptureItemGuid);

        try
        {
            return(GraphicsCaptureItem.FromAbi(ptr));
        }
        finally
        {
            Marshal.Release(ptr);
        }
    }
Example #2
0
        public static GraphicsCaptureItem CreateItemForMonitor(IntPtr hmon)
        {
            var interop = GraphicsCaptureItem.As <IGraphicsCaptureItemInterop>();

            var temp = typeof(GraphicsCaptureItem);

            // For some reason typeof(GraphicsCaptureItem).GUID returns the wrong guid?
            interop.CreateForMonitor(hmon, GraphicsCaptureItemGuid, out var raw);
            var item = GraphicsCaptureItem.FromAbi(raw);

            Marshal.Release(raw);

            return(item);
        }