Esempio n. 1
0
 public void SetTarget(ICaptureTarget target)
 {
     try
     {
         client.SetTarget(target);
     }
     catch (CreateCaptureException e)
     {
         Debug.LogWarning("This target cannot be captured!");
     }
 }
        public void SetTarget(ICaptureTarget target)
        {
            if (IsDisposed)
            {
                throw new ObjectDisposedException(nameof(CaptureClient));
            }

            if (CurrentCapture != null)
            {
                CurrentCapture.Dispose();
                CurrentCapture = null;
            }

            if (target != null)
            {
                CurrentCapture = new Capture(target);
                CurrentCapture.Start();
                CurrentTarget = target;
            }
        }
Esempio n. 3
0
        public Capture(ICaptureTarget target)
        {
            switch (target.TargetType)
            {
            case CaptureTargetType.Window:
                SelfPtr = CreateCaptureFromWindow(target.Handle);
                break;

            case CaptureTargetType.Monitor:
                SelfPtr = CreateCaptureFromMonitor(target.Handle);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            if (SelfPtr == IntPtr.Zero)
            {
                throw new CreateCaptureException("CreateCapture() returned null. Failed to create Capturing instance.");
            }
        }