Ejemplo n.º 1
0
 private void OutputDataReceived(object sender, DataReceivedEventArgs e)
 {
     if (e != null && e.Data != null)
     {
         Debug.WriteLine("Console data: " + e.Data);
         DiskCryptor.Error error = new DiskCryptor.Error(e.Data);
         if (error.ErrorCode != DiskCryptor.ErrorCode.ST_OK)
         {
             Log.AppendLine(" (" + error.ErrorDesc + ")");
         }
         else
         {
             DiskCryptor.DriveInfo newDrive = new DiskCryptor.DriveInfo(e.Data);
             if (newDrive.HasInfo)
             {
                 if (newDrive.IsValidInfo && DriveList.FirstOrDefault((drv) => drv.MountPoint == newDrive.MountPoint) == null)
                 {
                     DriveList.Add(newDrive);
                     OnDisksAdded(newDrive);
                 }
             }
             else
             {
                 Log.AppendLine(e.Data);
             }
         }
         OnDataReceived();
     }
 }
Ejemplo n.º 2
0
        private void SmartSelectFirstAvailableDrive()
        {
            //select last mounted drive
            for (int i = 0; i < m_listDrives.Items.Count; i++)
            {
                DiskCryptor.DriveInfo drive = m_listDrives.Items[i].Tag as DiskCryptor.DriveInfo;
                if (drive.status.StartsWith("mounted"))
                {
                    m_listDrives.Items[i].Selected = true;
                }
            }

            if (m_listDrives.SelectedItems.Count != 0)
            {
                return;
            }

            //if no munted drives
            //select last unmounted, but not system
            for (int i = 0; i < m_listDrives.Items.Count; i++)
            {
                DiskCryptor.DriveInfo drive = m_listDrives.Items[i].Tag as DiskCryptor.DriveInfo;
                if (string.IsNullOrWhiteSpace(drive.DriveLetter) && drive.status.Equals("unmounted"))
                {
                    m_listDrives.Items[i].Selected = true;
                }
            }
        }
Ejemplo n.º 3
0
        private void m_btnBrowseDisk_Click(object sender, EventArgs e)
        {
            DiskCryptor.DriveInfo drive = m_listDrives.SelectedItems[0].Tag as DiskCryptor.DriveInfo;
            if (string.IsNullOrWhiteSpace(drive.DriveLetter))
            {
                return;
            }

            Process.Start(drive.DriveLetter);
        }
Ejemplo n.º 4
0
        private void m_cmbAvailableDriveLetters_SelectedIndexChanged(object sender, EventArgs e)
        {
            _selectedDriveLetter = m_cmbAvailableDriveLetters.SelectedItem.ToString();

            m_btnMount.Text = "Mount As: " + _selectedDriveLetter;
            if (m_listDrives.SelectedIndices.Count <= 0)
            {
                return;
            }

            DiskCryptor.DriveInfo drive = m_listDrives.SelectedItems[0].Tag as DiskCryptor.DriveInfo;
            if (!string.IsNullOrWhiteSpace(drive.DriveLetter))
            {
                m_btnMount.Text = "Mount As " + drive.DriveLetter;
            }
        }
Ejemplo n.º 5
0
        private void m_btnUnmount_Click(object sender, EventArgs e)
        {
            ExecuteClickAction(() =>
            {
                m_lblSelected.Text = "Selected: ???";
                if (m_listDrives.SelectedIndices.Count <= 0)
                {
                    return;
                }

                DiskCryptor.DriveInfo drive = m_listDrives.SelectedItems[0].Tag as DiskCryptor.DriveInfo;
                Unmount(drive);

                ReloadDriveData();
            }, sender);
        }
Ejemplo n.º 6
0
        private void m_listDrives_SelectedIndexChanged(object sender, EventArgs e)
        {
            m_lblSelected.Text      = "Selected: ???";
            m_btnMount.Enabled      = false;
            m_btnUnmount.Enabled    = false;
            m_btnUnmount.Text       = "UnMount";
            m_btnBrowseDisk.Enabled = false;
            if (m_listDrives.SelectedIndices.Count <= 0)
            {
                return;
            }

            m_cmbAvailableDriveLetters_SelectedIndexChanged(sender, e);
            DiskCryptor.DriveInfo drive = m_listDrives.SelectedItems[0].Tag as DiskCryptor.DriveInfo;

            m_lblSelected.Text      = "Selected: " + drive.MountPoint + ", MP: " + drive.DriveLetter;
            m_btnMount.Enabled      = drive.MountPoint.StartsWith("pt") && drive.status.StartsWith("unmounted");
            m_btnUnmount.Enabled    = drive.MountPoint.StartsWith("pt") && drive.status.StartsWith("mounted");
            m_btnUnmount.Text       = "UnMount: " + drive.MountPoint;
            m_btnBrowseDisk.Enabled = string.IsNullOrWhiteSpace(drive.DriveLetter) ? false : true;
        }
Ejemplo n.º 7
0
        private void m_btnMount_Click(object sender, EventArgs e)
        {
            ExecuteClickAction(() =>
            {
                m_lblSelected.Text = "Selected: ???";
                if (m_listDrives.SelectedIndices.Count <= 0)
                {
                    return;
                }

                if (string.IsNullOrWhiteSpace(m_txtPwd.Text))
                {
                    MZ.WPF.MessageBox.PopUp.MessageBox("Password is empty", "Error");
                    return;
                }

                DiskCryptor.DriveInfo drive = m_listDrives.SelectedItems[0].Tag as DiskCryptor.DriveInfo;

                _diskCryptor.ExecuteMount(drive, _selectedDriveLetter, m_txtPwd.Text);

                ReloadDriveData();
            }, sender);
        }
Ejemplo n.º 8
0
 private void Unmount(DiskCryptor.DriveInfo drive)
 {
     _diskCryptor.ExecuteUnMount(drive);
     ReloadDriveData();
 }