public DeviceStatus(RawDevice device) { this.device = device; debugCursor = new DebugCursor(); debugCursor.Name = "DebugCursor"; Win32.POINT position = Win32.GetCursorPosition(); Location = new Point(position.x, position.y); Thread t = new Thread(ThreadWorker); t.Name = "Cursor for device: " + device.Handle; t.SetApartmentState(ApartmentState.STA); t.IsBackground = true; t.Start(); }