다음을 통해 공유


DriveInfo.GetDrives 메서드

정의

컴퓨터에 있는 모든 논리 드라이브의 드라이브 이름을 검색합니다.

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()

반환

컴퓨터의 논리 드라이브를 나타내는 DriveInfo 형식의 배열입니다.

예외

I/O 오류(예: 디스크 오류 또는 드라이브가 준비되지 않음)가 발생한 경우

호출자에게 필요한 권한이 없는 경우

예제

다음 코드 예제에서는 사용 DriveInfo 하는 클래스를 현재 시스템의 모든 드라이브에 대 한 정보를 표시 합니다.

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.

설명

이 메서드는 컴퓨터의 모든 논리 드라이브 이름을 검색합니다. 이 정보를 사용하여 배열을 반복하고 다른 DriveInfo 메서드 및 속성을 사용하여 드라이브에 대한 정보를 가져올 수 있습니다. IsReady 준비가 되지 않은 드라이브에서 이 메서드를 사용하면 가 throwIOException되므로 속성을 사용하여 드라이브가 준비되었는지 여부를 테스트합니다.

적용 대상

추가 정보