Was ist da dran falsch?

  • Hallo Autoitler,

    ich habe 3 Fragen und wollte (nun meine erste) fragen ob ihr mir dabei helfen könnt.

    2. Frage:
    Wenn man einen falschen Serial eingibt kommt immer nur die gleiche fehlerbox aber ich glaube ich habe alles richtig gemacht oder?

    [autoit]

    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    HotKeySet("{PAUSE}", "TogglePause")

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

    Global $Paused

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

    Func TogglePause()
    $Paused = NOT $Paused
    While $Paused
    sleep(100)
    ToolTip("Script is 'Paused'",0,0)
    WEnd
    ToolTip("Script is 'running'",0,0)
    EndFunc

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

    func end()
    Exit
    EndFunc

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

    hotkeyset("{F8}", "end")

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

    func RandomSleep($min, $max)
    $time = Random($min, $max)
    Sleep($time)
    endfunc

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 394, 283, 192, 131)
    $Button1 = GUICtrlCreateButton("Testen", 8, 192, 97, 33)
    $Button2 = GUICtrlCreateButton("Aktivieren", 136, 192, 97, 33)
    $Button3 = GUICtrlCreateButton("Hilfe", 272, 192, 97, 33)
    $Button4 = GUICtrlCreateButton("Homepage", 272, 240, 97, 33)
    $Input1 = GUICtrlCreateInput("Serial hier eingeben", 24, 96, 257, 21)
    $Label1 = GUICtrlCreateLabel("Copyright by Epic World", 24, 56, 117, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $Button2
    Local $FailLogIn = 1
    if guictrlread($Input1)="HDSD-JHFS-SJFS-JGDS-JSFL" then ; Mach ich noch mit mysql aber erstmal das andere problem
    MsgBox( 64, "Aktivierung", "Sie haben das Produkt erfolgreich aktiviert!")
    Else
    $FailLogIn += 1
    Switch $FailLogIn
    Case 1
    MsgBox(64, "Aktivierung", "Sie haben einen falschen Serial eingegeben!",5) ; Immer kommt die box egal wie oft ich eine falsche serial Nummer eingebe
    Case 2
    MsgBox(64, "Aktivierung", "Sie haben zum 2. mal einen falschen Serial eingegeben!",5)
    Case 3
    MsgBox(64, "Aktivierung", "Sie haben zum 3. mal einen falschen Serial eingegeben!",5)
    Case 4
    MsgBox(64, "Aktivierung", "Das Programm schließt sich nun für 2 Tage!",5)

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

    EndSwitch
    EndIf

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

    EndSwitch
    WEnd

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

    3. Frage
    Dann wollte ich noch fragen wie mache ich das, dass der Script sich 2 Tage lang nichtmehr öffnen lässt odere 2 tage lang nur sich öffnen lässt da muss er doch das Datum wissen aber wie geht das genau?

    Vielen dank schonmal ^^

  • Naja, du musst irgendwo extern speichern, dass es sich nicht mehr öffnen lassen soll und bis wann es sich nicht mehr öffnen lassen soll.
    Das hast du versch. Möglichkeiten, zB in einer einfachen Textdatei, in der Registry, in einer Ini-Datei.
    Am besten natürlich verschlüsselt (siehe Crypt.au3)

    Anschließend kommt an an den Anfang des Skriptes folgendes:
    Pseudocode:
    Datei/Registrykey einlesen
    Bei Bedarf entschlüsseln
    Überprüfen, ob Zeitlimit schon überschritten ist. (Am besten einfach das Datum abspeichern, ab dem es nicht mehr geöffnet werden können soll!)
    Falls Zeitlimit noch nicht überschritten, einfach beenden