Note: This class is new in the .NET Framework version 2.0.
Provides access to information on a drive.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Visual Basic (Declaration)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public NotInheritable Class DriveInfo
Implements ISerializable
Dim instance As DriveInfo
[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DriveInfo : ISerializable
[SerializableAttribute]
[ComVisibleAttribute(true)]
public ref class DriveInfo sealed : ISerializable
/** @attribute SerializableAttribute() */
/** @attribute ComVisibleAttribute(true) */
public final class DriveInfo implements ISerializable
SerializableAttribute
ComVisibleAttribute(true)
public final class DriveInfo implements ISerializable
This class models a drive and provides methods and properties to query for drive information. Use DriveInfo to determine what drives are available, and what type of drives they are. You can also query to determine the capacity and available free space on the drive.
The following code example demonstrates the use of the DriveInfo class to display information about all of the drives on the current system.
Imports System
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(" File 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:\
' File type: Removable
'Drive C:\
' File 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:\
' File 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:\
' File type: CDRom
'
'The actual output of this code will vary based on machine and the permissions
'granted to the user executing it.
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(" File 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:\
File type: Removable
Drive C:\
File 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:\
File 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:\
File type: CDRom
The actual output of this code will vary based on machine and the permissions
granted to the user executing it.
*/
System.Object
System.IO.DriveInfo
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.
.NET Framework
Supported in: 2.0