Пример #1
0
        public void Start()
        {
            isRunning = true;
            VirtualScreen   s        = null;
            IList <Display> displays = _hook.GetDisplays();
            int             count    = displays.Count;
            var             client   = state.ClientName;

            if (count > 0)
            {
                var screenConfiguration = _screen.ScreenConfiguration;
                var display             = displays[0];
                s = screenConfiguration.AddScreen(display, display.GetDpi(), client);
                for (int i = 1; i < count; i++)
                {
                    display = displays[i];
                    s       = screenConfiguration.AddScreenRight(s, display, display.GetDpi(), client);
                }
            }
            state.LastPositionX = 0;
            state.LastPositionY = 0;
            var reciever = new Task(Receive, cts.Token, creationOptions: TaskCreationOptions.LongRunning);

            reciever.ConfigureAwait(false);
            reciever.Start();
#if QUEUE_SERVER
            var dispatcher = new Task(Dispatch, cts.Token, TaskCreationOptions.LongRunning);
            dispatcher.ConfigureAwait(false);
            dispatcher.Start();
#endif
        }
 public IList <Display> GetDisplays()
 {
     return(Hook.GetDisplays());
 }