Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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)));
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
        /// <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);
            }
        }