public IDeviceHandle OpenDevice(string devicePath, HidDeviceAccess access) { var desiredAccess = access == HidDeviceAccess.Read ? GenericRead : access == HidDeviceAccess.Write ? GenericWrite : GenericRead | GenericWrite; var safeHandle = CreateFile(devicePath, desiredAccess, FileShare.ReadWrite, IntPtr.Zero, FileMode.Open, FileAttributes.Normal, IntPtr.Zero); return(new DeviceHandle(safeHandle)); }
public void Open(HidDeviceAccess desiredAccess) { handle = manager.OpenDevice(devicePath, desiredAccess); if (handle.IsInvalid) { //Logger.Error("Cannot open device"); return; } AccessLevel = desiredAccess; capabilities = manager.GetDeviceCapabilities(handle); VersionNumber = capabilities.VersionNumber; stream = manager.GetDeviceStream(handle); }