Mały Głód
Demonical Monk
Mały Głód
Autor: PotwoorOto kod który podziurawi wszystkie okna, zasada działania podobna do WinConvultor
function Hungry(WHandle: HWND; LParM: LParam): Boolean;StdCall;Export;
var
a,b:HRGN;
x,y:integer;
r:TRect;
s:integer;
begin
Result:=true; // potrzebne by zaliczyć więcej okienek
if IsWindowVisible(WHandle) then // jeśli okno jest widoczne to... przyśpiesza działanie omijając niewidoczne okna
begin
Windows.GetWindowRect(WHandle,r); // rozmiar okna
x:=Random(r.Right-r.Left); // losujemy pozycję dziury
y:=Random(r.Bottom-r.Top); // losujemy pozycję dziury
a:=Windows.CreateRectRgn(0,0,r.Right-r.Left,r.Bottom-r.Top); // tworzymy region odpowiadający oknu
if LParM=1 then // jeśli LParM = 1 to zachowujemy poprzednie dziurki pobierając bieżący region okna
Windows.GetWindowRgn(WHandle,a); // bez wcześniejszego stworzenia regionu nie działa ta funkcja ( zwraca 0 czyli ERROR )
s:=10+Random(30); // losujemy rozmiar dziury
b:=Windows.CreateEllipticRgn(x,y,x+s,y+s); // tworzymy region w kształcie dziurki
Windows.CombineRgn(b,a,b,rgn_diff); // do regiony b przypisujemy region a bez regionu b ( wycinamy dziurkę )
Windows.SetWindowRgn(WHandle,b,true); // ustawiamy otrzymany region
end;
end;
wywołanie dla jednej dziurki na okno:
Windows.EnumWindows(@Hungry,0);
wywołanie dla wielu dziurek na okno:
Windows.EnumWindows(@Hungry,1);
wstawić w pętle i Mały Głód zjada nam okienka
OSTRZEŻENIE - zmiany w powyższym kodzie mogą doprowadzić do niechcianych lecz czasem ciekawych efektów
podczas pisania uzyskałem następujące efekty ->
straciłem Menu Start
straciłem około 50% menu podręcznych
zamiast uzyskania dziury parę okien uzyskało kształt dziury
dzięki zrobiłem kawał kumplowi xd
kurde piękne to :D:D:D nie zle
Flawlessss Zresetuj explorera
CreateRectRgn, podajemy dane z GetWindowRect i przypisujemy uzyskany region
oczywiście okna które miały oryginalnie ciekawe kształty uzyskają kształt wybitnie kanciasty
jak przywrócić stan pierwotny xD??