//猎取insert的句柄 进程id
function EnumWindowsProc_2(hwnd: HWND;lparam: LPARAM):boolean;stdcall;
var
pid : DWORD;
pMyPS: PArrProcessStruct;
buf: array[Byte] of Char;
begin
GetWindowThreadProcessId(hwnd,pid);
procedure TForm1.btn1Click(Sender: TObject);
var
myWindowStruct: TArrWindowStruct;
i: Integer;
begin
// EnumWindows(@EnumWindowsProc_1, 0);
EnumWindows(@EnumWindowsProc_1, Integer(@myWindowStruct));
for i := Low(myWindowStruct) to High(myWindowStruct) do
begin
lst1.Items.Add(Format('%d -类名 %s', [myWindowStruct[i].hwnd, myWindowStruct[i].classname]));
end;
end;
procedure TForm1.btn2Click(Sender: TObject);
var
temp : TArrProcessStruct;
i :integer;
begin
EnumWindows(@EnumWindowsProc_2,Integer(@temp));
for i := Low(temp) to High(temp) do
begin
lst1.Items.Add(Format('%d -进程ID %D', [temp[i].hwnd, temp[i].pid]));