WMI를 사용하여 컴퓨터의 하드 드라이브에 대한 정보를 얻지 만 Windows 하드 드라이브가 시스템 드라이브로 사용되는 위치를 식별 할 수있는 속성을 찾을 수 없습니다 설치되어 있습니다. Win32_DiskDrive를 사용하여 시스템 하드 드라이브를 식별하는 방법
ManagementObjectSearcher mos_HDD = new ManagementObjectSearcher("select * from Win32_DiskDrive");
나는 모든 속성을 반복 시도했지만 내가 필요로하는 정보를 보유하고 같이 어느 하나가 보인다.
foreach (ManagementObject mo_HDD in mos_HDD.Get())
{
Console.WriteLine("HDD Properties:");
foreach (PropertyData pd in mo_HDD.Properties)
{
Console.WriteLine("\tName: {0} \tValue: {1}", pd.Name, pd.Value != null ? pd.Value.ToString() : "NULL");
}
}
는 또한 MSDN 문서 보았지만 운 O/w했습니다.
내가 여기서하려고하는 것은 시스템 드라이브 (예 : 서명 또는 일련 번호)에 대한 식별자를 얻는 것입니다.
이 정보를 얻으려면 도움이 필요합니다.
string SerialNumber;
uint32 Signature;
귀하의 관리 객체가 그것에서 그 특성이있을 것이다 : 당신이 연결
감사합니다. 난 둘 다 확인하고 SerialNumber 잘 보이지만 문제는 시스템에 여러 개의 하드 디스크가있을 때입니다. 어떤 시스템 파티션을 보유하고 있는지 어떻게 알 수 있습니까? –
'DeviceID' =='C :'(또는 Windows가 설치된 드라이브 문자)가있는 Win32_LogicalDisk가있는 드라이브를 찾으십시오. – PhonicUK
이 해결책을 찾을 수는 없지만 이것이 가장 가까울만큼 빠릅니다. 대답으로 표시합니다. –