| using System.Globalization; |
| using System.Windows.Forms; |
| namespace RemoteView.PageHandlers |
| class MouseMovePageHandler: AbstractPageHandler |
| private Screen[] screens = Screen.AllScreens; |
| public override byte[] HandleRequest(HttpListenerResponse response, string[] uri) |
| response.StatusCode = 400; |
| return BuildHTML("Error..."); |
| y = Convert.ToInt16(uri[3], CultureInfo.InvariantCulture); |
| x = Convert.ToInt16(uri[4], CultureInfo.InvariantCulture); |
| response.StatusCode = 400; |
| return BuildHTML("Error..."); |
| int screen = GetRequestedScreenDevice(uri, screens); |
| Screen device = screens[screen]; |
| if (x < 0 || x >= device.Bounds.Width || y < 0 || y >= device.Bounds.Height) |
| response.StatusCode = 400; |
| return BuildHTML("Error..."); |
| // adapt to real screen bounds |
| NativeMethods.MoveMouse(x, y); |
| return BuildHTML("Updating..."); |