private void m_btnEject_Click(object sender, EventArgs e)
        {
            ExecuteClickAction(() =>
            {
                UsbEject.Library.Device device = m_treeDrives.SelectedNode.Tag as UsbEject.Library.Device;
                if (device == null || device.RemovableDevices.Count == 0)
                {
                    return;
                }

                UnmountAndEjectDevice(device);
            }, sender);
        }
        private void UnmountAndEjectDevice(UsbEject.Library.Device device)
        {
            List <string> driveLetters = DriveTools.GetUsbDriveList(device);

            foreach (string dr in driveLetters)
            {
                _diskCryptor.ExecuteUnMount(dr);
            }

            Thread.Sleep(800);
            device.Eject(true);

            ReloadDriveData();
        }
Beispiel #3
0
        private void m_treeDrives_AfterSelect(object sender, TreeViewEventArgs e)
        {
            m_btnEject.Enabled = false;
            if (m_treeDrives.SelectedNode == null)
            {
                return;
            }

            UsbEject.Library.Device device = m_treeDrives.SelectedNode.Tag as UsbEject.Library.Device;
            if (device == null)
            {
                return;
            }

            m_btnEject.Enabled = device.RemovableDevices.Count > 0;
        }