program deskScherz; uses windows; CONST TITLE = 'BOESETATEN.DE deskScherz 2.00 [© Philipp Winterberg]'; // deskHide : Desktopicons verstecken // deskDisable : Desktopicons aus // deskPaperKill : Wallpaper killen // taskBarHide : Taskbar verstecken // taskBarDisable : Taskbar aus // taskButtonHide : Start Button verstecken // taskManagerDisable: Taskmanager aus, Screensaver aus, Alt + Tab aus // taskMenuOpen : Start-Menü öffnen // screenSaverRun : Screensaver starten {$R *.RES} procedure deskHide; begin ShowWindow(FindWindowEx(FindWindow('Progman', nil), HWND(0), 'ShellDll_DefView', nil), sw_hide); sleep(5000 + random(3000)); ShowWindow(FindWindowEx(FindWindow('Progman', nil), HWND(0), 'ShellDll_DefView', nil), sw_show); end; procedure deskDisable; begin EnableWindow(FindWindowEx(FindWindow('Progman', nil), HWND(0), 'ShellDll_DefView', nil), false); sleep(5000 + random(3000)); EnableWindow(FindWindowEx(FindWindow('Progman', nil), HWND(0), 'ShellDll_DefView', nil), true); end; procedure deskPaperKill; begin SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar('C:\windows\1TBOOT.BMP'), SPIF_UPDATEINIFILE); SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar('C:\windows\1TBOOT.BMP'), SPIF_SENDWININICHANGE); end; procedure taskBarHide; begin ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE); sleep(5000 + random(3000)); ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_RESTORE); end; procedure taskButtonHide; begin ShowWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil), Integer(false)); sleep(5000 + random(3000)); ShowWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil), Integer(true)); end; procedure taskBarDisable; begin EnableWindow(FindWindow('Shell_TrayWnd',nil), false); sleep(5000 + random(3000)); EnableWindow(FindWindow('Shell_TrayWnd',nil), true); end; procedure taskManagerDisable; begin SystemParametersInfo(SPI_SCREENSAVERRUNNING, integer(true), Nil, 0); sleep(5000 + random(3000)); SystemParametersInfo(SPI_SCREENSAVERRUNNING, integer(false), Nil, 0); end; procedure screenSaverRun; begin SendMessage(GetDesktopWindow, $0112, SC_SCREENSAVE, 0) end; procedure taskMenuOpen; begin SendMessage(GetDesktopWindow, $0112, SC_TASKLIST,0); end; // Support Section // -------------------------------------------------------------------------- procedure monitorDistortion; var verbindung : hdc; i: integer; begin verbindung := GetDc(0); for i:= 1 to 10 do begin BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, notsrccopy); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, notsrcerase); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, srcpaint); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, notsrccopy); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, notsrcerase); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, srcpaint); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0 , 0, notsrccopy); BitBlt(verbindung, 0, 0, getSystemMetrics(SM_CXSCREEN), getSystemMetrics(SM_CYSCREEN), verbindung, 0, 0, dstinvert); end; ReleaseDc(0, verbindung); end; // Main Section // -------------------------------------------------------------------------- var actionTimeFrame: longint; begin try SystemParametersInfo(SPI_SCREENSAVERRUNNING, integer(true), Nil, 0); // taskManagerDisable taskBarHide; actionTimeFrame:= GetTickCount + 23000; while actionTimeFrame > getTickCount do case random(9) of 1: deskHide; 2: deskDisable; 4: taskBarHide; 5: taskBarDisable; 6: taskButtonHide; 8: taskMenuOpen; 0: screenSaverRun; else screenSaverRun; end finally SystemParametersInfo(SPI_SCREENSAVERRUNNING, integer(false), Nil, 0); //taskManagerEnable end; messagebox(0, pchar( #13#10+ ' Und? Geschockt? *grins*' +#13#10#13#10+ ' Dieses winzige und harmlose Scherzprogramm richtet'+#13#10+ ' keinerlei Schaden an. Ein Klick auf den OK-Button,'+#13#10+ ' und der Spuk ist vorüber...'+#13#10#13#10 + ' P.S.: Schnell Freunde schocken!'+#13#10 ), pchar(TITLE), mb_iconQuestion + mb_OK); monitorDistortion; end.