Пример процедуры, убивающей таймеры по заголовку окна в чужих приложениях, написанных на Delphi
01.01.2007
var Hinst : THandle; WndArr : array of THandle; Wnd : THandle; ...... Procedure KillDelphiWndTimers(const AppCaption:string); var i : integer; function GetTimerWindows(Handle: HWND; Info: Pointer): BOOL; stdcall; const sClName ='TPUtilWindow'; var s : String; begin Result := True; SetLength(s,Length(sClName)+1); GetClassName(Handle, PChar(s),Length(s)); SetLength(s,Length(sClName)); // E?aeo caieoeaaou neaie #0 :) if (GetWindowLong(Handle, GWL_HINSTANCE) = Hinst ) and (s=sClName) then begin SetLength(WndArr,High(WndArr)+2); WndArr[High(WndArr)]:=Handle; end; end; begin Wnd:=FindWindow(nil,Pchar(AppCaption)); if Wnd=0 then Exit; hinst:=GetWindowLong(Wnd, GWL_HINSTANCE); EnumWindows(@GetTimerWindows,0); for i:=0 to High(WndArr) do KillTimer(WndArr[i],1); end;
Взято с Vingrad.ru https://forum.vingrad.ru