DriveInfo.GetDrives Metoda

Definicja

Pobiera nazwy dysków wszystkich dysków logicznych na komputerze.Retrieves the drive names of all logical drives on a computer.

public:
 static cli::array <System::IO::DriveInfo ^> ^ GetDrives();
public static System.IO.DriveInfo[] GetDrives ();
static member GetDrives : unit -> System.IO.DriveInfo[]
Public Shared Function GetDrives () As DriveInfo()

Zwraca

Tablica typu DriveInfo, która reprezentuje dyski logiczne na komputerze.An array of type DriveInfo that represents the logical drives on a computer.

Wyjątki

Wystąpił błąd we/wy (na przykład błąd dysku lub dysk nie jest gotowy).An I/O error occurred (for example, a disk error or a drive was not ready).

Element wywołujący nie ma wymaganego uprawnienia.The caller does not have the required permission.

Przykłady

Poniższy przykład kodu demonstruje użycie klasy DriveInfo, aby wyświetlić informacje o wszystkich dyskach w bieżącym systemie.The following code example demonstrates the use of the DriveInfo class to display information about all of the drives on the current system.

using System;
using System.IO;

class Test
{
    public static void Main()
    {
        DriveInfo[] allDrives = DriveInfo.GetDrives();

        foreach (DriveInfo d in allDrives)
        {
            Console.WriteLine("Drive {0}", d.Name);
            Console.WriteLine("  Drive type: {0}", d.DriveType);
            if (d.IsReady == true)
            {
                Console.WriteLine("  Volume label: {0}", d.VolumeLabel);
                Console.WriteLine("  File system: {0}", d.DriveFormat);
                Console.WriteLine(
                    "  Available space to current user:{0, 15} bytes", 
                    d.AvailableFreeSpace);

                Console.WriteLine(
                    "  Total available space:          {0, 15} bytes",
                    d.TotalFreeSpace);

                Console.WriteLine(
                    "  Total size of drive:            {0, 15} bytes ",
                    d.TotalSize);
            }
        }
    }
}
/* 
This code produces output similar to the following:

Drive A:\
  Drive type: Removable
Drive C:\
  Drive type: Fixed
  Volume label: 
  File system: FAT32
  Available space to current user:     4770430976 bytes
  Total available space:               4770430976 bytes
  Total size of drive:                10731683840 bytes 
Drive D:\
  Drive type: Fixed
  Volume label: 
  File system: NTFS
  Available space to current user:    15114977280 bytes
  Total available space:              15114977280 bytes
  Total size of drive:                25958948864 bytes 
Drive E:\
  Drive type: CDRom

The actual output of this code will vary based on machine and the permissions
granted to the user executing it.
*/
Imports System.IO

Class Test
    Public Shared Sub Main()
        Dim allDrives() As DriveInfo = DriveInfo.GetDrives()

        Dim d As DriveInfo
        For Each d In allDrives
            Console.WriteLine("Drive {0}", d.Name)
            Console.WriteLine("  Drive type: {0}", d.DriveType)
            If d.IsReady = True Then
                Console.WriteLine("  Volume label: {0}", d.VolumeLabel)
                Console.WriteLine("  File system: {0}", d.DriveFormat)
                Console.WriteLine( _
                    "  Available space to current user:{0, 15} bytes", _
                    d.AvailableFreeSpace)

                Console.WriteLine( _
                    "  Total available space:          {0, 15} bytes", _
                    d.TotalFreeSpace)

                Console.WriteLine( _
                    "  Total size of drive:            {0, 15} bytes ", _
                    d.TotalSize)
            End If
        Next
    End Sub
End Class
'This code produces output similar to the following:
'
'Drive A:\
'  Drive type: Removable
'Drive C:\
'  Drive type: Fixed
'  Volume label: 
'  File system: FAT32
'  Available space to current user:     4770430976 bytes
'  Total available space:               4770430976 bytes
'  Total size of drive:                10731683840 bytes 
'Drive D:\
'  Drive type: Fixed
'  Volume label: 
'  File system: NTFS
'  Available space to current user:    15114977280 bytes
'  Total available space:              15114977280 bytes
'  Total size of drive:                25958948864 bytes 
'Drive E:\
'  Drive type: CDRom
'
'The actual output of this code will vary based on machine and the permissions
'granted to the user executing it.

Uwagi

Ta metoda pobiera wszystkie nazwy dysków logicznych na komputerze.This method retrieves all logical drive names on a computer. Te informacje służą do iteracji macierzy i uzyskiwania informacji o dyskach przy użyciu innych metod DriveInfo i właściwości.You can use this information to iterate through the array and obtain information on the drives using other DriveInfo methods and properties. Użyj właściwości IsReady, aby sprawdzić, czy dysk jest gotowy, ponieważ użycie tej metody na dysku, który nie jest gotowy, spowoduje wygenerowanie IOException.Use the IsReady property to test whether a drive is ready because using this method on a drive that is not ready will throw a IOException.

Zabezpieczenia

SecurityPermission
do wywoływania kodu niezarządzanego, takiego jak wywoływanie kodu natywnego za pomocą wywołania platformy lub międzyoperacyjności modelu COM.for calling unmanaged code, such as calling native code with platform invoke or COM interop. Skojarzone Wyliczenie: UnmanagedCodeAssociated enumeration: UnmanagedCode

Dotyczy

Zobacz też