Kindersicherung

  • Hier habe ich mich mal an einem kleinen Skript Probiert, damit Kinder nicht so Leicht zugang haben.
    Wer weiß wen es Intressiert, hätte vielleicht auch in die Kategorie "Sinnlos" gepasst :D :P

    [autoit]

    #include <WindowsConstants.au3>
    #include <WinAPI.au3>
    #include <GuiConstantsEx.au3>
    #include <Misc.au3>
    Opt("TrayIconHide", 1)
    Opt("WinTitleMatchMode", 2)
    OnAutoItExitRegister("_Exit")
    $user_dll = DllOpen("user32.dll")

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

    $pStub_KeyProc = DllCallbackRegister("_KeyProc", "int", "int;ptr;ptr")
    $hHookKeyboard = _WinAPI_SetWindowsHookEx($WH_KEYBOARD_LL, DllCallbackGetPtr($pStub_KeyProc), _WinAPI_GetModuleHandle(0), 0)
    _Main()

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

    Func _Main()

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

    Local $GUI, $coords[4]

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

    $GUI = GUICreate("Gefängnis", 160, 70,"","")
    GUICtrlCreateLabel("Deine Tastatur ist Gesperrt",2,"")
    GUICtrlCreateLabel("und Deine Maus bleibt",2,15)
    GUICtrlCreateLabel("in Diesem 'Gefängnis' bis Du",2,30)
    GUICtrlCreateLabel("Dieses Fenster wieder Schließt!",2,45)
    GUISetState(@SW_SHOW)
    While 1
    $coords = WinGetPos($GUI)
    _MouseTrap($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    ExitLoop
    Case Else
    EndSwitch
    if not winactive ("Gefängnis") Then
    winactivate ("Gefängnis")
    if not WinExists ("Gefängnis") Then
    Exit
    EndIf
    EndIf
    WEnd
    _MouseTrap()
    Exit
    EndFunc

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

    While Sleep(100)
    WEnd

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

    Func _KeyProc($nCode, $wParam, $lParam)
    If $nCode < 0 Then Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
    Local $tKEYHOOKS = DllStructCreate($tagKBDLLHOOKSTRUCT, $lParam)
    Local $vkCode = DllStructGetData($tKEYHOOKS, "vkCode")
    If ($wParam = $WM_KEYDOWN) And $vkCode <> 0x77 Then
    DllCall($user_dll, 'int', 'keybd_event', 'int', 0x0, 'int', 0, 'int', 0, 'ptr', 0)
    Return -1
    EndIf
    Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
    EndFunc

    [/autoit]
  • Beim 1. Label ist der dritte Parameter falsch, da muss ne Pixelangabe hin.
    Bei GUICreate sollte eher -1 stehen anstatt "", oder las ganz weg, ist ja optional.
    Die While-Schleife mit dem Sleep kannste auch rausschmeißen.
    Wo ist die Funktion _Exit?
    Bei der _KeyProc in der If-Abfrage kannste die Klammern weglassen.
    Wenn du schon DllOpen nutzt, solltest du sie auch wieder schliessen mit DllClose.

    Da haste mit sinnlos schon recht.

  • Ich hab mal ein Kindersicherung/Elternsicherung/alternative Windowssperrung gemacht. Da braucht man eine spezielle Tastenkombi und dann noch ein Passwort bis man wieder an den PC kommt.

    Meine Eltern haben mir man eine Kindersicherung auf den PC gemacht, das Ding hat meine Taksbar buggy gemacht, ich habs fpürn Virus gehalten und den PC komplett neuinstalliert :D Ich glaube danach hab ich dann meine Sicherung gemacht ^^
    Die wehrt sich auch gegen Taskmanager ^^

    Ich glaube Kinder werden es schaffen das Fenster zu schließen und die "Kindersicherung" zu beenden, wenn das da auch noch steht ^^
    Wenn du willst kann ich dir meine Sicherung geben (sowohl zum Lernen als auch zur Kindersicherung) ^^


    EDIT:
    Bei den WinActivate befehlen usw wäre es einfacher oder sicherer statt "gefängnis" $GUI zu nehmen ^^
    (Auch wenn ich bei meinem durch ein Inputfeld gezwungen bin den String zu nehmen, is also eigentlich theoretisch egal)

  • Eine Kindersicherung soll ja Kinder schützen (z.B. vor ungeeigneten Webseiten oder vor zu langer PC Benutzung). Jetzt postest du unter dem Namen "Kindersicherung" ein Script, welches die Maus in einem Fenster gefangen hält und sich beim Klick aufs X beendet. In welcher Weise kann man jetzt damit Kinder schützen?

  • Kindersicherung?

    Also eine gute Erziehung und den Umgang mit dem Computer/INet besprechen sollte helfen.

    Seiten auf die ein Kind/Jugendlicher nicht darf, sperrt man im Route (wenn vorhanden).

    Ansonsten gibt es ein sog. "Kiosksystem", damit bestimmt der "Kioskbesitzer", was die
    Anwender nutzen dürfen und was nicht.
    Bei uns in den Kanzleien ist auf einigen PC's eine grafische Oberfläche mit Buttons.
    Nur die Programme die durch die dort sichtbaren Buttons ausgewählt werden können,
    können die Anwender nutzen. Alle anderen Prozesse schließen sofort wieder bzw.
    werden gar nicht erst gestartet. Das ganze gibt es auch als AutoIt-Script.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • Holy, macht mal aus seinem kleinen Script nicht 'ne Diskussion wie man seine Kinder erzieht....

    Für all jene denen 2 Sätze schon zuviel sind, hier die Stichworte:

    Zitat

    Skript - probiert - sinnlos

    Übrigens, mir gefällts :D, bin noch neu in AutoIt und wusste z.B. nicht das sowas geht, probiere jetzt mal damit rum ^^

  • Danke Dir, finde ich auch.
    War lediglich eine kleine Idde um mit Tastatur und Maus zu spielen und ich hatte keinen erzieherischen Aspekt im Auge sondern lediglich einen "relativen" schutz, fals man jemand auf die Tastatur oder Maus kommt, wie es auch gerne mal Kinder machen.