delphi 用线程监视某程序
来源:互联网 发布:数据圈有用吗 编辑:程序博客网 时间:2024/04/27 21:44
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TMyThread = class(TThread)
protected
procedure Execute; override;
public
constructor Create;
destructor Destroy; override;
end;
TForm1 = class(TForm)
btn1: TButton;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
hProcess: THandle; {进程句柄}
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
pInfo: TProcessInformation;
sInfo: TStartupInfo;
Path: array[0..MAX_PATH - 1] of Char;
ThreadID: DWORD;
begin
GetSystemDirectory(Path, MAX_PATH);
StrCat(Path, '\notepad.exe');
FillChar(sInfo, SizeOf(sInfo), 0);
if CreateProcess(Path, nil, nil, nil, False, 0, nil, nil, sInfo, pInfo) then
begin
hProcess := pInfo.hProcess; {获取进程句柄}
Text := Format('进程 %d 已启动', [hProcess]);
with TMyThread.Create do
Resume;
end;
end;
{ TMyThread }
constructor TMyThread.Create;
begin
inherited Create(True);
FreeOnTerminate := True;
end;
destructor TMyThread.Destroy;
begin
inherited;
end;
procedure TMyThread.Execute;
var
I: Integer;
begin
inherited;
if WaitForSingleObject(hProcess, INFINITE) = WAIT_OBJECT_0 then
begin
Form1.Text := Format('进程 %d 已关闭', [hProcess]);
end;
end;
end.
- delphi 用线程监视某程序
- 监视线程
- delphi监视系统
- 线程调度的监视
- 线程调度的监视
- 建立线程监视
- 监视线程池 死锁
- 驱动监视进程线程
- 监视线程迁移
- 怎么监视线程
- 监视程序的编制
- C#文件监视程序
- 监视程序的编制
- 监视程序的编制
- C#文件监视程序
- 监视程序的编制
- 程序监视i眼
- (转)目录监视程序
- 商务局 存储过程
- 03-05 创建和编辑AutoCAD实体(五) 使用图层、颜色和线型(2)使用颜色
- 下面程序的输出结果是多少?
- 自然语言理解双重路径
- Linux操作系统常用命令
- delphi 用线程监视某程序
- 有限自动机—query中的where识别
- Add a logo from a SharePoint library to an InfoPath browser form
- Apache访问日志详解
- String 是最基本的数据类型吗?
- launcher 启动过程
- Linux如何设置从命令行启动?
- PHP 模仿逐相加。(1一直加到100)
- 互联网之父的初衷是为了工作交接中的信息管理