internal HidDevice(string devicePath, string description = null) { _devicePath = devicePath; _description = description; try { var hidHandle = OpenHandle(_devicePath, false); _deviceAttributes = GetDeviceAttributes(hidHandle); _deviceCapabilities = GetDeviceCapabilities(hidHandle); hidHandle.Close(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw new Exception(string.Format("Error querying HID device '{0}'.", devicePath), exception); } }