Spoiler anzeigen
#include <string.au3>
#include <array.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ProgressConstants.au3>
#Region ### START Koda GUI section ### Form
$Form1 = GUICreate("Verschlüssler/Entschlüssler von Buphy", 633, 520,@DesktopWidth/2 -316 ,@DesktopHeight/2 -248)
$Edit1 = GUICtrlCreateEdit("", 16, 16, 601, 401,BitOR($ES_WANTRETURN,$ES_MULTILINE))
GUICtrlSetData(-1, "Hier dein Text:")
$Button1 = GUICtrlCreateButton("Verschlüsseln", 342, 432, 137, 49)
$Button2 = GUICtrlCreateButton("Entschlüssln", 482, 432, 137, 49)
$Button3 = GUICtrlCreateButton("In die Zwischenablage (STRG+C)", 170, 432, 170, 49)
$Progress = GUICtrlCreateProgress(16, 495,600, 20, $PBS_SMOOTH)
GUICtrlCreateLabel("Du kannst es auch mehrmals verschlüsseln (sicherer)"& @cr & "Wer kommt schon auch die Idee, 2 mal auf entschlüsseln zu Klicken!!!", 16, 425, 150, 65)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$Edit = ''
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
MsgBox(0,"Verschlüssler/Entschlüssler",'Hergestellt von "Buphy Produktion"')
Exit
Case $Button1
$Edit = GUICtrlRead($Edit1)
iF $Edit = "" Then
MsgBox(1,"Verschlüssler/Entschlüssler","Du hast nichts eingegeben")
Else
$lock = _verschluesseln($Edit)
GUICtrlSetData($edit1,$lock)
EndIf
Case $Button2
$Edit = GUICtrlRead($Edit1)
iF $Edit = "" Then
MsgBox(1,"Verschlüssler/Entschlüssler","Du hast nichts eingegeben")
Else
$unlock = _entschluesseln($Edit)
GUICtrlSetData($edit1,$unlock)
Endif
Case $Button3
$Edit = GUICtrlRead($Edit1)
ClipPut($Edit)
EndSwitch
WEnd
Func _verschluesseln($unlock)
GUICtrlSetData($Progress,0)
#region $Strings
$nummer = 0
$stringnummer = 1
$locknummer = 1
$lock =""
Dim $Zeichen[102][2]
$Zeichen[0][0] = "0"
$Zeichen[0][1] = "EDn"
$Zeichen[1][0] = "1"
$Zeichen[1][1] = "E4f"
$Zeichen[2][0] = "2"
$Zeichen[2][1] = "VEX"
$Zeichen[3][0] = "3"
$Zeichen[3][1] = "gzo"
$Zeichen[4][0] = "4"
$Zeichen[4][1] = "rZB"
$Zeichen[5][0] = "5"
$Zeichen[5][1] = "kFU"
$Zeichen[6][0] = "6"
$Zeichen[6][1] = "oSP"
$Zeichen[7][0] = "7"
$Zeichen[7][1] = "E4q"
$Zeichen[8][0] = "8"
$Zeichen[8][1] = "lf4"
$Zeichen[9][0] = "9"
$Zeichen[9][1] = "8EE"
$Zeichen[10][0] = "a"
$Zeichen[10][1] = "xVx"
$Zeichen[11][0] = "b"
$Zeichen[11][1] = "Jfm"
$Zeichen[12][0] = "c"
$Zeichen[12][1] = "1zz"
$Zeichen[13][0] = "d"
$Zeichen[13][1] = "EjT"
$Zeichen[14][0] = "e"
$Zeichen[14][1] = "VeZ"
$Zeichen[15][0] = "f"
$Zeichen[15][1] = "pxF"
$Zeichen[16][0] = "g"
$Zeichen[16][1] = "zwR"
$Zeichen[17][0] = "h"
$Zeichen[17][1] = "UFm"
$Zeichen[18][0] = "i"
$Zeichen[18][1] = "74U"
$Zeichen[19][0] = "j"
$Zeichen[19][1] = "DOD"
$Zeichen[20][0] = "k"
$Zeichen[20][1] = "SNQ"
$Zeichen[21][0] = "l"
$Zeichen[21][1] = "6gB"
$Zeichen[22][0] = "m"
$Zeichen[22][1] = "V46"
$Zeichen[23][0] = "n"
$Zeichen[23][1] = "7G7"
$Zeichen[24][0] = "o"
$Zeichen[24][1] = "eyS"
$Zeichen[25][0] = "p"
$Zeichen[25][1] = "bLp"
$Zeichen[26][0] = "q"
$Zeichen[26][1] = "1EU"
$Zeichen[27][0] = "r"
$Zeichen[27][1] = "DQz"
$Zeichen[28][0] = "s"
$Zeichen[28][1] = "UwU"
$Zeichen[29][0] = "t"
$Zeichen[29][1] = "ssi"
$Zeichen[30][0] = "u"
$Zeichen[30][1] = "FQQ"
$Zeichen[31][0] = "v"
$Zeichen[31][1] = "VgL"
$Zeichen[32][0] = "w"
$Zeichen[32][1] = "VJl"
$Zeichen[33][0] = "x"
$Zeichen[33][1] = "M6G"
$Zeichen[34][0] = "y"
$Zeichen[34][1] = "Ibe"
$Zeichen[35][0] = "z"; klein
$Zeichen[35][1] = "SgV"
$Zeichen[36][0] = "A"
$Zeichen[36][1] = "FEb"
$Zeichen[37][0] = "B"
$Zeichen[37][1] = "ZuT"
$Zeichen[38][0] = "C"
$Zeichen[38][1] = "kWJ"
$Zeichen[39][0] = "D"
$Zeichen[39][1] = "MYf"
$Zeichen[40][0] = "E"
$Zeichen[40][1] = "kU4"
$Zeichen[41][0] = "F"
$Zeichen[41][1] = "I41"
$Zeichen[42][0] = "G"
$Zeichen[42][1] = "ZBr"
$Zeichen[43][0] = "H"
$Zeichen[43][1] = "DCY"
$Zeichen[44][0] = "I"
$Zeichen[44][1] = "uaD"
$Zeichen[45][0] = "J"
$Zeichen[45][1] = "a7X"
$Zeichen[46][0] = "K"
$Zeichen[46][1] = "oii"
$Zeichen[47][0] = "L"
$Zeichen[47][1] = "Y6Q"
$Zeichen[48][0] = "M"
$Zeichen[48][1] = "8Cq"
$Zeichen[49][0] = "N"
$Zeichen[49][1] = "W5e"
$Zeichen[50][0] = "O"
$Zeichen[50][1] = "WWC"
$Zeichen[51][0] = "P"
$Zeichen[51][1] = "9Pm"
$Zeichen[52][0] = "Q"
$Zeichen[52][1] = "GWm"
$Zeichen[53][0] = "R"
$Zeichen[53][1] = "GB6"
$Zeichen[54][0] = "S"
$Zeichen[54][1] = "Zgo"
$Zeichen[55][0] = "T"
$Zeichen[55][1] = "tjb"
$Zeichen[56][0] = "U"
$Zeichen[56][1] = "7BI"
$Zeichen[57][0] = "V"
$Zeichen[57][1] = "FGU"
$Zeichen[58][0] = "W"
$Zeichen[58][1] = "GwV"
$Zeichen[59][0] = "X"
$Zeichen[59][1] = "Xmz"
$Zeichen[60][0] = "Y"
$Zeichen[60][1] = "vqU"
$Zeichen[61][0] = "Z";Großbuchstaben
$Zeichen[61][1] = "S7o"
$Zeichen[62][0] = "!"
$Zeichen[62][1] = "q9Q"
$Zeichen[63][0] = '"'
$Zeichen[63][1] = "5f8"
$Zeichen[64][0] = "§"
$Zeichen[64][1] = "WpK"
$Zeichen[65][0] = "$"
$Zeichen[65][1] = "GPB"
$Zeichen[66][0] = "%"
$Zeichen[66][1] = "xBD"
$Zeichen[67][0] = "&"
$Zeichen[67][1] = "p9D"
$Zeichen[68][0] = "/"
$Zeichen[68][1] = "cgZ"
$Zeichen[69][0] = "("
$Zeichen[69][1] = "Zsq"
$Zeichen[70][0] = ")"
$Zeichen[70][1] = "xRr"
$Zeichen[71][0] = "="
$Zeichen[71][1] = "ZwT"
$Zeichen[72][0] = "?"
$Zeichen[72][1] = "1bW"
$Zeichen[73][0] = "`"
$Zeichen[73][1] = "Xei"
$Zeichen[74][0] = "´"
$Zeichen[74][1] = "9j2"
$Zeichen[75][0] = "+"
$Zeichen[75][1] = "zbe"
$Zeichen[76][0] = "#"
$Zeichen[76][1] = "a5T"
$Zeichen[77][0] = "<"
$Zeichen[77][1] = "MZr"
$Zeichen[78][0] = ">"
$Zeichen[78][1] = "X94"
$Zeichen[79][0] = "|"
$Zeichen[79][1] = "J3X"
$Zeichen[80][0] = ","
$Zeichen[80][1] = "VC6"
$Zeichen[81][0] = "."
$Zeichen[81][1] = "ckh"
$Zeichen[82][0] = "-"
$Zeichen[82][1] = "PwP"
$Zeichen[83][0] = "_"
$Zeichen[83][1] = "pi6"
$Zeichen[84][0] = ":"
$Zeichen[84][1] = "PLT"
$Zeichen[85][0] = ";"
$Zeichen[85][1] = "noo"
$Zeichen[86][0] = "\"
$Zeichen[86][1] = "clM"
$Zeichen[87][0] = "}"
$Zeichen[87][1] = "tim"
$Zeichen[88][0] = "]"
$Zeichen[88][1] = "Xzc"
$Zeichen[89][0] = "["
$Zeichen[89][1] = "7N3"
$Zeichen[90][0] = "{"
$Zeichen[90][1] = "Dcn"
$Zeichen[91][0] = "~"
$Zeichen[91][1] = "F5q"
$Zeichen[92][0] = "²"
$Zeichen[92][1] = "VxA"
$Zeichen[93][0] = "³"
$Zeichen[93][1] = "S8a"
$Zeichen[94][0] = "@"
$Zeichen[94][1] = "Ud7"
$Zeichen[95][0] = "€"
$Zeichen[95][1] = "nR2"
$Zeichen[96][0] = "*"
$Zeichen[96][1] = "G9Y"
$Zeichen[97][0] = "'"
$Zeichen[97][1] = "juD"
$Zeichen[98][0] = "°"
$Zeichen[98][1] = "IKP"
$Zeichen[99][0] = "^"
$Zeichen[99][1] = "s73"
$Zeichen[100][0] = " "
$Zeichen[100][1] = "tFY"
#endregion
$String = StringSplit($unlock,""); in jedes Zeichen aufsplitten
;~ _ArrayDisplay($String)
;~ _ArrayDisplay($Zeichen)
Do; umwandeln
if $nummer >= 101 Then
Return "(Einige der Zeichen werden nicht unterstützt/fehlerhafter String)"
EndIf
If $String[$Stringnummer] == $Zeichen[$nummer][0] Then ;überprüfen welches Zeichen
;~ ConsoleWrite($String[$Stringnummer] & "=" & $Zeichen[$nummer][1]& @CRLF)
$String[$Stringnummer] = $Zeichen[$nummer][1] ; wenn es übereinstimmt das verschlüsseln und den nächsten überprüfen
If $Stringnummer >= $String[0] Then ;wenn er alle überprüft hat schleife verlassen
GUICtrlSetData($Progress,100)
Exitloop
EndIf
$Stringnummer = $Stringnummer+1
GUICtrlSetData($Progress,Round($stringnummer/$String[0]*100 ,0))
$nummer= 0
EndIf
$nummer= $nummer +1
until 1 <>1 ;<== Umwandeln
While True ;zusammen nehmen
$lock = $Lock & $String[$locknummer]
$Locknummer = $locknummer +1
if $Locknummer-1 == $String[0] then ExitLoop
WEnd
Return $lock;wieder geben
EndFunc
Func _entschluesseln($Str)
#region $Strings ;Zeichen
GUICtrlSetData($Progress,0)
$nummer = 1
$stringnummer = 0
$locknummer = 0
$lock =""
Dim $Zeichen[102][2]
$Zeichen[0][0] = "0"
$Zeichen[0][1] = "EDn"
$Zeichen[1][0] = "1"
$Zeichen[1][1] = "E4f"
$Zeichen[2][0] = "2"
$Zeichen[2][1] = "VEX"
$Zeichen[3][0] = "3"
$Zeichen[3][1] = "gzo"
$Zeichen[4][0] = "4"
$Zeichen[4][1] = "rZB"
$Zeichen[5][0] = "5"
$Zeichen[5][1] = "kFU"
$Zeichen[6][0] = "6"
$Zeichen[6][1] = "oSP"
$Zeichen[7][0] = "7"
$Zeichen[7][1] = "E4q"
$Zeichen[8][0] = "8"
$Zeichen[8][1] = "lf4"
$Zeichen[9][0] = "9"
$Zeichen[9][1] = "8EE"
$Zeichen[10][0] = "a"
$Zeichen[10][1] = "xVx"
$Zeichen[11][0] = "b"
$Zeichen[11][1] = "Jfm"
$Zeichen[12][0] = "c"
$Zeichen[12][1] = "1zz"
$Zeichen[13][0] = "d"
$Zeichen[13][1] = "EjT"
$Zeichen[14][0] = "e"
$Zeichen[14][1] = "VeZ"
$Zeichen[15][0] = "f"
$Zeichen[15][1] = "pxF"
$Zeichen[16][0] = "g"
$Zeichen[16][1] = "zwR"
$Zeichen[17][0] = "h"
$Zeichen[17][1] = "UFm"
$Zeichen[18][0] = "i"
$Zeichen[18][1] = "74U"
$Zeichen[19][0] = "j"
$Zeichen[19][1] = "DOD"
$Zeichen[20][0] = "k"
$Zeichen[20][1] = "SNQ"
$Zeichen[21][0] = "l"
$Zeichen[21][1] = "6gB"
$Zeichen[22][0] = "m"
$Zeichen[22][1] = "V46"
$Zeichen[23][0] = "n"
$Zeichen[23][1] = "7G7"
$Zeichen[24][0] = "o"
$Zeichen[24][1] = "eyS"
$Zeichen[25][0] = "p"
$Zeichen[25][1] = "bLp"
$Zeichen[26][0] = "q"
$Zeichen[26][1] = "1EU"
$Zeichen[27][0] = "r"
$Zeichen[27][1] = "DQz"
$Zeichen[28][0] = "s"
$Zeichen[28][1] = "UwU"
$Zeichen[29][0] = "t"
$Zeichen[29][1] = "ssi"
$Zeichen[30][0] = "u"
$Zeichen[30][1] = "FQQ"
$Zeichen[31][0] = "v"
$Zeichen[31][1] = "VgL"
$Zeichen[32][0] = "w"
$Zeichen[32][1] = "VJl"
$Zeichen[33][0] = "x"
$Zeichen[33][1] = "M6G"
$Zeichen[34][0] = "y"
$Zeichen[34][1] = "Ibe"
$Zeichen[35][0] = "z"; klein
$Zeichen[35][1] = "SgV"
$Zeichen[36][0] = "A"
$Zeichen[36][1] = "FEb"
$Zeichen[37][0] = "B"
$Zeichen[37][1] = "ZuT"
$Zeichen[38][0] = "C"
$Zeichen[38][1] = "kWJ"
$Zeichen[39][0] = "D"
$Zeichen[39][1] = "MYf"
$Zeichen[40][0] = "E"
$Zeichen[40][1] = "kU4"
$Zeichen[41][0] = "F"
$Zeichen[41][1] = "I41"
$Zeichen[42][0] = "G"
$Zeichen[42][1] = "ZBr"
$Zeichen[43][0] = "H"
$Zeichen[43][1] = "DCY"
$Zeichen[44][0] = "I"
$Zeichen[44][1] = "uaD"
$Zeichen[45][0] = "J"
$Zeichen[45][1] = "a7X"
$Zeichen[46][0] = "K"
$Zeichen[46][1] = "oii"
$Zeichen[47][0] = "L"
$Zeichen[47][1] = "Y6Q"
$Zeichen[48][0] = "M"
$Zeichen[48][1] = "8Cq"
$Zeichen[49][0] = "N"
$Zeichen[49][1] = "W5e"
$Zeichen[50][0] = "O"
$Zeichen[50][1] = "WWC"
$Zeichen[51][0] = "P"
$Zeichen[51][1] = "9Pm"
$Zeichen[52][0] = "Q"
$Zeichen[52][1] = "GWm"
$Zeichen[53][0] = "R"
$Zeichen[53][1] = "GB6"
$Zeichen[54][0] = "S"
$Zeichen[54][1] = "Zgo"
$Zeichen[55][0] = "T"
$Zeichen[55][1] = "tjb"
$Zeichen[56][0] = "U"
$Zeichen[56][1] = "7BI"
$Zeichen[57][0] = "V"
$Zeichen[57][1] = "FGU"
$Zeichen[58][0] = "W"
$Zeichen[58][1] = "GwV"
$Zeichen[59][0] = "X"
$Zeichen[59][1] = "Xmz"
$Zeichen[60][0] = "Y"
$Zeichen[60][1] = "vqU"
$Zeichen[61][0] = "Z";Großbuchstaben
$Zeichen[61][1] = "S7o"
$Zeichen[62][0] = "!"
$Zeichen[62][1] = "q9Q"
$Zeichen[63][0] = '"'
$Zeichen[63][1] = "5f8"
$Zeichen[64][0] = "§"
$Zeichen[64][1] = "WpK"
$Zeichen[65][0] = "$"
$Zeichen[65][1] = "GPB"
$Zeichen[66][0] = "%"
$Zeichen[66][1] = "xBD"
$Zeichen[67][0] = "&"
$Zeichen[67][1] = "p9D"
$Zeichen[68][0] = "/"
$Zeichen[68][1] = "cgZ"
$Zeichen[69][0] = "("
$Zeichen[69][1] = "Zsq"
$Zeichen[70][0] = ")"
$Zeichen[70][1] = "xRr"
$Zeichen[71][0] = "="
$Zeichen[71][1] = "ZwT"
$Zeichen[72][0] = "?"
$Zeichen[72][1] = "1bW"
$Zeichen[73][0] = "`"
$Zeichen[73][1] = "Xei"
$Zeichen[74][0] = "´"
$Zeichen[74][1] = "9j2"
$Zeichen[75][0] = "+"
$Zeichen[75][1] = "zbe"
$Zeichen[76][0] = "#"
$Zeichen[76][1] = "a5T"
$Zeichen[77][0] = "<"
$Zeichen[77][1] = "MZr"
$Zeichen[78][0] = ">"
$Zeichen[78][1] = "X94"
$Zeichen[79][0] = "|"
$Zeichen[79][1] = "J3X"
$Zeichen[80][0] = ","
$Zeichen[80][1] = "VC6"
$Zeichen[81][0] = "."
$Zeichen[81][1] = "ckh"
$Zeichen[82][0] = "-"
$Zeichen[82][1] = "PwP"
$Zeichen[83][0] = "_"
$Zeichen[83][1] = "pi6"
$Zeichen[84][0] = ":"
$Zeichen[84][1] = "PLT"
$Zeichen[85][0] = ";"
$Zeichen[85][1] = "noo"
$Zeichen[86][0] = "\"
$Zeichen[86][1] = "clM"
$Zeichen[87][0] = "}"
$Zeichen[87][1] = "tim"
$Zeichen[88][0] = "]"
$Zeichen[88][1] = "Xzc"
$Zeichen[89][0] = "["
$Zeichen[89][1] = "7N3"
$Zeichen[90][0] = "{"
$Zeichen[90][1] = "Dcn"
$Zeichen[91][0] = "~"
$Zeichen[91][1] = "F5q"
$Zeichen[92][0] = "²"
$Zeichen[92][1] = "VxA"
$Zeichen[93][0] = "³"
$Zeichen[93][1] = "S8a"
$Zeichen[94][0] = "@"
$Zeichen[94][1] = "Ud7"
$Zeichen[95][0] = "€"
$Zeichen[95][1] = "nR2"
$Zeichen[96][0] = "*"
$Zeichen[96][1] = "G9Y"
$Zeichen[97][0] = "'"
$Zeichen[97][1] = "juD"
$Zeichen[98][0] = "°"
$Zeichen[98][1] = "IKP"
$Zeichen[99][0] = "^"
$Zeichen[99][1] = "s73"
$Zeichen[100][0] = " "
$Zeichen[100][1] = "tFY"
#endregion
$String = StringRegExp($str, "(.{1,3})", 3);aufteilen
$lengh = UBound($String)
Do; umwandeln
if $nummer >= 101 Then
Return "(Du kannst mit diesem Ver- und Entschlüssler nur Dinge entschlüsseln die auch hier mit entstanden sind)"
EndIf
If $String[$Stringnummer] == $Zeichen[$nummer][1] Then ;überprüfen welches Zeichen
$String[$Stringnummer] = $Zeichen[$nummer][0] ; wenn es übereinstimmt das verschlüsseln und den nächsten überprüfen
If $Stringnummer+ 1 >= $lengh Then
GUICtrlSetData($Progress,100)
Exitloop ;wenn er alle überprüft hat schleife verlassen
EndIf
$Stringnummer = $Stringnummer+1
GUICtrlSetData($Progress,Round($stringnummer/$Lengh*100 ,0))
$nummer= 0
Else
$nummer= $nummer +1
EndIf
until 1 <>1 ;<== Umwandeln
While True ;zusammen nehmen
$lock = $Lock & $String[$locknummer]
if $Locknummer+1 >= $lengh then ExitLoop
$Locknummer = $locknummer +1
WEnd
Return $lock;wiedergeben
EndFunc
naja, ich danke schon mal im vorraus für Feedbags
mfg
Buphx
Update 1.1
- Progressbar