9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
學習啦 > 學習電腦 > 電腦硬件知識 > CPU知識 > 怎么獲取CPU的溫度

怎么獲取CPU的溫度

時間: 沈迪豪908 分享

怎么獲取CPU的溫度

你知道如何獲取CPU的溫度嗎?跟著學習啦小編一起學習獲取CPU的溫度的方法吧。

  作為一個系統級程序員或者編程愛好者,掌握一些系統的高級編程技巧是非常有意義的。本文將介紹如何利用一些高級的編程技巧來實現動態監控。

  雖然Windows 98“系統工具”中的“資源狀況”程序能夠監視CPU的資源占用狀況,但是那些相關的數據卻無法傳遞到我們自己的程序中。為此,筆者用VB 6編寫了一個具有上述功能的CPU監視軟件,它可以實現對CPU資源狀況的監視并取得有關數據,并且能夠顯示到一個精致的圖示窗口中。

  編程原理

  CPU的資源占用情況真正反映在CMOS中,但是如果我們直接從這里開始編程,那將是一件非常復雜的工作。幸好,Windows 98已經幫我們做好了這一步,它的底層技術能夠從CMOS中獲取CPU的資源占用狀況參數并且記錄到注冊表中“HKEY_DYN_DATA\PerfStats\StatData”的分支“KERNEL\CPUUsage”中,通過周期性地讀取該鍵的鍵值,并且將參數傳遞到我們自己制作的監視器界面或者有關變量中,就可以即時獲得并反映出CPU的使用狀況了。

  本程序的關鍵是以通用的方法獲取相關鍵值并反映輸出到自制的動態進度監視器上,為了更有利于觀察、分析,我們將添加一個簡單的趨勢分析平均線。通過本文,初學者還將能了解如何從注冊表的指定項獲取數據和利用Picture控件實現進度指示器的編程技巧。

  獲取CPU的溫度的方法

  1.設計程序界面

  首先運行VB 6中文版,建立一個標準的exe工程,將窗體命名為frmmain,borderstyle屬性設為:3-fixed,caption,屬性設置為空;接著添加一個frame控件——“frame1”,caption屬性設置為空,再添加picturebox控件pctPrg,前景色為綠色,背景色為淺紅色;最后添加一個定時器控件——“timer”,interval設置為100(當然,也可以根據自己的需要設置讀取間隔),enabled設置為true,其他的屬性采用系統的默認值,調整窗體和控件到適當位置和適當大小即可(參見附圖)。

  2.編寫程序代碼,雙擊窗體frmmain并輸入以下代碼

  Option Explicit '變量檢查

  Private Declare Function RegQueryValueEx Lib "advapi32.dll " Alias "RegQueryValueExA " (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

  '獲取一個指定的注冊表項的設置值

  Private Declare Function RegOpenKey Lib "advapi32.dll " Alias "RegOpenKeyA " (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

  '打開一個指定的的注冊表項

  Private Declare Function RegCloseKey Lib "advapi32.dll " (ByVal hKey As Long) As Long

  '關閉系統注冊表中的指定項(或指定鍵)

  Private Const REG_DWORD = 4

  Private Const HKEY_DYN_DATA = &&H80000006

  '這兩個常數是讀寫注冊表必須的

  '以上API函數和常數結合能夠實現對注冊表任意指定項的訪問

  Private Avg As Long

  'CPU 資源占用參數平均數

  Private Sum As Long

  'CPU 資源占用參數合計數

  Private Index As Long '統計次數

  '窗體級函數、常數和變量聲明結束

  Private Function GetCPUUsage() As Long

  On Error Resume Next

  '忽略可能產生的錯誤

  Dim Data As Long, Typ As Long, Size As Long

  Dim hKey As Long

  Dim hRet As Long

  hRet = RegOpenKey(HKEY_DYN_DATA, "PerfStats\StatData ", hKey)

  '打開該主鍵

  hRet = RegQueryValueEx(hKey, "KERNEL\CPUUsage ", 0&&, REG_DWORD, Data, 4)

  '讀取主鍵值

  GetCPUUsage = Data

  ' 為自定義函數賦值

  hRet = RegCloseKey(hKey)

  '關閉該主鍵

  End Function

  Private Sub Form_Load()

  '初始化標題和提示信息

  Dim hKey As Long, Data As Long

  App.Title = "CPU監視器 占有率: "

  Me.Caption = App.Title

  '初始化應用程序標題欄

  pctPrg.ToolTipText = "單擊右鍵退出程序! "

  RegOpenKey HKEY_DYN_DATA, "PerfStats\ StartStat ", hKey

  RegQueryValueEx hKey, "KERNEL\CPUUsage ", 0, REG_DWORD, Data, 4

  RegCloseKey hKey

  '打開注冊表的資源監控標識

  End Sub

  Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

  '程序結束前關閉定時器

  Timer.Enabled = False

  End Sub

  Private Sub Form_Unload(Cancel As Integer)

  End '結束程序

  End Sub

  Private Sub pctPrg_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

  '右鍵單擊退出程序

  If Button = 2 Then

  Unload Me

  End If

  End Sub

  Private Sub Timer_Timer()

  '利用定時器周期性地讀取資源狀況

  '本程序每隔0.1秒讀取一次數據

  Dim tmp As Long ' CPU資源占用狀況參數

  tmp = GetCPUUsage '獲得參數

  Me.Caption = App.Title && FormatPercent(tmp / 100) '

  '在窗體標題欄用百分比數字形式反映占用率

  Sum = Sum + tmp '累加統計

  Index = Index + 1 '次數統計

  Avg = Int(Sum / Index) ' 求平均值

  pctPrg.Cls ' 清除圖示內容

  pctPrg.Line (0, 0)-(tmp, 18), ,&& BF

  '以綠色圖示資源占用狀況

  pctPrg.Line (Avg, 0)-(Avg, 18), &&HFF

  '以深紅色畫出平均線

  pctPrg.Line (Avg + 1, 0)-(Avg + 1, 18), &&HFF

  End Sub

  '程序結束

  通過以上步驟,裝備精良的CPU監視器就制作完成了。

  注意事項

  需要說明的是,在內存配置較低的計算機中(比如內存32MB,Windows 98第二版),CPU的占有率是較高的,一般能夠達到50%,這可能是由于系統需要CPU進行許多的運算模擬來彌補資源的不足。然而在88MB內存,同樣操作系統的機器上,占有率一般只有10%。另外,本文主窗體中定時器運行過程函數中調用的FormatPercent函數是VB 6.0新添加的一個函數,它的作用是將一個表達式轉化成百分數。用VB 5.0開發的讀者需要采取其他變通方法,以實現監控CPU功能。本程序在Windows 98第二版、VB 6.0中文企業版下測試通過。

怎么獲取CPU的溫度相關文章:

1.怎么看cpu的溫度

2.在線查看cpu溫度

3.如何查看cpu溫度

4.臺式機溫度如何檢測

5.怎么利用BIOS查看主機內的溫度

6.檢測CPU溫度的方法

2018888 主站蜘蛛池模板: 欧美拍拍视频免费大全| 中文字幕自拍偷拍福利视频| 中文字幕无码视频手机免费看| 99精品国产一区二区电影| 人妻中文字幕不卡精品| 成人国产av精品免费网| 野花韩国高清电影| 免费av网站| 欧美牲交A欧美在线| 人妻蜜臀久久av不卡| 国产精品日韩专区第一页| h无码精品动漫在线观看| 欧美性猛交xxxx乱大交丰满| 亚洲午夜性猛春交XXXX| 宅男噜噜噜66在线观看| 九九色这里只有精品国产| 欧产日产国产精品精品| 电影在线观看+伦理片| 亚洲一区精品伊人久久| 亚洲VA中文字幕无码久久不卡| 超碰成人人人做人人爽| 久久综合色一综合色88| 污网站在线观看视频| 亚洲色最新高清AV网站| 国产精品一区二区久久精品无码 | 三上悠亚精品一区二区久久| 精品国产乱码久久久久夜深人妻 | 亚洲人成网站在线播放2019| 国产欧美日韩另类精彩视频 | 极品美女自拍偷精品视频| 日本三级香港三级三级人妇久 | 免费现黄频在线观看国产| 日韩在线视频线观看一区| 国产台湾黄色av一区二区| 国产边打电话边被躁视频| 黄色免费在线网址| 厨房与子乱在线观看| 理论片午午伦夜理片影院99| 韩国无码AV片午夜福利| 国产欧美日韩亚洲一区二区三区| 中文字日产幕码三区国产|