2011-10-05 4 views
3

아무도 도와 줄 수 있습니까? C#을 사용하여 디스크에서 할당되지 않은 공간 정보를 얻는 방법은 있습니까?물리 디스크에서 할당되지 않은 공간 정보를 얻는 방법

+1

이 할당되지 않은 공간 정보를 정의

여기에 당신이 WMI를 사용하여 필요한 모든 도움을 제공해야 MSDN에 관한 기사입니다. 사용할 수있는 여유 공간이 있습니까? –

답변

3

볼륨의 총 여유 공간을 알고 싶다면 DriveInfo.AvailableFreeSpace을 사용할 수 있습니다.

Win32_DiskPartition : http://msdn.microsoft.com/en-us/library/aa394135%28VS.85%29.aspx
Win32_DiskDrive : http://msdn.microsoft.com/en-us/library/aa394132%28v=VS.85%29.aspx

당신은 DeviceID 필드를 사용할 수 있습니다

http://msdn.microsoft.com/en-us/library/system.io.driveinfo.aspx

또한 Win32_DiskPartitionWin32_DiskDrive를 사용하여 디스크의 파티션에 대한 정보를 가져 오기 위해 WMI를 사용할 수 있습니다 어떤 파티션이 어떤 디스크에 있는지 식별하려면 StartOffsetSize 필드를 사용하십시오. parititions가 실제 디스크에있는 위치의 맵을 작성하십시오. 그런 다음 Win32_DiskDrive의 데이터를 사용하여 전체 디스크 크기를 계산하고 나머지를 계산하십시오.
http://msdn.microsoft.com/en-us/library/ms257338.aspx

+0

이 도구도 사용할 수 있습니다 : http://www.ks-soft.net/hostmon.eng/wmi/index.htm – Polynomial

0

이 같은 뭔가 시도해보십시오 :

using System.Linq; 
using System.IO; 
using System; 
namespace DriveInfoExample 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      // Check only for fixed drives 
      foreach (var di in DriveInfo.GetDrives().Where(d=>d.DriveType == DriveType.Fixed)) 
      { 
       Console.WriteLine("Free space on drive {0}\t{1} bytes", di.Name, di.AvailableFreeSpace); 
      } 
     } 
    } 
} 
+0

대단히 감사합니다 ... 나는 그것을 시도 할 것입니다. – ashraf

관련 문제