public bool Eject() { var ejectDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == this.Name.Remove(2)); ejectDevice.Eject(false); ejectDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == this.Name.Remove(2)); return(ejectDevice == null); }
public bool EjectDevice(Device device) { var dev = new VolumeDeviceClass().SingleOrDefault(p => p.LogicalDrive == device.Volumes.First().Name); dev?.Eject(false); var volume = new VolumeDeviceClass(); return(volume.Where(x => !string.IsNullOrEmpty(x.LogicalDrive)).Any(p => p.LogicalDrive.Equals(dev.LogicalDrive))); }
public bool IsFree() { VolumeDeviceClass elem = new VolumeDeviceClass(); var v = new VolumeDeviceClass().SingleOrDefault(volume => volumes.FindIndex(vol => vol.Name == volume.LogicalDrive) > -1); v.Eject(false); return(new VolumeDeviceClass().SingleOrDefault(volume => volumes.FindIndex(vol => vol.Name == volume.LogicalDrive) > -1) == null); }
public bool Eject() { var tempName = this.DeviceFriendlyName.Remove(2); var ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == tempName); ejectedDevice.Eject(false); var tempDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == tempName); if (tempDevice == null) { return(true); } return(false); }
public bool EjectDevice() { var tempName = this.DeviceName.Remove(2); var ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == this.DeviceName.Remove(2)); if (!IsMtpDevice) { ejectedDevice.Eject(false); ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == tempName); } else { return(false); } return(ejectedDevice == null); }
public bool EjectDevice() { var tempName = this.DeviceName.Remove(2); //получаем том девавйса var ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == tempName); //получаем значение состояния девайса if (!IsMtpDevice) { ejectedDevice.Eject(false); ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == tempName);//повторное подключение к девайсу после поытки извлечения } else { return(false); } return(ejectedDevice == null); }
/// <summary> /// Метод извлечения устройства ( RemoveDrive ) /// </summary> /// <returns>true - извлечено; false - не извлечено</returns> public bool EjectDevice() { var ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == this.DeviceName.Remove(2)); ejectedDevice.Eject(true); ejectedDevice = new VolumeDeviceClass().SingleOrDefault(v => v.LogicalDrive == this.DeviceName.Remove(2)); if (ejectedDevice == null) { return(true); } else { return(false); } }