Bildschirm Sperrung

  • Moin moin,

    Ich habe letztens langeweile gehabt und eine Art Bildschirm Sperrung entwickelt. Sie funktioniert noch nicht gaaanz, aber wenn ein Leie an die Sperrung kommt, ist diese relativ sicher.

    Code:

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <Misc.au3>
    #include <GUIConstantsEx.au3>
    #include <EditConstants.au3>
    Global $i = 1, $var = 0, $Input, $lbl, $falsches_pass = 0
    Global $Fenster = GUICreate("Screen Lock", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x323232)
    Global $lbl = GUICtrlCreateLabel("Passwort wählen: ", @DesktopWidth / 2 - 330, @DesktopHeight / 2 - 103, 300, 30)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetFont(-1, 18, 100, 0,"Courier New")
    Global $Input = GUICtrlCreateInput("", @DesktopWidth / 2 - 70, @DesktopHeight / 2 - 100, 250, 20, $ES_PASSWORD)
    GUICtrlSetFont(-1, 12, 100, 0,"Courier New")
    GUISetState()
    while 1
    Global $Passwort = GUICtrlRead($Input)
    $msg = GUIGetMsg()
    Select
    case _IsPressed("0D")
    GUICtrlDelete($Input)
    save()
    case _IsPressed("1B")
    Global $maus_pos = MouseGetPos()
    $Black_Win = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x000000)
    GUISetCursor(16)
    GUISetState()
    Do
    $maus_pos_new = MouseGetPos()
    Until $maus_pos[1] <> $maus_pos_new[1] And $maus_pos[0] <> $maus_pos_new[0]
    GUIDelete()
    Case $msg = $Input
    GUICtrlSetStyle($Input, $ES_PASSWORD)
    EndSelect
    WEnd
    func save()
    Global $Input_neu = GUICtrlCreateInput("", @DesktopWidth / 2 - 70, @DesktopHeight / 2 - 100, 250, 20, $ES_PASSWORD)
    GUICtrlSetFont(-1, 12, 100, 0,"Courier New")
    GUICtrlSetState(-1, $GUI_FOCUS)
    GUICtrlSetData($lbl, "Passwort eingeben: ")
    $min = @SEC
    sleep(200)
    while 1
    GUISetState(@SW_MAXIMIZE)
    $Passwort_eingabe = GUICtrlRead($Input_neu)
    Select
    case _IsPressed("0D") And $Passwort = $Passwort_eingabe
    Exit
    case _IsPressed("0D") And $Passwort <> $Passwort_eingabe
    GUICtrlCreateLabel("Falsches Passwort", @DesktopWidth / 2 - 70, @DesktopHeight / 2 - 70, 200, 30)
    GUICtrlSetFont(-1, 14, 200, 2, "Courier New")
    GUICtrlSetColor(-1, 0xFF0000)
    $falsches_pass += 1
    GUICtrlSetData($Input_neu, "")
    sleep(100)
    case _IsPressed("1B")
    Global $maus_pos = MouseGetPos()
    $Black_Win = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x000000)
    GUISetCursor(16)
    GUISetState()
    Do
    $maus_pos_new = MouseGetPos()
    Until $maus_pos[1] <> $maus_pos_new[1] And $maus_pos[0] <> $maus_pos_new[0]
    GUIDelete()
    case $falsches_pass >= 3
    $Black_Win = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x000000)
    GUISetCursor(16)
    GUISetState()
    Do
    $var += 1
    sleep(100)
    GUISetState(@SW_MAXIMIZE, $Black_Win)
    Until $var = 100
    GUIDelete()
    $falsches_pass = 0
    EndSelect
    WEnd
    EndFunc

    [/autoit]


    Für Verbesserungen, Meinungen, Kritiken, etc. bin ich immer offen.

    mfg
    hauke96

  • - Weil manche die Kombi Win + L nicht kennen.
    - Weil man dann auch auf andere Konten sich anmelden kann.
    - Weil man einfach mal aus interesse dieses Programm ausprobieren kann.
    - Weil Windows doof ist.
    - Weil Ich finde, dass mein programm besser aussieht ( scherz ^^ )

    noch mehr? ;)

    nein im ernst: Keine ahnung, eigentlich nichts, aber wie gesagt ich hatte schlicht weg langeweile xD

  • ich könnts mir schon so ungefähr denken für was des ist aber ich wills jetz nich hier anreden :P
    Außerdem glaube ich dass jeder hier im Forum schon mindestens 2x Win+L benutzt hat und auch jeder kennt ^^
    Es gibt allerdings auch ne geilere Methode... steht aber bei mir irgendwo im mac drin -.- :rofl: