Gotowce » Żarty w Delphi

Awaria monitora

Awaria monitora


Autor: fatalbomb


Co powiecie na chwilową awarię monitora?
Prosty przykład wyłączający monitor na 2 sekundy, czyli na tyle, by użytkownik był na tyle zszokowany by nie zrestartować kompa:)

 SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,1);//wylacz monitorek:)
 sleep(2000); //spij
 SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,-1); //wlacz monitka;)

5 komentarzy

rrpriv 2011-09-11 20:40

Chciałbym wyjaśnić ponieważ w WinXP (chyba od SP1) ta funkcja wyłącza monitor ale system go włączy po poruszeniu myszką bądź innej akcji wywołanej przez użytkownika (np. naciśnięci klawisza na klawiaturze)

TomRiddle 2011-02-04 19:16

Zerżnęliście wszystko z neta, mam taki pliczek "100 tricków w delphi" i to tam jest... Tak samo jak wtedy, teraz nie działa. Wzięlibyście napisali coś swojego.

Demonical Monk 2009-09-12 14:24

blade, to chyba tylko u ciebie tak to działa :P
U mnie na Pro SP2 działa tak jak chce.

blade95 2008-10-21 19:56

Tak więc ta funkcyjka coś nie działa na WinXP Pro SP2... Mianowicie wyłączy monitorek - za sekundę go włączy... Przykładowy kodzik:

Ustawiam że po naciśnięciu na "vkDown" ma zrobic to:
begin
 SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,1);
end;

A po naciśnięciu na "vkUp" ma zrobić to:
begin
 SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,-1);
end;


Po naciśnięciu na "vkDown" wyłącza się monitor - ale za chwilę się włącza... Więc to jakieś kiepściutkie rozwiązanie...

Zauważyłem rónież że jak się ustawi tak:
SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,x);
gdzie x-to dowolna liczba naturalna.
Wyłączy się monitor - a po chwili znowusz włączy...


Myślę że ta funkcja jest "do dupy"...

xc1024 2008-08-28 14:17

mi nie chce działać