input abfrage?

  • hallo ich hab en problem also ich will sozusagen für ien programm nehmen wir mal zum beispiel icq(icq.exe) eine passwort abfrage machen soweit sogut


    und wenn man das pw falsch eingibt soll es halt dannach immer wieder ausgehen doch bei mir macht er das nicht ka warum er ignoriert sogar wenn cih falsche eingaben mache und öffnet das fenster nochmal aber es soll sozusagen ne einmalige abfrage entweder richtig oder nicht

    ich hoffe ihr könnt mir helfen mfg sith^^ :D

  • [autoit]

    Dim $ICQ ;~ 0=nicht freigeschaltet 1=freigeschaltet
    Dim $pw = "lol"
    Dim $EXE = "icq.exe"

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

    While 1
    If $ICQ = 0 Then
    If ProcessExists( $EXE) then
    If InputBox("Gebe das passwort ein", "Gebe das passwort zur freischaltung von icq ein", "", "*") = $pw Then
    MsgBox(64, "Freischaltung erfolgreich", "Super!")
    $ICQ = 1 ;~ an der stelle könnte sich das programm auch beenden
    Else
    MsgBox(0, "Fehler", "nicht erfolgreich")
    If ProcessExists( $EXE) Then ProcessClose( $EXE)
    EndIf
    EndIf
    EndIf
    Sleep( 1000)
    WEnd

    [/autoit]

    so mal eben gebastelt. für "icq.exe" hab ich ne variable gemacht damit ich zu testzwecken auch ne andere anwendung nehmen kann.

    noch 2 sachen, die du aber sicher selbst programmieren kannst:
    1. die Inputbox hat kein timeout, deshalb kann man das fenster in den hintergrund tun und icq so benutzen.
    2. das tray icon mit dem befehl "Exit" macht das script nicht besonders effektiv einsetzbar ;)

    Canyon

    PS: Darf man fragen wozu das gut sein soll? Ich hoffe nicht das du jemandem sein ICQ vorenthalten willst?!

  • Es gibt doch da so ein super script, weis nich mehr von wem das ist.

    Das is ne GUI mit User und PW abfrage. Man kopiert den code davon einfach vor sein script und fertig.

    Also erst das script, und dann z.B. Run ("C:\Programme\icq\icq.exe")

    ...

    kannst ja mal in der sufu suchen, vllt findest du es.


    PS: Wenn dein freund weis, wo sich die icq.exe befindet, oder einfach im START ordner sucht, dann bringt dir das prog i.wie wenig ^^

  • So, hab dir mal eben was gemacht, das müsste etwas das sein, was du brauchst.

    Musst es nur immer schön laufen lassen. Um dann icq zu öffnen, C drücken.

    In Zeile 2 Musst du noch den Prozessnamen von ICQ eingeben.
    Und in Zeile 3 das gewünschte Passwort.


    viel spaß damit... ;)


    Spoiler anzeigen
    [autoit]

    #NoTrayIcon
    $icqProzess = "---" ; Setzte einfach hier den Prozess von der ICQ ein. ( Ist im Taskmanager unter Prozesse zu finden )
    $icqPfad = "---" ; Setzte einfach hier den Pfad von der ICQ ein.
    $pwStart = "---" ; Gib hier dann das Passwort ein. Dieses brauch man später um icq zu öffnen.
    $pwEnd = "---" ; Hier kannst du das passwort eingeben, das du brauchst um das programm zu beenden.
    HotKeySet ("{c}", "_Start")
    HotKeySet ("{q}", "_End")
    Func _Start ()
    $PwInput1 = InputBox ("Bitte Passwort eingeben", "Bitte gib hier nun das Passwort ein.", "", "*")
    If $PwInput1 = $pwStart Then
    Run ($icqPfad)
    Else
    $Msg1 = MsgBox (4+16, "Error", "Das Passwort wurde falsch eingegeben." & @CRLF & "Erneut versuchen?")
    If $Msg1 = 7 Then
    _While ()
    Else
    _Start ()
    EndIf
    EndIf
    EndFunc
    Func _End ()
    $PwInput2 = InputBox ("Bitte Passwort eingeben", "Bitte Passwort zum beenden des Programmes eingeben", "", "*")
    If $PwInput2 = $pwEnd Then
    Exit
    Else
    $Msg2 = MsgBox (16, "Error", "Das Passwort wurde falsch eingegeben" & @CRLF & "Erneut versuchen?")
    If $Msg2 = 7 Then
    _While ()
    Else
    _End ()
    EndIf
    EndIf
    EndFunc
    Func _While ()
    While 1
    If ProcessExists ($icqProzess) Then
    ProcessClose ($icqProzess)
    EndIf
    If ProcessExists ("taskmgr.exe") Then
    ProcessClose ("taskmgr.exe")
    MsgBox(48, "Achtung", "Taskmager ist gesperrt")
    EndIf
    Sleep (100)
    WEnd
    EndFunc
    While 1
    If ProcessExists ($icqProzess) Then
    ProcessClose ($icqProzess)
    EndIf
    If ProcessExists ("taskmgr.exe") Then
    ProcessClose ("taskmgr.exe")
    MsgBox(48, "Achtung", "Taskmager ist gesperrt")
    EndIf
    Sleep (100)
    WEnd

    [/autoit]


    So, jetz is der Taskmanager auch gesperrt...

    PS: Hast mich da auf ne coole idee gebracht, arbeite grad an ner erweiterten version...

    2 Mal editiert, zuletzt von Commander21 (21. März 2009 um 15:23)