|
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"物理メモリや空きメモリの取得"
{
PCの全物理メモリや空きメモリを取得します。
フォームにTLabel・TGauge・TButton・TTimerを配置してください。
}
procedure TForm1.Timer1Timer(Sender: TObject);
var
//APIヘルプに載っています
TMS : TMemoryStatus;
begin
TMS.dwLength := SizeOf(TMemoryStatus);
GlobalMemoryStatus(TMS);
//全物理メモリを最大値に設定
Gauge1.MaxValue := TMS.dwTotalPhys;
Gauge1.Progress := TMS.dwAvailPhys;
//KBバイトにして表示させています
//MBなら 1048576 で割って下さい
Label1.Caption := FormatFloat('Free #,##0.# KB '
,TMS.dwAvailPhys / 1024)+
FormatFloat('/ All #,##0.# KB'
,TMS.dwTotalPhys / 1024);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
TSL : TStringList;
i : Integer;
begin
//取り敢えずメモリを消費してみる(^^;
TSL := TStringList.Create;
try
for i := 0 to 200000 do
begin
TSL.Add('サンプル蔵万歳!');
//以下をしないと表示が更新されません
Application.ProcessMessages;
end;
finally
TSL.Free;
end;
end;
紅月 燐火(BZF05041)
Original document by 紅月 燐火 氏 ID:(BZF05041)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|