取得磁盘剩余空间

来源:互联网 发布:定增广电网络18 编辑:程序博客网 时间:2024/05/06 03:51
 
[DllImport("kernel32.dll")]
private static extern bool GetDiskFreeSpaceEx(
string lpDirectoryName, out ulong lpFreeBytesAvailable, out ulong lpTotalNumberOfBytes, out ulong lpTotalNumberOfFreeBytes);

///
/// 取得磁盘剩余空间
///

/// 驱动器名 /// 剩余空间
private static ulong GetFreeSpace(string driveDirectoryName)
{
ulong freeBytesAvailable, totalNumberOfBytes, totalNumberOfFreeBytes;
if (!driveDirectoryName.EndsWith("://"))
{
driveDirectoryName += "://";
}
GetDiskFreeSpaceEx(driveDirectoryName, out freeBytesAvailable, out totalNumberOfBytes, out totalNumberOfFreeBytes);
return freeBytesAvailable;
}








///
/// 取得磁盘剩余空间
///

/// 驱动器名 /// 剩余空间
private static ulong GetFreeSpace(string driveDirectoryName)
{
ulong freefreeBytesAvailable = 0;

DriveInfo drive = new DriveInfo(driveDirectoryName);

freefreeBytesAvailable = (ulong)drive.AvailableFreeSpace;

return freefreeBytesAvailable;
}