_StringEncrypt will nicht entcrypten oder decrypten

  • ich hab folgendes programm geschrieben:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <String.au3>
    GUICreate("", 210, 335)
    $ipbEncrypt = GUICtrlCreateInput("", 5, 5, 80, 20, 0x21)
    $btnSave = GUICtrlCreateButton("Anzeigen", 90, 5, 50, 20)
    $btnShow = GUICtrlCreateButton("Speichern", 145, 5, 60, 20)
    $PWlist = GUICtrlCreateEdit("", 5, 30, 200, 300)

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

    $FOP = FileOpen("PW.txt", 0)
    $FRPW = FileRead($FOP)
    FileClose($FOP)
    GUICtrlSetData($PWlist, $FRPW)
    GUISetState()

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

    While True
    $MSG = GUIGetMsg()

    Switch $MSG
    Case $GUI_EVENT_CLOSE
    Exit

    Case $btnSave
    $PWs = GUICtrlRead($PWlist)
    $EncryptPW = GUICtrlRead($ipbEncrypt)
    $FOP = FileOpen("PW.txt", 1)
    FileWrite($FOP, _StringEncrypt(1, $PWs, GuiCtrlRead($ipbEncrypt), 1))
    FileClose($FOP)

    Case $btnShow
    $FOP = FileOpen("PW.txt", 0)
    $FRPW = Fileread($FOP)
    FileClose($FOP)
    GuiCtrlSetData($PWlist, _StringEncrypt(0, $FRPW, GuiCtrlRead($ipbEncrypt), 1))
    EndSwitch

    WEnd

    [/autoit]


    das problem iss nur das ich auch wenn ich das richtige passwort eigebe beim saven von _StringEncrypt "" zurückbekomme und wenn ich auf anzeigen klicke dann pasiert garnichts.

    ich hoffe einer blickt da durch ich hab nicht sonderlich auf elegantes coding geachtet ;)

  • das stimmt schon das es nicht richtich ist aber das hab ich jetzt behoben.
    aber du hast doch danach noch gesagt:

    Zitat

    ... Und dann solltest dir überlegen wann du die öffnest.

    Edit:
    Wie kriege ich es hin, dass ich im edit <Tab> drücken kann?
    wenn ich das zur zeit mache tabbe ich die steuerelemente.

    Einmal editiert, zuletzt von Dustin (12. März 2008 um 15:16)

    • Offizieller Beitrag

    Hi,

    ich würde es so fixen :

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <String.au3>
    GUICreate("", 210, 335)
    $ipbEncrypt = GUICtrlCreateInput("", 5, 5, 80, 20, 0x21)
    $btnShow = GUICtrlCreateButton("Anzeigen", 90, 5, 50, 20)
    $btnSave = GUICtrlCreateButton("Speichern", 145, 5, 60, 20)
    $PWlist = GUICtrlCreateEdit("", 5, 30, 200, 300)
    GUISetState()

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

    While 1
    $MSG = GUIGetMsg()
    Switch $MSG
    Case $GUI_EVENT_CLOSE
    Exit
    Case $btnSave
    $PWs = GUICtrlRead($PWlist)
    $EncryptPW = GUICtrlRead($ipbEncrypt)
    $FOP = FileOpen(@ScriptDir & "\PW.txt", 1)
    FileWrite($FOP, _StringEncrypt(1, $PWs, GUICtrlRead($ipbEncrypt), 1))
    FileClose($FOP)
    Case $btnShow
    $FOP = FileOpen("PW.txt", 0)
    $FRPW = FileRead($FOP)
    FileClose($FOP)
    ConsoleWrite($FRPW & @CRLF)
    GUICtrlSetData($PWlist, _StringEncrypt(0, $FRPW, GUICtrlRead($ipbEncrypt), 1))
    EndSwitch
    WEnd

    [/autoit]

    Edit: Auch wenn dein Konzept natürlich keinen Sinn ergibt. Wenn ich immer in die Datei anhänge aber das Passwort ändern kann, dann wird er nie die unterschiedlich verschlüsselten Dinge entschlüsseln können.

    Mega