喜歡它是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. 如何在Linux中獲取進程的CPU信息?
- 3. 獲取產品信息/ NET
- 4. 獲取.Net字體信息?
- 5. 如何在Linux內核模塊中獲取CPU信息?
- 6. 如何獲得所有CPU信息
- 7. 從libvirt獲取CPU統計信息
- 8. 獲取CPU利用率信息
- 9. 如何通過iphone上的API獲取CPU利用率信息?
- 10. 在.NET中獲取過程信息
- 11. 在.NET中獲取HTML元素信息
- 12. 如何在Android上獲取CPU使用情況統計信息?
- 13. 如何使用c#從Bios獲取CPU溫度信息?
- 14. 如何使用c#從Bios獲取CPU溫度信息?
- 15. cpu信息
- 16. Android的CPU信息
- 17. 從.Net獲取存儲過程信息
- 18. Gmail API .NET:獲取完整信息
- 19. Firebug擴展:從Net Panel獲取信息
- 20. 獲取ssl證書信息 - .net
- 21. 如何獲取有關域的信息.NET C++
- 22. 如何從.NET的gitlab掛鉤獲取推送信息
- 23. 如何收集每個CPU的信息?
- 24. 如何從java applet中獲取信息?
- 25. 如何在Silverlight中獲取GC信息?
- 26. 如何從圖像中獲取信息?
- 27. 如何從標準中獲取信息?
- 28. 如何從子表中獲取信息
- 29. 如何從SVN信息庫中獲取信息?
- 30. CPU和HDD信息
注意,「CurrentClockSpeed」是不是你應該尋找確定MHz的財產(Windows在低利用率時可以降低大多數現代處理器的功耗,從而節省能源)。 相反,您應該看看「MaxClockSpeed」 - 這是Windows可以爲處理器提供時鐘的最大時鐘速度。 – BrainSlugs83 2013-05-30 01:21:32