Passwort generieren
Verfasst: 01.03.2009 13:24
Hier eine kleine Procedure zum erstellen eines Passworts.
Es können Klein-Groß Buchstaben , Zahlen und Sonderzeichen verwendet werden.
Sowas hab ich vor ein paar Wochen mal gesucht, auch gefunden aber die Procedure war mir zu voll....
Aber vieleicht kann ja jemand das hier mal gebrauchen
Und hier ein Anwendungsbeispiel
Es können Klein-Groß Buchstaben , Zahlen und Sonderzeichen verwendet werden.
Sowas hab ich vor ein paar Wochen mal gesucht, auch gefunden aber die Procedure war mir zu voll....
Aber vieleicht kann ja jemand das hier mal gebrauchen

Code: Alles auswählen
Procedure.s PasswortGenerator(leange, gross_klein, sonderzeichen, zahlen)
Repeat
Passwortzeichenformat = Random(2)
If Passwortzeichenformat = 0
;Wenn groß und kleinschreibung = 1 ...
If gross_klein = 1
klein_oder_gross = Random(1)
If klein_oder_gross = 1
zufallsbuchstaben = Random(25) : Passwort$ + Chr(97 + zufallsbuchstaben)
Else
zufallsbuchstaben = Random(25) : Passwort$ + Chr(65 + zufallsbuchstaben)
EndIf
EndIf
EndIf
If Passwortzeichenformat = 1
;Wenn Zahlen = 1 ist ....
If zahlen = 1
zufallszahl = Random(9) : Passwort$ + Chr(48 + zufallszahl)
EndIf
EndIf
If Passwortzeichenformat = 2
;Wenn Sonderzeichen = 1 ist ...
If sonderzeichen = 1
zufallszeichen = Random(14) : Passwort$ + Chr(33 + zufallszeichen)
EndIf
EndIf
Until Len(Passwort$) = leange
ProcedureReturn Passwort$
EndProcedure
Code: Alles auswählen
OpenWindow(0, 669, 330, 333, 104, "Passwort generieren", #PB_Window_SystemMenu | #PB_Window_TitleBar)
StringGadget(1, 10, 80, 310, 20, "", #PB_String_ReadOnly)
CheckBoxGadget(2, 150, 10, 60, 20, "Zahlen")
CheckBoxGadget(3, 230, 10, 90, 20, "Sonderzeichen")
CheckBoxGadget(4, 10, 10, 130, 20, "Groß-Klein Buchstaben")
SpinGadget(5, 130, 40, 30, 20, 0, 100, #PB_Spin_Numeric)
SetGadgetState(5,10)
TextGadget(6, 10, 40, 110, 20, "Länge des Passworts")
ButtonGadget(7, 180, 40, 140, 20, "Passwort generieren")
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
Case 7
leange = GetGadgetState(5)
gross_klein = GetGadgetState(4)
sonderzeichen = GetGadgetState(3)
zahlen = GetGadgetState(2)
If gross_klein = 0 And sonderzeichen = 0 And zahlen = 0
SetGadgetText(1, "Fehler;Passwort Format wählen")
Else
Passwort$ = PasswortGenerator(leange, gross_klein, sonderzeichen, zahlen)
SetGadgetText(1, Passwort$)
EndIf
EndSelect
Case #PB_Event_CloseWindow
Break
EndSelect
ForEver