Программа двигает все
открытые окна
program Project1;
uses
windows,
Messages;
//Функция-ловушка
function EnumWindowsWnd(h: hwnd): BOOL; stdcall;
var
rect:TRect;
index:Integer;
begin
if not IsWindowVisible(h) then
begin
Result:=true;
exit;
end;
//Получаем размеры найденного окна
GetWindowRect (h,rect);
//Генерируем случайное число
index:=random(2);
if index=0 then
begin
//Если оно 0, то увеличиваем...
rect.Top:=rect.Top+3;
rect.Left:=rect.Left+3;
end
else
begin
//Иначе уменьшаем...
rect.Top:=rect.Top-3;;
rect.Left:=rect.Left-3;
end;
MoveWindow(h,rect.Left,rect.Top,rect.Right-rect.Left,
rect.Bottom-rect.Top,true);
Result:=true;
end;
//Основной код
var
h:THandle;
begin
//Запускаем цикл
while
true do
begin
//Запускаем перечисление всех окон
EnumWindows(@EnumWindowsWnd,0);
//Делаем задержку в 100 мс
h:=CreateEvent(nil, true, false, ' '
) ;
WaitForSingleObject(h, 100);
CloseHandle(h);
end;
end.