Witzprogramm : Haben Sie Langeweile???
Verfasst: 29.06.2006 12:31

Also hier kommt ein kleines, aber sehr effizientes Witzprogramm, um andere Leute zu ärgern (aber ohne Schaden anzurichten):
Es erscheint ein MessageRequester und fragt, ob man Langeweile hat.
Falls nein, endet das Programm, andernfalls öffnen sich 100 Fenster mit der Nachfrage, ob man immer noch Langeweile hat. Beantwortet man diese
mit nein, schließt sich das betroffene Fenster, die anderen bleiben erhalten.
Beantwortet man die frage jedoch mit Ja, so öffnen sich 100 weitere Fenster

Der Clue:
-Die Fenster reagieren nicht auf Alt+F4 und nicht auf "Gruppe schließen"
-Auf jedem Fenster wird aktualisiert, wie viele Fenster noch zu schließen sind
Um das Killen des Prozesses durch den Taskmanager zu verhindern, einfach
das fertige Executable wie einen Systemprozess benennen
(z.B. "lsass.exe","winlogon.exe",etc. schaut am besten mal im Taskmanager nach bei Prozessen, die als Benutzer SYSTEM haben)
Der Code soll zeigen, wie man veränderliche Variablen als Identifier für Fenster und Gadgets verwendet und wie man die Events dann abfragt.
Code: Alles auswählen
#Alt_F4=0
Select MessageRequester("Langeweile","Haben Sie Langeweile ?",#PB_MessageRequester_YesNo)
Case #PB_MessageRequester_Yes
Goto Begin
Case #PB_MessageRequester_No
MessageRequester("Langeweile","Schade !")
End
EndSelect
Begin:
ExamineDesktops()
For x=1 To 100
OpenWindow(ID,Random(DesktopWidth(0)-200),Random(DesktopHeight(0)-90),200,90,"Langeweile",#PB_Window_TitleBar)
AddKeyboardShortcut(ID,#PB_Shortcut_Alt|#PB_Shortcut_F4,#Alt_F4)
Anz+1
Max+1
CreateGadgetList(WindowID(ID)):ID+1
TextGadget(ID,10,10,180,20,"Haben Sie immer noch Langeweile ?",#PB_Text_Center):ID+1
TextGadget(ID,10,30,180,20,"",#PB_Text_Center):ID+1
ButtonGadget(ID,10,50,90,20,"Nein, nicht mehr"):ID+1
ButtonGadget(ID,100,50,90,20,"Ja, immer noch"):ID+1
Next x
For Window=0 To Max
WID=5*Window
If IsWindow(WID)
SetGadgetText(WID+2,"(noch "+Str(Anz)+" Fenster)")
EndIf
Next Window
Repeat
event=WaitWindowEvent()
Select event
Case #PB_Event_Menu
Select EventMenu()
Case #Alt_F4
MessageRequester("Langeweile","Tut mir Leid..."+Chr(10)+Chr(10)+"...aber Alt + F4 funktioniert nicht."+Chr(10)+Chr(10)+" :-)")
EndSelect
Case #PB_Event_Gadget
WID=EventGadget()
If WID % 5 = 3
CloseWindow(EventWindow())
Anz-1
For Window=0 To Max
WID=5*Window
If IsWindow(WID)
SetGadgetText(WID+2,"(noch "+Str(Anz)+" Fenster)")
EndIf
Next Window
ElseIf WID % 5 = 4
Goto Begin
EndIf
EndSelect
Until Anz<=0