■ ManagementObject 클래스 : 디스크 섹터 바이스 수 구하기

------------------------------------------------------------------------------------------------------------------------

using System.Management;

 

#region 섹터 바이트 수 구하기 - GetSectorByteCount(physicalDiskName)

 

/// <summary>

/// 섹터 바이트 수 구하기

/// </summary>

/// <param name="physicalDiskName">물리적 디스크명</param>

/// <returns>섹터 바이트 수</returns>

public int GetSectorByteCount(string physicalDiskName)

{

    try

    {

        ManagementObjectSearcher managementObjectSearcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_DiskDrive");

 

        foreach(ManagementObject managementObject in managementObjectSearcher.Get())

        {

            if(physicalDiskName == managementObject["DeviceID"].ToString())

            {

                object sectorByteCountObject = managementObject["BytesPerSector"];

 

                return int.Parse(sectorByteCountObject.ToString());

            }

        }

    }

    catch(ManagementException)

    {

        return -1;

    }

 

    return 0;

}

 

#endregion

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG