Jest tak. Otwieram okno jakiegoś programu za pomocą ShellExecute. Jak wykryć uchwyt tego nowego okna? Generalnie chodzi o to żeby z mojego programu można było za pomocą przycisku uruchamiać jakiś inny program a potem go zamykać.
0
0
var
hWnd,hProc:THandle;
pid:DWORD;
begin
Result:=False;
hWnd := FindWindow(PCHAR('NazwaAplikacji'),nil);
if IsWindow(hWnd) then begin
GetWindowThreadProcessId(hWnd, @pid);
hproc := OpenProcess(PROCESS_TERMINATE, FALSE, pid);
if hproc0 then begin
Result:=TerminateProcess(hProc,0);
if Result then CloseHandle(hProc);
end;
end;
end;