お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"CPU使用率の取得[Win95専]"

この発言に対し以下のコメントが寄せられています
#00909 紅月 燐火 さん RE:CPU使用率の取得[Win95専]

{ システムモニターと同じくCPU使用率(利用率?)を取得します。 フォームにTTimer・TGaugeを配置してください。usesにRegistryも付け加えてく ださい。 WindowsNT4.0では動作しません。 } procedure TForm1.FormCreate(Sender: TObject); var Reg: TRegistry; begin //HKEY_DYN_DATA\PerfStats\StartStatを開いてデータを有効にします //これをやらないとデータが上手く読み出せない事があります Reg := TRegistry.Create; try Reg.RootKey := HKEY_DYN_DATA; Reg.OpenKey('\PerfStats\StartStat', False); finally Reg.Free; end; end; //一定時間毎にCPU使用率を取得させてます。 procedure TForm1.Timer1Timer(Sender: TObject); var Reg: TRegistry; Usage : Integer; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_DYN_DATA; if Reg.OpenKey('\PerfStats\StatData', False) then begin //バイナリデータを読み出します。 Reg.ReadBinaryData('KERNEL\CPUUsage', Usage, 4); Gauge1.Progress := Usage; end; finally Reg.Free; end; end; procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); var Reg: TRegistry; begin //FormCreateで有効にしたものを無効にします Reg := TRegistry.Create; try Reg.RootKey := HKEY_DYN_DATA; Reg.OpenKey('\PerfStats\StopStat', False); finally Reg.Free; end; end; { 他にもスワップファイルのサイズやキャッシュメモリのサイズなど、色々取得で きます。レジストリエディタでHKEY_DYN_DATA\PerfStats\StatDataキーを見てく ださい。 システムモニターが取得しているデータを調べるなら HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Syst em Monitor\STATS 直下のサブキーで調べれます。(システムモニターで項目を追加しておく必要が あります。) }        紅月 燐火(BZF05041) Original document by 紅月 燐火 氏 ID:(BZF05041)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum