[Langeweile] Tools

  • Hier könnt ihr Tools oder Programme reinstellen, die keinen sinn haben, aber von denen man etwas lernen kann.

    Ich habe aus Langeweile ein bisschen mit Regionen rumgespielt. Dabei ist folgendes rausgekommen:

    TrollGUI

    Eine nicht anklickbare GUI.

    [autoit]

    Global $hGUI, $aPos, $aRegion1, $aRegion2

    [/autoit] [autoit][/autoit] [autoit]

    $hGUI = GUICreate('TrollGUI', 600, 400)
    GUISetState(@SW_SHOW, $hGUI)

    [/autoit] [autoit][/autoit] [autoit]

    While GUIGetMsg() <> -3
    $aPos = GUIGetCursorInfo($hGUI)
    $aRegion1 = DllCall('gdi32.dll', 'handle', 'CreateRectRgn', 'int', 0, 'int', 0, 'int', 640, 'int', 480)
    $aRegion2 = DllCall('gdi32.dll', 'handle', 'CreateEllipticRgn', 'int', $aPos[0] - 17, 'int', $aPos[1] + 5, 'int', $aPos[0] + 23, 'int', $aPos[1] + 45)
    DllCall('gdi32.dll', 'int', 'CombineRgn', 'handle', $aRegion1[0], 'handle', $aRegion1[0], 'handle', $aRegion2[0], 'int', 3)
    DllCall('user32.dll', 'int', 'SetWindowRgn', 'hwnd', $hGUI, 'handle', $aRegion1[0], 'bool', True)
    DllCall('gdi32.dll', 'bool', 'DeleteObject', 'handle', $aRegion1[0])
    DllCall('gdi32.dll', 'bool', 'DeleteObject', 'handle', $aRegion2[0])
    Sleep(10)
    WEnd

    [/autoit]
    Trollmode

    Wie bei der TrollGUI nur generell bein Windows.
    Wird mit Home bzw. Pos1 beendet.
    Benutzung auf eigene Gefahr!

    [autoit]

    Global $hWnd, $aPos1, $aPos2, $aRegion1, $aRegion2

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet('{HOME}', '_Exit')
    ToolTip('Drücken sie HOME bzw. Pos1 um' & @CRLF & ' den trollmode zu verlassen.', 0, 0, 'TrollMode')

    [/autoit] [autoit][/autoit] [autoit]

    While Sleep(10)
    $hWnd = WinGetHandle('')
    $aPos1 = MouseGetPos()
    $aPos2 = WinGetPos($hWnd)
    If @error Then ContinueLoop
    $aRegion1 = DllCall('gdi32.dll', 'handle', 'CreateRectRgn', 'int', 0, 'int', 0, 'int', @DesktopWidth, 'int', @DesktopHeight)
    $aRegion2 = DllCall('gdi32.dll', 'handle', 'CreateEllipticRgn', 'int', $aPos1[0] - $aPos2[0] - 20, 'int', $aPos1[1] - $aPos2[1] - 20, 'int', $aPos1[0] - $aPos2[0] + 20, 'int', $aPos1[1] - $aPos2[1] + 20)
    DllCall('gdi32.dll', 'int', 'CombineRgn', 'handle', $aRegion1[0], 'handle', $aRegion1[0], 'handle', $aRegion2[0], 'int', 3)
    DllCall('user32.dll', 'int', 'SetWindowRgn', 'hwnd', $hWnd, 'handle', $aRegion1[0], 'bool', True)
    DllCall('gdi32.dll', 'bool', 'DeleteObject', 'handle', $aRegion1[0])
    DllCall('gdi32.dll', 'bool', 'DeleteObject', 'handle', $aRegion2[0])
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    $hWnd = WinGetHandle('')
    $aRegion1 = DllCall('gdi32.dll', 'handle', 'CreateRectRgn', 'int', 0, 'int', 0, 'int', @DesktopWidth, 'int', @DesktopHeight)
    DllCall('user32.dll', 'int', 'SetWindowRgn', 'hwnd', $hWnd, 'handle', $aRegion1[0], 'bool', True)
    Exit
    EndFunc

    [/autoit]

    PS: ich hoffe ich habe es im richtigen Bereicht gepostet.

    Einmal editiert, zuletzt von Smincke (20. Juli 2012 um 17:44)

  • Aha das ist echt geil. :rofl:

    Es hat meine Taskleiste verunstaltet. Ah, ich find' das einfach nur genial. :D

    lg chess

    PS: Man beachte das Loch in der Taskleiste. ;)

    Edit:
    Wer Chrome hat, kann sich ja mal die Reaktion des Google-Browser's auf das zweite Script anschauen. ;)

  • Mal gucken, wie das noch ausgeht...

    Zitat

    - Programme, die anderen, auch Freunden, einen Schreck einjagen sollen oder sich sonst über andere Nutzer lustig machen ("Spaßviren")

  • Es hat einen klar beschrieben ausschaltknopf und die beschriftung "Benutzung auf eigene Gefahr".
    Die TrollGUI kann man mit ESC beenden und die Programme sind nur zu lernzwecken gedacht.
    Nach dem posten der TrollGUI, welche kein Spaßvirus ist könnte jeder, der sich 2 Wochen ausführlich mit AutoIt befasst hat den trollMode nachschreiben, deswgen bin ich mir keiner Schukd bewusst.
    Wenn es dir so wichtig ist, dann mache ich noch ein TrayTip mit einer Warnung oder einen Ausschltknopf dazu.

    PS: Wegen der verunstaltung an der Taskleiste bzw. Fehlende Teile von Fenstern ist das "Benutzung auf eigene Gefahr" da.
    Das Festen, welches du derzeit im Focus hast wird nach dem Beenden mit HOME wieder gerichtet.

    Einmal editiert, zuletzt von Smincke (20. Juli 2012 um 17:46)

  • Nicht schlecht, find ich interessant ^^
    Nur beim schließen werden die Sachen nichtmehr freigegeben wodurch (Wie bei Chess) Ein Loch in der Taskleiste bleibt :D

    mfg BB

    "IF YOU'RE GOING TO KILL IT
    OPEN SOURCE IT!"

    by Phillip Torrone

    Zitat von Shoutbox

    [Heute, 11:16] Andy: ....böseböseböseböse....da erinnere ich mich daran, dass man den Puschelschwanz eines KaRnickels auch "Blume" nennt....ob da eins zum anderen passt? :rofl: :rofl: :rofl: :rofl:

    https://autoit.de/index.php?page…leIt#post251138

    Neon Snake

  • Für leute mit nem 2ten bildschrim ist das gar nicht mal so geil :/ der hat jz die ganze zeit nen schwarzen hintergrund, aber ansonsten ist es echt top :thumbup:

    MfG Nico

    MfG - Mit freundlichen Grüssen

    die Welt liegt uns zu Füssen, den wir steh'n drauf

    wir geh'n drauf für ein Leben voller Schall und Rauch

    bevor wir fall'n, fall'n wir lieber auf.

  • Man müsste ne Liste machen mit hWnd´s, die nicht beeinflusst werde, dann währe das auch kein Problem.

  • ach du^^ ich finde es recht witzig soo :D ist mal was anderes :)

    MfG Nico

    MfG - Mit freundlichen Grüssen

    die Welt liegt uns zu Füssen, den wir steh'n drauf

    wir geh'n drauf für ein Leben voller Schall und Rauch

    bevor wir fall'n, fall'n wir lieber auf.

  • hi

    ist witztig

    da gabs doch mal so ein mini game mit diversen waffen womit man den desktop zerschießen und die scheibe vom monitor zertrümmern konnte( ist schon länger her ^^ )
    Das programm machte aber einen screenshot und den durchlöcherte man.


    das bringt mich auf ne blöde idee:
    Da könnte man glatt ein was schreiben wo die löcher echt da sind, und auch bleiben bis man sich abmeldet oder den explorer neu startet :D .


    mfg

  • Mit dem kann man aber nur schwarze Löscher machen, und keine bunten. Für bunte direkt auf den Bildschrim musst du _WinAPI_BitBlt() nehmen.
    Oder du macht eine GUI und zeichnest die Sachen darauf. Da würde sich _GDIPlus empfehlen. Dauerhafte löscher währen eher eine Plage, als ein Segen.

  • hi

    das meinte ich ja 'schwarze löscher' schießen die bleiben - das sollte ja der gag dran sein :D

    natürlich nur als spaßtool und mit warnung.

    mfg

  • Hehe, das haben wir früher immer im EDV-Unterricht gemacht.:D

    Es gibt auch noch ein simpleres (aber auch nicht ganz so gutes) Prinzip einer "Troll-GUI":

    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <StaticConstants.au3>

    [/autoit][autoit][/autoit][autoit]

    $iWidth = 250
    $iHeight = 250

    [/autoit][autoit][/autoit][autoit]

    $hGUI = GUICreate ("TrollGUI MoveMode",$iWidth,$iHeight)
    $hLabel = GUICtrlCreateLabel("Click me!",50,50,150,150,$WS_BORDER + BitOR($SS_CENTER,$SS_CENTERIMAGE))
    GUICtrlSetFont(-1,25)
    GUICtrlSetBkColor(-1,0xBBBBBB)
    GUISetState ()

    [/autoit][autoit][/autoit][autoit]

    While True
    Switch GUIGetMsg ()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_PRIMARYDOWN
    WinMove("TrollGUI MoveMode","",Random(0,@DesktopWidth - $iWidth),Random(0,@DesktopHeight - $iHeight))
    EndSwitch
    WEnd

    [/autoit]

    Den Schließen-Button könnte man ja auch noch disablen. ;)

    lg chess