我想用WMI在.NET中获取id处理器,但是当我在ManagementObjectSearcher中使用get()方法时,我得到了一个内存不足的异常……
如果您想查看代码,请参见下面的代码:
ManagementObjectSearcher searcher = new ManagementObjectSearcher(
"select * from Win32_Processor");
foreach (ManagementObject share in searcher.Get())
foreach (PropertyData PC in share.Properties)
if (PC.Name.Equals("ProcessorId"))
return (string)PC.Value;
return null;这段代码可以在其他计算机上运行,但不能在我的计算机上运行。
我用的是windows7。
问题出在哪里?
我尝试重新启动WMI服务,但没有解决我的问题:
发布于 2013-06-24 18:23:45
有几个原因可能会导致内存不足异常。
示例:
public static String GetCPUId()
{
String processorID = "";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(
"Select * FROM WIN32_Processor");
ManagementObjectCollection mObject = searcher.Get();
foreach (ManagementObject obj in mObject)
{
processorID = obj["ProcessorId"].ToString();
}
return processorID;
}https://stackoverflow.com/questions/17272758
复制相似问题