Delphi 我想获得进程句柄,怎么每次都变化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Delphi 我想获得进程句柄,怎么每次都变化相关的知识,希望对你有一定的参考价值。

var
id : HWnd;
pid : Thandle;
begin
id := FindWindow(nil,pchar(Edit1.Text)); //获取窗口句柄

if id > 0 then
begin
GetWindowThreadProcessId(id,pid); //获取进程PID
pp := OpenProcess(PROCESS_ALL_ACCESS,false,pid); //获取进程句柄
label8.Caption := '连接状态 = 连接成功';
label6.Caption := inttostr(id);
label5.Caption := inttostr(pid);
label7.Caption := inttostr(pp);
end;

if id = 0 then
begin
label8.Caption := '连接状态 = 连接失败';
label3.Caption := '0';

Timer1.Enabled := false;
end;
end;

每次这个OpenProcess(PROCESS_ALL_ACCESS,false,pid); 返回值都是变来变去的
怎么回事

参考技术A openprocess的肯定每次返回都不同的 要不何必每次都openprocess 参考技术B 每次创建 进程ID都是会变的

以上是关于Delphi 我想获得进程句柄,怎么每次都变化的主要内容,如果未能解决你的问题,请参考以下文章

delphi获取窗体的句柄

delphi 知道路径和进程如何获取窗口句柄?

DELPHI 通過窗口句柄或窗口标题得到进程句柄

DELPHI 通過窗口句柄或窗口标题得到进程句柄

如何获取窗体中组件的句柄

一个进程有很多窗口,怎么取这个进程的下所有窗口句柄