プロセスリストが簡単にとれます。
以下、サンプル
procedure TForm1.Button1Click(Sender: TObject); unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) LabeledEdit1: TLabeledEdit; Button1: TButton; ListBox1: TListBox; procedure FormCreate(Sender: TObject); private { Private 宣言 } public { Public 宣言 } end; var Form1: TForm1; implementation Uses JclSysInfo; {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var ProcessList : TStringList; i : Integer; Pid : Cardinal; begin ListBox1.Clear; ProcessList := TStringList.Create; try JclsysInfo.RunningProcessesList(ProcessList,true); for i := 0 to ProcessList.Count-1 do begin Pid := GetPidFromProcessName(ProcessList.Strings[i]); ListBox1.Items.Add('(' + IntToStr(Pid) + ')' + ProcessList.Strings[i]); end; finally ProcessList.Free; end; end;
RunningProcessesListは、引数で指定したTStringsを継承した型インスタンスに
プロセスのリストを返してくれます。
このJclSysInfoユニット、ざっと見た感じで、便利そうなものが一杯あった。
サンプルプログラムを元にもうチョットみてみよう。
0 件のコメント:
コメントを投稿