喜欢它是Pentium或AMD等如何获取.net中的cpu信息?
18
A
回答
3
的System.Management Namespace 提供访问一组丰富的有关系统,设备和仪表的Windows管理规范(WMI)基础设施应用的管理信息和管理事件。
Win32 Processor WMI类表示可以解释运行在Windows操作系统上的计算机上的指令序列的设备。在多处理器计算机上,每个处理器都存在一个Win32_Processor类的实例。该类包括一个Processor family type
字段,编码诸如AMD Opteron处理器系列之类的东西。
C# issuing WMI query的一个例子是在页面的末尾。
11
请注意,这是从VS2003:
using(ManagementObjectSearcher win32Proc = new ManagementObjectSearcher("select * from Win32_Processor"),
win32CompSys = new ManagementObjectSearcher("select * from Win32_ComputerSystem"),
win32Memory = new ManagementObjectSearcher("select * from Win32_PhysicalMemory"))
{
foreach (ManagementObject obj in win32Proc.Get())
{
clockSpeed = obj["CurrentClockSpeed"].ToString();
procName = obj["Name"].ToString();
manufacturer = obj["Manufacturer"].ToString();
version = obj["Version"].ToString();
}
0
此代码将获得CPU性能
Imports System.Management
Private Sub InsertInfo()
lstView.Items.Clear()
Dim searcher As New ManagementObjectSearcher("select * from Win32_Processor")
Try
For Each share As ManagementObject In searcher.Get()
Dim grp As ListViewGroup
Try
grp = lstView.Groups.Add(share("Name").ToString(), share("Name").ToString())
Catch
grp = lstView.Groups.Add(share.ToString(), share.ToString())
End Try
If share.Properties.Count <= 0 Then
MessageBox.Show("No Information Available", "No Info", MessageBoxButtons.OK, MessageBoxIcon.Information)
Return
End If
For Each PC As PropertyData In share.Properties
Dim item As New ListViewItem(grp)
If lstView.Items.Count Mod 2 <> 0 Then
item.BackColor = Color.White
Else
item.BackColor = Color.WhiteSmoke
End If
item.Text = PC.Name
If PC.Value IsNot Nothing AndAlso PC.Value.ToString().Length > 0 Then
Select Case PC.Value.GetType().ToString()
Case "System.String[]"
Dim str As String() = DirectCast(PC.Value, String())
Dim str2 As String = ""
For Each st As String In str
str2 += st & " "
Next
item.SubItems.Add(str2)
Exit Select
Case "System.UInt16[]"
Dim shortData As UShort() = DirectCast(PC.Value, UShort())
Dim tstr2 As String = ""
For Each st As UShort In shortData
tstr2 += st.ToString() & " "
Next
item.SubItems.Add(tstr2)
Exit Select
Case Else
item.SubItems.Add(PC.Value.ToString())
Exit Select
End Select
Else
Continue For
End If
lstView.Items.Add(item)
Next
Next
Catch exp As Exception
MessageBox.Show("can't get data because of the followeing error " & vbLf & exp.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Try
End Sub
相关问题
- 1. 获取CPU信息
- 2. 如何获取C#中的主板和CPU电压信息?
- 3. 如何在Linux中获取进程的CPU信息?
- 4. 获取.Net字体信息?
- 5. 获取产品信息/ NET
- 6. 如何获得所有CPU信息
- 7. 如何在Linux内核模块中获取CPU信息?
- 8. 从Python获取CPU信息WMI
- 9. 从libvirt获取CPU统计信息
- 10. 获取DIMM和CPU插槽信息
- 11. 获取CPU利用率信息
- 12. 如何通过iphone上的API获取CPU利用率信息?
- 13. 如何获取Windows Phone的CPU使用情况统计信息?
- 14. 在.NET中获取HTML元素信息
- 15. 在.NET中获取过程信息
- 16. 如何在Android上获取CPU使用情况统计信息?
- 17. 如何使用c#从Bios获取CPU温度信息?
- 18. 如何使用c#从Bios获取CPU温度信息?
- 19. 如何获取CPU 1级缓存(主缓存)信息?
- 20. cpu信息
- 21. Android的CPU信息
- 22. 获取ssl证书信息 - .net
- 23. Firebug扩展:从Net Panel获取信息
- 24. Gmail API .NET:获取完整信息
- 25. 从.Net获取存储过程信息
- 26. 如何获取有关域的信息.NET C++
- 27. 如何获取.Net程序集的绑定信息
- 28. 如何从.NET的gitlab挂钩获取推送信息
- 29. 如何收集每个CPU的信息?
- 30. 如何从子表中获取信息
注意,“CurrentClockSpeed”是不是你应该寻找确定MHz的财产(Windows在低利用率时可以降低大多数现代处理器的功耗,从而节省能源)。 相反,您应该看看“MaxClockSpeed” - 这是Windows可以为处理器提供时钟的最大时钟速度。 – BrainSlugs83 2013-05-30 01:21:32