private void btnUnmountDrive_Click(object sender, RoutedEventArgs e) {
//SelectedDriveID was NEVER anything but 0
uint SelectedDriveID = 0;
try {
if (!CheckImDiskInstalled())
ShowInstallImDiskMessage();
else if ((ImDiskAPI.QueryDevice(SelectedDriveID).Flags & ImDiskFlags.DeviceTypeCD) != 0)
ImDiskAPI.ForceRemoveDevice(SelectedDriveID);
else
ImDiskAPI.RemoveDevice(SelectedDriveID);
} catch {
if (MessageBox.Show("The drive could not be removed. Would you like to try to force a removal?", "Remove Drive Failed", MessageBoxButton.YesNo, MessageBoxImage.Error) == MessageBoxResult.Yes) {
ImDiskAPI.ForceRemoveDevice(SelectedDriveID);
}
}
_ShellListView.RefreshContents();
ctgDrive.Visibility = Visibility.Collapsed;
}