ab.com コミュニティ https://www.activebasic.com/forum/ |
|
Windows 9x での CPU 使用率の取得 https://www.activebasic.com/forum/viewtopic.php?t=1980 |
ページ 1 / 1 |
作成者: | M.S. [ 2007年6月16日(土) 14:41 ] |
記事の件名: | Windows 9x での CPU 使用率の取得 |
コード: Const SIZE_OF_LONG = 4 ' ボタンをクリックすると、CPU の使用率が取得できます。 Sub MainWnd_CommandButton1_Click() Dim CPUUsage As Long Dim ValueSize As Long Dim hKey As HKEY 'HKEY_DYN_DATAの“\PerfStats\StartStat\KERNEL\CPUUsage”という値を 'クエリーすることにより、CPU使用率の計測が開始される。 ValueSize = SIZE_OF_LONG RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StartStat", 0, KEY_QUERY_VALUE, hKey) RegQueryValueEx(hKey, "KERNEL\CPUUsage", 0, 0, VarPtr(CPUUsage), VarPtr(ValueSize)) RegCloseKey(hKey) '一秒間計測 Sleep(1000) '実際のCPU使用率は“\PerfStats\StatData\KERNEL\CPUUsage"という値で '取得できる。 ValueSize = SIZE_OF_LONG RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StatData", 0, KEY_QUERY_VALUE, hKey) RegQueryValueEx(hKey, "KERNEL\CPUUsage", 0, 0, VarPtr(CPUUsage), VarPtr(ValueSize)) RegCloseKey(hKey) '計測結果を表示 dim Usage[255] as Byte wsprintf(Usage,"%d %",CPUUsage) MsgBox hMainWnd,Usage,0,MB_OK '計測を終了するには、“\PerfStats\StopStat\KERNEL\CPUUsage”という '値をクエリーする。 ValueSize = SIZE_OF_LONG RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StopStat", 0, KEY_QUERY_VALUE, hKey) RegQueryValueEx(hKey, "KERNEL\CPUUsage", 0, 0, VarPtr(CPUUsage), VarPtr(ValueSize)) RegCloseKey(hKey) End Subよく検索すると見つかるもんなんですね。(笑) 因みに、システムモニタと見比べてみると、誤差が生じるときがあります。 |
ページ 1 / 1 | 全ての表示時間は UTC+09:00 です |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |