'
超過10余年行業(yè)經驗,技術領先,服務至上的經營模式,全靠網絡和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務范圍包括了:網站建設、網站設計,成都網站推廣,成都網站優(yōu)化,整體網絡托管,成都小程序開發(fā),微信開發(fā),手機APP定制開發(fā),同時也可以讓客戶的網站和網絡營銷和我們一樣獲得訂單和生意!
'?。?!重要:首先要添加“引用”一個dll,選擇“System?Management”;
'
Imports?Microsoft.VisualBasic
Imports?System
Imports?System.Collections.Generic
Imports?System.ComponentModel
Imports?System.Data
Imports?System.Drawing
Imports?System.Text
Imports?System.Windows.Forms
Imports?System.Management
Imports?System.IO
Namespace?WindowsApplication1
Partial?Public?Class?Form1
Inherits?Form
Public?Sub?New()
InitializeComponent()
End?Sub
Private?Sub?button1_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取CPU編號
Dim?[MyClass]?As?New?ManagementClass("Win32_Processor")
Dim?MyCollection?As?ManagementObjectCollection?=?[MyClass].GetInstances()
Dim?MyInfo?As?String?=?"當前系統(tǒng)CPU編號是:"
Dim?MyCPUID?As?String?=?""
For?Each?MyObject?As?ManagementObject?In?MyCollection
MyCPUID?=?MyObject.Properties("ProcessorId").Value.ToString()
Exit?For
Next?MyObject
MyInfo?=?MyCPUID
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button2_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的當前電壓
Dim?MyInfo?As?String?=?"計算機CPU的當前電壓是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
Try
MyInfo?=?ControlChars.Lf??String.Format("CurrentVoltage?:?"??MyObject("CurrentVoltage").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Catch
End?Try
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button3_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的外部頻率
Dim?MyInfo?As?String?=?"計算機CPU的外部頻率是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
Try
MyInfo?=?ControlChars.Lf??String.Format("ExtClock?:?"??MyObject("ExtClock").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Catch
End?Try
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button4_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的二級緩存
Dim?MyInfo?As?String?=?"計算機CPU的二級緩存尺寸是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("L2CacheSize:?"??MyObject("L2CacheSize").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button5_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的制造商名稱
Dim?MyInfo?As?String?=?"計算機CPU的制造商名稱是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("Manufacturer?:?"??MyObject("Manufacturer").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button6_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的產品名稱
Dim?MyInfo?As?String?=?"計算機CPU的產品名稱是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("Name?:?"??MyObject("Name").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button7_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的版本信息
Dim?MyInfo?As?String?=?"計算機CPU的版本信息如下:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("Version:?"??MyObject("Version").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button8_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的當前使用百分比?注意要把SQLserver或者其他耗CPU的軟件開著否則看不到效果就一直為0
Dim?MyInfo?As?String?=?"計算機CPU的當前使用百分比是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("LoadPercentage?:?"??MyObject("LoadPercentage").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button9_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的最大時鐘頻率
Dim?MyInfo?As?String?=?"計算機CPU的最大時鐘頻率是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("MaxClockSpeed?:?"??MyObject("MaxClockSpeed").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button10_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機CPU的當前時鐘頻率
Dim?MyInfo?As?String?=?"計算機CPU的當前時鐘頻率是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("CurrentClockSpeed?:?"??MyObject("CurrentClockSpeed").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button11_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機的CPU地址寬度
Dim?MyInfo?As?String?=?"當前計算機的CPU地址寬度是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("AddressWidth:?"??MyObject("AddressWidth").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
Private?Sub?button14_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)
'獲取計算機的CPU數(shù)據寬度
Dim?MyInfo?As?String?=?"當前計算機的CPU數(shù)據寬度是:"
Dim?MySearcher?As?New?ManagementObjectSearcher("SELECT?*?FROM?Win32_Processor")
For?Each?MyObject?As?ManagementObject?In?MySearcher.Get()
MyInfo?=?ControlChars.Lf??String.Format("DataWidth?:?"??MyObject("DataWidth").ToString())
MyInfo?=?ControlChars.Lf??"========================================================="
Next?MyObject
MessageBox.Show(MyInfo,?"信息提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information)
End?Sub
End?Class
使用wmi
類“Win32_Processor”中LoadPercentage屬性為當前的cpu使用率
示例代碼: Private Sub Timer1_Timer()
Dim WMI服務 As Object
Dim 對象 As Object
Dim 子對象 As Object
Dim 電腦名 As String
Dim 刷新 As Long
刷新 = 0
電腦名 = "." '表示本地計算機
Set WMI服務 = GetObject("winmgmts://" 電腦名 "/root/cimv2")
Set 對象 = WMI服務.InstancesOf("Win32_Processor")
Me.CurrentX = 0
Me.CurrentY = 0
For Each 子對象 In 對象
If 刷新 = 0 Then
刷新 = 1
Me.Cls
End If
Me.Print 子對象.Name "[" 子對象.CurrentClockSpeed "Hz] 使用率:" _
子對象.LoadPercentage "%"
Next
End Sub
使用wmi
類“Win32_Processor”中LoadPercentage屬性為當前的cpu使用率
示例代碼: Private Sub Timer1_Timer()
Dim WMI服務 As Object
Dim 對象 As Object
Dim 子對象 As Object
Dim 電腦名 As String
Dim 刷新 As Long
刷新 = 0
電腦名 = "." '表示本地計算機
Set WMI服務 = GetObject("winmgmts://" 電腦名 "/root/cimv2")
Set 對象 = WMI服務.InstancesOf("Win32_Processor")
Me.CurrentX = 0
Me.CurrentY = 0
For Each 子對象 In 對象
If 刷新 = 0 Then
刷新 = 1
Me.Cls
End If
Me.Print 子對象.Name "[" 子對象.CurrentClockSpeed "Hz] 使用率:" _
子對象.LoadPercentage "%"
Next
End Sub
重新啟動。vbnetfor循環(huán)占用cpu問題只要重新啟動就可以了。VBNET是一種簡單,現(xiàn)代,面向對象的計算機編程語言,它由微軟開發(fā),將NETFramework和公共語言運行庫的強大功能相結合。
分享名稱:vb.netcpu信息 vbnet thread
網站地址:http://chinadenli.net/article22/hpegjc.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供自適應網站、關鍵詞優(yōu)化、網站設計、品牌網站制作、域名注冊、網站導航
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)