1hakankaraca Ответов: 0

Увидеть не-буква жесткого диска С C #


Я делаю одно приложение для управления дисками. Я могу вынуть диски, которые были созданы. Главная проблема-увидеть то, что еще не создано. И сделать их единицей и формой. Я не хочу использовать приложение для управления дисками Windows. Что я должен сделать для этого? То, что я делаю, почти идентично приложению для управления дисками Windows.

Что я уже пробовал:

Я пробовал использовать WMI и информацию о диске, но не вижу дисков, которые еще не были созданы.

Вот один из кодов, которые я пробовал:
DataTable dt = new DataTable();
           dt.Clear();
           dt.Columns.Add("Name");
           dt.Columns.Add("Volume Label");
           dt.Columns.Add("Type");
           dt.Columns.Add("Size");
           dt.Columns.Add("Format");
           dt.Columns.Add("Status");
           dt.Columns.Add("Free Space");


           dt.Columns.Add("Byte");


           DriveInfo[] driverslist = DriveInfo.GetDrives();
           foreach (DriveInfo d in driverslist)
           {


               if (d.IsReady == true)
               {

                   size = FormatBytes(Convert.ToInt64(d.TotalSize));
                   totalfreesize = FormatBytes(Convert.ToInt64(d.TotalFreeSpace));

                   dt.Rows.Add(d.Name, d.VolumeLabel, d.DriveType, size, d.DriveFormat, d.IsReady, totalfreesize, d.TotalSize);
               }
           }
           dataGrid.ItemsSource = dt.DefaultView;
Я вытаскиваю жесткие диски и перекладываю их на стол.

Richard MacCutchan

"То, что я делаю, почти идентично приложению для управления дисками Windows."
Глядя на ваш код, мне трудно в это поверить. И вы должны понимать, что DriveInfo.GetDrives() предоставляет только информацию о существующих логических дисках. Таким образом, любое пространство, выделенное для других типов разделов, не будет предоставлено.

0 Ответов