여기 WMI와 관련하여 많은 게시물을 검토 한 결과 여전히 약간의 문제가 있습니다. WMI에서 CPU 사용을 다시 얻고 싶습니다. 내 쿼리는 ManagementObjectSearcher가 제공해야하는 모든 것을 검색하지만 null을 반환하고 정보를 다시 가져 오지 않습니다.WMI의 프로세서 수에 액세스
데이터 형식의 경우 int16을 사용해야합니까?
누군가가이 문제에 대해 조금이라도 밝히고 나를 길을 보내길 바랍니다. 감사.
public void GetPhysicalMemory()
{
ManagementObjectSearcher mgtObj = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_ComputerSystem"); // Win32_OPeratingSystem");
ManagementObjectCollection mgtColl = mgtObj.Get();
// foreach (ManagementObject obj in mgtObj.Get())
if (mgtColl.Count != 0)
{
foreach (ManagementBaseObject mgtBaseObj in mgtColl)
{
var[] data = mgtBaseObj["NumberOfProcessors"] as int16[];
if (data != null)
{
Console.WriteLine(data);
}
else
{
Console.WriteLine("Collection = null");
Console.Read();
Console.Read();
}
}
}
프로세서 수 또는 CPU 사용량을 확인 하시겠습니까? – RRUZ
실제로 CPU 사용량을 반환하기 위해 더 많은 것을 찾고 있습니다. 어둠 속에서 찌르다가 NumberOfProcessors를 사용하여 무엇이든 다시 잡았습니다. – jpavlov