Autoit Fehler @Error bei _StringEncrypt?

  • Abend,

    normalerweise müsste , wenn _StringEncrypt nicht funktioniert, ein leerer String wiedergegeben werden und @Error auf 1 gesetzt werden, jedoch tut er nichts von beiden und es gibt so einen vollkommen komischen String wieder.

    Wollte ich nur einmal bescheit sagen, oder ist das nicht so richtig, wie ich es meine?

    Beispiel :

    Spoiler anzeigen
    [autoit]


    #Include <String.au3>
    $String = _StringEncrypt(1,"Ou man du","c")
    $Encrypt = _StringEncrypt(0,$String,"acas")
    $Error = @Error
    If @Error = 1 Then
    MsgBox(64,"Text",$Encrypt)
    EndIf

    [/autoit]

    Einmal editiert, zuletzt von Julien (23. Januar 2012 um 00:46)

  • Hallo Julien,

    um den krrekt entschlüsselten String zu erhalten musst du auch das korrekte Passwrt verwenden:

    Spoiler anzeigen
    [autoit]

    #include <String.au3>
    $String = _StringEncrypt(1, "Ou man du", "c")
    $Encrypt = _StringEncrypt(0, $String, "c")
    If @error Then
    MsgBox(0, "Fehler:", @error)
    Else
    MsgBox(64, "Text", $Encrypt)
    EndIf
    $Encrypt = _StringEncrypt(0, $String, "acas")
    If @error Then
    MsgBox(0, "Fehler:", @error)
    Else
    MsgBox(64, "Text", $Encrypt)
    ;dass ein Text ausgegeben wird ist normal, da die Routine ja keinen ausgelöst hat
    ;das er allerdings falsch ist liegt an dem falschen Passwrt
    EndIf

    [/autoit]

    mfg autoBert

  • Er meint aber das bei falschen Passwort @error nicht gesetzt wird.

    Das ist aber auch richtig, da _StringEncrypt ja auch nicht das PW gespeichert hat sondern lediglich unter zuhilfenahme des Passwortest das ganez wieder entschlüsselt. Bei falschen Passwort kommt dann halt auch Müll raus.

    @error wird nur dann gesetzt denn der übergebene String leer ist.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • chip: das ist mir bewust: