API
[DllImport("kernel32.dll", EntryPoint="GetDiskFreeSpaceExA")]
public static extern int GetDiskFreeSpaceEx (string lpRootPathName,out long lpFreeBytesAvailable,out long lpTotalNumberOfBytes……
[/Quote]
[Quote=引用 1 楼 wuyq11 的回复:]
API
[DllImport("kernel32.dll", EntryPoint="GetDiskFreeSpaceExA")]
public static extern int GetDiskFreeSpaceEx (string lpRootPathName,out long lpFreeBytesAvailable,out long lpTotalNumberOfBytes,o……
[/Quote]
API
[DllImport("kernel32.dll", EntryPoint="GetDiskFreeSpaceExA")]
public static extern int GetDiskFreeSpaceEx (string lpRootPathName,out long lpFreeBytesAvailable,out long lpTotalNumberOfBytes,out long lpTotalNumberOfFreeBytes);
c#
ManagementClass mClass = new ManagementClass("Win32_LogicalDisk");
ManagementObjectCollection moCollection = mClass.GetInstances();
foreach (ManagementObject mObject in moCollection)
{
if (Int32.Parse(mObject["DriveType"].ToString()) == (int)System.IO.DriveType.Fixed)
{
long lDiskSize = long.Parse(mObject["Size"].ToString());
long lfreeDiskSiz= long.Parse(mObject["FreeSpace"].ToString());
} }
DriveInfo di = new DriveInfo(disk);
switch (di.DriveType)
{
case DriveType.CDRom: return "光盘";
case DriveType.Fixed: return "固定磁盘";
case DriveType.Network: return "网络驱动器";
case DriveType.Ram: return "Ram磁盘";
case DriveType.Removable: return "右移动存贮设备";
case DriveType.Unknown: return "未知";
}