|
| Autor |
Nachricht |
progger_ Newbie

Anmeldedatum: 11.10.2007 Beiträge: 8
|
PW Gen Problem
Verfasst am: 24.10.2007, 21:39 |
|
|
hab ganz frisch mit VB angefangen und hab zu meinem ersten kleinen "Programm"
PW Generator 2 Fragen.
1.
wenn ich bei einer option mehrere sachen generieren will, in diesem fall A-Z, a-z, 0-9
was muss ich da anders machen als sonst?
einzeln war das noch kein prblem:
| Zitat: |
If Option2.Value = True Then
PW(1) = "0"
PW(2) = "1"
PW(3) = "2"
PW(4) = "3"
PW(5) = "4"
PW(6) = "5"
PW(7) = "6"
PW( = "7"
PW(9) = "8"
PW(10) = "9"
Randomize
zufall1 = Int((Rnd * 10) + 1)
zufall2 = Int((Rnd * 10) + 1)
zufall3 = Int((Rnd * 10) + 1)
zufall4 = Int((Rnd * 10) + 1)
zufall5 = Int((Rnd * 10) + 1)
zufall6 = Int((Rnd * 10) + 1)
zufall7 = Int((Rnd * 10) + 1)
zufall8 = Int((Rnd * 10) + 1)
txt_ausgabe.Text = PW(zufall1) & PW(zufall2) & PW(zufall3) & PW(zufall4) & PW(zufall5) & PW(zufall6) & PW(zufall7) & PW(zufall8)
Else
End If
|
2. was heißt genau dieser befehl?
| Zitat: | | zufall1 = Int((Rnd * 10) + 1) |
ich danke schon mal für die antworten
mfg_progger |
|
| |
|
 |
kknb_ Tutorial Leser

Anmeldedatum: 23.09.2007 Beiträge: 37
|
Verfasst am: 24.10.2007, 22:06 |
|
|
zu zweitens versuch ich das mal zu erklären, nicht schlagen wenn ich bullshit laber, mache das selbst erst ein paar tage.
also wenn ich das richtig verstanden habe hat "int" die funktion ganzzahlen auszugeben, das heisst alles nach dem komma wird abgeschnitten, deswegen wird zu der ganzzahl 1 addiert.
"Rnd * 10" zufallszahl aus den 10 zahlen. 10 ist dabei wohl obergrenze.
hab hier noch was nettes gefunden, sollte dir weiterhelfen.
http://www.it-academy.cc/article/1370/VB:+Zufallsstrings+erstellen.html |
|
| |
|
 |
Marduk_ « Moderator »

Anmeldedatum: 17.06.2007 Beiträge: 389
|
Verfasst am: 24.10.2007, 22:18 |
|
|
Wenn du noch Buchstaben einbauen willst, musst du dein Array erweitern
[vb:1:3e854305c7]PW(1) = "0"
PW(2) = "1"
PW(3) = "2"
PW(4) = "3"
PW(5) = "4"
PW(6) = "A"
PW(7) = "a"
PW( = "B"
...[/vb:1:3e854305c7]
Und änderst
[vb:1:3e854305c7]zufall1 = Int((Rnd * 10) + 1)
'in
zufall1 = Int((Rnd * 62) + 1)
'62 Einträge im Array[/vb:1:3e854305c7]
Das sollte es eigentlich groß gewesen sein. Man kann das ganze auch noch als Schleife programmieren, dann kann man die Passwortlänge variabel einstellen, aber für den Anfang ist das auch gut. |
|
| |
|
 |
progger_ Newbie

Anmeldedatum: 11.10.2007 Beiträge: 8
|
Verfasst am: 26.10.2007, 09:10 |
|
|
vielen dank für eure antworten, das forum sieht ja wirklich ganz interessant aus für VB
Zuletzt bearbeitet von progger_ am 26.10.2007, 17:47, insgesamt einmal bearbeitet |
|
| |
|
 |
progger_ Newbie

Anmeldedatum: 11.10.2007 Beiträge: 8
|
Verfasst am: 26.10.2007, 17:03 |
|
|
hab aber noch ein problme:
wenn ich dann die Option: a-z 0-9 A-Z ausfürhren/starten will kommt:
Laufzeitfehler "9":
Index außerhalb des gültigen Bereichs.
und wenn ich auf Debuggen klicken kommt:
PW(27) = "0" --> fett und Gelb Makiert.
woran könnte das liegen ? |
|
| |
|
 |
The-God-of-all_ Poster

Anmeldedatum: 20.05.2007 Beiträge: 170 Wohnort: App.Path
|
Verfasst am: 26.10.2007, 17:28 |
|
|
| Das liegt an der Deklaration von PW. Die Variable PW muss vorher als Array Deklariert werden und es muss angegeben werden wie groß das Array ist. In dem Quelltext müsste irgendwo Dim PW(26) as String stehen. Die 27 gibt an wie groß das Array ist, also wie viele Zeichen du in PW Speichern kannst. |
|
| |
|
 |
progger_ Newbie

Anmeldedatum: 11.10.2007 Beiträge: 8
|
Verfasst am: 26.10.2007, 17:33 |
|
|
| The-God-of-all hat Folgendes geschrieben: | | Das liegt an der Deklaration von PW. Die Variable PW muss vorher als Array Deklariert werden und es muss angegeben werden wie groß das Array ist. In dem Quelltext müsste irgendwo Dim PW(26) as String stehen. Die 27 gibt an wie groß das Array ist, also wie viele Zeichen du in PW Speichern kannst. |
ok. mach ich gleich mal ..
danke für die schnelle antwort |
|
| |
|
 |