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()); }