như cho dù đó là pentium hoặc AMD, vvLàm thế nào tôi có thể lấy thông tin cpu trong .net?
18
A
Trả lời
3
Các System.Management Namespace Cung cấp truy cập đến một tập hợp phong phú của thông tin quản lý và quản lý sự kiện về hệ thống, thiết bị, và các ứng dụng instrumented đến Windows Management Instrumentation (WMI) cơ sở hạ tầng.
Lớp WMI Win32 Processor là một thiết bị có thể giải thích chuỗi các lệnh trên máy tính chạy trên hệ điều hành Windows. Trên một máy tính đa xử lý, một cá thể của lớp Win32_Processor tồn tại cho mỗi bộ xử lý. Lớp học bao gồm trường Processor family type
, mã hóa những thứ như Bộ xử lý AMD Opteron Gia đình.
Ví dụ về C# issuing WMI query ở cuối trang.
11
Xin lưu ý rằng đây là từ 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
Mã này sẽ được tính 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
Các vấn đề liên quan
- 1. Làm thế nào tôi có thể lấy thông tin hệ thống/phần cứng thông qua Java?
- 2. C# .NET - Làm thế nào tôi có thể lấy typeof() để làm việc với thừa kế?
- 3. Làm thế nào tôi có thể nhận được thông tin lỗi WPF .NET hữu ích từ máy của người dùng?
- 4. Có cách nào để lấy thông tin về GPU không?
- 5. Tôi có thể đọc thông tin AssemblyFile trong Inno Setup
- 6. Làm thế nào tôi có thể bảo đảm thông tin WCF với ràng buộc net.tcp
- 7. Làm thế nào tôi có thể tìm thấy plugin VIM nào có lỗi vì quá tải CPU của tôi
- 8. Làm thế nào tôi có thể thiết lập mối quan hệ xử lý trong .NET?
- 9. Làm cách nào để lưu trữ thông tin trong tệp thực thi của tôi trong .Net
- 10. Làm thế nào tôi có thể cat một tập tin từ xa để đọc các thông số trong BASH?
- 11. Làm thế nào tôi có thể nhấn mạnh CPU của điện thoại theo cách lập trình?
- 12. Làm thế nào tôi có thể proctect ứng dụng .NET của tôi chống lại DLL Hijacking?
- 13. làm thế nào để lưu trữ NSDictionary trong NSUserdefaults và làm thế nào tôi có thể lấy từ nó
- 14. Làm cách nào tôi có thể lấy DomainName \ AccountName bằng .NET Framework?
- 15. Làm thế nào tôi có thể lưu trữ ứng dụng MVC3 của tôi trong .net 3.5?
- 16. Tôi có thể lấy thông tin gì từ địa chỉ IP?
- 17. Làm thế nào tôi có thể nhận được CPU và Memory useage
- 18. Làm thế nào tôi có thể truy cập Bộ đếm CPU Intel
- 19. Làm thế nào để có được nhiệt độ CPU?
- 20. Làm thế nào một ứng dụng có thể sử dụng nhiều lõi hoặc CPU trong .NET hoặc Java?
- 21. Parsing thông tin văn hóa trong .NET
- 22. Tôi có thể lấy thông tin về bảng, cột và loại từ mô hình không?
- 23. Làm cách nào tôi có thể đặt nút "thông tin" trên thanh điều hướng của iPhone?
- 24. Trong .net, biết số tuần làm thế nào tôi có thể nhận được ngày trong tuần?
- 25. Làm thế nào để lấy thông tin hệ thống hữu ích trong java?
- 26. JDK7: sun.font.fontManager thay thế/làm thế nào để lấy thông tin tên file từ fontname
- 27. Làm thế nào để lấy lại sử dụng CPU cho mỗi quá trình
- 28. Làm thế nào tôi có thể lấy đối tượng Cấu hình Hibernate từ Mùa xuân?
- 29. Làm thế nào tôi có thể phát hiện ThreadAbortException trong một khối cuối cùng? (.NET)
- 30. Làm thế nào tôi có thể biểu diễn một số nguyên rất lớn trong .NET?
Lưu ý rằng "CurrentClockSpeed" không phải là tài sản mà bạn nên nhìn vào để xác định MHz (Windows có thể giảm xuống bộ vi xử lý hiện đại nhất khi sử dụng thấp, để tiết kiệm năng lượng). Thay vào đó, bạn nên xem "MaxClockSpeed" - đây là tốc độ đồng hồ tối đa mà Windows có thể đồng bộ với bộ xử lý. – BrainSlugs83